前端js數據加密解密

1、最簡單的加密解密  git

  函數escape()和unescape();github

2、base64加密算法

(1)introduction

    base64是網絡上最多見的用於傳輸8bit字節碼的編碼方式之一,base64就是一種基於64個可打印字符來表示二進制數據的方法。數據庫

    https://en.wikipedia.org/wiki/Base64安全

(2)經常使用js base64加密庫

     https://github.com/dankogai/js-base64

(3) 原生js已經支持base64加密及解密

加密 window.btoa(decodeData)    解密window.atob(encodeData)服務器

  

  對於中文進行解密及加密須要先對中文進行轉碼網絡

  

  encodeURIComponent API相關可參考http://www.w3school.com.cn/jsref/jsref_encodeURIComponent.asp函數

3、md5加密編碼

(1)introduction加密

MD5消息摘要算法(英語:MD5 Message-Digest Algorithm),一種被普遍使用的密碼散列函數,能夠產生出一個128位(16字節)的散列值(hash value),用於確保信息傳輸完整一致

具體來講文件的MD5值就像是這個文件的「數字指紋」。每一個文件的MD5值是不一樣的,若是任何人對文件作了任何改動,其MD5值也就是對應的「數字指紋」就會發生變化。好比下載服務器針對一個文件預先提供一個MD5值,用戶下載完該文件後,用我這個算法從新計算下載文件的MD5值,經過比較這兩個值是否相同,就能判斷下載的文件是否出錯,或者說下載的文件是否被篡改了。

利用MD5算法來進行文件校驗的方案被大量應用到軟件下載站、論壇數據庫、系統文件安全等方面。

(2)經常使用js md5庫

  https://github.com/blueimp/JavaScript-MD5

4、sha1加密

(1)introduction

安全哈希算法(Secure Hash Algorithm)主要適用於數字簽名標準 (Digital Signature Standard DSS)裏面定義的數字簽名算法(Digital Signature Algorithm DSA)。對於長度小於2^64位的消息,SHA1會產生一個160位的消息摘要。當接收到消息的時候,這個消息摘要能夠用來驗證數據的完整性。在傳輸的過程當中,數據極可能會發生變化,那麼這時候就會產生不一樣的消息摘要。 

(2)經常使用js sha1庫

  https://github.com/emn178/js-sha1

相關文章
相關標籤/搜索