DES是一種對稱加密算法,可以使用jQuery來進行加密和解密。
首先,需要引入crypto-js和jquery庫:
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/aes.js"></script>
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
然后,可以使用以下代碼進行加密:
var key = CryptoJS.enc.Utf8.parse("1234567890abcdef"); //密鑰
var iv = CryptoJS.enc.Utf8.parse("abcdef1234567890"); //偏移量
var encrypted = CryptoJS.DES.encrypt(CryptoJS.enc.Utf8.parse("message"), key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString(); //加密后的字符串
其中,key和iv是加密過程中需要使用的密鑰和偏移量,需要按照具體需求進行設置。加密時,可以使用CryptoJS.DES.encrypt方法,其中第一個參數是需要加密的明文字符串,第二個參數是密鑰,第三個參數是加密需要使用的選項。
解密的代碼如下:
var ciphertext = "encrypted_string"; //需要解密的字符串
var key = CryptoJS.enc.Utf8.parse("1234567890abcdef"); //密鑰
var iv = CryptoJS.enc.Utf8.parse("abcdef1234567890"); //偏移量
var decrypted = CryptoJS.DES.decrypt({
ciphertext: CryptoJS.enc.Base64.parse(ciphertext)
}, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Pkcs7
}).toString(CryptoJS.enc.Utf8); //解密后的明文字符串
其中,ciphertext是需要解密的字符串,可以直接從加密后得到的變量中獲取。解密時,也需要使用相同的密鑰和偏移量進行操作。