¿A quién se le llama así Extrañamente Autoridad de Certificación?

4

Estoy investigando a las autoridades de certificación, y no tengo ni idea de qué pensar de la CA nombrada

x00Ax00-x00Tx00rx00ux00sx00tx00 x00Gx00ex00sx00.x00 x00fx00xFCx00rx00 x00Sx00ix00cx00hx00ex00rx00hx00ex00ix00tx00sx00sx00yx00sx00tx00ex00mx00ex00 x00ix00mx00 x00ex00lx00ex00kx00tx00rx00.x00 x00Dx00ax00tx00ex00nx00vx00ex00rx00kx00ex00hx00rx00 x00Gx00mx00bx00H

como se indica en el observatorio de la EFF color mapa de CA . Google'ing viene con nada. ¿Es esta una codificación de un nombre o algo? No es que haya visto el certificado en mi sistema o que Chrome haya confiado en él. Simplemente tengo mucha curiosidad de qué es y de dónde viene y por qué está codificado / se muestra de esta manera?

    
pregunta craastad 11.01.2014 - 15:50
fuente

1 respuesta

12

Esto parece un nombre mal codificado que fue aún más mal descodificado y recodificado.

Inicialmente, el nombre parece ser: A-Trust Ges. für Sicherheitssysteme im elektr. Datenverkehr GmbH

El nombre fue codificado en big-endian UTF-16 . En este caso, esto significa que cada carácter produjo dos bytes, el primero de los cuales tiene un valor de 0.

Al descodificar, lo que sea que hizo la descodificación no pudo reconocer la cadena como UTF-16 (quizás se etiquetó incorrectamente en el certificado; una cadena UTF-16 debe ser BMPString pero algunos casos de UTF-16 están rellenos en TeletexString se ha visto en la naturaleza; consulte la guía de estilo X.509 para obtener más información. al respecto). La cadena se decodificó como si fuera ASCII, con bytes "no válidos" representados con la convención de estilo C de " \x " seguido de dos caracteres hexadecimales. Esta secuencia se usa en el lenguaje de programación C para insertar valores de bytes explícitos en cadenas literales. Por lo tanto, la inicial " A-T " se convirtió en " \x00A\x00-\x00T ". De manera similar, " für " se convirtió en " \x00f\x00\xFC\x00\xr " porque "ü" no es un carácter ASCII y tiene un valor de 0xFC (también conocido como 252) en Unicode.

Al imprimir la cadena, se causó una lesión adicional en esa cadena, a saber, la eliminación total de todos los caracteres de barra invertida. Esto produjo la cadena exacta que observas.

(Tenga en cuenta que el "mapa CA" de EFF muestra otros ejemplos de esta representación de "estilo C sin barras invertidas", por ejemplo, " SCEE - Sistema de CertificaxE7xE3o ElectrxF3nica do Estado ", que realmente debería ser "SCEE - Sistema de Certificación Electrónica del Estado".)

Ahora, un simple Googling apunta a una CA comercial alemana llamada A-Trust . Ahora el misterio se profundiza un poco, porque el sitio web de CA usa un certificado emitido por la propia CA, y la CA raíz usa el nombre: A-Trust Ges. f. Sicherheitssysteme im elektr. Datenverkehr GmbH , que está correctamente codificado en el certificado (como UTF8String ), pero es no es exactamente el que observa: el " für " se ha reemplazado por " f. ".

Mi conjetura es que lo que ves es una versión anterior del certificado de CA raíz de esa CA, y tuvo problemas de codificación, que se "resolvieron" cambiando el texto a algo que es ASCII puro. Es decir, en lugar de arreglar su software para manejar correctamente los caracteres que no son ASCII, eludieron el problema. Eso es un poco descuidado.

    
respondido por el Thomas Pornin 11.01.2014 - 16:34
fuente

Lea otras preguntas en las etiquetas