cryptojs中aes前端加密方式
阿新 • • 發佈:2018-12-28
引入檔案:
下載地址:
aes.js:https://download.csdn.net/download/qq_23521659/10665052
pad-zeropadding-min.js:https://download.csdn.net/download/qq_23521659/10665056
加密的程式碼是:
function encrypt(data) { var key = CryptoJS.enc.Latin1.parse('ea3ac5b2af5c11e8'); var iv = CryptoJS.enc.Latin1.parse('f92aaa9aaf5c11e8'); return CryptoJS.AES.encrypt(data, key, {iv:iv, mode:CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding}).toString(); }
這裡的 key和iv的引數值是和後臺java約定好的,其他一樣;
我使用在了angular環境裡,所以把加密方法封裝成了過濾器:
app.filter("encrypt",function () { return function (data) { var key = CryptoJS.enc.Latin1.parse('ea3ac5b2af5c11e8'); var iv = CryptoJS.enc.Latin1.parse('f92aaa9aaf5c11e8'); return CryptoJS.AES.encrypt(data, key, {iv:iv, mode:CryptoJS.mode.CBC, padding: CryptoJS.pad.ZeroPadding}).toString(); } })
使用的時候直接:
$filter("encrypt")($scope.username)
$scope.username即要加密的資料,這樣返回的資料就是已經加密過的了。