[英]How to convert hex string again into cipher text for decryption
我正在使用pycrypto模塊生成密文。 問題是生成的密文無法保存,因為它不是人類可讀的。
>>> a=AES.new("1234567890123456")
>>> m='aaaabbbbccccdddd'
>>> a.encrypt(m)
'H\xe7\n@\xe0\x13\xe0M\xc32\xce\x16@\xb2B\xd0'
我想將此加密的消息保存在我的數據庫中,由於它不易閱讀,因此現在無法執行此操作。 我可以通過將其轉換為十六進制代碼來保存數據:
a.encrypto(m).encode('hex')
並生成十六進制代碼並將其保存在我的數據庫中。 問題是如何將這個encrypted hex code
轉換回相同的形式進行解密? 有人可以在這里幫助我嗎?
我的用戶將從數據庫訪問加密的消息,將其解密,然后檢查消息的完整性! 誰能幫助我將十六進制代碼轉換回密文?
使用hex
反向解碼:
>>> encrypted = 'H\xe7\n@\xe0\x13\xe0M\xc32\xce\x16@\xb2B\xd0'
>>> encoded = encrypted.encode('hex')
>>> decoded = encoded.decode('hex')
>>> encrypted == decoded
True
問題解決! :)
您可以使用base64.b64encode(cipher_text)
將數據保存到數據庫中,然后使用base64.b64decode(instance.encrypted_message)
檢索數據。 該解決方案為我工作。
您還需要import base64
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.