ES2300307T3 - Sistema y metodo de criptografia simetrica. - Google Patents
Sistema y metodo de criptografia simetrica. Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/065—Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
- H04L9/0656—Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
- H04L9/0662—Pseudorandom 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.
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.
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.
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.
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.
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.
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.
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)
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)
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 |
-
2001
- 2001-12-06 EP EP01274922A patent/EP1456997B1/en not_active Expired - Lifetime
- 2001-12-06 DE DE60133140T patent/DE60133140T2/de not_active Expired - Lifetime
- 2001-12-06 AU AU2002221229A patent/AU2002221229A1/en not_active Abandoned
- 2001-12-06 ES ES01274922T patent/ES2300307T3/es not_active Expired - Lifetime
- 2001-12-06 WO PCT/SE2001/002695 patent/WO2003049363A1/en not_active Application Discontinuation
- 2001-12-06 AT AT01274922T patent/ATE388543T1/de not_active IP Right Cessation
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) | 블록암호의 블록 체이닝 모드를 사용한 패킷 암호화 방법,이를 이용한 패킷 암/복호화 서비스 제공 방법 |