導航:首頁 > 文檔加密 > 加密模塊javascript有哪些

加密模塊javascript有哪些

發布時間:2024-07-26 16:00:42

『壹』 介紹一點js加密的方法

一:最簡單的加密解密
大家對於javaSCRIPT函數escape()和unescape()想必是比較了解啦(很多網頁加密在用它們),分別是編碼和解碼字元串,比如例子代碼用escape()函數加密後變為如下格式:
alert%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B
如何?還看的懂嗎?當然其中的ASCII字元"alert"並沒有被加密,如果願意我們可以寫點JAVASCRIPT代碼重新把它加密如下:
%61%6C%65%72%74%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B
呵呵!如何?這次是完全都加密了!
當然,這樣加密後的代碼是不能直接運行的,幸好還有eval(codeString)可用,這個函數的作用就是檢查JavaScript代碼並執行,必選項 codeString 參數是包含有效 JavaScript 代碼的字元串值,加上上面的解碼unescape(),加密後的結果如下:
<SCRIPT LANGUAGE="JavaScript">
var code=unescape("%61%6C%65%72%74%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B");
eval(code)
</SCRIPT>
是不是很簡單?不要高興,解密也就同樣的簡單,解密代碼都擺給別人啦(unescape())!呵呵

二:轉義字元"\"的妙用
大家可能對轉義字元"\"不太熟悉,但對於JavaScript提供了一些特殊字元如:\n (換行)、 \r (回車)、\' (單引號 )等應該是有所了解的吧?其實"\"後面還可以跟八進制或十六進制的數字,如字元"a"則可以表示為:"\141"或"\x61"(注意是小寫字元"x"),至於雙位元組字元如漢字"黑"則僅能用十六進製表示為"\u9ED1"(注意是小寫字元"u"),其中字元"u"表示是雙位元組字元,根據這個原理例子代碼則可以表示為:
八進制轉義字元串如下:
<SCRIPT LANGUAGE="JavaScript">
eval("\141\154\145\162\164\50\42\u9ED1\u5BA2\u9632\u7EBF\42\51\73")
</SCRIPT>
十六進制轉義字元串如下:
<SCRIPT LANGUAGE="JavaScript">
eval("\x61\x6C\x65\x72\x74\x28\x22\u9ED1\u5BA2\u9632\u7EBF\x22\x29\x3B")
</SCRIPT>
這次沒有了解碼函數,因為JavaScript執行時會自行轉換,同樣解碼也是很簡單如下:
<SCRIPT LANGUAGE="JavaScript">
alert("\x61\x6C\x65\x72\x74\x28\x22\u9ED1\u5BA2\u9632\u7EBF\x22\x29\x3B")
</SCRIPT>
就會彈出對話框告訴你解密後的結果!

『貳』 記錄一下前端使用CryptoJS的幾種加密方式

自己太小白了,之前在PC端項目中使用的MD5加密,現在的小程序項目使用了 CryptoJS 裡面的 enc-base64 和 hmac-sha1 ,之前沒有用到過這兩種,所以比較疑惑,為何在小程序不繼續使用 MD5 呢?所以在這里記錄一下自己解疑惑的一些知識點。

隨著互聯網的興起,我們對信息的安全越來越受重視,這樣就導致在web開發中,對用戶密碼等各種加密變得更加重要了。與伺服器的交互中,為了確保數據傳輸的安全性,避免被黑客抓包篡改。

對於Base64編碼的,我覺得看一篇文章能夠解決你的疑惑,我在這里就不贅述了
🧐 Base64編碼原理

如: 用戶密碼,請求參數,文件加密

如: 介面參數簽名驗證服務

支付數據、CA數字證書

前端的朋友可能會關注前端js加密,我們在做 WEB 的登錄功能時一般是通過 Form 提交或 Ajax 方式提交到伺服器進行驗證的。為了防止抓包,登錄密碼肯定要先進行一次加密(RSA),再提交到伺服器進行驗證。一些大公司都在使用,比如淘寶、京東、新浪 等。

前端加密也有很多現成的js庫,如:

JS-RSA: 用於執行OpenSSL RSA加密、解密和密鑰生成的Javascript庫, https://github.com/travist/jsencrypt

MD5: 單向散列加密md5 js庫, https://github.com/blueimp/JavaScript-MD5

crypto-js: 對稱加密AES js庫, https://github.com/brix/crypto-js

-CryptoJS (crypto.js) 為 JavaScript 提供了各種各樣的加密演算法

HMAC 系列是消息驗證,用於驗證一個消息是否被篡改——如網站上傳遞 email 和 hmac(email),則接收時可以通過 hmac(email) 獲知 email 是否是用戶偽造的

『叄』 javascript是不是自帶了base64加密、解密函數是什麼

是的,解密函數為:

window.btoa("test");//"dGVzdA=="
window.atob("dGVzdA==");//"test"

為什麼要使用Base64加密呢?

『肆』 功能強大的JS加密庫-CryptoJS

CryptoJS是JavaScript的一個加解密庫集合,可以說平時開發磨肆中需要用到的加解密方法,它這里都包含了

1、MD5加密,這是一種不可逆的加密

2、SHA-1加密,是現有 SHA 哈希函數中最成熟的,它用於各種安全應用程序和協議

3、SHA-2加密,不像 SHA-1 那樣廣泛使用,盡管它似乎提供了更好的安全性

4、AES加解密瞎衫轎, 是美國聯邦信息處理標准 (FIPS)提出的高級加密標准

5、DES加解密, DES 是以前佔主導地位的加密演算法,並作為官方聯邦信息處理標准 (FIPS) 發布,由於密鑰大小較小,DES 現在被認塌孫為是不安全的

6、轉Base64

好了常用的加解密方法就介紹到這了

覺得效果不錯的請幫忙加個關注點個贊,經常分享前端實用開發技巧

閱讀全文

與加密模塊javascript有哪些相關的資料

熱點內容
mac白色文件夾問號 瀏覽:718
怎麼申請郵箱的伺服器 瀏覽:13
c項目兩個工程怎麼編譯 瀏覽:645
知乎app有什麼作用 瀏覽:451
單片機帶的比較器 瀏覽:391
程序員都是精英 瀏覽:19
10種編程語言 瀏覽:749
綿陽學駕駛手機上下什麼app 瀏覽:129
python如何模擬網頁操作 瀏覽:40
單片機多文件編譯方法 瀏覽:839
不動產壓縮時間 瀏覽:571
租房管理平台源碼 瀏覽:65
復樂園pdf 瀏覽:457
程序員找到公交車 瀏覽:698
嬰兒寶寶操有什麼APP推薦 瀏覽:73
如何將資料庫附加到伺服器上 瀏覽:391
php退出循環 瀏覽:479
夢幻西遊怎麼修改伺服器人數上限 瀏覽:332
自動開啟命令 瀏覽:847
查詢雲伺服器訪問的ip 瀏覽:838