我使用$ .ajax方法從前端發送證書,並使用crypto.js加密證書。python中的AES解密
JavaScript代碼
var encrypted = CryptoJS.AES.encrypt("Message", "This is a key123", { mode: CryptoJS.mode.CFB});
$.ajax({
type: "POST",
url: $SCRIPT_ROOT + "/test",
contentType: "application/json",
data:JSON.stringify({key:encrypted.toString()}),
dataType: "json",
success: function (response) {
alert(response);
}
});
相同憑證我想在後端側這是在python燒瓶解密。
Python代碼
data = request.json
key = data["key"]
obj2 = AES.new('This is a key123', AES.MODE_CFB)
s = obj2.decrypt(key)
print s
我用同樣的模式,同時加密和解密,但打印■將打印波紋管串。
�Qg%��qNˮ�Ŵ�M��ĦP�
"~�JB���w���#]�v?W
任何人都可以建議我更好的方式做加密解密在前端& &後端?
我試圖相同的加密,解密只蟒蛇,
>>> from Crypto.Cipher import AES
>>> obj = AES.new('This is a key123', AES.MODE_CFB)
>>> message = "The answer is no"
>>> ciphertext = obj.encrypt(message)
>>> ciphertext
'\x1f\x99%8\xa8\x197%\x89U\xb6\xa5\xb6C\xe0\x88'
>>> obj2 = AES.new('This is a key123', AES.MODE_CFB)
>>> obj2.decrypt(ciphertext)
'The answer is no'
其工作正常,但我想使用JavaScript在前端數據進行加密,我想在Python中使用相同的解密技術。
'encrypted.toString()'是將密文轉換爲字符串的不好方法。使用Base64或HEX文本表示,並相應地將其轉換爲JS和Python代碼。 –
@OlegEstekhin你能告訴我任何工作的例子嗎? – Jaydipsinh
@OlegEstekhin我已經更新了我的問題。 – Jaydipsinh