¿Cuál es el identificador de algoritmo cuando se usa AES en modo CBC con relleno ISO 10126 dentro de PKCS # 7?

StackOverflow https://stackoverflow.com/questions/304658

Pregunta

Quiero usar PKCS # 7 como formato contenedor para algunos contenidos cifrados y firmados y necesitamos usar AES en modo CBC con relleno basado en ISO 10126. Parece que no puedo encontrar una referencia concreta a un identificador de algoritmo para esta combinación. Puedo inventar el mío pero luego perdería la interoperabilidad con otras herramientas.

¿Fue útil?

Solución

No es necesario especificar el modo de relleno. Esto es cierto porque PKCS # 7 (como muchos otros contenedores criptográficos) usa codificación ASN.1 / BER. Como la codificación BER contiene la longitud exacta del mensaje dentro del texto plano rellenado, el valor real del relleno no importa.

Otros consejos

Resulta que no es necesario especificar el modo de relleno, solo importa el algoritmo criptográfico.

Creo que si está utilizando PKCS # 7 como su formato, se dice que el relleno es, bueno, "PKCS7". relleno (n octetos de valor 'n', consulte RFC 2315 , sección 10.3.2) .

Los identificadores de algoritmo para AES / CBC se dan en p. ej. RFC 3565 :

-- AES information object identifiers --

aes OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840)
               organization(1) gov(101) csor(3)_ nistAlgorithms(4)  1 }

-- AES using CBC-chaining mode for key sizes of 128, 192, 256

id-aes128-CBC OBJECT IDENTIFIER ::= { aes 2 }
id-aes192-CBC OBJECT IDENTIFIER ::= { aes 22 }
id-aes256-CBC OBJECT IDENTIFIER ::= { aes 42 }

Entonces, p. el OID para AES de 128 bits en modo CBC es 2.16.840.1.101.3.4.1.2

Técnicamente, estos son para CMS , que es esencialmente el PKCS # 7 actualizado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top