Versions in this module Expand all Collapse all v2 v2.0.1 Jan 9, 2020 Changes in this version + const XNonceSize + var ErrClaimNotFound = errors.New("claim not found") + var ErrDataUnmarshal = errors.New("can't unmarshal token data to the given type of value") + var ErrIncorrectPrivateKeyType = errors.New("incorrect private key type") + var ErrIncorrectPublicKeyType = errors.New("incorrect public key type") + var ErrIncorrectTokenFormat = errors.New("incorrect token format") + var ErrIncorrectTokenHeader = errors.New("incorrect token header") + var ErrInvalidSignature = errors.New("invalid signature") + var ErrInvalidTokenAuth = errors.New("invalid token authentication") + var ErrPublicKeyNotFound = errors.New("public key for this version not found") + var ErrTokenValidationError = errors.New("token validation error") + var ErrTypeCast = errors.New("type cast error") + var ErrUnsupportedTokenType = errors.New("unsupported token type") + var ErrUnsupportedTokenVersion = errors.New("unsupported parser version") + func GetTokenInfo(token string) (Version, Purpose, error) + func ParseFooter(token string, footer interface{}) error + type JSONToken struct + Audience string + Expiration time.Time + IssuedAt time.Time + Issuer string + Jti string + NotBefore time.Time + Subject string + func (t *JSONToken) Get(key string, v interface{}) error + func (t *JSONToken) Set(key string, value interface{}) + func (t *JSONToken) UnmarshalJSON(data []byte) error + func (t *JSONToken) Validate(validators ...Validator) error + func (t JSONToken) MarshalJSON() ([]byte, error) + type Protocol interface + Decrypt func(token string, key []byte, payload interface{}, footer interface{}) error + Encrypt func(key []byte, payload interface{}, footer interface{}) (string, error) + Sign func(privateKey crypto.PrivateKey, payload interface{}, footer interface{}) (string, error) + Verify func(token string, publicKey crypto.PublicKey, value interface{}, ...) error + type Purpose int + const PurposeLocal + const PurposePublic + func ParsePurpose(name string) (Purpose, error) + func (x Purpose) String() string + type V1 struct + func NewV1() *V1 + func (p *V1) Decrypt(token string, key []byte, payload, footer interface{}) error + func (p *V1) Encrypt(key []byte, payload, footer interface{}) (string, error) + func (p *V1) Sign(privateKey crypto.PrivateKey, payload, footer interface{}) (string, error) + func (p *V1) Verify(token string, publicKey crypto.PublicKey, payload, footer interface{}) error + type V2 struct + func NewV2() *V2 + func (*V2) Decrypt(token string, key []byte, payload, footer interface{}) error + func (*V2) Sign(privateKey crypto.PrivateKey, payload, footer interface{}) (string, error) + func (*V2) Verify(token string, publicKey crypto.PublicKey, payload, footer interface{}) error + func (p *V2) Encrypt(key []byte, payload, footer interface{}) (string, error) + type Validator func(token *JSONToken) error + func ForAudience(audience string) Validator + func IdentifiedBy(jti string) Validator + func IssuedBy(issuer string) Validator + func Subject(subject string) Validator + func ValidAt(t time.Time) Validator + type Version int + const VersionV1 + const VersionV2 + func Parse(token string, payload, footer interface{}, symmetricKey []byte, ...) (Version, error) + func ParseVersion(name string) (Version, error) + func (x Version) String() string Other modules containing this package github.com/dkull/paseto