[PYTHON] Pycrypto-Ver- und Entschlüsselung

import string
import random

#pip install pycrypto
from Crypto.Cipher import AES


key = ''.join(
    random.choice(string.ascii_letters) for _ in range(AES.block_size)) #Einschlussnotation

iv = ''.join(
    random.choice(string.ascii_letters) for _ in range(AES.block_size)) #Einschlussnotation

plaintext = 'fdsfsdgsgsfgs'
cipher = AES.new(key, AES.MODE_CBC, iv)
padding_length = AES.block_size - len(plaintext) % AES.block_size #Berechnen Sie die Länge der Füllzeichenfolge
plaintext += chr(padding_length) * padding_length #Polsterung
cipher_text = cipher.encrypt(plaintext) #Verschlüsselung
print(cipher_text)

cipher2 = AES.new(key, AES.MODE_CBC, iv)
decrypted_text = cipher2.decrypt(cipher_text) #Entschlüsselung
print(decrypted_text[:-decrypted_text[-1]]) #Anzeige mit entfernter aufgefüllter Zeichenkette
b'\xba\xb5\xf6\x0f\x87\xe0N\xa1?I\xf6O\x1d\x96]\x88'
b'fdsfsdgsgsfgs'

Recommended Posts

Pycrypto-Ver- und Entschlüsselung
Ver- und Entschlüsselung mit Python
Memo zur Verarbeitung und Verschlüsselung von PyCryptodome AES
Mit dem GPG-Befehl verschlüsseln / entschlüsseln
AES-CBC-Ver- und Entschlüsselung Die Node.js-Version mit Python wird ebenfalls hinzugefügt.
Private Methoden und Felder in Python [Verschlüsselung]