2019-11-18 13:34:06 +00:00
|
|
|
package session
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"crypto/ecdsa"
|
|
|
|
|
2020-03-31 07:05:26 +00:00
|
|
|
"github.com/nspcc-dev/neofs-api-go/refs"
|
2019-11-18 13:34:06 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
type (
|
|
|
|
// KeyStore is an interface that describes storage,
|
|
|
|
// that allows to fetch public keys by OwnerID.
|
|
|
|
KeyStore interface {
|
|
|
|
Get(ctx context.Context, id refs.OwnerID) ([]*ecdsa.PublicKey, error)
|
|
|
|
}
|
|
|
|
)
|
|
|
|
|
|
|
|
// NewInitRequest returns new initialization CreateRequest from passed Token.
|
|
|
|
func NewInitRequest(t *Token) *CreateRequest {
|
|
|
|
return &CreateRequest{Message: &CreateRequest_Init{Init: t}}
|
|
|
|
}
|
|
|
|
|
|
|
|
// NewSignedRequest returns new signed CreateRequest from passed Token.
|
|
|
|
func NewSignedRequest(t *Token) *CreateRequest {
|
|
|
|
return &CreateRequest{Message: &CreateRequest_Signed{Signed: t}}
|
|
|
|
}
|