lib/noise/functions/hash.rb in noise-ruby-0.9.4 vs lib/noise/functions/hash.rb in noise-ruby-0.10.0

- old
+ new

@@ -5,17 +5,20 @@ module Hash autoload :Blake2b, 'noise/functions/hash/blake2b' autoload :Blake2s, 'noise/functions/hash/blake2s' autoload :Sha256, 'noise/functions/hash/sha256' autoload :Sha512, 'noise/functions/hash/sha512' + autoload :Blake3, 'noise/functions/hash/blake3' def self.hmac_hash(key, data, digest) if digest.include?('SHA') OpenSSL::HMAC.digest(OpenSSL::Digest.new(digest), key, data) elsif digest.include?('BLAKE2b') Noise::Functions::Hash::Blake2bHMAC.new(key).update(data).digest elsif digest.include?('BLAKE2s') Noise::Functions::Hash::Blake2sHMAC.new(key).update(data).digest + elsif digest.include?('BLAKE3') + Noise::Functions::Hash::Blake3HMAC.new(key).update(data).digest end end def self.create_hkdf_fn(digest) lambda do |chaining_key, input_key_material, num_output|