我具有基于URSA的加密功能。但是我在构建URSA时遇到了巨大的问题。我已经阅读到Node 10对相同功能具有本机支持。您将如何在此功能中替换URSA?
已更新,并添加了加密。不幸的是,这将加密数据。但是它不会在另一端被接受。已将URSA实施注释掉。
function encryptLogin(user, pass, keyfile) {
var rsaPublic = fs.readFileSync(keyfile, 'ascii');
//var key = ursa.createPublicKey(rsaPublic, 'utf8');
var key = rsaPublic.toString('utf8');
if (!key) {
console.log('KEY error');
}
var auth = new Buffer(user).toString('base64');
auth += ':';
auth += new Buffer(pass).toString('base64');
auth += ':';
auth += new Buffer('' + new Date().getTime()).toString('base64');
const loginKey = crypto.publicEncrypt({key: key, padding: crypto.constants.RSA_PKCS1_PADDING}, Buffer.from(auth));
return loginKey;
//return key.encrypt(auth, 'utf8', 'base64', ursa.RSA_PKCS1_PADDING);
}