| Maintainer | John Galt <jgalt@centromere.net> |
|---|---|
| Stability | experimental |
| Portability | POSIX |
| Safe Haskell | None |
| Language | Haskell2010 |
Crypto.Noise.Internal.Handshake.Pattern
Description
- data Token next
- type MessagePattern = Ap Token
- e :: MessagePattern ()
- s :: MessagePattern ()
- ee :: MessagePattern ()
- es :: MessagePattern ()
- se :: MessagePattern ()
- ss :: MessagePattern ()
- psk :: MessagePattern ()
- data Message next
- = PreInitiator (MessagePattern ()) next
- | PreResponder (MessagePattern ()) next
- | Initiator (MessagePattern ()) next
- | Responder (MessagePattern ()) next
- type MessageSequence = Ap Message
- preInitiator :: MessagePattern () -> MessageSequence ()
- preResponder :: MessagePattern () -> MessageSequence ()
- initiator :: MessagePattern () -> MessageSequence ()
- responder :: MessagePattern () -> MessageSequence ()
- data HandshakePattern = HandshakePattern {
- _hpName :: ByteString
- _hpPSKMode :: Bool
- _hpMsgSeq :: MessageSequence ()
- hpPSKMode :: Lens' HandshakePattern Bool
- hpName :: Lens' HandshakePattern ByteString
- hpMsgSeq :: Lens' HandshakePattern (MessageSequence ())
- newtype HasPSK = HasPSK {}
- handshakePattern :: ByteString -> MessageSequence () -> HandshakePattern
Documentation
type MessagePattern = Ap Token Source #
e :: MessagePattern () Source #
s :: MessagePattern () Source #
ee :: MessagePattern () Source #
es :: MessagePattern () Source #
se :: MessagePattern () Source #
ss :: MessagePattern () Source #
psk :: MessagePattern () Source #
Constructors
| PreInitiator (MessagePattern ()) next | |
| PreResponder (MessagePattern ()) next | |
| Initiator (MessagePattern ()) next | |
| Responder (MessagePattern ()) next |
type MessageSequence = Ap Message Source #
preInitiator :: MessagePattern () -> MessageSequence () Source #
preResponder :: MessagePattern () -> MessageSequence () Source #
initiator :: MessagePattern () -> MessageSequence () Source #
responder :: MessagePattern () -> MessageSequence () Source #
data HandshakePattern Source #
This type represents a handshake pattern such as Noise_IK. A large set of
pre-defined patterns can be found in Crypto.Noise.HandshakePatterns.
Expert users are encouraged to define their own custom patterns with care.
Constructors
| HandshakePattern | |
Fields
| |
hpMsgSeq :: Lens' HandshakePattern (MessageSequence ()) Source #
handshakePattern :: ByteString -> MessageSequence () -> HandshakePattern Source #
Constructs a HandshakePattern given a protocol name (such as XXpsk3)
and raw pattern. Please see the README for information about creating your
own custom patterns.