EVP_KEM-X448
名称
EVP_KEM-X25519, EVP_KEM-X448 - EVP_KEM X25519和EVP_KEM X448密钥类型和算法支持
描述
X25519和<X448>密钥类型及其参数在EVP_PKEY-X25519(7)中描述。有关更多信息,请参阅EVP_PKEY_encapsulate(3)和EVP_PKEY_decapsulate(3)。
X25519和X448 KEM参数
- "operation" (OSSL_KEM_PARAM_OPERATION)<UTF8字符串>
-
OpenSSL X25519和X448密钥封装机制仅支持以下操作
- "DHKEM" (OSSL_KEM_PARAM_OPERATION_DHKEM)
-
封装函数生成一个临时密钥对。它通过使用临时私钥和提供的接收方公钥进行X25519或X448密钥交换来生成密钥材料。然后,使用密钥材料和kem上下文进行HKDF操作来生成共享密钥。共享密钥和临时公钥将被返回。解封装函数使用接收方私钥和临时公钥来生成相同的密钥材料,然后可以使用该密钥材料来生成相同的共享密钥。请参阅https://www.rfc-editor.org/rfc/rfc9180.html#name-dh-based-kem-dhkem
这可以使用EVP_PKEY_CTX_set_kem_op()或EVP_PKEY_CTX_set_params()来设置。
- "ikme" (OSSL_KEM_PARAM_IKME) <八位字节字符串>
-
用于指定用于生成临时密钥的密钥材料。此值不应重复用于其他目的。对于X25519,其长度应至少为32,对于X448,其长度应至少为56。如果未设置此值,则使用随机ikm。
符合标准
- RFC9180
另请参阅
EVP_PKEY_CTX_set_kem_op(3),EVP_PKEY_encapsulate(3),EVP_PKEY_decapsulate(3) EVP_KEYMGMT(3),EVP_PKEY(3),provider-keymgmt(7)
历史
此功能在OpenSSL 3.2中添加。
版权
版权所有 2022 OpenSSL 项目作者。保留所有权利。
根据 Apache 许可证 2.0(“许可证”)获得许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的LICENSE文件中或https://www.openssl.org/source/license.html中获取副本。