encryption - que - ¿Cuáles son los formatos de archivo de cifrado estándar?
sistema de cifrado de archivos efs windows 7 (2)
Estoy un poco confundido en formatos de archivo de cifrado.
Digamos que quiero cifrar un archivo con AES-256. Ejecuto el archivo a través del algoritmo de cifrado y ahora tengo un flujo de bytes cifrados.
Obviamente, puedo escribir ese flujo de bytes en un archivo, pero cualquier aplicación de cifrado de terceros no lo va a entender, ya que no está esperando solo un flujo de bytes cifrados.
¿En qué formatos de archivo puedo escribir eso para que otras herramientas de encriptación puedan entenderlo?
Los que conozco (creo) son:
PKCS#7
ASN.1
DER
PEM
PKCS#8
pero no estoy seguro de cómo se relacionan entre sí.
Al parecer, la utilidad AESCrypt también tiene un formato, que parece ser su propio formato propietario: http://www.aescrypt.com/aes_file_format.html
¿Hay una hoja de trucos en alguna parte sobre esto? He estado buscando en Google y encontré partes y piezas, pero nunca sentí que tenía la imagen completa.
AES es un algoritmo de cifrado, no un formato de archivo.
Como señala, hay muchas perillas y palancas en el algoritmo: la fortaleza de la clave es una. AES-256 solo significa el algoritmo AES con una clave de 256 bits. Pero hay muchas otras perillas. Modo, por ejemplo. AES tiene varios modos: CBC, ECB, OFB, CFB, CTR y otros. Otra es la IV, que se aplica a algunos modos. El relleno es otro. Por lo general, estas perillas están expuestas en la api de AES para cualquier marco que estés usando.
En la mayoría de los casos, AES se combina con otra tecnología criptográfica; por ejemplo, la derivación de clave basada en contraseña (PBKDF2) se utiliza a menudo para generar claves o IV. Los MAC se utilizan a menudo para verificar la integridad de los datos cifrados.
Las diferentes herramientas utilizan AES para cifrar, y si desean que sus datos sean legibles, publican la lista de los mandos que usan y cómo se configuran, así como la forma en que se puede usar cualquier tecnología criptográfica relacionada.
Al crear un formato de archivo, deberá almacenar o publicar ese tipo de cosas, si desea que otras aplicaciones puedan leer su archivo.
PKCS # 8 no es un formato de archivo encriptado, es un formato para claves privadas.
ASN.1 y DER son reglas para traducir un mensaje estructurado a binario. No son, en sí mismos, un formato de archivo, aunque se utilizan para definir y describir formatos de archivo.
PKCS # 7 está estrechamente relacionado con PEM, y ambos son formatos para archivos cifrados de clave pública. Se definen en términos de mensajes ASN.1 codificados en DER encapsulados en base 64. Son la base del formato S / MIME para el correo de Internet seguro. (ver RFC3851 )
En paralelo con S / MIME está el formato de archivo OpenPGP, también diseñado principalmente para archivos cifrados de clave pública. (Ver RFC4880 )
En los formatos S / MIME y OpenPGP, hay un bloque que contiene datos cifrados de clave simétrica. Es posible crear archivos S / MIME o OpenPGP válidos que contengan solo este bloque. De esta manera, los formatos S / MIME (también conocido como PKCS # 7) y OpenPGP se pueden usar también para el cifrado de clave simétrica.