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

问题描述 投票:-1回答:1

我是谷歌表脚本编程的新手。

我正在尝试使用消息计算SHA512哈希并使用我的密钥加密它。

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

先感谢您!

google-sheets google-spreadsheet-api hmac sha512 google-apps-script-editor
1个回答
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数组转换为无符号十六进制数。

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

© www.soinside.com 2019 - 2024. All rights reserved.