使用JS方法做一个简单地本地数据加密解密

先看代码,复制使用即可,(您将看到以下效果)

描述图片

var name = '123' //实现可以加解密汉字的window方法
console.log(name + '<==将要被加密')
let namejiami = window.btoa(window.encodeURIComponent(name))
//账号加密
console.log(namejiami + '<==加密信息')
let namejiemi = window.decodeURIComponent(window.atob(namejiami))
//账号解密
console.log(namejiemi + '<==解密信息')
btoa和atob实现了一种加解密方式(其本质是base64编码),但无法处理汉字等我们使用decodeURIComponent方法做处理即可
注意,这种做法只是简单处理,不将信息明文暴露给用户。如果是为了防御攻击,不建议使用

以上就是window原生加解密方式,这只是一种思路,您也可以使用ES6提供的如转16code等方式实现一个简单的加密作为本地存储,稍微提高一点安全性。
其他有关js的疑问或者此方法不理解的地方您可留言,我会尽快回复并帮您解决。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: RSA是一种非对称加密算法,通过利用大质数的特性,可以实现可靠的加密和解密过程。 RSA加密过程中,首先需要生成一对密钥,即公钥和私钥。公钥用于加密数据,私钥用于解密数据。 具体加密过程如下: 1. 选取两个不同的质数p和q,并计算它们的乘积n。 2. 计算n的欧拉函数φ(n),即φ(n) = (p-1)(q-1)。 3. 选取一个int型的整数e,使得1<e<φ(n),且e与φ(n)互质。 4. 计算e关于φ(n)的乘法逆元d,即d·e=1(mod φ(n))。 5. 公钥为(n, e),私钥为(n, d)。 6. 将明文数据转化为对应的十进制数m。 7. 加密过程为:c ≡ m^e(mod n)。 8. 得到密文c。 RSA解密过程如下: 1. 将密文c代入解密公式:m ≡ c^d(modn),得到明文m。 相比于其他加密算法,RSA具有加密效率低的特点,但是由于非对称加密的特性,它可以更好地保证数据的安全性。在JS中,通过使用各种开源的加密库,可以方便地实现RSA加密和解密的功能。 总结来说,JS加密RSA C是指通过使用JavaScript实现RSA加密算法,实现数据加密和解密的过程,保证数据的机密性和安全性。 ### 回答2: RSA是一种非对称加密算法,可以用于保护数据的安全性。在使用JavaScript进行RSA加密时,需要使用RSA加密算法的相关库或插件以实现相关功能。 在JavaScript中,我们可以使用如crypto-jsjsencrypt等库来进行RSA加密。这些库提供了一系列方法来生成RSA密钥对、加密和解密数据。 首先,我们需要生成RSA密钥对。可以使用库提供的方法来生成公钥和私钥。公钥用于加密数据,私钥用于解密数据使用RSA加密数据的过程如下:首先,将需要加密的数据通过公钥进行加密操作。加密后的数据可以通过网络传输或在本地存储。在接收方获取到加密数据后,可以使用私钥对其进行解密操作,以获取原始数据。 在使用RSA加密数据时,需要保证私钥的安全性,以免私钥被他人获取而导致数据泄露。因此,使用RSA加密时需要合理管理密钥,以保障数据的安全性。 总而言之,使用JavaScript进行RSA加密需要使用相关的库或插件,生成RSA密钥对并通过公钥加密数据,再通过私钥解密数据。加密数据的安全性取决于私钥的保护程度。 ### 回答3: RSA加密是一种非对称加密算法,用于保护数据的安全性和隐私性。在JavaScript中,我们可以使用一些库来实现RSA加密算法。 首先,我们需要准备一对RSA密钥,包括公钥和私钥。通常情况下,公钥用于加密数据,而私钥用于解密数据。可以通过一些在线工具或者自己生成密钥对。 接下来,我们需要引入一个JSRSA库,如"jsencrypt"来实现RSA加密。可以通过在HTML文档中引入该库的JavaScript文件或者使用npm进行安装。 接下来,我们可以在JavaScript代码中通过以下步骤来实现RSA加密: 1. 创建一个RSA实例,并传入公钥。 2. 调用实例的encrypt方法,传入要加密的数据作为参数。 3. 得到加密后的数据,可以通过调用实例的getEncryptedString方法来获取加密后的字符串。 下面是一个简单的示例代码: ```javascript // 引入jsencrypt库 const JSEncrypt = require('jsencrypt'); // 创建RSA实例 const rsa = new JSEncrypt(); // 设置公钥 rsa.setPublicKey(publicKey); // 要加密的数据 const data = 'Hello, RSA!'; // 加密数据 const encryptedData = rsa.encrypt(data); // 输出加密后的数据 console.log(encryptedData); ``` 以上示例中,我们通过传入公钥给RSA实例,并使用encrypt方法数据进行加密,最后输出加密后的数据。 需要注意的是,RSA加密算法是一种非常安全和复杂的算法,仅仅使用以上代码可能还不够保证数据的安全性。在真实的场景中,还需要考虑密钥的生成和管理,以及数据的完整性和验证等方面的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值