| Anterior | Siguiente |
| DIGSIG_E_DECODE | DIGSIG_E_CRYPTO |
DIGSIG_E_EXTENSIBILITY
Qué significa DIGSIG_E_EXTENSIBILITY
DIGSIG_E_EXTENSIBILITY corresponde a 0x800B0007. Microsoft describe una confusión entre colecciones ASN.1 de extensiones y atributos.
Ambas pueden contener pares OID/valor, pero no son intercambiables: ocupan posiciones diferentes, tienen sintaxis propia y pueden quedar dentro o fuera del material firmado. Una capa que las aplana en una sola lista genérica puede conservar el valor interno y, aun así, construir un objeto semánticamente incorrecto.
Qué comprobar
- Localiza el OID que se colocó en la colección equivocada y mapea su campo contra el perfil CMS/X.509 correspondiente.
- Inspecciona el modelo de objetos de la API antes de codificar para comprobar si la conversión mezcló extensiones de certificado con atributos CMS.
- Determina si el valor debe estar cubierto como atributo firmado, extensión de certificado u otro campo; esa decisión define su posición ASN.1.
- Compara dos objetos mínimos que sólo difieran en la colección usada y revisa su ruta de campos con un decoder independiente.
Cómo resolverlo
Regenera el objeto desde el esquema correcto colocando cada OID en la colección definida por el protocolo. No copies simplemente el DER interior de una Extension a un wrapper de Attribute, ni al revés: el contenedor y su semántica forman parte de la estructura que debe ser válida.
Código cercano
DIGSIG_E_ENCODE es un fallo general de codificación; DIGSIG_E_EXTENSIBILITY identifica específicamente el uso incorrecto de Extensions y Attributes.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.