JSJSJJDD
JS前端代码:
//DES加密
function encryptByDES(message, key) {
var keyHex = CryptoJS.enc.Utf8.parse(key);
var encrypted = CryptoJS.DES.encrypt(message, keyHex, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
var t1 = encrypted.ciphertext.toString(CryptoJS.enc.Base64); //作用与java后台DES加密保持一样的方法
var t2 = encrypted.ciphertext.toString(); //用于解密的字符串
console.log('用于解密的字符串:' + t2);
return t1;
}
//DES解密
function decryptByDES(ciphertext, key) {
var keyHex = CryptoJS.enc.Utf8.parse(key);
var decrypted = CryptoJS.DES.decrypt({
ciphertext: CryptoJS.enc.Hex.parse(ciphertext)
}, keyHex, {
mode: CryptoJS.mode.ECB,
padding: CryptoJS.pad.Pkcs7
});
var result_value = decrypted.toString(CryptoJS.enc.Utf8);
return result_value;
}
调用 方法:
$(document).ready(function () {
$("#test").click(function () {
var get_date = getDate();
var timestamp = Math.round(new Date().getTime() / 1000); //时间戳
var str_ent = encryptByDES(timestamp.toString(), 'qms20211');
var url =
'http://172.26.241.214/oss.html?userName=063905&loginKey=' + encodeURIComponent(
str_ent) + '';
console.log('时间戳:'+timestamp);
console.log('加密串:'+str_ent);
console.log(url);
window.open(url);
});
});
JAVA后端方法,网上搜索一下很多就不贴出来了。