先來圖片一張,看看效果(一個採用Crypto-JS實現的工具展現):javascript
CryptoJS (crypto.js) 爲 JavaScript 提供了各類各樣的加密算法。目前已支持的算法包括:html
CryptoJS是一個純javascript寫的加密類庫(下載),咱們使用它只須要加入相關的引用便可:java
散列/哈希示例1:算法
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script> <script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/md5.js"></script> <script type="text/javascript"> alert("你好,歡迎來到開源中國在線工具,這是一個MD5測試 MD5:"+CryptoJS.MD5("你好,歡迎來到開源中國在線工具,這是一個MD5測試")); </script>
上面就一行代碼就能夠輕鬆搞定一個MD5的哈希,使用很是方便。測試
一樣,若是你想進行sha一、sha256等等諸多哈希算法,只須要引入相關的庫就好了。加密
對於 HMAC-sha1 、HMAC-sha25六、HMAC-md5等,用法是這樣:spa
散列/哈希示例2.net
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script> <script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/hmac-md5.js"></script> <script type="text/javascript"> var pwd="password"; alert("你好,歡迎來到開源中國在線工具,這是一個MD5測試 Hmac-MD5: "+CryptoJS.HmacMD5("你好,歡迎來到開源中國在線工具,這是一個MD5測試",pwd)); </script>
點此編輯代碼並查看執行效果code
PBKDF2哈希算法
這裏將PBKDF2算法單獨列出來,是由於他稍有不一樣,看以下代碼:
散列/哈希示例3
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script> <script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/pbkdf2.js"></script> <script type="text/javascript"> var salt=CryptoJS.enc.Utf8.parse("salt"); //鹽 var iter=1000; //迭代次數 var mi=CryptoJS.PBKDF2("你好,歡迎來到開源中國在線工具,這是一個PBKDF2測試", salt, { keySize: parseInt(4), iterations: parseInt(iter) } ); alert("你好,歡迎來到開源中國在線工具,這是一個PBKDF2測試:----------哈希值:"+mi); </script>
加密/解密
加密解密示例1:
<script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/components/core-min.js"></script> <script type="text/javascript" src="http://www.osctools.net/js/CryptoJS/rollups/aes.js"></script> <script type="text/javascript"> var pwd="個人密碼"; var mi=CryptoJS.AES.encrypt("你好,歡迎來到開源中國在線工具,這是一個AES加密測試",pwd); alert("你好,歡迎來到開源中國在線工具,這是一個AES加密測試----密文:"+mi); var result=CryptoJS.AES.decrypt(mi,pwd).toString(CryptoJS.enc.Utf8); alert("解密結果:"+result); </script>
一樣的,幾種加密算法的使用方法都比較相似,須要使用哪一個引入相關的js文件就ok了。
這裏的在線加密/解密,散列/哈希工具是使用這個庫構建的:http://www.osctools.net/encrypt