我正在尝试使用 Crypto generateMac 函数在 Salesforce 中生成 HMAC 值,但结果与其他实用程序不匹配。
例如,我正在尝试Hash me
使用 key对值进行哈希处理ac67ad3b8771bf63d4fa9582845a18f921514f36
。我期待结果是66fe419859ac42ad88354dfa52f2196a26d767e1
,但实际上是7d1f56c728dfefdcb9edb72b7c0c8df2acf1cae9
。
我的顶点代码是:
Blob mac = Crypto.generateMac('HMacSHA1', Blob.valueOf('Hash me'),
Blob.valueOf('33a1211c0ee01511ccba1e456bb95503'));
string hasedValue = EncodingUtil.convertToHex(mac);
我猜这个问题与转换为二进制或可能与大小写有关,但我无法匹配预期的结果。
我的预期结果基于http://hash.online-convert.com/sha1-generator和其他几个在线 HMAC 计算器的结果。