Pregunta

Tengo un sistema en el que los certificados X509 pueden tener una serie de "esquemas" donde un esquema es una colección de los OID exactos que son requeridos/opcionales en el tema del certificado. La aplicación que verifica estos certificados debe saber qué esquema (y qué versión de ese esquema) se ha utilizado para un certificado determinado.

Por ejemplo, el esquema A requiere CN, O, OU y el esquema B requiere CN, UID, O, C, ST.

Estoy buscando una forma estándar de codificar el esquema (+ versión) en el certificado para que la solicitud receptora pueda decir desde el certificado cómo analizarlo. Soluciones:

  1. Presione un OID totalmente no relacionado para meter esta información en el tema. No me gusta esto, pero funcionaría como un alternativo hack.
  2. Utilizar una extensión. Creo que los atributos del directorio de sujetos parece que podría ser apropiado, pero aún parece requerir pares de nombre/valor de OID como su carga útil, así que nuevamente ¿qué OID?
  3. ¿Algo completamente diferente?

Una vez más, puedo hacer que esto funcione con el #1 o podría hacer un truco similar con el n.

¿Fue útil?

Solución 2

Terminé utilizando un OID basado en UUID bajo el arco 2.25 para cada uno de mis campos de dos metadatos (esquema y versión).

El siguiente sitio ofrece un generador de UUID como conveniencia y un enlace de registro (aunque no se requiere estrictamente el registro):

http://www.itu.int/itu-t/asn1/cgi-bin/uuid_generate

Otros consejos

Supongo que le importaría qué esquema se usa. Eso significa que probablemente tengas exactamente esos campos en el DN, y que también están inventando exactamente lo que la CA firma (con el puesto obligatorio). Entonces, suponiendo que sus esquemas sean diferentes, eso le permitiría distinguirlos.

Otra opción sería un (sub) ca por esquema; O simplemente use el campo de comentarios de Netscape :).

Sin embargo, en mi experiencia, cuando es relevante que la organización anuncie, reconozca/reconstruya e interprete el esquema, eso generalmente significa que tiene algún propósito comercial. Por lo tanto, generalmente tiene un nombre comercial útil. En ese caso; Considere una (extra) o o ou (variante múltiple si es necesario) con eso allí.

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