【问题标题】:Encrypt data on angular decrypt on Nodejs在Nodejs中加密角度解密数据
【发布时间】:2019-01-12 08:30:19
【问题描述】:

这样做的方法是什么?我尝试在节点上的角度和加密模块上使用 CryptoJS,但没有成功我不断收到描述错误

角度加密方法:

 _rsaEnc(p) {
    var e = new JSEncrypt();
    const key = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDlOJu6TyygqxfWT7eLtGDwajtNFOb9I5XRb6khyfD1Yt3YiCgQWMNW649887VGJiGr/L5i2osbl8C9+WJTeucF+S76xFxdU6jE0NQ+Z+zEdhUTooNRaY5nZiu5PgDB0ED/kaskaskKAS';
    e.setPublicKey(key);

    return e.encrypt(p);
  }

节点解密方法

privK = {
          key: fs.readFileSync('./app/services/private.pem').toString(),
          passphrase: 'xxxxxx'
      };
      var buf = Buffer.from(base64Data, 'base64');

      origData = crypto.privateDecrypt(privK, buf);
     return origData.toString('utf-8');

错误:

错误:错误:040A1079:rsa 例程:RSA_padding_check_PKCS1_OAEP_mgf1:oaep解码错误

【问题讨论】:

标签: node.js angular encryption


【解决方案1】:

最终将 angular lib 更改为 jsencrypt,CryptoJS 不支持 RSA,并将 node lib 更改为 node-rsa 以将加密方案设置为 pkcs1

myDecrypter.setOptions({encryptionScheme: 'pkcs1'});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-08
    • 1970-01-01
    • 2019-06-26
    • 2019-11-04
    • 2021-09-11
    • 1970-01-01
    • 2019-10-13
    • 1970-01-01
    相关资源
    最近更新 更多