Antes de usar AES, conviene dominar lo básico: leer un archivo en modo binario, transformar los bytes y escribir un archivo de salida.
1) Leer y escribir en binario
from pathlib import Path
data = Path("entrada.bin").read_bytes()
# ... transformar data ...
Path("salida.bin").write_bytes(data)
2) Transformación simple (XOR demo)
Esto no es seguro, pero sirve para entender el concepto.
def xor_bytes(data, key):
k = key & 0xFF
return bytes((b ^ k) for b in data)
enc = xor_bytes(data, 123)
dec = xor_bytes(enc, 123)
3) Buenas prácticas
- No sobrescribas el original: genera un archivo
COD_*y otroDEC_*. - Prueba con archivos pequeños antes de hacerlo con imágenes o PDFs.
- Comprueba integridad: compara bytes o hashes en tus pruebas.
