Pequeño programa de cifrado, descifrado, firma y verificación de firma RSA
var RSA = require('/wxapp_rsa.js')
// Contraseña RSA
var sign_rsa = new RSA.RSAKey();
//privateKey_ pkcs1 necesita ser -----BEGIN PRIVATE KEY-----
sign_rsa = RSA.KEYUTIL.getKey( privateKey_pkcs1 );
console.log('Firma RSA.KEYUTIL.getKey(privateKey_pkcs1);
console.log('Firma RSA:')
consola log(sign_rsa)
var hashAlg = 'MD5withRSA';
var hSig = sign_rsa.signString("12345678901234567890", hashAlg);
hSig = RSA hex2b64(hSig); // hexadecimal a b64
console.log("Resultado de la firma: " + hSig)
//Autenticación RSA
var. verificar_rsa = new RSA.RSAKey();
verificar_rsa = RSA.KEYUTIL.getKey(publicKey_pkcs1);
console.log('Verificando la firma RSA:')
console.log(verify_rsa)
hSig = RSA.b64tohex(hSig)
var ver = verificar_rsa.verifyString("12345678901234567890", hSig)
console .log('Resultado de la verificación de firma: ' + ver)
// ?La longitud del campo de cifrado RSA no es mayor que 117
var encrypt_rsa = new RSA.RSAKey( );
p>encrypt_rsa = RSA.KEYUTIL.getKey(rsa_public_key);
console.log('RSA cifrado:')
console.log( encrypt_rsa)
var encStr = encrypt_rsa.encrypt('1234567890')
console.log( encrypt_rsa)