作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 crypto-js 等 JavaScript 库实现 HMAC 效果如何?
在 crypto-js 网站提供的示例中[https://code.google.com/p/crypto-js/#SHA-2 ] 提到了
var hash = CryptoJS.HmacSHA512("Message", "Secret Passphrase");
如果java脚本文件本身提到了 key ,任何人都可以查看源代码并了解 key 。
我的理解正确吗?
另外,请告诉我何时需要在 Web 应用程序中使用此类加密 JavaScript 库?
最佳答案
是的,你是对的。要点如下:
这项工作可以在服务器端使用,使用node.js。所以, key 不存在安全问题
客户端,存在安全问题,但 HMAC-X 函数用于对消息进行签名,因此正常的工作流程是使用用户 secret 密码对消息进行签名,然后发送在网络上(签名消息,而不是 secret )。工作完成后应删除该 secret 。
因此用户可以通过调试代码来访问 secret ,但这是他的所以......事实上并没有真正的安全问题。
关于JavaScript 密码学库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33067629/
我有 Java 算法/计算和单元测试。单元测试期望结果具有一定的精度/增量。现在我将算法移植到 .NET 中并希望使用相同的单元测试。我使用双数据类型。 问题是 Java 对 Math 类中的某些操作
我是一名优秀的程序员,十分优秀!