gpt4 book ai didi

Node.js 加密签名者不会生成签名

转载 作者:太空宇宙 更新时间:2023-11-03 22:02:56 24 4
gpt4 key购买 nike

我有以下代码:

var crypto = require("crypto");
var fs = require("fs");
var path = require("path");

var signer = crypto.createSign("sha1");
signer.update("abc123");
var key = fs.readFileSync(path.join(__dirname,"sign.key"),"utf8");
var sig = signer.sign(key,"hex");

我尝试过“sha1”、“sha”、“sha256”(这是我想要的)和“RSA-SHA256”。无论我做什么,“signer.sign”调用总是返回一个空字符串。

我还在两台独立的机器(OSX 和 Linux)上尝试了所有这些

私钥的格式为: -----开始 RSA 私钥----- -----结束 RSA 私钥-----我知道这是正确的,因为我已经成功地在另一个系统上进行了测试

关于我可能做错了什么的任何想法

最佳答案

好的,我找到了答案,所以我要在这里回答自己,以防有人正在寻找它。

看来证书文件必须保存ASCII

即使你指定ascii作为编码,它仍然不起作用。

我不确定这是为什么,因为我希望 V8 将所有字符串标准化为相同的编码(UTF-8?),但显然不是。

关于Node.js 加密签名者不会生成签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12845633/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com