Versions in this module Expand all Collapse all v0 v0.2.1 Aug 24, 2026 v0.2.0 Aug 15, 2026 Changes in this version + var ErrTooManySignatures = fmt.Errorf("%w: too many signatures over the primary key", encryption.ErrMalformed) + func Fingerprint(packetBody []byte) ([20]byte, error) + func Parse(der []byte, opts ...ParseOption) (Recipient, Findings, error) + func ParseAt(der []byte, now time.Time, opts ...ParseOption) (Recipient, Findings, error) + func RecommendedKDF(curveOID []byte) (hashID, kekAlgID byte, err error) + type AssembleOption func(*assembleConfig) + func WithHash(h crypto.Hash) AssembleOption + func WithSignatureTime(t time.Time) AssembleOption + func WithoutSignatureSalt() AssembleOption + type Certificate struct + Created time.Time + Subkey ECDHPublicKey + UserID string + func (c Certificate) Assemble(signer crypto.Signer, opts ...AssembleOption) ([]byte, error) + type ECDHPublicKey struct + Created time.Time + CurveOID []byte + HashID byte + KEKAlgID byte + Point []byte + func (k ECDHPublicKey) PacketBody() ([]byte, error) + type Findings []error + type ParseOption func(*parseConfig) + func AllowWithdrawn() ParseOption + type RSAPublicKey struct + Created time.Time + Exponent []byte + Modulus []byte + func (k RSAPublicKey) PacketBody() ([]byte, error) + type Recipient struct + Fingerprint [20]byte + KDF encryption.KDFParams + KeyID [8]byte