我得到了我的私钥和 api 密钥,如何使用 javascript 创建 HMAC 签名.HMAC签名到底是什么
I have got my private key and api key,How to create HMAC signature using javascript.What actually is HMAC signature?
我想在我的印度铁路的 SharePoint 应用程序中创建 HMAC-SHA1 签名,我应该如何创建以下代码不起作用,我的意思是当我复制粘贴我的 HMAC 签名到 URL 时,它会给出错误,{"error":"UNAUTHORIZED ACCESS. HMAC SIGNATURE MISMATCH."}
。并且不显示json,我应该如何实现它,以下是我的代码。
<script src="lib/jsSHA/src/sha1.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/hmac-sha1.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/components/enc-base64-min.js"></script>
<script type="text/javascript" >
var message = "json539ff0f815ca697c681fe01d32ba52e31234567890";
var secret = "<my private key>";
var crypto = CryptoJS.HmacSHA1(message, secret).toString(CryptoJS.enc.Base64);
//var crypto = CryptoJS.HmacSHA1(message, secret).toString();
alert(crypto);
var shaObj = new jsSHA(message, "ASCII");
alert("Welcome");
var jssha = shaObj.getHMAC(secret, "ASCII", "SHA-1", "B64");
alert(crypto + "'n" + jssha);
</script>
HMAC是一种哈希算法(它计算所提供消息的CRC代码,但基于加密)。HMAC 计算消息的哈希值并为其使用键。其目的是证明哈希值仅由知道密钥的人计算,而没有其他人计算。
HMAC 不匹配错误可能由多种原因引起:
- 您使用了错误的 HMAC 算法。在您的代码中,您使用 HMAC SHA1,但其中有很多
- 您使用了良好的 HMAC 算法,但使用了错误的 HMAC 参数。HMAC 算法通常有几个参数,如长度、链接模式,...
- 您使用了错误的邮件格式。在计算 HMAC 之前,可能存在某种邮件格式规则。
- 您使用了错误的密钥。
它是通过以下代码发生的,
<script src="lib/jsSHA/src/sha1.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/hmac-sha1.js"></script>
<script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/components/enc-base64-min.js"></script>
var message = "mrjjson539ff0f815ca697c681fe01d32ba52e3";
var secret = "e439c4c1b7d7d2d52d11c0f1cb56552d";
//var crypto = CryptoJS.HmacSHA1(message, secret).toString(CryptoJS.enc.Base64);
var crypto = CryptoJS.HmacSHA1(message, secret).toString();
//var shaObj = new jsSHA(message, "ASCII");
//var jssha = shaObj.getHMAC(secret, "ASCII", "SHA-1", "B64");
alert("crypto answer is " + crypto);
相关文章:
- 为什么不't Javascript对我的输入值进行了一些重新检查
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 将函数的上下文应用于javascript变量
- 使用php或javascript从facebook相册URL中删除多余的部分
- 正在添加'X'按钮,在文本字段旁边使用javascript
- 如何在JavaScript中将字符串转换为函数引用
- 模糊事件的Javascript测试
- Javascript更改图标
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- 如何使用WCF服务和javascript表单post上传.doc文件
- javascript结合了数组和字典
- javascript中的HMAC SHA256十六进制摘要
- HMAC C# and JavaScript
- 为什么HMAC sha256在PHP和Javascript上返回不同的值
- 十六进制HMAC MD5输入十六进制(hmacmd5(input))javascript
- 如何获得Hmac代码与javascript
- 在javascript中实现HMAC卡住了
- 基于JavaScript的HMAC有多安全?
- 我得到了我的私钥和 api 密钥,如何使用 javascript 创建 HMAC 签名.HMAC签名到底是什么
- iOS和javascript库之间的HMAC SHA-512生成差异