Nuxt | Next 服务端渲染,数据加密问题node-rsa常见问题

  1. Expected 0x2: got 0x30
    原因可能是传输的key 没有制定证书格式类型,
    // 加密
    const publicKey = 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCbSLfwkhBAWz3MQ8ASAAdS8toMr5QcPT6???????????????????????????' // 公钥 (换成自己正常的公钥)
    const nodersa = new NodeRsa(publicKey, 'pkcs8-public') // 使用key, 第二个参数'pkcs8-public' 指定key 是什么类型, 根据你的publickey privatekey 是怎么生成的,指定其类型格式
    nodersa.setOptions({encryptionScheme: 'pkcs1'})
    const encryptedData = nodersa.encrypt(str, 'base64')

// 解密

const privateKey = 'MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAJuPJP/PwzfIhjQ3C/4THtM9+EprY6TocAF9KFgNVuOKu/0WBpOK5K8CVi0+JmQZXjKz3Sb2KS+HiYaRJPZPUVYWoza0vf7U5TC8UsKKzkcoRJFhQaXSJ7uM37tDvZHyOtjlPzJXBld4mS6XHZElox+89PS5p+nERtlv0n77WOGvAgMBAAECgYAuF9Uzw4Ep104EzMbN6yZ4G2Wlz3pAE+uUVVyN8q3rUGFxlYQvVbl7L?????????????????????????????????????????????????????????????????' // 私钥 (你的私钥)

const nodersa = new NodeRsa(privateKey, 'pkcs8-private') // 注意参数指定类型
nodersa.setOptions({encryptionScheme: 'pkcs1'})
const decryptedData= nodersa.decrypt(str, 'utf8')

node-rsa: npm 官方文档 https://www.npmjs.com/package/node-rsa#importexport-keys

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容