vue DES 加密安装crypto-jscnpm install crypto-js --save封装一个des.jsECB模式impor t cryptoJs from ''crypto-js''// DES加密export const encryptDes = (mes sage, key) => { var keyHex = cryptoJs.enc.Utf8.parse(key) var opt ion = { mode: cryptoJs.mode.ECB, padding: cryptoJs.pad.Pkcs7 } va r encrypted = cryptoJs.DES.encrypt(message, keyHex, option) retur n encrypted.ciphertext.toString()} // DES解密export const decryptD es = (message, key) => { var keyHex = cryptoJs.enc.Utf8.parse(key ) var decrypted = cryptoJs.DES.decrypt( { ciphertext: cryptoJs.en c.Hex.parse(message) }, keyHex, { mode: cryptoJs.mode.ECB, paddin g: cryptoJs.pad.Pkcs7 } ) return decrypted.toString(cryptoJs.enc. Utf8)}CBC模式import cryptoJs from ''crypto-js'' // DES加密export const encryptDes = (message, key, iv) => { var keyHex = cryptoJs.enc.U tf8.parse(key) var ivHex = cryptoJs.enc.Utf8.parse(iv) var option = { iv: ivHex, mode: cryptoJs.mode.CBC, padding: cryptoJs.pad.Pk cs7 } var encrypted = cryptoJs.DES.encrypt(message, keyHex, optio n) return encrypted.ciphertext.toString()} // DES解密export const decryptDes = (message, key, iv) => { var keyHex = cryptoJs.enc.Ut f8.parse(key) var ivHex = cryptoJs.enc.Utf8.parse(iv) var decrypt ed = cryptoJs.DES.decrypt( { ciphertext: cryptoJs.enc.Hex.parse(m essage) }, keyHex, { iv: ivHex, mode: cryptoJs.mode.CBC, padding: cryptoJs.pad.Pkcs7 } ) return decrypted.toString(cryptoJs.enc.Ut f8)}使用des.jsECB模式import { encryptDes, decryptDes } from ''./des.js '' // 引用路径根据自己的文件结构而定encryptDes(''要加密的数据'', ''加密的key'')decryptDes(''要解密 的数据'', ''解密的key'')CBC模式import { encryptDes, decryptDes } from ''./des .js'' // 引用路径根据自己的文件结构而定encryptDes(''要加密的数据'', ''加密的key'', ''加密的iv'')decryptDes(''要解密的数据'', ''解密的key'', ''解密的iv'') |
|