5.1.1 Encryption to a Public Key (Chiffrement vers une clé publique)
5.1.1 Encryption to a Public Key (Chiffrement vers une clé publique)
La fonction la plus basique d'un schéma HPKE est de permettre le chiffrement vers le détenteur d'une clé privée KEM donnée. Les procédures SetupBaseS() et SetupBaseR() établissent des contextes qui peuvent être utilisés respectivement pour chiffrer et déchiffrer pour une clé privée donnée.
Le secret partagé KEM est combiné via le KDF avec des informations décrivant l'échange de clés, ainsi que le paramètre info explicite fourni par l'appelant.
Le paramètre pkR est une clé publique, et enc est un secret partagé KEM encapsulé.
def SetupBaseS(pkR, info):
shared_secret, enc = Encap(pkR)
return enc, KeyScheduleS(mode_base, shared_secret, info,
default_psk, default_psk_id)
def SetupBaseR(enc, skR, info):
shared_secret = Decap(enc, skR)
return KeyScheduleR(mode_base, shared_secret, info,
default_psk, default_psk_id)