asn.1 aprendizaje y recopilación de datos relacionados

La primera semana de estudio

asn.1 aprendizaje

asn.1 introducción

ASN.1 es un símbolo formal utilizado para describir los datos transmitidos a través del protocolo de telecomunicaciones, independientemente de la implementación del lenguaje y la representación física de estos datos, ya sea que su aplicación sea compleja o muy simple.
asn.1 es un estándar utilizado para definir la forma de especificaciones de tipo de datos abstractos.
Se proporciona una cierta cantidad de tipos básicos predefinidos, por ejemplo:

  • Entero (INTEGER)
  • Booleano
  • Cadena (IA5String, UniversalString ...)
  • BIT STRING
  • Espera

Y puede definir el tipo de construcción, por ejemplo:

  • Estructura (SECUENCIA)
  • Lista (SECUENCIA DE)
  • Elija entre tipos (ELECCIÓN)
  • Espera

Solicitud de ASN.1 en el certificado

El estándar X.509 define lo que debe contener el certificado. El estándar ASN.l se puede utilizar para describir el estándar X.509. En otras palabras, ASN.1 es similar al pseudocódigo, que permite a las personas comprender y organizar mejor el estándar X.509.
El certificado tiene la siguiente estructura

Certificate ::= SEQUENCE 
{     
    tbsCertificate    TBSCertificate, 
    signatureAlgorithm    Algorithmidentifier, 
    signature    BIT STRING 
}
  • tbsCertificate: el núcleo del certificado, que contiene la entidad del servidor y la información de la organización de CA.
  • signatureAlgorithm: describe el algoritmo de firma utilizado para firmar el contenido de tbsCertificate.
  • firma: el valor de la firma.

Siguiente vistazo a la estructura de TBSCertifcate:

TBSCertificate ::= SEQUENCE {
    version    [0] Version DEFAULT vl,
    serialNumber    CertificateSerialNumber,
    signature    Algorithmidentifier, 
    issuer    Name,
    validity    Validity, 
    subject    Name,
    subjectPublicKeyinfo    SubjectPublicKeyinfo, 
    issuerUniqueID    [1] IMPLICIT Uniqueidentifier OPTIONAL,
                        -- If present, version MUST be v2 or v3
    subjectUniqueID    [2] IMPLICIT Uniqueidentifier OPTIONAL,
                        -- If present, vers工on MUST be v2 or v3 
    extensions    [3] Extensions OPTIONAL
                    -- If present, version MUST be v3 --
}
  • version: el tipo de versión es Version, que es equivalente a un tipo enumerado. El valor indica el número de versión del certificado. Actualmente hay tres versiones: v1, v2 y v3. El verificador del certificado debe usar la versión correspondiente para verificar.
  • serialNumber: cada certificado tiene un número único. Para diferentes organizaciones de CA, el número es impredecible. CertificateSerialNumber es un tipo entero.
  • firma: describe el algoritmo de firma utilizado.
  • emisor: representa el nombre de la organización de CA, y el valor se compone del nombre del país, la organización y la suborganización.
  • validez: describe el período de validez del certificado.
  • asunto: representa el nombre de la entidad del servidor. La organización solicita un certificado de la organización de CA. El tipo de nombre correspondiente es el mismo que el tipo de nombre del emisor.
  • subjectPublicKeylnfo: contiene el algoritmo de contraseña pública del servidor y el valor de la clave pública.
  • issuerUniquelD y subjectUniquelD: estos dos representan los números únicos de la organización de CA y la entidad del servidor, y han sido reemplazados por la extensión del certificado correspondiente.
  • extensión: La extensión se introdujo en la versión X.509 V3, principalmente para extender el significado del certificado. Sin cambiar la versión X.509, los nuevos atributos del certificado se pueden agregar con relativa facilidad. El hecho de que la extensión recién agregada surta efecto depende de la escuela del certificado Prescripción

Recopilar información de seguimiento

"Guía autorizada HTTPS 568262 para implementar SSL y TLS y PKI en servidores y aplicaciones web" PDF
"Introducción detallada a HTTPS desde el principio hasta el combate real" PDF + Weidong
Sitio web oficial del Departamento de Normalización de Telecomunicaciones de la
UIT Documentación estándar de la UIT Documentación X.680
Codificación ASN1 Aprendizaje
ASN

Supongo que te gusta

Origin www.cnblogs.com/luoleqi/p/12721544.html
Recomendado
Clasificación