Versions in this module Expand all Collapse all v2 v2.11.0 Apr 27, 2026 Changes in this version + const AESKeySize + const NonceSize + const PairingKeySize + const SessionSaltSize + var ErrCounterExhausted = errors.New("counter exhausted: rotate session keys") + var ErrInvalidPairingKey = errors.New("pairing key must be 32 bytes") + var ErrInvalidPakeMessage = errors.New("invalid PAKE message") + var ErrInvalidSessionSalt = errors.New("session salt must be 16 bytes") + func DecodePakeMessage(wire []byte) ([]byte, error) + func Decrypt(gcm cipher.AEAD, nonceBase []byte, counter uint64, ciphertext, aad []byte) ([]byte, error) + func EncodePakeMessage(internal []byte) ([]byte, error) + func Encrypt(gcm cipher.AEAD, nonceBase []byte, counter uint64, plaintext, aad []byte) ([]byte, error) + func NewAEAD(key []byte) (cipher.AEAD, error) + type PakeMessage struct + Role int + UX string + UY string + VX string + VY string + XX string + XY string + YX string + YY string + type SessionKeys struct + C2SKey []byte + C2SNonce []byte + S2CKey []byte + S2CNonce []byte + func DeriveSessionKeys(pairingKey, sessionSalt []byte) (*SessionKeys, error) v2.11.0-beta2 Apr 19, 2026 v2.11.0-beta1 Apr 16, 2026