Infraestructuras Dominantes Criptográficas

Porque el uso clásico de los cryptosystems compartió llaves, no es posible atar una identidad a una llave.

Los cryptosystems dominantes públicos utilizan dos llaves, una de las cuales debe estar disponible para todos. La asociación entre la llave criptográfica y el principal es crítica, porque determina la llave pública usada para codificar los mensajes para el secreto. Si el atascamiento es erróneo, alguien con excepción del recipiente previsto podría leer el mensaje.

Para los propósitos de esta discusión, asumimos que el principal es identificado por un nombre de una cierta clase aceptable y se ha authenticado a la entidad que genera las llaves criptográficas. La pregunta es cómo cierto (posiblemente diverso) principal puede atar la llave pública a la representación de la identidad.

Una idea obvia está para que el autor firme la llave pública con su llave privada, pero ésta empuja simplemente el problema a otro nivel, porque el recipiente sabría solamente que quienquiera generó la llave pública también la firmó. No hay identidad presente.

  

Creando un mensaje que contiene una representación de la identidad, de la llave pública correspondiente, y de un timestamp, y teniendo una muestra confiada en de la autoridad él.

CAlice = {eAlice || Alicia || T} dCathy

Este tipo de estructura se llama un certificado.

Un certificado es un símbolo que ata una identidad a una llave criptográfica.

Cuando Bob desea comunicarse con Alicia, él obtuvo el certificado CAlice de Alicia. Si se asume que él sabe la llave pública de Cathy, él puede descifrar el certificado. Él primero cheques el timestamp T para ver cuando el certificado fue publicado. (de esto, él puede determinarse si el certificado es demasiado viejo ser confiado en; vea abajo.) Él mira la entidad sujeta (Alicia, a quien el certificado fue publicado). La llave pública en el certificado pertenece a ese tema, así que Bob ahora tiene llave pública de Alicia. Él sabe que Cathy firmó el certificado y por lo tanto ese Cathy está atestiguando a un cierto grado que la llave pública pertenece a Alicia. Si él confía en Cathy para hacer tal determinación, él acepta la llave pública como válido y perteneciendo a Alicia.

Un problema inmediato es que Bob debe saber la llave pública de Cathy para validar el certificado. Dos acercamientos se ocupan de este problema. El primer, por Merkle, elimina la firma de Cathy; el segundo estructura certificados en cadenas de la firma.

Cadenas De la Firma Del Certificado

La forma generalmente de certificación está para que el emisor codifique un picadillo de la identidad del tema (a quién el certificado se publica), de la llave pública, y de la información tal como época de la edición o de la expiración usando la llave privada del emisor. Para validar el certificado, un usuario utiliza la llave pública del emisor para descifrar el picadillo y para comprobar los datos en el certificado. El usuario que intenta validar el certificado debe obtener la llave pública del emisor. Si el emisor tiene un certificado, el usuario puede conseguir esa llave del certificado del emisor. Esto empuja el problema a otro nivel: ¿cómo puede el certificado del emisor ser validado?

Dos acercamientos a este problema son construir a a'rbol-como jerarquía, con la llave pública de la raíz sabida fuera de venda, o permitir un arreglo arbitrario de certifiers y confiar en el conocimiento de cada individuo de los certifiers. Primero, examinamos X.509, que describe certificados y la certificación en general. Entonces miramos la estructura de la certificación del PGP.

Cadenas De la Firma De la Certificación

El marco de la autentificación del directorio de X.509the es la base para muchos otros protocolos. Define formatos del certificado y la validación de la certificación en un contexto genérico. Pronto después de su edición original en 1988, I'Anson y Mitchell encontraron problemas con los protocolos y la estructura del certificado. Estos problemas fueron corregidos en la versión 1993, designada X.509v3.

El certificado X.509v3 tiene los componentes siguientes.

  1. Versión. Cada versión sucesiva del certificado X.509 tiene nuevos campos agregados. Si los campos 8, 9, y 10 (véase abajo) son presente, este campo debe ser 3; si los campos 8 y 9 están presentes, este campo es 2 o 3; y si ningunos de los campos 8, 9, y 10 son presente, el número de versión puede ser 1, 2, o 3.

  2. Número de serie. Esto debe ser único entre los certificados publicados por este emisor. Es decir el par (nombre distinguido, número de serie del emisor) debe ser único.

  3. Identificador del algoritmo de la firma. Esto identifica el algoritmo, y cualquier parámetro, usado para firmar el certificado.

  4. Nombre Distinguido Del Emisor. Éste es un nombre que identifica únicamente el emisor.

  5. Intervalo de la validez. Esto da los tiempos en los cuales el certificado llega a ser válido y expira.

  6. Nombre Distinguido Sujeto. Éste es un nombre conforme a el cual identifica únicamente quién el certificado se publica.

  7. Información dominante pública sujeta. Esto identifica el algoritmo, sus parámetros, y la llave pública del tema.

  8. Identificador único del emisor (certificados de la versión 2 y 3 solamente). Bajo algunas circunstancias, el emisor los nombres distinguidos puede ser reciclado (por ejemplo, cuando el nombre distinguido refiere a un papel, o cuando una compañía se cierra y una segunda compañía con el mismo nombre distinguido se abre). Este campo permite que el emisor quite ambigüedades entre entidades con el mismo nombre del emisor.

  9. Identificador único sujeto (certificados de la versión 2 y 3 solamente). Este campo está como el campo 8, pero para el tema.

  10. Extensiones (certificados de la versión 3 solamente). X.509v3 define ciertas extensiones en las áreas de la información de la llave y de la política, los apremios de la trayectoria de la certificación, y la información del emisor y sujeta. Por ejemplo, si un emisor tiene llaves múltiples de la certificación, el "identificador dominante de la autoridad" permite que el certificado indique qué llave debe ser utilizada. La extensión de los "apremios básicos" indica si el sostenedor del certificado puede publicar certificados.

  11. Firma. Este campo identifica el algoritmo y los parámetros usados para firmar el certificado, seguido por la firma (un picadillo codificado de los campos 1 a 10) sí mismo.

Para validar el certificado, el usuario obtiene la llave pública del emisor para el algoritmo particular de la firma (campo 3) y descifraciones la firma (campo 11). Ella entonces utiliza la información en el campo de la firma (campo 11) al recompute el valor del picadillo de los otros campos. Si empareja la firma descifrada, la firma es válida si la llave pública del emisor está correcta. El usuario entonces comprueba el período de la validez (campo 5) para asegurarse de que el certificado sea actual.

Una autoridad de la certificación (CA) es una entidad esa los certificados de las ediciones.

Si todos los certificados tienen un emisor común, entonces la llave pública del emisor se puede distribuir fuera de venda. Sin embargo, esto es infeasible. Por ejemplo, es altamente inverosímil que Francia y los Estados Unidos podrían convenir en un solo emisor para sus organizaciones y los certificados de los ciudadanos. El sugiere los emisores múltiples, que complica el proceso de la validación.

Suponga que Alicia tiene un certificado de su CA local, Cathy. Ella desea comunicarse con Bob, que CA local es Dan. El problema está para que Alicia y Bob se validen los certificados.

Asuma que X<<Y > > representa el certificado que X generó para el tema Y (X es el CA que publicó el certificado). El certificado de Bob es Dan<<Bob > >. Si Cathy ha publicado un certificado a Dan, Dan tiene un certificado Cathy<<Dan > >; semejantemente, si Dan ha publicado un certificado a Cathy, Cathy tiene un certificado Dan<<Cathy > >. En este caso, Dan y Cathy serían cruz-certificados.

Cruz-se certifican dos CAs si cada uno ha publicado un certificado para el otro.

Porque Alicia tiene llave pública de Cathy (confiado en), ella puede obtener Cathy<<Dan > > y formar la cadena de la firma

Cathy<<Dan > > Dan<<Bob > >

Porque Alicia puede validar el certificado de Dan, ella puede utilizar la llave pública en que certificado para validar el certificado de Bob. Semejantemente, Bob puede adquirir Dan<<Cathy > > y validar el certificado de Alicia.

Dan<<Cathy > > Cathy<<Alice > >

Las cadenas de la firma pueden estar de longitud arbitraria. El único requisito es que cada certificado se puede validar por el que esta' antes de él en la cadena. (X.509 sugiere CAs de organización en una jerarquía para reducir al mínimo las longitudes de las cadenas de la firma del certificado, pero esto no es un requisito.)

Los certificados pueden ser revocados, o ser cancelados. Una lista de tales certificados permite a un usuario detectar, y al rechazo, certificados invalidados.

Cadenas De la Firma Del Certificado del PGP

El PGP es un programa del encipherment usado extensamente para proporcionar la aislamiento para el correo electrónico a través del Internet, y para firmar archivos digital. Utiliza una infraestructura dominante certificado-basada de la gerencia para las llaves públicas de los usuarios. Su estructura del certificado y dominante de gerencia diferencia de X.509's de varias maneras. Aquí, describimos la estructura de OpenPGP; pero mucha de esta discusión también se aplica a otras versiones del PGP.

Un certificado de OpenPGP se compone de paquetes. Un paquete es un expediente con una etiqueta que describe su propósito. Un certificado contiene un paquete dominante público seguido por cero o más paquete de la firma. Un paquete dominante público de OpenPGP tiene la estructura siguiente.

  1. Versión. Éste es 3 o 4. La versión 3 es compatible con todas las versiones del PGP; La versión 4 no es compatible con viejas (versión 2.6) versiones del PGP.

  2. Época de la creación. Esto especifica cuando el certificado fue creado.

  3. Período de la validez (versión 3 solamente). Esto da el número de los días que el certificado es válido. Si es 0, el certificado no expira.

  4. Algoritmo y parámetros dominantes públicos. Esto identifica el algoritmo usado y da los parámetros para el cryptosystem usado. Los paquetes de la versión 3 contienen el módulo para RSA. Los paquetes de la versión 4 contienen los parámetros apropiados para el cryptosystem usado.

  5. Llave pública. Esto da la llave pública. Los paquetes de la versión 3 contienen el exponente para RSA. Los paquetes de la versión 4 contienen la llave pública para el cryptosystem identificado en el campo 4.

La información en un paquete de la firma de OpenPGP es diferente para las dos versiones. La versión 3 contiene el siguiente.

  1. Versión. Éste es 3.

  2. Tipo de la firma. Esto describe el propósito específico de la firma y codifica un nivel de la confianza. Por ejemplo, el tipo 0x11 de la firma dice que el firmante no ha verificado que la llave pública pertenece al tema nombrado.

  3. Tiempo de la creación. Esto especifica el tiempo en el cual los siguientes de los campos hashed.

  4. Identificador dominante del firmante. Esto especifica la llave usada para generar la firma.

  5. Algoritmo dominante público. Esto identifica el algoritmo usado para generar la firma.

  6. Algoritmo del picadillo. Esto identifica el algoritmo usado para hash la firma antes de firmar.

  7. Parte de valor firmado del picadillo. Después de que los datos hashed, el campo 2 se da el tiempo en el cual el picadillo era computado, y ese campo hashed y se añade al picadillo anterior. Los primeros dos octetos se ponen en este campo. La idea es que la firma puede ser rechazada inmediatamente si los primeros dos octetos hashed durante la validación no emparejan este campo.

  8. Firma. Esto contiene el encipherment del picadillo usando la llave privada del firmante.

Un paquete de la firma de la versión 4 es considerablemente más complejo, pero como lo hace un paquete de la firma de la versión 3, ata una firma a un identificador y a datos. Refieren al lector interesado las especificaciones de OpenPGP.

Los certificados del PGP diferencian de los certificados X.509 de varias maneras importantes. Desemejante de X.509, una sola llave puede tener firmas múltiples. (todas las llaves del PGP de la versión 4 son firmados por el dueño; se llama esto uno mismo-firma.) También desemejante de X.509, una noción de la "confianza" se encaja en cada firma, y las firmas para una sola llave pueden tener diversos niveles de la confianza. Los usuarios de los certificados pueden determinar el nivel de la confianza para cada firma y actuar por consiguiente.

EJEMPLO: Suponga que Alicia necesita comunicarse con Bob. Ella obtiene el certificado público del PGP de la llave de Bob, Ellen, Fred, Giselle, Bob<<Bob > > (donde la notación X.509 se extiende de la manera obvia). Alicia no sabe a ninguna de los firmantes, así que de ella consigue el certificado del PGP de Giselle, Henrio, Irene, Giselle<<Giselle > >, de un servidor del certificado. Ella sabe Henrio vago, así que ella obtiene su certificado, Ellen, Henry<<Henry > >, y verifica el certificado de Giselle. Ella observa que la firma del Henrio está en el nivel "ocasional" de la confianza, así que ella decide mirar a otra parte para la confirmación. Ella obtiene el certificado de Ellen, Gato, Ellen<<Ellen > >, y reconoce inmediatamente a Gato como su marido. Ella tiene su certificado y lo utiliza para validar el certificado de Ellen. Ella observa que su firma está en el nivel "positivo" de la confianza, así que ella acepta el certificado de Ellen como válido y lo utiliza para validar a Bob. Ella observa que Ellen firmó el certificado con confianza "positiva" también, así que ella concluye que el certificado, y la llave pública que contiene, es digna de confianza.


En el ejemplo arriba, Alicia siguió dos cadenas de la firma:

Henry<<Henry > > Henry<<Giselle > > Giselle<<Bob > >

y

Jack<<Ellen > > Ellen<<Bob > >

(donde se han caído las firmas desenfrenadas). Los niveles de la confianza afectados cómo Alicia comprobó el certificado.

Una distinción sutil se presenta aquí entre X.509 y los certificados del PGP. Los certificados X.509 incluyen un elemento de la confianza, pero la confianza no se indica en el certificado. Los certificados del PGP indican el nivel de la confianza, pero el mismo nivel de la confianza puede tener diversos significados a diversos firmantes.

Resumen

El despliegue y la gerencia de llaves públicas es complejos debido a los diversos requisitos de varios protocolos. La mayoría de los protocolos utilizan una cierta forma de los certificados X.509v3, aunque las extensiones varían. La infraestructura que maneja llaves y autoridades públicas de la certificación se llama una infraestructura dominante pública. Varias tales infraestructuras están en lugar, tal como los servidores del certificado del PGP y los emisores comerciales del certificado para los browsers mundiales del Web.

esto es un artículo agregado por Bill Kuriko


Negación: Nuestro Web site no es responsable de la información contenida por este artículo. Este artículo de ninguna manera refleja las vistas, las opiniones, los pensamientos o la creencia del personal del directorio de los artículos.

Aviso de la traducción: El artículo "infraestructuras dominantes criptográficas" fue traducido usando un servicio de traducción automatizado. Nos disculpamos sinceramente por cualquier error de la traducción que ocurriera. Gracias por entender.

Online: 396 users browsing the articles directory