Articulo de referencia

Criptografía de clave transitoria

La criptografía de clave transitoria es una forma de criptografía de clave pública en la que se generan pares de claves que se asignan a intervalos de tiempo breves en lugar de ...

La criptografía de clave transitoria es una forma de criptografía de clave pública en la que se generan pares de claves que se asignan a intervalos de tiempo breves en lugar de a individuos u organizaciones, y los bloques de datos criptográficos se encadenan a lo largo del tiempo. En un sistema de clave transitoria, las claves privadas se utilizan brevemente y luego se destruyen, razón por la cual a veces se la denomina "criptomoneda desechable". Los datos cifrados con una clave privada asociada a un intervalo de tiempo específico pueden vincularse irrefutablemente a ese intervalo, lo que hace que la criptografía de clave transitoria sea particularmente útil para el sellado de tiempo digital confiable . La criptografía de clave transitoria fue inventada en 1997 por Michael Doyle de Eolas y ha sido adoptada en el estándar ANSI ASC X9.95 para sellos de tiempo confiables .

Clave pública frente a clave transitoria

Tanto los sistemas de clave pública como los de clave transitoria pueden utilizarse para generar firmas digitales que certifiquen que un dato determinado no ha sufrido modificaciones desde su firma. Sin embargo, ahí terminan las similitudes. En un sistema de clave pública tradicional, el par de claves pública/privada se asigna normalmente a un individuo, servidor u organización . Los datos firmados con una clave privada certifican que la firma proviene de la fuente indicada. Los pares de claves se conservan durante años, por lo que el componente privado debe protegerse cuidadosamente contra su divulgación; en un sistema de clave pública, cualquier persona con acceso a una clave privada puede falsificar la firma digital de esa persona.

En los sistemas de clave transitoria, sin embargo, el par de claves se asigna a un breve intervalo de tiempo, no a una persona o entidad en particular. Los datos firmados con una clave privada específica se asocian a una fecha y hora determinadas. Un par de claves permanece activo solo durante unos minutos, tras los cuales la clave privada se destruye permanentemente. Por lo tanto, a diferencia de los sistemas de clave pública, los sistemas de clave transitoria no dependen de la seguridad a largo plazo de las claves privadas.

Establecer la integridad de los datos

En un sistema de clave transitoria, la fuente de tiempo debe ser un estándar consistente y comprensible para todos los emisores y receptores. Dado que el reloj del sistema local puede ser modificado por el usuario, nunca se utiliza como fuente de tiempo. En su lugar, los datos se firman digitalmente con un valor de tiempo derivado del Tiempo Universal Coordinado (UTC) con una precisión de un milisegundo, de acuerdo con el estándar ANSI ASC X9.95 para el sellado de tiempo confiable . Cuando expira un intervalo de tiempo en un sistema de clave transitoria, se genera un nuevo par de claves pública/privada, y la clave privada del intervalo anterior se utiliza para certificar digitalmente la nueva clave pública. La clave privada anterior se destruye. Este sistema de "encadenamiento de claves" es el antecesor inmediato de la tecnología blockchain , tan popular hoy en día.

Para el nuevo intervalo, los valores de tiempo se obtienen de una fuente de terceros de confianza, y se pueden interpolar momentos específicos entre los tiempos recibidos mediante un método de sesgo temporal basado en el temporizador interno del sistema. Si no se puede obtener una fuente de tiempo de confianza o esta no funciona dentro de las tolerancias especificadas , no se emiten claves privadas transitorias. En ese caso, la cadena de intervalos de tiempo se termina y se inicia una nueva. Las cadenas antigua y nueva están conectadas a través de archivos de red, lo que permite a todos los servidores seguir verificando la integridad de los datos protegidos a lo largo del tiempo, independientemente de la frecuencia con la que deba reiniciarse la cadena. Los tiempos de inicio de la cadena y de cada intervalo se pueden combinar para formar una secuencia ininterrumpida de claves públicas, que se pueden utilizar para lo siguiente:

  • Para identificar de forma irrefutable el momento en que se firmó un conjunto de datos.
  • Para identificar el estado exacto de los datos en el momento en que fueron firmados.

Como medida de seguridad adicional, todas las solicitudes de firmas realizadas durante un intervalo se almacenan en un registro que se concatena y se añade a la clave pública al inicio del siguiente intervalo. Este mecanismo imposibilita la inserción posterior de nuevos «eventos firmados» en la cadena de intervalos.

Verificación cruzada

Una clave privada se certifica de forma cruzada utilizando otros dos servidores de claves transitorias.

Mediante servidores que operan de forma independiente, la certificación cruzada puede proporcionar una prueba de terceros sobre la validez de una cadena de intervalos de tiempo y evidencia irrefutable de consenso sobre la hora actual. Los sistemas criptográficos de clave transitoria muestran una alta tolerancia a fallos bizantinos . Una red de servidores de certificación cruzada interconectados en un entorno distribuido crea una cadena de confianza ampliamente verificada, cuya solidez depende de su eslabón más fuerte. Por el contrario, jerarquías enteras de sistemas tradicionales de clave pública pueden verse comprometidas si se expone una sola clave privada.

Una cadena de intervalos de clave transitoria individual puede certificarse cruzadamente con otras cadenas de claves transitorias e instancias de servidor. Mediante la certificación cruzada, el Servidor A firma la cadena de intervalos del Servidor B, cuyos datos firmados constituyen la definición del intervalo. En efecto, las claves privadas del Servidor B se utilizan para firmar las claves públicas del Servidor A. En el diagrama, una instancia de servidor se certifica cruzadamente con otras dos instancias de servidor (azul y naranja). La certificación cruzada requiere que la marca de tiempo del intervalo coincida con la marca de tiempo del servidor que realiza la certificación cruzada dentro de tolerancias aceptables, definidas por el usuario y que suelen tener una duración de unos pocos cientos de milisegundos.

Archivos de red

Junto con los intervalos, las certificaciones cruzadas se almacenan en un archivo de red. En una red de clave transitoria, el archivo es una base de datos lógica que se puede almacenar y replicar en cualquier sistema para permitir la verificación de datos con marca de tiempo y firmados mediante claves transitorias. Un mapa del conjunto de archivos accesibles se almacena en cada firma digital creada en el sistema. Cuando se completan las certificaciones cruzadas al inicio de un intervalo, el mapa del archivo se actualiza y se publica en todos los servidores de la red.

Verificación

Durante un intervalo, la clave privada transitoria se utiliza para firmar datos concatenados con marcas de tiempo confiables y certificados de autenticidad. Para verificar los datos posteriormente, el receptor accede a la clave pública persistente correspondiente al intervalo de tiempo adecuado. La clave pública aplicada a la firma digital se puede procesar mediante rutinas criptográficas publicadas para descifrar el hash de los datos originales, que luego se compara con un hash actualizado de los datos almacenados para verificar su integridad. Si la firma se descifra correctamente utilizando la clave pública publicada de un intervalo específico, el receptor puede tener la certeza de que la firma se originó durante ese período. Si los hashes descifrado y actualizado coinciden, el receptor puede tener la certeza de que los datos no han sido manipulados desde que la clave privada transitoria creó la marca de tiempo y firmó los datos.

La criptografía de clave transitoria fue inventada en 1997 por Michael D. Doyle de Eolas Technologies Inc., mientras trabajaba en el Proyecto Visible Embryo [ 1 ] [ 2 ] [ 3 ] y posteriormente adquirida y comercializada por ProofSpace, Inc. Ha sido adoptada como estándar nacional en el estándar ANSI ASC X9.95 para el sellado de tiempo confiable. La criptografía de clave transitoria es la predecesora del secreto directo y constituyó la base de la tecnología de encadenamiento de firmas directas en el sistema de cadena de bloques de Bitcoin .

Véase también

Referencias

  1. US 6381696 , MD Doyle, "Método y sistema para marcas de tiempo digitales de clave transitoria", emitido el 30 de abril de 2002 
  2. US 7047415 , MD Doyle; PF Doyle y GW Bernsohn et al., "Sistema y método para prueba de tiempo ampliamente presenciada", publicado el 16 de mayo de 2006 
  3. US 7210035 , MD Doyle; RG Hamilton y MC Perrone et al., "Sistema y método para indicadores gráficos para la certificación de registros", publicado el 24 de abril de 2007.