当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby OpenSSL::KDF.hkdf用法及代码示例

用法

hkdf(ikm, salt:, info:, length:, hash:) → String

RFC 5869 中指定的基于 HMAC 的 Extract-and-Expand key 派生函数 (HKDF)。

OpenSSL 1.1.0 中的新函数。

参数

ikm

输入 key 材料。

salt

盐。

info

上下文和应用程序特定信息。

length

以八位字节为单位的输出长度。必须是 255 * HashLen ,其中 HashLen 是以八位字节为单位的哈希函数输出的长度。

hash

哈希函数。

示例

# The values from https://datatracker.ietf.org/doc/html/rfc5869#appendix-A.1
ikm = ["0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b"].pack("H*")
salt = ["000102030405060708090a0b0c"].pack("H*")
info = ["f0f1f2f3f4f5f6f7f8f9"].pack("H*")
p OpenSSL::KDF.hkdf(ikm, salt: salt, info: info, length: 42, hash: "SHA256").unpack1("H*")
# => "3cb25f25faacd57a90434f64d0362f2a2d2d0a90cf1a5a4c5db02d56ecc4c5bf34007208d5b887185865"

相关用法

注:本文由堆栈答案筛选整理自ruby-lang.org大神的英文原创作品 OpenSSL::KDF.hkdf。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。