草庐IT

c - HMAC-MD5 与 CryptoApi

coder 2024-06-13 原文

我已经采用了SHA1 HMAC example来自微软的网站并根据这个stack-overflow post进行了修改以及 Internet 上的其他一些建议,但是我无法生成正确的值。

基本上我只是将 SHA1 替换为 MD5 CALG_SHA1 -> CALG_MD5。

有人有工作示例吗?

密码的 CryptDeriveKey() 使用什么算法(RC2 或 RC4)重要吗?

谢谢!

编辑: 找到工作代码 here

最佳答案

您的值与示例不同,因为您使用了不同的键: 可以使用 Linux 获取示例值 openssl dgst -md5 -hmac key < input命令。如果该命令的长度小于 MD5 哈希 block 长度(64 字节),则此命令按原样使用 key ,否则它使用 MD5(key) 作为 key ,而不是使用 CryptDeriveKey(RC4, MD5(key)) 派生的 key ,例如在您的实现中。

关于c - HMAC-MD5 与 CryptoApi,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16335428/

有关c - HMAC-MD5 与 CryptoApi的更多相关文章

  1. ruby - 我可以创建长度为 8 的 md5 哈希吗? - 2

    是否可以创建8个字符长的md5散列? 最佳答案 MD5创建16字节的哈希值。您当然可以将字符串裁剪为八个字符,如myString[0..7]一样,但请注意,这不再是有效的MD5散列。 关于ruby-我可以创建长度为8的md5哈希吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5854208/

  2. ruby-on-rails - 如何在 Ruby 中使用 HMAC 模块创建 MD5 哈希? - 2

    使用Google+Bing并没有给出应该是一个简单问题的答案:您应该如何使用Ruby中的HMAC模块来创建带MD5的HMAC(使用secret)?HMAC文档看起来非常薄。谢谢! 最佳答案 这应该是最简单的方法:OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new('md5'),secret_key,your_data) 关于ruby-on-rails-如何在Ruby中使用HMAC模块创建MD5哈希?,我们在StackOverflow上找到一个

  3. ruby - digest/hmac 是 ruby​​ 标准库的一部分 - 2

    我正在处理一些具有以下内容的代码:beginrequire'digest/hmac'USE_EMBEDDED_HMAC=falserescueputs"HMAC,notfoundinstandardlib."+$!.messagerequire'hmac-sha1'USE_EMBEDDED_HMAC=trueend如我所见,至少在rails1.8.6中它不是标准库的一部分。它是ruby​​1.9lib的一部分吗?如果没有,我应该安装任何gem吗?请注意,使用OpenSSL的解决方案不会被接受,因为它无论如何都会在“要求‘摘要/hmac’”中失败有问题的代码在这里http://githu

  4. c# - ruby 中的 hmac-sha1 不同于 C# HMACSHA1 - 2

    我正在尝试测试来自ankoder.com的APIauthenticationtoken的摘要计算有问题.当我尝试从C#调用时,示例是ruby。当我比较HMAC-SHA1中的摘要结果时,我发现key结果有问题。为了便于测试这里是代码:require'hmac-sha1'require'digest/sha1'require'base64'token="-Sat,14Nov200909:47:53GMT-GET-/video.xml-"private_key="whatever"salt=Digest::SHA1.hexdigest(token)[0..19]passkey=Base64.

  5. ruby - Ruby 1.9.3 中的摘要::MD5 - 2

    我在这里遇到了一些奇怪的事情。我有一个“身份验证器”,它依赖于ND5来散列我们作为密码匹配的特定字符串。我运行测试时出现的问题是:NoMethodError:undefinedmethod`md5'for#./models/authenticators/billing.rb:63:in`validate'./routes/login.rb:166:in`block(2levels)in'./routes/login.rb:158:in`each'./routes/login.rb:158:in`blockin'(eval):2:in`click_button'./features/st

  6. ruby - 使用 ruby​​ 中的 SHA256 哈希算法计算符合 RFC 2104 的 HMAC - 2

    我在浏览亚马逊产品广告APIRESTsignaturedocs时卡在了#8CalculateanRFC2104-compliantHMACwiththeSHA256hashalgorithmusingthestringabovewithour"dummy"SecretAccessKey:1234567890.Formoreinformationaboutthisstep,seedocumentationandcodesamplesforyourprogramminglanguage.没关系,在CalculatingaSHAhashwithastring+secretkeyinpytho

  7. ruby-on-rails - 在 Ruby 中使用 HMAC SHA256 - 2

    我正在尝试应用HMAC-SHA256为RestAPI生成key。我正在做这样的事情:defgenerateTransactionHash(stringToHash)key='123'data='stringToHash'digest=OpenSSL::Digest.new('sha256')hmac=OpenSSL::HMAC.digest(digest,key,data)putshmacend它的输出始终是这样的:(如果我将“12345”作为参数或“HUSYED815X”,我会得到相同的结果)ۯw/{o���p�T����:��a�h��E|qAPI因此无法正常工作...有人可以帮我

  8. php - Ruby 和 PHP HMAC 不一致 - 2

    我尝试在Ruby中创建一个HMAC,然后在PHP中验证它。ruby:require'openssl'message="A522EBF2-5083-484D-99D9-AA97CE49FC6C,1234567890,/api/comic/aWh62,GET"key="3D2143BD-6F86-449F-992C-65ADC97B968B"hash=OpenSSL::HMAC.hexdigest('sha256',message,key)phashPHP:对于Ruby,我得到:20e3f261b762e8371decdf6f42a5892b530254e666508e885c708c5b

  9. ruby-on-rails - 如何确定 Rails Assets 管道中给定 Assets 的 MD5 摘要? - 2

    我正在RubyonRails3.1项目中编写一个富含Javascript的应用程序,并将Handlebars用于我的JS模板框架。我正在尝试找出一种方法,将Assets的MD5摘要(在生产中的Assets预编译期间生成)动态附加到我的Handlebars模板内的标签中。我希望有一个以Assets路径为键、以MD5摘要为值的散列,但我一直找不到。一个理想的解决方案是将哈希值从Ruby传递到Javascript并定义一个Handlebars助手,它会自动将MD5摘要附加到Assets的“src”属性。有没有人尝试过做类似的事情?必须有一种方法可以在Rails中使用Javascript模板并

  10. ruby - 如何在 Ruby 中解密 MD5? - 2

    这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Isitpossibletodecryptmd5hashes?我在Ruby中这样做:Digest::MD5.hexdigest("Jose")并得到“70483b6e100c9cebbffcdc62dea07eda”但是,我如何将它解密回“Jose”?

随机推荐