ES2300307T3 - Sistema y metodo de criptografia simetrica. - Google Patents

Sistema y metodo de criptografia simetrica. Download PDF

Info

Publication number
ES2300307T3
ES2300307T3 ES01274922T ES01274922T ES2300307T3 ES 2300307 T3 ES2300307 T3 ES 2300307T3 ES 01274922 T ES01274922 T ES 01274922T ES 01274922 T ES01274922 T ES 01274922T ES 2300307 T3 ES2300307 T3 ES 2300307T3
Authority
ES
Spain
Prior art keywords
stream
random
session
sequence
unique keys
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES01274922T
Other languages
English (en)
Inventor
Christian Olrog
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2300307T3 publication Critical patent/ES2300307T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator

Abstract

Un método que comprende las operaciones de cifrar una secuencia de texto plano P emitida por un lado de emisor S que ha acordado al menos una contraseña, Pswd1, con un lado receptor R, procesar el texto plano P con una función de cifrado (XOR) a una secuencia de texto cifrado C con claves únicas respectivas (RC''stream 1, RC''stream 2.... RC''stream n), transmitir el texto cifrado sobre un medio en una sesión de transmisión usando números de orden de sesión predeterminados, recibir el texto cifrado y recuperar el texto plano por una función de descripción (XOR) con las mismas claves únicas específicas (RC''stream 1, RC''stream 2....RC''stream n), la contraseña acordada (Pswd1) es introducida en un generador (RC) de secuencia pseudo aleatoria, en el que el primer generador (RC) de bits aleatorios está generando una primera secuencia (Rcstream) de bits aleatoria grande o infinita, sobre la que están basadas las claves únicas, caracterizado porque independientemente de la progresión de la sesión de comunicación, se calcula y almacena una lista de claves únicas (RC''stream 1, RC''stream 2....RC''stream n) en una disposición (Pa1, Pa2, Pan) en al menos el lado de emisor o el lado de receptor.

Description

Sistema y método de criptografía simétrica.
Campo del invento
El presente invento se refiere a criptografía simétrica y en particular a sistemas de telecomunicación que usan la criptografía simétrica.
Antecedentes del invento
El cifrado de datos enviados sobre redes debería típicamente impedir que bloques de texto plano idénticos que son enviados una pluralidad de veces sean transformados en el mismo bloque de texto cifrado. Este requisito debería hacer muy complicado o imposible que el criptoanalista no autorizado descargue gratis textos cifrados relacionados por ejemplo con mensajes de navegación en Internet donde las mismas páginas web son solicitadas de nuevo por el mismo usuario.
En la fig. 1, se ha mostrado un sistema conocido de cifrado de clave única, en el que un emisor S está enviando un mensaje de texto plano P a un receptor R. El bloque P de mensaje de texto plano es procesado de acuerdo con un código, que en este caso es la función O exclusiva (XOR), con una clave, que consiste de una secuencia RS de bits aleatoria, tal que se genere un bloque de texto cifrado C. El bloque de texto cifrado C es trasmitido en el punto A sobre un medio M y es recibido en el punto B. Por ejemplo A corresponde a un transmisor de radio, M corresponde al aire y B corresponde a un receptor de radio. Después de la recepción en el punto B, el bloque C del mensaje de texto cifrado es procesado en una función O exclusiva con la misma clave de secuencia aleatoria RS, como se ha usado bajo cifrado, de tal modo que el bloque P de texto plano original es recuperado.
Para una secuencia de textos planos que son transmitidos, tales como paquetes en una red de datos por paquetes, se ha observado que el receptor debe saber qué número de orden del mensaje de texto cifrado recibe con el fin de utilizar la secuencia de bit aleatoria correspondiente.
Una tabla de secuencias aleatorias conocida tanto por el receptor como por el emisor puede ser usada como claves para el cifrado y descifrado simétricos. Tal tabla podría tener el formato mostrado en la fig. 2, o podía ser mucho mayor.
Un Generador de Número Pseudo Aleatorio (PRNG) puede también ser usado para generar claves apropiadas. Un PRNG es una construcción aleatoria no verdadera, que para los no iniciados parece ser un generador de números verdaderamente aleatorio (TRNG). Normalmente un PRNG puede conseguir la salida de TRNG cercana durante un período limitado, y muy a menudo, la salida se repetirá en ciclos. Un ciclo más largo generalmente significa un PRNG mejor.
Conseguir una aleatoriedad verdadera para una máquina inherentemente determinística es un problema difícil. Una solución simplemente basada en software puede sólo conseguir un comportamiento "casi aleatorio" o "parecido a aleatorio". De por sí, la radiación antecedente omnipresente y por tanto la descomposición atómica es considerada una de las pocas fuentes verdaderas de aleatoriedad. En informática, una unión de Josephson cuidadosamente diseñada es considerada como un Generador de Ruido Aleatorio Verdadero, TRNG, también.
Típicamente, el PRNG puede ser invocado sin parámetros. Algún PRNG requiere una especificación del número de bits aleatorios necesarios con el fin de generar un valor "aleatorio". Cualesquiera llamadas siguientes idénticas producirán valores diferentes.
Para impedir que un PRNG emita la misma corriente pseudo aleatoria en cada nueva puesta en marcha, la mayoría de las construcciones PRNG soporta la noción de "sembrado" o inicialización con una semilla de número aleatorio. Típicamente, la mayoría de los PRNG producirá la misma corriente de salida cuando es sembrada con la misma semilla exacta de nuevo.
Generalmente, un PRNG no es un PRNG cuando tanto la construcción PRNG real como la semilla son conocidos por el observador. El observador puede predecir fácilmente la siguiente salida (n+1) PNRG sembrando el PRNG con la semilla inicial e iterando los instantes PRNG n+1.
Hay construcciones PRNG, que pueden tener el cómputo "n" como un parámetro y producir una respuesta pseudo aleatoria en un único recorrido. La función Estándar de Cifrado de Datos DES_encrypt (semilla|cómputo), donde "|" significa concatenación es un ejemplo.
Exponiendo bien el algoritmo o bien la semilla, el PRNG es debilitado. Obsérvese sin embargo, que una construcción PRNG fuerte con un gran estado interno puede aún ser muy dura de predecir mientras la semilla inicial es desconocida para el observador. Obsérvese también, que puede ser muy duro proteger el cómputo de iteración de un observador exterior. Recurriendo a construcciones donde sólo cada salida PRNG enésima es realmente emitida desde el PRNG puede ser visto como un nuevo PRNG, que de nuevo se enfrenta al mismo problema de cómputo de iteración.
La construcción PRNG constituye una ciencia per se, y un gran número están fácilmente disponibles en la literatura. Por nombrar unos pocos: RC2, RC4, la mayoría de cifrados por bloque en modo OFB (Realimentación de Salida), MT19937B, construcciones generales con combinaciones HMAC con algoritmos de generación de claves seguros tales como SHA-1, MD5 y RIPEMD.
Cuando un PRNG satisface ciertos criterios con respecto a su predecibilidad, puede ser denominado como un PRNG criptográficamente seguro. Los RC2 y RC4 fueron construidos para este propósito. Se ha orientado una gran cantidad de búsquedas en la investigación de varios de estos algoritmos con respecto a su longitud de ciclo. Para el caso de construcciones de generación de claves, un problema que ha sido abordado es cuántos bytes de salida pueden ser conseguidos sin poner en peligro el depósito de entropía interno del PRNG, sin renovación de entropía.
Una construcción criptográfica, de OTP, contraseña verdadera de un solo uso, es tal vez la única construcción criptográfica contra la cual no son conocidos ni tampoco hay disponibles ataques. La criptografía OTP está basada en usar una tabla, como se ha mostrado en la fig. 2, de claves predefinidas, que son usadas sólo una vez y descartadas subsiguientemente tanto por el cliente como por el servidor.
Además del cifrado, las OTP, Contraseñas de Un Solo Uso, son también comúnmente usadas en autenticación, donde en vez de presentar una contraseña particular sobre cada comienzo de sesión, el usuario introduce la siguiente entrada en la tabla de contraseñas.
Un inconveniente se encuentra en la distribución de las tablas predefinidas.
Otro problema potencial para sistemas basados en OTP es la falta de sincronización entre cliente y servidor. Por ejemplo el cliente intenta autenticar sobre una mala conexión y el servidor recibe una mala contraseña (confusa). El servidor debe denegar el acceso y hacer caso omiso a la solicitud de comienzo de sesión. Ahora, la siguiente contraseña de cliente es desde la entrada n+1, mientras que el servidor está aún en n. Consiguientemente, el servidor debe intentar varias contraseñas, usualmente hasta n+x, donde x puede ser considerada como una ventana de sincronización. Mientras han tenido lugar menos de x autenticaciones erróneas desde la última autenticación correcta, la autenticación corriente puede ser satisfactoria si la contraseña es correcta.
Las listas predefinidas de contraseñas únicas no tienen necesariamente que ser listas. En nociones más generales las listas podrían ser tuples (conjuntos) de <valor, iteración> predeterminados.
Esto nos lleva de nuevo a los PRNG. Si una semilla inicial ha sido acordada, un conjunto de nuevas contraseñas puede ser visto como un resultado del proceso o salida de PRNG.
Cifrar el mismo texto plano P dos veces usando el mismo cifrado y clave producirá dos textos cifrados iguales C y C'. Para impedir esto a menudo es usado un Vector de Inicialización (IV). El vector de inicialización es elegido aleatoriamente de manera diferente para cada texto plano P y es enviado en texto claro al receptor. Para cifrados de corriente (por ejemplo RC4) el vector de inicialización está a menudo concatenado con la clave secreta:
C=encrypt(P,key|IV)
C=decrypt(C,key|IV)
Para cifrados de bloques (por ejemplo DES) es más común tener una construcción similar a:
P'=P xor IV, C'=encrypt(P',key)
P'=decrypt(C',key), P=P' xor IV
En ambos casos, el vector de inicialización es enviado de manera clara al receptor con cada mensaje cifrado.
En las figs. 3, 4 y 7, se ha mostrado la percepción de los inventores del último método de criptografía descrito.
Una secuencia de bloques P de texto plano es emitida por un emisor S que se ha puesto de acuerdo sobre una clave o contraseña de 40 bits, Pswd1, con un receptor R. Los bloques P de texto plano son procesados con una función O exclusiva con distintos OTP indicados RC4stream#1, RC4stream#2....RC4stream#n.
En analogía con la fig. 1, están previstos un lado de emisor S y un lado de receptor R y la transmisión por un sistema de telecomunicaciones (no mostrado) sobre un medio M entre los puntos A y B está prevista.
Se hará referencia a continuación a las figs. 3 y 4. En el lado del emisor S, un PRNG genera un vector de identificación, que genera una respuesta de 24 bits. A continuación, una segunda contraseña de 64 bits, Pswd2, está compuesta del vector de inicialización por el PRNG y la Pswd1 disponiendo las dos secuencias de bits una después de la otra. La clave resultante, Pswd2, es introducida en una función RC4, que genera subsiguientemente la contraseña de un solo uso, en particular una secuencia de bits indicada como RC4stream#(1-n), que es introducida a la función XOR, mencionada antes. Por ello el texto cifrado C es generado y está listo para ser transmitido.
El texto cifrado C -que tiene un número de orden correspondiente a un número de orden de texto plano dado- y el vector de inicialización de número de orden correspondiente usado para generar el RC4stream están encerrados en el mismo paquete de datos cuando son transmitidos.
En la fig. 7, se ha mostrado el diagrama de tiempos perteneciente al método de cifrado anterior. En el lado del emisor, S, un paquete inicial P1 y un vector de inicialización inicial IV1 son comenzados emitidos en el instante t0.
La segunda contraseña Pswd2 es generada por la composición de Pswd1 y el vector de inicialización aleatorio y es insertada en la función RC4. Desde t1 el RC4stream (RCstream#1) es generado mediante el generador RC4 en el lado del emisor S RC4. En t2 la función XOR en el lado del emisor S XOR genera el texto cifrado C1, de tal manera que es transmitido un paquete de datos que consiste de texto cifrado y vector de inicialización, que tienen números de orden correspondientes.
Con referencia ahora a la fig. 3, el mismo proceso es aplicado sustancialmente en el lado del receptor R como en el lado del emisor S. El vector de inicialización he recuperado del paquete transmitido. El receptor emite la Pswd1 de número de orden apropiado por ejemplo correspondiente al número de paquete. Subsiguientemente, un RC4stream, que es idéntico al RC4stream del lado del emisor del mismo número de orden, es introducido en el operador XOR.
Por tanto, tan pronto como el vector de inicialización transmitido es recibido, el RC4stream correspondiente puede ser generado. En la fig. 7, se ha mostrado que la generación del RC4stream#1 en el lado del receptor es comenzada en t3 y es convertida en XOR con el texto cifrado C1. Finalmente, en t4 el texto plano P1 es emitido del operador R XOR.
Este proceso es iterado con bloques de texto plano P2 a Pn usando sólo una contraseña única Pswd1 conocida por el emisor y receptor y usando contraseñas de una sola vez distintas por vectores de inicialización de generación pseudo aleatoria IV1 a IVn.
El documento de la técnica anterior WO01/48594 muestra un registro de desplazamiento de realimentación lineal usado para un generador de número pseudo aleatorio en un criptosistema de cifrado de corriente. El generador de números pseudo aleatorio requiere un vector de inicialización y una clave privada tanto en el lado del emisor como en el lado del receptor. El registro de desplazamiento de realimentación lineal ayuda a reducir el número de instrucciones requeridas para generar secuencias pseudo aleatorias. El documento WO01/50676 muestra un sistema similar.
El documento de la técnica anterior US6249582 muestra un aparato y método para reducir el exceso de recursos de un bloque cifrado e incluye el acortamiento de la longitud de un vector de inicialización. La cadena de bloques cifrados impide que la longitud del ciclo total del cifrado del bloque disminuya.
Resumen del invento
Es un primer objeto del presente invento disminuir la información sobrante en un canal de comunicación mientras que alcanza una alta seguridad de cifrado.
Este objeto ha sido conseguido por el sujeto definido en la reivindicación 1ª.
Es un objeto principal del presente invento utilizar de manera más efectiva el nivel frecuente de tratamiento de energía disponible para cifrar o descifrar mensajes.
Este objeto ha sido conseguido por el sujeto definido por la reivindicación 2ª.
Es otro objeto del presente invento aumentar la seguridad de cifrado.
Este objeto ha sido conseguido por el sujeto definido en la reivindicación 3ª.
Es otro objeto del presente invento aumentar más la seguridad de cifrado.
Este objeto ha sido conseguido por el sujeto definido en la reivindicación 4ª.
Otras ventajas aparecerán a partir de la siguiente descripción detallada del invento.
Breve descripción de los dibujos
La fig. 1 muestra un modelo conocido de criptografía simétrica,
La fig. 2 muestra un extracto ejemplar de una tabla de contraseña de un solo uso,
La fig. 3 muestra otro conocido modelo de criptografía,
La fig. 4 muestra operaciones y formatos de bits para el modelo conocido de la fig. 3,
La fig. 5 muestra la interpretación de los solicitantes de un diagrama de tiempo posible con relación al modelo mostrado en las figs. 3 y 4.
La fig. 6 muestra un modelo de criptografía preferido de acuerdo con el invento,
La fig. 7 muestra operaciones y formatos de bits para el modelo de la fig. 6, y
La fig. 8 muestra un diagrama de tiempos con relación a la realización preferida del invento como se ha mostrado en las figs. 6 y 7.
Descripción detallada de realizaciones preferidas del invento
En las figs. 5, 6 y 8 se ha mostrado una realización ejemplar del presente invento.
Inicialmente una Pswd1 inicial es negociada entre un emisor y un receptor durante la configuración/autenticación de la sesión. Debería entenderse que las misiones del emisor y el receptor pueden cambiar en el tiempo, de tal manera que una sesión de comunicación bidireccional es realizada. Sin embargo, a continuación por razones de simplicidad se explicará cómo es realizada la comunicación desde una parte denominada emisor a otra parte denominada receptor. El emisor y receptor podrían referirse a unidades de comunicación, por ejemplo terminales móviles.
Como en la técnica anterior, una secuencia de textos planos P es emitida por el emisor S quien se ha puesto de acuerdo en una primera contraseña, Pswd1, con el receptor R. Los textos planos P son cifrados con una función O exclusiva con distintas claves indicadas RC'stream#1, RC'stream#2...RC'stream#n. La primera contraseña puede tener una longitud de por ejemplo 64 bits o cualquier otra longitud.
Más específicamente, la primera contraseña Pswd1 es introducida en un generador de secuencia aleatoria, RC, tal como Rc2 o RC4, y una primera cadena de secuencia de bits aleatoria, RCstream, es generada como se ha mostrado en la fig. 6. El generador RC podría de manera adecuada ser elegido de tal manera que el RCstream tenga una longitud infinita. Esta cadena de secuencia de bits aleatoria está dividida de tal manera que es definido un conjunto de n vectores de inicialización, IV1 - IVn.
Como se ha mostrado en las figs. 5 y 6, los n vectores de inicialización IV1 - IVn son procesados individualmente de acuerdo con un segundo generador de secuencia aleatoria RC' de acuerdo con la función RC'(IV), de tal manera que aparece un conjunto de n secuencias de cadena de bits aleatoria, RC'stream#1 - RC'stream#n. De nuevo, como generador de secuencia aleatoria, podrían ser usados ventajosamente RC2 o RC4, pero otros generadores son opcionales.
Se ha considerado que como una alternativa a la realización mostrada en las figs. 5 y 6, un único generador de secuencia de bit aleatoria RC puede ser usado por lo que la secuencia de bit resultante es dividida en n claves.
Las últimas n corrientes son almacenadas en forma tabular con entradas Pa1 - Pan en una memoria tampón de paquete. Por ello, es conseguida una lista de n claves únicas distintas.
En el lado del receptor son llevadas a cabo las mismas operaciones que en el lado del emisor de tal manera que una lista idéntica de claves únicas es conseguida en ambos lados.
Por tanto, el cifrado es conseguido para un texto plano P con un número de orden dado que usa la función XOR conocida con una clave dada, RC'stream, con un número de orden correspondiente, de tal manera que es conseguido un texto cifrado C del número de orden correspondiente.
El descifrado es conseguido para un texto cifrado C con un número de orden dado usando la función XOR conocida con la misma clave, RC'stream, con el mismo número de orden correspondiente como se ha usado bajo el cifrado.
Como en muchos sistemas de transmisión conocidos, especialmente sistemas de paquetes de datos, paquetes o tramas transmitidos están conteniendo un número de secuencia de sesión, el número de orden del método de cifrado puede ser fácilmente asociado con el número de orden usado para la sesión de transmisión.
Por ello, no hay necesidad para la sincronización durante la sesión de comunicación. Aunque los paquetes pueden no ser recibidos en orden consecutivo, pueden aún ser descifrados de acuerdo con la lista predeterminada de claves de un solo uso Pa1 - Pan.
Ventajosamente, la lista de claves únicas RC'stream#1, RC'stream#2....RC'stream#n en la disposición o matriz Pa1, Pa2, Pan son calculadas tanto en el lado del emisor como en el lado del receptor, por lo que los números de orden 1 - n de la sesión de transmisión son asociados a los números de orden de la disposición Pa1, Pa2, Pan. Un texto plano dado es recuperado de acuerdo con el orden dado, un texto cifrado dado C es recibido en una sesión de comunicación dada, recuperando una clave única calculada respectiva RC'stream#1, RC'stream#2....RC'stream#n con el número de orden de sesión de transmisión asociada de la matriz en el lado del receptor.
Ventajosamente la lista de la memoria tampón de paquetes puede ser calculada antes de que comience una sesión de comunicación, pero la creación de la lista puede también ser realizada de manera intermitente con la transmisión de paquetes como se ha mostrado en el diagrama de tiempo de la fig. 8. Tan pronto como la memoria tampón ha alcanzado un tamaño apropiado para manejar el texto cifrado entrante, el cálculo de claves de un solo uso adicionales puede ser llevado a cabo cuando hay disponible energía del procesador.
En la fig. 8, se ha mostrado el diagrama de tiempo que pertenece al método de cifrado anterior. En el lado del emisor, S, un paquete inicial P y un vector de inicialización inicial han comenzado a ser emitidos en el instante t0.
Subsiguientemente, los paquetes de texto plano nuevos son emitidos y los nuevos vectores de inicialización son generados de acuerdo con la función RC.
Tan pronto como el primer vector de inicialización es emitido se puede comenzar el cálculo de la lista de claves de un solo uso y el subsiguiente almacenamiento en la memoria tampón del paquete de datos. Como se ha mostrado en la fig. 8, a partir del instante t1, las claves únicas respectivas RC'stream#1, RC'stream#2, RC'stream#3 son calculadas y almacenadas en la disposición de paquetes en los números de orden Pa1, Pa2 y Pa3.
Lo mismo se aplica al lado del receptor, aquí el vector de inicialización y las claves de un solo uso comienzan a ser calculadas inmediatamente después de que el proceso de comunicación es iniciado.
Por tanto, un número de claves de un solo uso RC'stream#1, RC'stream#2, RC'stream#3 son frecuentes en el lado del emisor y en el lado del receptor en una etapa temprana en la sesión de comunicación. Éstas claves de un solo uso están listas para ser usadas con independencia del orden en que los paquetes reales pueden ser transmitidos y por tanto independientemente de la progresión de la sesión de comunicación.
En t2 el texto cifrado C1 es emitido y subsiguientemente en t3 el texto plano P1 es recuperado. Aunque sería ventajoso calcular y almacenar claves únicas tanto en el lado del emisor como en el lado del receptor, sería posible, dependiendo de la energía de tratamiento disponible en la unidad de comunicación tanto en el lado del receptor como en el lado del emisor, calcular la disposición solamente en un lado.
Parece que usando un esquema OTP (Contraseña única/Contraseña dinámica), con la Pswd1 inicial negociada durante la sesión de configuración/autenticación, un vector de inicialización cambiante puede ser usado sin tener que sincronizarlo abiertamente sobre la red. Además, como los vectores de inicialización no son enviados sobre el canal de comunicación como exceso de recursos, la capacidad del canal de comunicación puede ser dedicada al contenido mientras la seguridad es retenida en un alto nivel.
El invento es aplicable tanto a modos de cifrado de corrientes como a modos de cifrado de bloques.
Para afrontar eficientemente las pérdidas de paquetes, cada paquete puede estar opcionalmente equipado con un tamaño de ventana de módulo de número de secuencia (tan pequeño como que 4 bits dan soporte para 15 paquetes perdidos), o un número de secuencia ya existente (si las características del protocolo son conocidas) puede ser reutilizado para ahorrar ancho de banda.
Como los vectores de inicialización y las claves únicas pueden ser calculados previamente antes de la llegada del paquete, es también posible calcular previamente las corrientes de bits de cifrado de corrientes. Por consiguiente, las corrientes de bits de secuencia de bits aleatorios de cálculo potencialmente complejo pueden ser calculadas en modo de prioridad baja antes de que hayan llegado los datos. Cuando llegan los datos, sólo hay necesidad de cifrar por XOR los datos con la corriente de bits almacenados para recuperar el texto plano. Opcionalmente, el número de secuencia puede ser comprobado por consistencia, para detectar posible pérdida de paquetes.
El método anterior permite un envío de paquetes cifrados eficiente y seguro, especialmente sobre enlaces de comunicación de ancho de banda limitado ya que no tiene lugar una transferencia explícita de vectores de inicialización.
La explotación específica de la capacidad para calcular previamente vectores (claves) de inicialización hace posible conseguir rendimientos elevados en dispositivos limitados.
El cifrado de corrientes normal requiere a menudo cambios frecuentes de claves para impedir ataques de texto plano conocidos. De acuerdo con el invento, las claves pueden ser cambiadas en cada paquete mejorando así la seguridad.
Los generadores de secuencia de bits aleatoria, RC y RC', podrían estar basados en el HMAC.SHA 1, en modo de realimentación de salida, o cualquier cifrado de bloques en OFB, tal como DES o cualquier otra construcción adecuada como un PRNG podría ser usado.

Claims (7)

1. Un método que comprende las operaciones de cifrar una secuencia de texto plano P emitida por un lado de emisor S que ha acordado al menos una contraseña, Pswd1, con un lado receptor R, procesar el texto plano P con una función de cifrado (XOR) a una secuencia de texto cifrado C con claves únicas respectivas (RC'stream#1, RC'stream#2.... RC'stream#n), transmitir el texto cifrado sobre un medio en una sesión de transmisión usando números de orden de sesión predeterminados, recibir el texto cifrado y recuperar el texto plano por una función de descripción (XOR) con las mismas claves únicas específicas (RC'stream#1, RC'stream#2....RC'stream#n), la contraseña acordada (Pswd1) es introducida en un generador (RC) de secuencia pseudo aleatoria, en el que el primer generador (RC) de bits aleatorios está generando una primera secuencia (Rcstream) de bits aleatoria grande o infinita, sobre la que están basadas las claves únicas, caracterizado porque independientemente de la progresión de la sesión de comunicación, se calcula y almacena una lista de claves únicas (RC'stream#1, RC'stream#2....RC'stream#n) en una disposición (Pa1, Pa2, Pan) en al menos el lado de emisor o el lado de receptor.
2. Un método según la reivindicación 1ª, en el que una lista de claves únicas (RC'stream#1, RC'stream#2....
RC'stream#n) en la disposición (Pa1, Pa2, Pan) es calculada tanto en el lado del emisor como en el lado del receptor, comprendiendo además el método las siguientes operaciones: asociar los números (1-n) de orden de sesión de transmisión a los números (Pa1, Pa2, Pan) de orden de la disposición, recuperar un texto plano dado de acuerdo con el orden dado, un texto cifrado C dado es recibido en una sesión de comunicación dada, recuperando una clave única calculada respectiva (RC'stream#1, RC'stream#2....RC'stream#n) con el número de orden de la transmisión asociada de la disposición en el lado del receptor.
3. El método según la reivindicación 1ª o 2ª, en el que la primera secuencia de bits pseudo aleatoria es procesada de tal modo que n secuencias de bits aleatorias (RC'stream#1 - RC'stream#n) parece que son usadas como claves únicas.
4. El método según la reivindicación 1ª o 2ª, en el que desde la primera secuencia de bits aleatoria un conjunto de n segundos vectores de inicialización (IV1-IVn) son definidos y sobre la base en el segundo conjunto de n segundos vectores de inicialización (IV1 - IVn) un conjunto de n segundas secuencias de bit aleatorias es calculado por medio de un segundo generador (RC') pseudo aleatorio, definiendo las segundas n secuencias de bits aleatorias la lista de claves únicas (RC'stream#1, RC'stream#2.... RC'stream#n) que han de ser almacenadas en la disposición (Pa1, Pa2, Pan).
5. Un método según cualquier reivindicación precedente, en el que el cálculo de las claves únicas es realizado cuando hay disponible energía de procesador.
6. Un método según cualquier reivindicación precedente, en el que inicialmente una contraseña inicial (Pswd1) es negociada entre el emisor y el receptor durante la configuración y/o autenticación de la sesión.
7. Un método según cualquier reivindicación precedente, en el que paquetes o tramas transmitidos están conteniendo el número de secuencia de la sesión.
ES01274922T 2001-12-06 2001-12-06 Sistema y metodo de criptografia simetrica. Expired - Lifetime ES2300307T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/SE2001/002695 WO2003049363A1 (en) 2001-12-06 2001-12-06 System and method for symmetrical cryptography

Publications (1)

Publication Number Publication Date
ES2300307T3 true ES2300307T3 (es) 2008-06-16

Family

ID=20285012

Family Applications (1)

Application Number Title Priority Date Filing Date
ES01274922T Expired - Lifetime ES2300307T3 (es) 2001-12-06 2001-12-06 Sistema y metodo de criptografia simetrica.

Country Status (6)

Country Link
EP (1) EP1456997B1 (es)
AT (1) ATE388543T1 (es)
AU (1) AU2002221229A1 (es)
DE (1) DE60133140T2 (es)
ES (1) ES2300307T3 (es)
WO (1) WO2003049363A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10355865B4 (de) * 2003-11-26 2008-08-21 Paul, Lutz, Dipl.-Ing. Verfahren und Chip zur kryptographischen Verschlüsselung von Daten
ES2272130B1 (es) * 2004-10-28 2008-03-16 Universidad De Almeria Unidad cifradora/descifradora de mensajes con informacion digital, sistema y metodo de cifrado/descifrado para comunicaciones digitales en tiempo real.
WO2011110887A1 (en) 2010-03-11 2011-09-15 Luis Rocha Cryptographic system and method using new one-way function families
IT1401777B1 (it) 2010-06-14 2013-08-28 Scala Sistema di crittografia.
RU2554525C2 (ru) * 2013-10-07 2015-06-27 Российская Федерация, от имени которой выступает Государственная корпорация по атомной энергии "Росатом"-Госкорпорация "Росатом" Способ преобразования информации с синхронной сменой инициализирующих последовательностей в блоках, соединенных каналом связи с неопределенным периодом смены
US10514893B1 (en) 2018-03-05 2019-12-24 Wells Fargo Bank, N.A. Apparatuses and methods for pseudo-random number generation
CN111865584B (zh) * 2020-07-21 2023-02-28 南方电网科学研究院有限责任公司 基于伪随机数的数据破碎安全传输方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272754A (en) * 1991-03-28 1993-12-21 Secure Computing Corporation Secure computer interface
US6249582B1 (en) * 1997-12-31 2001-06-19 Transcrypt International, Inc. Apparatus for and method of overhead reduction in a block cipher
US6763363B1 (en) * 1999-12-02 2004-07-13 Honeywell International Inc. Computer efficient linear feedback shift register
US6804354B1 (en) * 1999-12-02 2004-10-12 Honeywell International Inc. Cryptographic isolator using multiplication

Also Published As

Publication number Publication date
AU2002221229A1 (en) 2003-06-17
DE60133140T2 (de) 2009-03-12
EP1456997A1 (en) 2004-09-15
DE60133140D1 (de) 2008-04-17
EP1456997B1 (en) 2008-03-05
ATE388543T1 (de) 2008-03-15
WO2003049363A1 (en) 2003-06-12

Similar Documents

Publication Publication Date Title
US8194858B2 (en) Chaotic cipher system and method for secure communication
CN110313146B (zh) 模糊度增强
US20020131592A1 (en) Entropy sources for encryption key generation
EP1319280A2 (en) Parallel bock encryption method and modes for data confidentiality and integrity protection
JP7353375B2 (ja) エポック鍵交換を用いたエンドツーエンドの二重ラチェット暗号化
JP2001016196A (ja) 多重アファイン鍵を用いる暗号化・復号化方法、認証方法、及びこれを用いる各装置
US20180054301A1 (en) Method and device for data encryption
JPH0918469A (ja) 暗号通信装置、システム及び暗号装置
US8122075B2 (en) Pseudorandom number generator and encryption device using the same
ES2300307T3 (es) Sistema y metodo de criptografia simetrica.
CN112948867A (zh) 加密报文的生成与解密方法、装置及电子设备
GB2459735A (en) Hybrid asymmetric / symmetric encryption scheme which obviates padding
KR100551992B1 (ko) 어플리케이션 데이터의 암호화 및 복호화 방법
JPH1117673A (ja) 共通鍵暗号通信方法及びその通信ネットワーク
CN108768923A (zh) 一种基于量子可逆逻辑线路的加密算法的聊天实时加密方法
KR100388059B1 (ko) 비대칭키 암호 알고리즘을 이용한 데이터 암호화 시스템및 그 방법
JPH08204701A (ja) 電子メール暗号通信システム及び暗号通信方法
JP3358954B2 (ja) 擬似ランダムビット列生成器及びそれを使用する暗号通信方法
JP3358953B2 (ja) 擬似ランダムビット列生成器及びそれを使用する暗号通信方法
RU2277759C2 (ru) Способ формирования ключа шифрования-дешифрования
US20230299940A1 (en) Single stream one time pad with encryption with expanded entropy
JP2001308845A (ja) 多重アファイン鍵を用いる暗号化・復号化方法、認証方法、及びこれを用いる各装置
EP4123956A1 (en) Method for securely transferring data elements values
US20230246812A1 (en) Communications system having crypto-variable array and associated methods
KR100864092B1 (ko) 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법