angularjs和vue实现RAS加密

2020-10-26  本文已影响0人  小小少年小阿清

一. 什么是RSA?
RSA算法是现今使用最广泛的公钥密码算法,也是号称地球上最安全的加密算法。在了解RSA算法之前,先熟悉下几个术语
根据密钥的使用方法,可以将密码分为对称密码和公钥密码
对称密码:加密和解密使用同一种密钥的方式
公钥密码:加密和解密使用不同的密码的方式,因此公钥密码通常也称为非对称密码。

二.RAS加密实现。
1.angularjs需要引入jsencrypt.min.js。
可以执行

npm install --save jsencrypt

再到node_modules中拿到jsencrypt.min.js放于libs目录下,并于www目录下的index.html中引入。

 <script src="build/lib/jsencrypt.min.js"></script>
image.png
 // 进行RSA加密,publicKey是公钥。
      function rsaEncryption(publicKey, str) {
        publicKey =
          "-----BEGIN PUBLIC KEY-----" + publicKey + "-----END PUBLIC KEY-----";
        var encrypt = new JSEncrypt();
        encrypt.setPublicKey(publicKey);
        return encrypt.encrypt(str);
      };

publicKey是公钥,str是需要进行加密的字符串,rsaEncryption函数返回的就是加密后的字符串

2.vue安装jsencrypt依赖
执行

yarn add jsencrypt --save-dev

再在需要进行加密的地方加上

import { JSEncrypt } from "jsencrypt";
 // 进行RSA加密,publicKey是公钥。
function rsaEncryption(publicKey, str) {
        publicKey =
          "-----BEGIN PUBLIC KEY-----" + publicKey + "-----END PUBLIC KEY-----";
        var encrypt = new JSEncrypt();
        encrypt.setPublicKey(publicKey);
        return encrypt.encrypt(str);
};
上一篇下一篇

猜你喜欢

热点阅读