5.1.1 Encryption to a Public Key (加密到公钥)
5.1.1 Encryption to a Public Key (加密到公钥)
HPKE 方案的最基本功能是能够加密到给定 KEM 私钥的持有者.SetupBaseS() 和 SetupBaseR() 过程建立可用于针对给定私钥分别进行加密和解密的上下文.
KEM 共享秘密通过 KDF 与描述密钥交换的信息以及调用者提供的显式 info 参数结合.
参数 pkR 是公钥, enc 是封装的 KEM 共享秘密.
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)