crytojs rc4加密解密算法实现

2018年10月23日 10:01 | 49次浏览 作者原创 版权保护

rc4算法是一种对称加密算法,具体细节请读者自行百度或谷歌,在这里只介绍如何通过crytojs框架来实现rc4加解密算法。具体步骤如下:

1、下载CryptoJs包

CryptoJS的包,下载地址:https://code.google.com/archive/p/crypto-js/downloads,下载解压之后如下图所示

所依赖的包在components下,但是小编引入components包下的rc4.js后程序报错,并没有实现rc4加解密算法,报错如下

更换成rollups文件夹下的rc4.js即可实现。


2、新建 rc4.html文件,引入 依赖的js,其中core.js在components文件夹下

  <!-- V型知识库 www.vxzsk.com -->
             
<script type="text/javascript" src="core.js"></script>

<!--<script type="text/javascript" src="../components/rc4.js"></script> 引入这个文件夹下会报错-->

<script type="text/javascript" src="../rollups/rc4.js"></script>


3,rc4加解密js实现

<script type="text/javascript">

var str = '123456';
var key = '0123456789abcdef';
var iv = '0123456789abcdef';
 
key = CryptoJS.enc.Utf8.parse(key);
iv = CryptoJS.enc.Utf8.parse(iv);
 
var encrypted = CryptoJS.RC4.encrypt(str, key, {
    iv: iv
});
 
// 转换为字符串
encrypted = encrypted.toString();
alert("加密后:"+encrypted);
 
var decrypted = CryptoJS.RC4.decrypt(encrypted, key, {
    iv: iv
});
 
// 转换为 utf8 字符串
decrypted = CryptoJS.enc.Utf8.stringify(decrypted);
alert("解密后:"+decrypted);

</script>

其中变量str=123456为要加密的明文 key和iv为加密秘钥和对称向量


4,预览效果

5、rc4.html源码

<!DOCTYPE html>
<head>
       <meta charset="utf-8">
   </head>
   <body >
       <div id="container" style="height: 500px"></div>
        
       <!-- V型知识库 www.vxzsk.com -->
        
       
<script type="text/javascript" src="core.js"></script>

<!--<script type="text/javascript" src="../../components/rc4.js"></script> 引入这个文件夹下会报错-->

<script type="text/javascript" src="../../rollups/rc4.js"></script>
<script type="text/javascript">

var str = '123456';
var key = '0123456789abcdef';
var iv = '0123456789abcdef';
 
key = CryptoJS.enc.Utf8.parse(key);
iv = CryptoJS.enc.Utf8.parse(iv);
 
var encrypted = CryptoJS.RC4.encrypt(str, key, {
    iv: iv
});
 
// 转换为字符串
encrypted = encrypted.toString();
alert("加密后:"+encrypted);
 
var decrypted = CryptoJS.RC4.decrypt(encrypted, key, {
    iv: iv
});
 
// 转换为 utf8 字符串
decrypted = CryptoJS.enc.Utf8.stringify(decrypted);
alert("解密后:"+decrypted);

</script>
       
   </body>
</html>


此文章本站原创,地址 https://www.vxzsk.com/1914.html   转载请注明出处!谢谢!

感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程


上一篇:WeUI for 小程序Msg提示页 下一篇:3.2、SSH
^