let crypto = require('crypto');
let fs = require('fs');
let str = '待加密的字符串'
// 私钥文件
let private_key = fs.readFileSync('rsa_private_key_pkcs8.txt');
let signer = crypto.createSign('RSA-SHA1');
signer.update(str);
let sign = signer.sign(private_key, 'base64');
sign = encodeURIComponent(sign);
console.log(sign);
其中rsa_private_key_pkcs8.txt
文件的格式大致如下:
-----BEGIN PRIVATE KEY-----
************************************************************
************************************************************
************************************************************
************************************************************
************************************************************
************************************************************
************************************************************
************************************************************
-----END PRIVATE KEY-----