带消息和秘密Google表格的SHA512哈希

时间:2018-01-07 20:14:24

标签: google-sheets google-spreadsheet-api hmac sha512 google-apps-script-editor

我是google sheet脚本编程的新手。

我正在尝试使用邮件计算SHA512哈希值并使用我的密钥对其进行加密。

在等效的PDP中,我有:$sign=hash_hmac('sha512',$message,$secret);

提前谢谢!

1 个答案:

答案 0 :(得分:3)

这个怎么样?

示例脚本:

var result = Utilities.computeHmacSignature(Utilities.MacAlgorithm.HMAC_SHA_512, message, secret);
result = result.map(function(e) {
    var v = (e < 0 ? e + 256 : e).toString(16);
    return v.length == 1 ? "0" + v : v;
}).join("");
Logger.log(result)

注意:

    php的
  • hash_hmac是无符号十六进制的字符串。
  • 在Google Apps脚本中,由Utilities.computeHmacSignature()加密的数据是带符号十六进制的字节数组。
  • 为了在GAS中使用它,需要将bytes数组转换为无符号十六进制。

如果这不是你想要的,你能告诉我一个输入和输出值的样本吗?通过这个,它将能够进行调试。