问题标签 [hmac]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - HMACSHA256 哈希值是否可以从一台服务器传输到另一台服务器?
如果我HMACSHA256.ComputeHash
在我的密码编码方案中使用并在一台服务器上生成密码哈希,然后需要迁移到另一台服务器,我的哈希是否仍然编码相同?我记得看到一些关于machineKey
密码学操作的设置,但我并不完全熟悉。
c# - HMC SHA1 哈希 - C# 产生与 Ruby 不同的哈希输出
我正在尝试为我用来工作的第三方服务快速获取一个有缺陷的 .Net 客户端库。原始库(有效)是用 Ruby 编写的,但它们的 DotNet 等效库会为 Ruby 库生成不同的哈希输出。
Ruby加密代码如下:
(假定)等效的 C# 代码是:
但是,给定相同的输入和私钥,实际的哈希输出会有所不同。导致它产生错误哈希输出的 C# 方法有什么问题?
编辑
这是我编写代码的方式,尽管它仍然产生错误的输出:
正确答案
感谢 Henning 在下面的回答,我能够确定正确的代码是:
python - python相当于perl hmac_sha1_hex
我需要在 python 中重现 perl 的功能
如您所见,十六进制摘要不一样...如何在 python 中重现 perl 代码?
谢谢 !
hash - 使用 HMAC 进行消息签名时,对密钥、消息或两者都加盐是否明智?
假设我正在设计一个库来使用 SHA-256 HMAC 签名/验证消息。如果最终用户使用弱共享密钥并发送大量短消息,我认为攻击者可能会发现密钥。
我的直觉说我应该在密钥上附加一个唯一的(每条消息)盐,以使逆向工程密钥更加困难。
密钥加盐有多大帮助,我也会通过加盐消息获得什么?
bash - bash 中的 HMAC-SHA1
是否有 bash 脚本来生成HMAC-SHA1
哈希?
我正在寻找与以下 PHP 代码等效的内容:
security - 使用 HMAC 传输密码可以吗?
我正在编写一个小型 web 应用程序,我不想将登录密码作为明文传输。由于我没有可用的 SSL,我编写了一个一次性质询系统,该系统使用登录表单发送一个随机字符串,然后用于在客户端使用 HMAC-SHA256 对密码进行哈希处理。我使用随机挑战字符串作为消息,使用用户密码作为 HMAC 的密钥。
我知道自制解决方案通常是一个坏主意,所以我想问一下我是否在这里犯了错误。
c++ - HMACSHA1 关闭 2 个字节
我在 MSVC++ 2010 Express 中使用这个类:http: //www.codeproject.com/KB/recipes/HMACSHA1class.aspx。我正在运行 Vista 32 位。几乎让它工作我只是改变了......
SHA1.cpp:
到
因为如果没有此更改,它会说:“错误 C3861:'fopen':找不到标识符”。
我在 int main 中使用的代码是:
问题是我的摘要等于:0xb61731865557264e28bc0b6fb378c8ef146be0,它假设等于 0xb617318655057264e28bc0b6fb378c8ef146be00。有关此代码有什么问题以及如何使其正常工作的任何帮助都会有很大帮助...
或者也许有人可以为我指出正确的方向,以获得更好的 HMACSHA1 课程。Win32 的 CryptoAPI 既复杂又愚蠢。
vb.net - Visual Basic 2010 HMAC SHA1
我有一个将字符串转换为 hmac sha1 加密的代码。但是,我无法让它工作。这是我的代码:
当我像这样运行函数时:
我进入04p075DKS2Suw9jGQKC5Q7mYjvI=
文本框。我应该得到的是c2bc9dd26b76d5b61a40ac788220eef0b26cb2bb
任何人都知道如何解决这个问题?请帮忙 :)
c++ - HMAC-SHA1 示例未返回所需的哈希?
我正在使用这个例子:http: //msdn.microsoft.com/en-us/library/aa382379%28VS.85%29.aspx
直接复制粘贴,并使用以下链接作为查看摘要的参考:http: //buchananweb.co.uk/security01.aspx
我对自己做错了什么感到困惑。此示例适用于 HMAC-SHA1,对吗?如果有人可以告诉我出了什么问题,或者可以指出我正确的方向,那将有很大帮助。
c++ - MSDN HMAC-SHA1 示例不起作用
使用 CryptoAPI 创建 HMAC 步骤,在此处找到:http: //msdn.microsoft.com/en-us/library/Aa379863
计算 HMAC
- 通过调用 CryptAcquireContext 获取指向 Microsoft 加密服务提供程序 (CSP) 的指针。
- 通过调用 CryptCreateHash 创建 HMAChash 对象的句柄。在 Algid 参数中传递 CALG_HMAC。在 hKey 参数中传递对称密钥的句柄。此对称密钥是用于计算 HMAC 的密钥。
- 通过调用 CryptSetHashParam 并将 dwParam 参数设置为值 HP_HMAC_INFO 来指定要使用的散列类型。pbData 参数必须指向一个初始化的 HMAC_INFO 结构。
- 调用 CryptHashData 开始计算数据的 HMAC。第一次调用 CryptHashData 会导致使用 XOR 运算符将键值与内部字符串和数据组合。对 XOR 运算的结果进行哈希处理,然后对 HMAC 的目标数据(由调用 CryptHashData 时传递的 pbData 参数指向)进行哈希处理。如有必要,随后可以调用 CryptHashData 以完成目标数据的散列。
- 调用 CryptGetHashParam 并将 dwParam 参数设置为 HP_HASHVAL。此调用导致内部散列完成,并使用 XOR 与键组合外部字符串。异或运算的结果被哈希,然后内部哈希的结果(在上一步中完成)被哈希。然后完成外部散列并在 pbData 参数中返回,长度在 dwDataLen 参数中返回。
我不能,因为我的生活让这个工作。我按顺序完成了所有步骤,但仍然无法运行我的程序。运行时出错:
任何人都可以帮忙吗?