Versions in this module Expand all Collapse all v1 v1.0.1 Jun 24, 2020 v1.0.0 Mar 27, 2018 Changes in this version + const MaxMsgLen + var ErrShortMessage = errors.New("noise: message is too short") + var HandshakeIK = HandshakePattern + var HandshakeIN = HandshakePattern + var HandshakeIX = HandshakePattern + var HandshakeK = HandshakePattern + var HandshakeKK = HandshakePattern + var HandshakeKN = HandshakePattern + var HandshakeKX = HandshakePattern + var HandshakeN = HandshakePattern + var HandshakeNK = HandshakePattern + var HandshakeNN = HandshakePattern + var HandshakeNX = HandshakePattern + var HandshakeX = HandshakePattern + var HandshakeXK = HandshakePattern + var HandshakeXN = HandshakePattern + var HandshakeXX = HandshakePattern + var HandshakeXXfallback = HandshakePattern + type Cipher interface + Decrypt func(out []byte, n uint64, ad, ciphertext []byte) ([]byte, error) + Encrypt func(out []byte, n uint64, ad, plaintext []byte) []byte + type CipherFunc interface + Cipher func(k [32]byte) Cipher + CipherName func() string + var CipherAESGCM CipherFunc = cipherFn{ ... } + var CipherChaChaPoly CipherFunc = cipherFn{ ... } + type CipherState struct + func (s *CipherState) Cipher() Cipher + func (s *CipherState) Decrypt(out, ad, ciphertext []byte) ([]byte, error) + func (s *CipherState) Encrypt(out, ad, plaintext []byte) []byte + func (s *CipherState) Rekey() + type CipherSuite interface + Name func() []byte + func NewCipherSuite(dh DHFunc, c CipherFunc, h HashFunc) CipherSuite + type Config struct + CipherSuite CipherSuite + EphemeralKeypair DHKey + Initiator bool + Pattern HandshakePattern + PeerEphemeral []byte + PeerStatic []byte + PresharedKey []byte + PresharedKeyPlacement int + Prologue []byte + Random io.Reader + StaticKeypair DHKey + type DHFunc interface + DH func(privkey, pubkey []byte) []byte + DHLen func() int + DHName func() string + GenerateKeypair func(random io.Reader) (DHKey, error) + var DH25519 DHFunc = dh25519{} + type DHKey struct + Private []byte + Public []byte + type HandshakePattern struct + InitiatorPreMessages []MessagePattern + Messages [][]MessagePattern + Name string + ResponderPreMessages []MessagePattern + type HandshakeState struct + func NewHandshakeState(c Config) (*HandshakeState, error) + func (s *HandshakeState) ChannelBinding() []byte + func (s *HandshakeState) LocalEphemeral() DHKey + func (s *HandshakeState) MessageIndex() int + func (s *HandshakeState) PeerEphemeral() []byte + func (s *HandshakeState) PeerStatic() []byte + func (s *HandshakeState) ReadMessage(out, message []byte) ([]byte, *CipherState, *CipherState, error) + func (s *HandshakeState) WriteMessage(out, payload []byte) ([]byte, *CipherState, *CipherState, error) + type HashFunc interface + Hash func() hash.Hash + HashName func() string + var HashBLAKE2b HashFunc = hashFn{ ... } + var HashBLAKE2s HashFunc = hashFn{ ... } + var HashSHA256 HashFunc = hashFn{ ... } + var HashSHA512 HashFunc = hashFn{ ... } + type MessagePattern int + const MessagePatternDHEE + const MessagePatternDHES + const MessagePatternDHSE + const MessagePatternDHSS + const MessagePatternE + const MessagePatternPSK + const MessagePatternS