init(privateKey:ciphersuite:info:encapsulatedKey:presharedKey:presharedKeyIdentifier:)
Creates a recipient in preshared key (PSK) mode.
Declaration
init<SK>(privateKey: SK, ciphersuite: HPKE.Ciphersuite, info: Data, encapsulatedKey: Data, presharedKey psk: SymmetricKey, presharedKeyIdentifier pskID: Data) throws where SK : HPKEDiffieHellmanPrivateKeyParameters
- privateKey:
The recipient’s private key for decrypting the incoming messages.
- ciphersuite:
The cipher suite that defines the cryptographic algorithms to use.
- info:
Data that the key derivation function uses to compute the symmetric key material. The sender and the recipient need to use the same
infodata. - encapsulatedKey:
The encapsulated symmetric key that the sender provides.
- psk:
A preshared key (PSK) that the sender and the recipient both hold.
- pskID:
An identifier for the PSK.
Discussion
The Receiver decrypts messages in PSK mode using the encapsulated key with the key schedule information (info data), in addition to a symmetric encryption key that the sender and recipient both know in advance.