Я пытаюсь написать код python, который имеет те же функции, AES_ENCRYPT
и AES_DECRYPT
и AES_DECRYPT
MySQL. https://dev.mysql.com/doc/refman/5.6/ja/encryption-functions.html
Я хочу шифровать и расшифровывать данные между MySQL и Python.
Например, я хочу расшифровать данные с помощью python, который зашифрован AES_ENCRYPT
MySQL.
И я хочу расшифровать данные с помощью AES_DECRYPT
MySQL, который зашифрован Python наоборот.
Я нашел пример AES_ENCRYPT
в Python. https://www.maykinmedia.nl/blog/2012/nov/15/mysql-aes_encrypt-python/
Кто-нибудь знает, как реализовать часть расшифровки?
Я сделал это наконец.
def mysql_aes_decrypt(val, key):
def mysql_aes_key(key):
final_key = bytearray(16)
for i, c in enumerate(key):
final_key[i % 16] ^= ord(key[i])
return bytes(final_key)
k = mysql_aes_key(key)
cipher = AES.new(k, AES.MODE_ECB)
return cipher.decrypt(val).decode()