当前位置: 首页 > 面试题库 >

带角度的RSA库

韦澄邈
2023-03-14
问题内容

您好,我正在尝试在我的应用程序中实现加密。我在前端使用angular(angular-4),在后端使用node
js。通过socket.io通过自定义命令进行通信。但基本上,我坚持要在客户端中找到用于RSA加密的适当库。客户端将首先向服务器请求RSA公钥。服务器用密钥响应,但是现在我找不到任何适合使用此公共密钥通过RSA加密数据的库。我已经尝试过node-
rsa。以下是代码sn

import * as NodeRSA from 'node-rsa';

@Injectable()

export class SecurityService {
    RSA: any
    initializeRSA(key: string) {
        this.RSA = new NodeRSA();
        this.RSA.importKey(key)
        console.log(this.RSA.encrypt('Hello World'));
    }

但我收到此错误。

Error during encryption. Original error: TypeError: crypt.createHash is not a function
at NodeRSA.webpackJsonp.../../../../node-rsa/src/NodeRSA.js.module.exports.NodeRSA.$$encrypt

帮助将不胜感激。


问题答案:

请在此处找到解决方案柱塞:

JSEncrypt与角度

https://plnkr.co/edit/sEPK1DcynMphJnGziUVX

我已经使用了JSEncrypt v2.3.0 Lib。

实作

在Angular Project的Asset文件夹中添加JSEncrypt Lib javascript文件。在中添加脚本index.html

<script src="jsencrypt.js"></script>

因此,它将在所有组件上可用。

在要使用它的组件文件中声明JSEncrypt。

declare var JSEncrypt: any;

内部类声明变量

decrypt = new JSEncrypt();
const privatekey = Private Key goes here;
const publickey = Public key goes here;
const decryptDataRow = Decrypted data string;
this.decrypt.setPrivateKey(privatekey);
this.decryptdata = this.decrypt.decrypt(decryptDataRow);

decryptdata 包含结果字符串



 类似资料:
  • > 到目前为止,我使用角2快速入门创建了一个新项目。 我决定开始使用angular 2 cli,并创建了一个新的angular 2 cli项目。 移动了我的所有文件并重新安装了所有软件包。 现在,当我试图在CLI项目中使用角2材料时,我遵循了这里的指南,但这是我得到的: 会出什么问题?

  • 我正在尝试使用Spring Security(4.1.3)和Angular 2.0.1实现CSRF保护 相关话题的来源很多,但我找不到明确的说明。有些说法甚至相互矛盾。 我读过关于springs的操作方法(尽管指南中描述了Angular 1 way)Spring Security guide,其中包含Angular,即

  • 问题内容: 当我按ASC排序时,我需要记录顶部带有空值的记录 一些足球运动员没有球队,所以和,我需要将他们排在首位 我想重写排序函数,但是我需要保存谓词 问题答案: 您可以在控制器中使用以下内容: 在HTML上: 这样,您可以单独维护谓词。只需在orderBy表达式中连接该函数即可首先运行它。 柱塞

  • 使用Angular ,我正在创建一个属性组件并向其中注入一个值。为此,我在这里跟随答案。 我想知道有没有一种方法,就像在AngularJS中一样,直接在组件中输入一个值,而不需要定义单独的< code>[form]=""。例如:<代码> 导致“。 我正在尝试将我的表单(通过变量)注入组件,但我不想进行其他绑定,例如根据这里的帖子,这应该是可能的,但我无法工作。自从更高的Angular版本以来,这种

  • 我一直在看几个用Angular进行行分组的例子。然而,我还没有找到任何一个内部组是可排序的。 例如,看看这个页面: http://swimlane.github.io/ngx-datatable/#行分组 我希望能够在组内按名称排序。 ag-grid可以做到这一点,但许可证非常昂贵。 https://www.ag-grid.com/javascript-grid-grouping/ 这似乎是一个很

  • 我实际上正在学习Angular2,但我遇到了一个...CSS问题o_O我曾搜索过一个类似的问题,但没有任何成功,现在开始: 我在中有一个标记元素 我在div中设置了并使用来适应,但似乎根本不起作用,图片不适合div。 我很困惑因为这是第一次发生在我身上 请参阅:我使用styleUrls在组件中注入css规则 代码 谢谢!