目前我需要使用
publicEncrpyt()
方法用公钥(pem文件)加密缓冲区。
但 React Native 不支持“加密”库,因为它不在 Node.js 上运行。
我检查了第 3 方库,但找不到任何与
publicEncrypt()
完全相同的方法。
有人有同样的问题吗?
只需将其保存在这里即可。
支持
publicEncrypt
方法的包:
https://github.com/margelo/react-native-quick-crypto
v0.5.0
支持react-native
< 0.69
v0.6.1
支持react-native
0.69+
您提供的教程是使用nodejs和crypto进行服务器端加密,对于在客户端工作,您将需要使用加密库的包装器,一个很好的例子是Crypto JS,它非常容易使用,这是一个例子:
const CryptoJS = require('crypto-js')
const secret = 'secret key 123'
const encryptString = (str) => CryptoJS.AES.encrypt(str, secret).toString()
const decryptString = (ciphertext) => CryptoJS.AES.decrypt(ciphertext, secret)