在 Angular 9 中使用节点加密

Ken*_*nny 5 node.js npm cryptojs angular angular9

我的项目是 Angular 6,它有以下代码行

const crypto = require('crypto-js');
const Buffer = require('buffer').Buffer;
const decrypt = new Buffer(data.result.encr, 'base64');
const privatekey = Buffer.from(data.result.pk, 'base64');
this.decrypted = crypto.privateDecrypt(privatekey, decrypt).toString('utf-8');
return this.decrypted;
Run Code Online (Sandbox Code Playgroud)

效果很好。

现在我将代码迁移到 Angular 9。我发现cryptoNPM 不再支持它

https://www.npmjs.com/package/crypto

它说我必须使用加密的内置库。但我不知道如何使用它。

我以为crypto-js会帮助我。但事实并非如此。

如果有人知道如何crypto在 Angular 9 中使用或如何转换上行,crypto-js那就太好了。

注意:加密仅在服务器端使用 crypto 进行,因为它们有 NodeJS。

提前致谢。

Ken*_*nny 4

3-4天后我终于能够解决这个问题。

  1. 我安装了crypto-browserify
  2. 删除 node_modules 文件夹,然后使用以下命令再次安装所有依赖项npm-install

crypto-browserify提供与以下相同的功能crypto