diff options
author | Yusuke Nakamura <unasuke@users.noreply.github.com> | 2021-06-27 16:37:18 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-27 16:37:18 +0900 |
commit | ec14a87f4faff61ffedebd99d94f063ee022b665 (patch) | |
tree | fee551c72d418e99c2c0e6897e4e5a07f1795f97 | |
parent | a4ea0c2bb0b3fd40c2ffd75e3c6a06cbfdd5425a (diff) | |
download | ruby-openssl-ec14a87f4faff61ffedebd99d94f063ee022b665.tar.gz |
Add example to OpenSSL::KDF.hkdf method (#447)
The values from RFC 5869
https://datatracker.ietf.org/doc/html/rfc5869#appendix-A.1
-rw-r--r-- | ext/openssl/ossl_kdf.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/openssl/ossl_kdf.c b/ext/openssl/ossl_kdf.c index 486e7894..7fa38b86 100644 --- a/ext/openssl/ossl_kdf.c +++ b/ext/openssl/ossl_kdf.c @@ -163,6 +163,14 @@ kdf_scrypt(int argc, VALUE *argv, VALUE self) * HashLen is the length of the hash function output in octets. * _hash_:: * The hash function. + * + * === Example + * # 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" */ static VALUE kdf_hkdf(int argc, VALUE *argv, VALUE self) |