pkcs exchange descargar crear archivo encryption cryptography openssl pki key-management

encryption - exchange - pkcs#12.pfx.p12 android descargar



¿Hay alguna extensión publicada de PKCS#12? (1)

PKCS # 12 es una forma conveniente de agrupar juntas una clave privada con su correspondiente certificado X.509 en un formato de archivo único estandarizado. Sin embargo, la especificación fue publicada por RSALabs en 1999 y utiliza solo RC4, RC2 y TripleDES para encriptación simétrica. ¿Hay alguna extensión estándar semi estándar para el esquema que agregue más algoritmos de cifrado u otras funciones de derivación de claves? Se ha documentado que OpenSSL implementa el soporte para AES y Camellia, pero la búsqueda de un estándar correspondiente aparece en blanco, por lo que parece ser una implementación específica de OpenSSL. ¿Alguien ha documentado el módulo ASN.1 y el pseudo código para estas extensiones?


PKCS # 12 usa bloques de construcción de otros estándares.

El modo de encriptación recomendado se basa en el cifrado basado en contraseña de PKCS # 5 (PBES2). Esto se ha ampliado con soporte para SHA-2 y AES en PKCS # 5 v.2.1 .

Cuando OpenSSL usa AES lo hace así:

684 30 806: SEQUENCE { 688 30 802: SEQUENCE { 692 06 11: OBJECT IDENTIFIER : pkcs-12-pkcs-8ShroudedKeyBag (1 2 840 113549 1 12 10 1 2) 705 A0 723: [0] { 709 30 719: SEQUENCE { 713 30 73: SEQUENCE { 715 06 9: OBJECT IDENTIFIER : pkcs5PBES2 (1 2 840 113549 1 5 13) 726 30 60: SEQUENCE { 728 30 27: SEQUENCE { 730 06 9: OBJECT IDENTIFIER : pkcs5PBKDF2 (1 2 840 113549 1 5 12) 741 30 14: SEQUENCE { 743 04 8: OCTET STRING : BA 6B 5B B3 47 27 C9 73 753 02 2: INTEGER 2048 : } : } 757 30 29: SEQUENCE { 759 06 9: OBJECT IDENTIFIER : aes128-CBC (2 16 840 1 101 3 4 1 2) 770 04 16: OCTET STRING : 0F 79 79 0A D3 EC C0 3E 20 B8 51 85 2F 2B 6C 29 : } : } : }

Por lo que puedo leer la fuente, OpenSSL codifica la contraseña como ASCII en lugar de UTF-16 con terminación cero cuando usa PKCS # 5 PBES2.