spec/hmac_spec.rb in gibberish-1.1.0 vs spec/hmac_spec.rb in gibberish-1.2.0
- old
+ new
@@ -10,6 +10,49 @@
hmac = Gibberish::HMAC("password", "data\n")
o_hmac = `echo "data" | openssl dgst -sha1 -hmac 'password'`
hmac.must_equal(o_hmac.chomp)
end
+ it "should hopefully work for sha224" do
+ Gibberish::HMAC("password", "data", :digest => :sha224).must_equal(
+ "f66aa39e91d003f7d3fc1205f77bd4947af51735a49e197fbd478728")
+ end
+
+ it "should work with OpenSSL HMAC for sha224" do
+ hmac = Gibberish::HMAC("password", "data\n", :digest => :sha224)
+ o_hmac = `echo "data" | openssl dgst -sha224 -hmac 'password'`
+ hmac.must_equal(o_hmac.chomp)
+ end
+
+ it "should hopefully work for sha256" do
+ Gibberish::HMAC("password", "data", :digest => :sha256).must_equal(
+ "cccf6f0334130a7010d62332c75b53e7d8cea715e52692b06e9cd41b05644be3")
+ end
+
+ it "should work with OpenSSL HMAC for sha256" do
+ hmac = Gibberish::HMAC("password", "data\n", :digest => :sha256)
+ o_hmac = `echo "data" | openssl dgst -sha256 -hmac 'password'`
+ hmac.must_equal(o_hmac.chomp)
+ end
+
+ it "should hopefully work for sha384" do
+ Gibberish::HMAC("password", "data", :digest => :sha384).must_equal(
+ "2ed475691214fb85d086577d8d525c609b92520ebd793a74856b3ffd8d3477eaaf0b06ef9e06c8aa81cf29f95078aca6")
+ end
+
+ it "should work with OpenSSL HMAC for sha384" do
+ hmac = Gibberish::HMAC("password", "data\n", :digest => :sha384)
+ o_hmac = `echo "data" | openssl dgst -sha384 -hmac 'password'`
+ hmac.must_equal(o_hmac.chomp)
+ end
+
+ it "should hopefully work for sha512" do
+ Gibberish::HMAC("password", "data", :digest => :sha512).must_equal("abf85192282b501874f4803ea08672f2c9d6e656c57801023a0b1f4dd9492ba960efdb560a8618ec783327d6dc31577422651a4cf7eaf722d2caefbc04038c6e")
+ end
+
+ it "should work with OpenSSL HMAC for sha512" do
+ hmac = Gibberish::HMAC("password", "data\n", :digest => :sha512)
+ o_hmac = `echo "data" | openssl dgst -sha512 -hmac 'password'`
+ hmac.must_equal(o_hmac.chomp)
+ end
+
end