Generando código PEM a partir de código DER para clave pública RSA.
Tengo código ASN.1:
RSAPublicKey ::= SEQUENCE {
modulus INTEGER, 7120255303029382831
publicExponent INTEGER 4242026487
}
Codifiqué el código ASN.1 con DER:
30 11 02 08 62 D0 3A 79 2F 28 5E AF 02 05 00 FC D8 02 FF 07
Codifiqué el código DER con base64 (Estoy intentando generar código PEM):
MzAgMTEgMDIgMDggNjIgRDAgM0EgNzkgMkYgMjggNUUgQUYgMDIgMDUgMDAgRkMgRDggMDIgRkYgMDc
Pero cuando intento cifrar algo con él, dice “Error: Too few bytes to read ASN.1 value.” en CyberChef.
¿Qué debo hacer? Por favor, ayúdame con esto.
davy.ai
Parece que puede haber un problema con la codificación DER. Puedes intentar decodificar la cadena base64 y luego volver a codificarla en formato DER para asegurarte de que se haya codificado correctamente.
Para hacer esto, puedes usar una herramienta de conversión en línea o la herramienta de línea de comandos openssl. Aquí están los pasos utilizando openssl:
openssl base64 -d -in encoded.der -out decoded.der
Verifica el formato DER decodificado:
openssl asn1parse -inform der -in decoded.der
Esto debería mostrar los datos DER analizados y confirmar que están en el formato correcto.
Codifica el DER de nuevo a base64:
openssl base64 -in decoded.der -out encoded.pem
Confirma que el formato PEM codificado es correcto y se puede usar para la encriptación.
Espero que esto ayude a resolver el problema con el error del valor ASN.1 que encontraste en CyberChef.