Javascript 读取并使用私钥对节点js中的数据进行签名[OpenSSL和PHP示例]
我一直在尝试将php代码重写为node.js,但遇到了一个问题 这是我一直坚持的PHP代码(稍加修改): 还有一件事,这个Javascript 读取并使用私钥对节点js中的数据进行签名[OpenSSL和PHP示例],javascript,php,node.js,encryption,pyopenssl,Javascript,Php,Node.js,Encryption,Pyopenssl,我一直在尝试将php代码重写为node.js,但遇到了一个问题 这是我一直坚持的PHP代码(稍加修改): 还有一件事,这个RSA-SHA256必须是带有RSA的SHA1。此示例从不生成正好128个字符的字符串。它返回一个缓冲区,无论我如何解析或转换它,我都无法达到要求。我在两个示例中使用相同的私钥 有什么想法吗 $fp = fopen($privateKeyFileName, "r"); $priv_key = fread($fp, 8192); fclose($fp); echo "P
RSA-SHA256
必须是带有RSA的SHA1。此示例从不生成正好128个字符的字符串。它返回一个缓冲区,无论我如何解析或转换它,我都无法达到要求。我在两个示例中使用相同的私钥
有什么想法吗
$fp = fopen($privateKeyFileName, "r");
$priv_key = fread($fp, 8192);
fclose($fp);
echo "PRIVATE KEY: <br/><br/>";
var_dump($priv_key);
$pkeyid = openssl_pkey_get_private($priv_key, $privateKeyPassword);
echo " <br/><br/>PRIVATE KEY ID: <br/><br/>";
var_dump($pkeyid);
openssl_sign($message, $signature, $pkeyid);
openssl_free_key($pkeyid);
echo " <br/><br/>SIGNATURE: <br/><br/>";
var_dump($signature);
$message .= $signature;
echo " <br/><br/>END MESSAGE: <br/><br/>";
var_dump($message);
function signData(data) {
var sign = crypto.createSign('RSA-SHA256');
sign.update(data);
var signed = sign.sign(privateKey);
return signed;
}