问题标签 [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.
security - 使用通道加密 (https) 是否会使散列密钥变得多余?
我正在设计一个客户端连接到的 Web 服务,以检索一些私人数据。每个客户端都有一个唯一的 ID 和一个密钥(由服务器生成),它们作为参数发送到 Web 服务,以便对其自身进行身份验证。此外,所有通信均通过 HTTPS 完成。
我还计划使用 HMAC-SHA256,以避免通过网络发送密钥。
但是,我想知道这是否是绝对必要的。由于 HTTPS 为我提供了客户端和服务器之间的安全通道,为什么我真的介意通过该通道发送密钥?
我设法想出的唯一原因是,不知情的开发人员将来可能会添加服务并且不会拒绝非 HTTPS 连接,因此散列密钥是对公司软件开发现实的一种保险,多出一条线如果你愿意的话。
我错过了更重要的东西吗?这是一些攻击媒介可以利用的真正漏洞吗?
c# - 如何在 C# 中生成 HMAC-SHA1?
我正在尝试使用 C# 来使用 REST API。API 创建者提供了 PHP、Ruby 和 Java 的示例库。我挂断了它的一部分,我需要生成一个HMAC
.
这是他们提供的示例库中的完成方式。
PHP
红宝石
爪哇
这是我在 C# 中的尝试。它不工作。更新:下面的 C# 示例工作得很好。我发现真正的问题是由于我的signatureString
.
java - HMAC-SHA1:如何在 Java 中正确执行?
我正在使用 HMAC-SHA1 散列一些值,使用 Java 中的以下代码:
Hex()
属于org.apache.commons.codec
在 PHP 中有一个类似的函数hash_hmac(algorithm, data, key)
,我用它来比较我的 Java 实现返回的值。
所以第一次尝试是:
返回:74ae5a4a3d9996d5918defc2c3d475471bbf59ac
我的 Java 函数74ae5a4a3d9996d5918defc2c3d475471bbf59ac
也返回。
好的,它似乎工作。然后我尝试使用更复杂的密钥:
返回:e98bcc5c5be6f11dc582ae55f520d1ec4ae29f7a
虽然这次我的 Java impl 返回:c19fccf57c613f1868dd22d586f9571cf6412cd0
我的 PHP 代码返回的哈希值不等于我的 Java 函数返回的值,我不知道为什么。
有小费吗?
c# - 一次性密码 (OTP) C# 到 Java 的代码转换
去年,我用 C# 编写了一次性密码 (OTP) 生成器。现在我需要在 Java 中使用 OTP 生成器,但我在 Java 中找不到等效的函数。
这是我去年写的代码:(我知道这个 OTP 的安全性很低,但我不需要防弹的)
这是我尝试将 C# 转换为的 Java 代码:(这只是 SHA1 部分,我找不到如何用 Java 编写 HMAC-MD5)
感谢帮助
objective-c - Using CommonCrypto/CommonHMAC to encrypt some data and always comes back null
I tried the following to encrypt the clearTextData
using the key keyData
. And I did check to make sure that both of those values are valid and going through.
The log always comes back saying encrypted data: (null)
Any ideas?
* UPDATE *
Here are examples of the key and data that I am passing:
key: 983745hjhgfd3454
data: {"data":"lala","pubKey":"75948458","sig":"val"}
android - Android中的HMAC-Whirlpool实现
有没有人在 Android 手机上实现或使用 Hmac-Whirlpool?
我在互联网上找到了whirlpool.java,但 Android SDK 中的默认安全提供程序似乎没有 Whirlpool 或 Hmac-Whirlpool。
md5 - 在已经散列的值上使用 HMAC,是好是坏?
大家好,我有一个问题,这是否是好的做法。我知道由于各种原因,简单地对一个值进行双重散列可能会很糟糕。
我想做的就是这样,在 php.ini 中。
这样做的原因是我们正在通过一个封闭的 api 与一个受信任的合作伙伴进行身份验证。密码以 MD5 散列形式存储在我们的数据库中。但是,我不希望我们的合作伙伴通过网络发送相同的值。
这样,我可以将我们数据库中的 md5 密码与我们的合作伙伴发送的唯一哈希进行比较。
你说什么?
java - 使用 SHA1 的 Fantom HMAC 的 Java 等价物
我在 Java 中执行以下操作时遇到问题。下面是我正在使用的工具文档中的 Fantom 代码。
我一直在通过 Google 搜索各种示例,但没有一个产生文档声明应返回的结果。
有 Fantom 知识的人可以验证文档中的示例是否正确吗?
至于Java方面,这是我最近的尝试
但是,当我使用以下参数调用该方法时
我明白了
security - HMAC SHA-512 计算 + 时间戳
我正在做一个在线“黑客”挑战,我正在努力达到一个新的水平。
在当前级别,我们获得了“快速思考”的标题,并提出了以下问题,
“斐波那契数列中的元素 x 是什么,其中元素零为 0?”
其中 x 是随机生成的。
当我计算答案并提交它时,它会提示我对上述问题的另一个迭代(x 的值不同),并显示“回答不够快”。我已经尝试尽可能快地提交答案,但无济于事,所以必须有另一种方法。
如果我们查看页面的源代码,我们会看到以下内容:(我只会发布我认为有趣/相关的部分)
所以我的下一个想法是通过更改 url 中包含的信息来编辑时间戳,就像这样
(只是一个例子来解释我的做法,可能与上面代码中列出的答案、时间戳、hmac 不匹配)
http ://www.skullspace.net/2011/08-batman/herecomes9.php?answer=1×tamp=1&number=1&hmac=e41bd1f9093a67b70ce9316b19abc1862ec 35c5c0f746444d8018286bf19d9adb05a652c46b5de53b2d4f d6bfb2c1f848c8dc92a54e84d042953d6b48b30b0f9
如果我将它提交到我的浏览器中,我们会得到标题,“不要试图变得聪明,HMAC 必须与你提供的参数相匹配。”
这就是我卡住的地方。
有没有人对我如何进入下一个级别有任何想法或提示?我可以以某种方式使 HMAC 匹配吗?完全有另一种方法吗?
感谢您的想法/输入/帮助!
php - 与 SHA512 一起使用时,我应该为 php 的 hmac 制作密钥多长时间?
我正在使用此代码对密码进行哈希处理:
4096 位对于密钥是否足够?
谢谢!