lib/ezcrypto.rb in ezcrypto-0.7 vs lib/ezcrypto.rb in ezcrypto-0.7.2

- old
+ new

@@ -561,12 +561,19 @@ =begin rdoc =end def self.generate_key64(size=32) key=OpenSSL::Random.random_bytes(size) - digest(key,size) + digest64(key,size) end +=begin rdoc + +=end + def self.generate_hexkey(size=40) + key=OpenSSL::Random.random_bytes(size) + hexdigest(key,size) + end =begin rdoc =end def self.digest(data,size=16) @@ -576,15 +583,28 @@ Digest::SHA1.digest(data)[0..(size-1)] else Digest::SHA256.digest(data)[0..(size-1)] end end + +=begin rdoc + +=end + def self.hexdigest(data,size=40) + if size==0 + "" + elsif size<=40 + Digest::SHA1.hexdigest(data)[0..(size-1)] + else + Digest::SHA256.hexdigest(data)[0..(size-1)] + end + end =begin rdoc =end - def self.digest64(data) - Base64.encode64(digest(data)) + def self.digest64(data,size=16) + Base64.encode64(digest(data,size)) end end end