ES2628051T3 - Generador de secuencias caóticas - Google Patents

Generador de secuencias caóticas Download PDF

Info

Publication number
ES2628051T3
ES2628051T3 ES13815502.3T ES13815502T ES2628051T3 ES 2628051 T3 ES2628051 T3 ES 2628051T3 ES 13815502 T ES13815502 T ES 13815502T ES 2628051 T3 ES2628051 T3 ES 2628051T3
Authority
ES
Spain
Prior art keywords
chaotic
application
cards
sequences
values
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.)
Active
Application number
ES13815502.3T
Other languages
English (en)
Inventor
Safwan El Assad
Hassan Noura
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.)
Universite de Nantes
Original Assignee
Universite de Nantes
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 Universite de Nantes filed Critical Universite de Nantes
Application granted granted Critical
Publication of ES2628051T3 publication Critical patent/ES2628051T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

Generador (2) de secuencias caóticas de números de valores enteros representados en un número de bits predeterminado, estando destinadas dichas secuencias a ser utilizadas especialmente en unos sistemas de encriptación de informaciones basados en clave, constando dicho generador de un número m de medios (4, 6, 8, 10) de aplicación de funciones no lineales, caracterizado porque consta, en salida de dichos medios (4, 6, 8, 10) de aplicación de funciones no lineales, de unos medios de combinación (20) aptos para combinar las salidas de dichos medios (4, 6, 8, 10) de aplicación de funciones no lineales por aplicación de una matriz de difusión binaria dada, que permite obtener un número m de salidas, siendo calculado cada valor de salida por una combinación binaria de salidas de dichos medios (4, 6, 8, 10) de aplicación de funciones no lineales, siendo suministrados de nuevo los valores de salida en entrada de los medios de aplicación de funciones no lineales.

Description

DESCRIPCION
Generador de secuencias caoticas
5 [0001] La presente invencion se refiere a un generador de secuencias caoticas de valores enteros y un
procedimiento de generacion de secuencias caoticas asociado.
[0002] Mas particularmente, la invencion se refiere al campo de la seguridad de los datos compartidos, transmitidos y almacenados en las redes de transmision de informaciones.
10
[0003] La transferencia de los datos confidenciales (documentos de empresa, informaciones medicas, resultados de busqueda, informaciones personales de tipo fotos y videos, etc.) en un entorno abierto que utiliza los canales usuales de comunicacion (cables, Internet, radio-moviles, satelites...) se debe realizar con una seguridad maxima y un rendimiento suficiente. A tal efecto, los cripto-sistemas basados en las senales caoticas son adecuados
15 para conseguir los objetivos citados. Un elemento determinante en todo cripto-sistema basado en el caos es el generador de secuencias caoticas, que sirve para la generacion de las claves secretas y para el proceso de cifrado/descifrado de los datos en las operaciones de sustitucion y de permutacion. La confidencialidad de los datos dependera entre otros del grado del caos (es decir de lo aleatorio) de las secuencias producidas por el generador de las secuencias caoticas utilizado.
20
[0004] Las secuencias caoticas utilizables en los cripto-sistemas se caracterizan por unas propiedades de longitud de perlodo y de difusion.
[0005] La solicitud de patente WO2011/121218 de Safwan El Assad y Hassan Noura, presenta un generador 25 de secuencias caoticas que permite generar unas secuencias caoticas de longitud muy grande, por tanto de
periodicidad insignificante, utilizables en unas aplicaciones criptograficas concretas con un gran nivel de seguridad.
[0006] La presente invencion propone un generador que mejora la propiedad de «confusion-difusion» de los generadores de secuencias caoticas, a la vez que tiene una longitud de perlodo suficientemente grande para una
30 aplicacion criptografica con una buena seguridad.
[0007] Segun un primer aspecto, la invencion se refiere a un generador de secuencias caoticas de numeros de valores enteros representados en un numero de bits predeterminado, estando destinadas dichas secuencias a ser utilizadas especialmente en unos sistemas de encriptacion de informaciones basados en clave, constando dicho
35 generador de un numero m de medios de aplicacion de funciones no lineales. El generador consta, en salida de dichos medios de aplicacion de funciones no lineales, de unos medios de combinacion aptos para combinar las salidas de dichos medios de aplicacion de funciones no lineales por aplicacion de una matriz de difusion binaria dada, que permite obtener un numero m de salidas, siendo calculado cada valor de salida por una combinacion binaria de salidas de dichos medios de aplicacion de funciones no lineales.
40
[0008] De manera ventajosa, el generador propuesto mejora la caracterlstica de «confusion-difusion» de las secuencias caoticas generadas, a la vez que se conserva una buena propiedad de periodicidad. Ademas, un generador segun la invencion es facil de aplicar y permite la generacion de secuencias caoticas en un tiempo de calculo bastante rapido comparado con los generadores estandar propuestos por el NIST («National Institute of
45 Standards and Technology»).
[0009] El generador de secuencias caoticas segun la invencion puede presentar una o varias de las caracterlsticas posteriores, tomadas independientemente o en combinacion:
50 - consta ademas de unos medios de alteracion conectados en salida de unos medios de combinacion;
- consta de m medios de alteracion, estando conectado un denominado medio de alteracion a cada salida de unos medios de combinacion;
- un denominado medio de alteracion comprende un registro con desplazamiento a reaccion;
- dichos medios de aplicacion de funciones no lineales constan de unos medios de aplicacion de tarjetas caoticas de 55 un primer tipo y unos medios de aplicacion de tarjetas caoticas de un segundo tipo;
- los medios de aplicacion de tarjetas caoticas de primer tipo y los medios de aplicacion de tarjetas caoticas de segundo tipo se alternan;
- las tarjetas caoticas de primer tipo son unas tarjetas caoticas de tipo «skew tent» y las tarjetas caoticas de segundo tipo con unas tarjetas caoticas lineales por fragmentos PWLCM;
- el numero de entradas y de salidas de los medios de combinacion es igual a uno de los numeros siguientes: 4, 8, 32, 64.
- los medios de combinacion constan, para la obtencion de una salida, de un numero m de interruptores conectados en salida de unos medios de aplicacion de funciones no lineales, un interruptor cerrado correspondiente a la
5 presencia de un elemento igual a uno en la matriz de difusion binaria y un interruptor abierto correspondiente a la presencia de un elemento igual a cero en la matriz de difusion binaria, estando las salidas de dichos interruptores conectadas a una puerta «o exclusivo».
[0010] Segun un segundo aspecto, la invencion propone un procedimiento de generacion de secuencias 10 caoticas de numeros de valores enteros representados en un numero de bits predeterminado, estando destinadas
dichas secuencias a ser utilizadas especialmente en unos sistemas de encriptacion de informaciones basados en clave, estando caracterizado el procedimiento porque consta de las etapas de:
- aplicacion de m funciones no lineales en m valores iniciales dados, que permiten obtener m valores caoticos,
15 - combinacion de m valores caoticos por aplicacion de una matriz de difusion binaria, que permite obtener m valores caoticos combinados y
- aplicacion de una alteration en al menos una subparte de m valores caoticos combinados.
[0011] Otras caracterlsticas y ventajas de la invencion se desprenderan de la description que aparece a 20 continuation, a tltulo indicativo y en absoluto limitativo, en referencia a las figuras anexas, entre las que:
- la figura 1 es un sinoptico de un generador de secuencias caoticas segun la invencion;
- la figura 2 es un sinoptico que ilustra una aplicacion de medios de combinacion para la generacion de una salida combinada y
25 - la figura 3 es un organigrama que ilustra las principales etapas de una realizacion de un procedimiento de generacion de secuencias caoticas segun la invencion.
[0012] La figura 1 ilustra un generador de secuencias caoticas 2 segun la invencion, que permite generar m secuencias de valores enteros Xi(n), 1 < i < m, donde n es un entero y cada valor Xi(n) se representa en un numero
30 N de bits predeterminado, por ejemplo N=32, lo que permite obtener una precision finita de calculo, independientemente de la plataforma material en la que se implementa el generador. Preferentemente, N es una potencia de dos. Las m secuencias generadas son combinables, si es necesario, en una sola secuencia de numeros caoticos S = {Xi(1),..., Xm(1), Xi(2),..., Xm(2),...Xj(i)...}. Las secuencias generadas se pueden utilizar en diversos cripto-sistemas que utilizan unos numeros pseudo-aleatorios, especialmente para unos procesos de 35 cifrado/descifrado aplicados para asegurar unos datos compartidos, transmitidos y almacenados, pero igualmente para unas aplicaciones de esteganografla, de marca de agua digital y de generacion de claves secretas.
[0013] El generador 2 de numeros caoticos toma como entrada inicialmente un conjunto de m condiciones iniciales X1(0), X2(0),..., Xm(0), que definen los valores iniciales o simientes para n=0.
40
[0014] El generador 2 consta de m medios de aplicacion de una funcion no lineal senalados como 4, 6, 8, 10. Los medios de aplicacion de una funcion no lineal comprenden unos circuitos que aplican la funcion xlog(x) o xexp[cos(x)j, o una tarjeta de Chebyshev, o una tarjeta «skew tent» o incluso una tarjeta caotica lineal por fragmentos o PWLCM («piecewise linear chaotic map»). Las funciones no lineales Fi () asociadas a cada entrada
45 X(n) se detallan a continuacion en una realization preferida.
[0015] Preferentemente, los medios de aplicacion de funciones no lineales de diferentes tipos se utilizan, a fin de maximizar la propiedad de difusion de la secuencia caotica generada.
50 [0016] En particular, segun una realizacion preferida, los medios de aplicacion de funcion no lineal estan
basados en tarjetas caoticas de dos tipos alternadas de una entrada en la entrada siguiente. Se ha constatado que una alternancia entre unas tarjetas caoticas «skew tent» de funcion no lineal Fi() y unas tarjetas caoticas de tipo PWLCM de funcion no lineal F2Q da muy buenos resultados. Sin perdida de generalidad, la funcion Fi() se aplica para X(n-1) donde i es impar y la funcion F2 () se aplica para X(n-1) donde i es par.
[0017] La funcion no lineal Fi() basada en una tarjeta caotica de tipo «skew tent», llamada tarjeta caotica de
primer tipo, es la siguiente:
imagen1
si 0 < X(n-l)<P siP< X(n-l)<2N
[0018] Donde rZi denota el entero mas pequeno superior a Z (funcion «ceil»), y lZj denota el entero mayor
inferior a Z (funcion «floor»). El parametro P es dicho parametro de control discreto y es tal como 0 < P < 2N -1, y N 5 es el numero de bits en el que se representa un valor X(n) de la secuencia caotica. El parametro P de control se codifica en este caso igualmente en N bits.
[0019] La funcion no lineal F2 () basada en una tarjeta caotica de tipo PWLCM discretizada, llamada tarjeta
caotica de segundo tipo, es la siguiente:
10
imagen2
con un parametro de control P tal como 0 < P < 2N-1. El parametro P de control se codifica en este caso en N-1 bits.
15 [0020] Como variante, se utiliza otra alternancia de las tarjetas caoticas de tipo «skew tent» y de tipo
PWLCM.
[0021] Asi, cada funcion no lineal utilizada se define, en esta realization, por su tipo y por un parametro P asociado.
20
[0022] Segun incluso otra variante, mas de dos tipos de tarjetas caoticas se utilizan, por ejemplo tres o cuatro tarjetas caoticas alternadas sucesivamente en las entradas del generador 2 de secuencias caoticas.
[0023] Las salidas X’i(n) = Fi (X(n-1)) despues de la aplicacion de las funciones no lineales seleccionadas se 25 suministran en la entrada de unos medios de combination 20, aptos para aplicar una matriz de difusion binaria de
dimension mxm.
[0024] Cada salida Yi(n) de los medios de combinacion 20 se calcula a partir de X’j(n), j = 1,...,m y de la
matriz de difusion Dij del siguiente modo: Yi(n) = D,j ® Xj(n), j = 1 ,...,m, donde el simbolo ® designa la operation 30 de combinacion descrita mas en detalle a continuation.
[0025] Las salidas de los medios de combinacion 20, en mismo numero que las entradas (m) son alteradas por unos medios de generation de secuencias de alteration senaladas como 22, 24, 26 y 28, que son unos registros de desplazamiento a reaction («linear feedback shift register»).
35
[0026] En esta realizacion, cada salida i de unos medios de combinacion 20 se altera por adicion, por medio de funciones «o exclusivo» 30, 32, 34, 36, de una secuencia binaria de alteracion suministrada por cada registro de desplazamiento 22, 24, 26, 28, que permite obtener un valor caotico X(n).
40 [0027] Los registros de desplazamiento 22, 24, 26, 28 son aptos para aplicar m polimeros primitivos de
grados respectivos ki, i=1....M. Cada registro de desplazamiento genera una secuencia de alteracion Qi(n)
representada en ki bits.
[0028] Cada registro de desplazamiento se caracteriza por una buena funcion de auto-correlacion, una
45 distribution casi uniforme, un ciclo de longitud maxima igual a 2ki -1 y una implementation informatica o material
facil.
[0029] Como variante, una alteracion se aplica solo a un subconjunto de las salidas Yi(n) de los medios de combinacion 20.
5
[0030] Los valores de salida X(n) se suministran de nuevo en las entradas de los medios de aplicacion de funciones no lineales, a fin de generar una nueva serie de m valores caoticos.
[0031] La figura 2 ilustra una aplicacion de los medios de combinacion que permiten generar un valor de 10 salida Y(n). Como se ilustra en la figura 2, la generacion de un valor de salida Y(n) se obtiene potencialmente a
partir del conjunto de los valores de entrada Xi(n-1),..., Xm(n-1). Las referencias de los elementos comunes con los de la figura 1 se reanudan.
[0032] Asl, el generador 2 aplica primero los medios de aplicacion de funciones no lineales a cada uno de los
15 valores de entrada Xi(n-1),..., Xm(n-1). Las salidas X(n) se suministran a unos interruptores 40, 42, 44, 46, cuya posicion abierta o cerrada varla en funcion del valor de la matriz de difusion binaria aplicada por los medios de combinacion 20.
[0033]
20
Por ejemplo, en el caso en que m=4, la matriz de difusion aplicada es por ejemplo la matriz siguiente:
imagen3
0
1
1
1
[0034] Para el calculo aplicado a X'3(n), los interruptores 40, 44 y 46 estan cerrados y el interruptor 42 esta abierto.
25
[0035] De manera mas general, estando la matriz de difusion MDm de tamano mxm compuesta por elementos Di,j, un interruptor aplicado a la salida de los medios de aplicacion de la funcion no lineal para la entrada X/n-1) esta abierto si Di,j=0 y cerrado si Di,j=1. Una subparte determinada por los valores Di,j de la matriz de difusion esta combinada por un «o exclusivo» 48 aplicado bit a bit, que permite obtener un valor combinado Y(n)
30 representado en N bits.
[0036] Asl, resulta evidente que los medios de combinacion 20 son faciles de implementar por unos
interruptores y unas puertas «o exclusivo», lo que permite generar unos calculos rapidos.
35 [0037]
Asl, en salida, los medios de combinacion 20 generan unos valores de muestras combinados:
Yi(n) = DiJ®X'j(n), j =
[0038] Donde Di,j es un elemento de la matriz de difusion binaria como se explica mas arriba, Xi(n) es la
40 salida de los medios de aplicacion de funcion no lineal F() aplicados y el slmbolo ® representa la operacion de combinacion.
[0039] Preferentemente, como se ilustra en el ejemplo de matriz de difusion dado mas arriba para m=4, la matriz de difusion MDm es una matriz tal que MDm-1 = MDm, lo que facilita la implementation de la operacion de
45 descifrado en una aplicacion de un generador de secuencias caoticas en un cripto-sistema basado en clave dinamica.
[0040] En una realization, m=8 y se utiliza preferentemente la matriz de difusion MD8 siguiente:
imagen4
0
1 1 0 1 1 1
1
0 1 1 0
1
1
1
1
0 1 1 0
1
1
1
1
1
1
1
0
1
0 0 0
1
1
1
1
1
0 1 0
1
1
0
1 1 1 1 0 1
0
0
1 1 1 1
0
[0041] En otra realizacion, m=16 y se utiliza preferentemente la matriz de difusion MD16 siguiente:
5
MD16 =
0
0
0
1 1 0 1 0 1 1 0 0 0 1 1
0
0
0
1 0 0 1 0 1 1 1 0 0 1 0 0 1
0
1 0 0 1 0 1 0 0 0 1 1 1 0 0 1
1
0 0 0 0 1 0 1 0 0 1 1 0 1 1 0
1
0 1 0 0 1 0 0 1 0 0 1 0 0
1
1
0
1 0 1 1 0 0 0 0 1 1 0 0 0 1 1
1
0 1 0 0 0 0 1 0 1 1 0 1 1 0 0
0
1 0 1 0 0 1 0 1 0 0 1 1 1
0
0
1
1
0 0 1 0 0 1 0 0 1 0 0 1 0
1
1
1
0 0 0 1 1 0 0 0 0 1 1 0 1 0
0
0
1 1 0 1 1 0 1 0 0 0 0 1 0 1
0
0
1 1 1 0 0 1 0 1 0 0 1 0 1
0
0
1 1 0 0 0 1 1 0 1 0 1 1
0
0
0
1
0 0 1 0 0 1 1 1 0 1 0 0 1 0 0
1
0 0 1 1 1 0 0 0 1 0 1 0 0 1 0
0
1 1 0 1 1 0 0 1 0 1 0 0 0 0 1
[0042] Cabe destacar que para una aplicacion por calculo algorltmico de la matriz de difusion binaria MD16
anterior, es posible realizar unos calculos intermedios de terminos comunes en varias salidas. Este reagrupamiento permite disminuir igualmente el numero de puertas «o exclusivo» que se va a aplicar en una implementacion 10 material. No obstante, una implementacion material simple, basada en 96 puertas «o exclusivo es suficientemente rapida para la aplicacion de los medios de combinacion 20.
[0043] En otra realizacion, m=32 y la matriz de difusion MD32 propuesta se construye aplicando el
procedimiento descrito por Koo et al en el artlcuio «On constructing of a 32x32 binary matrix as a diffusion layer for a 256-bit block cipher», publicado en Proceedings ICISC 2006, edicion Springer Verlag LNCS 4296, paginas 51-64.
[0044] En este artlculo, se propone generar una matriz de difusion para unas aplicaciones criptograficas a
5 partir de la ecuacion siguiente:
MD32 = Mod(Lt xMmxL\,2)
j - j
Donde '
10 [0045]
Las matrices L y M se definen del siguiente modo:
imagen5
15
[0046]
Con 14x4 la matriz identidad de tamano 4x4, 04x4 la matriz cero de tamano 4x4, y:
H, =
1
1
1
1
1
1
1
0
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
0
1 1 1 1 1 1 1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
[0047]
La matriz Mm que entra en la construccion de la matriz de difusion binaria es:
M... -
^8.v8 ®8x8 @8x8
^8a-8
Hm2 0%x8 @8x8
Qx8
^8x8
^8.*8
®8x8 ^8x8 ^ m 4
[0048]
Donde Osxs es la matriz cero de tamano 8x8 (matriz que solo contiene 0) y las matrices Hmi a Hm4 son
las siguientes:
0
1 1 1 1 1 1 1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
0
1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 1
5
1
1
0 1 0 0 0 0
1
1
1
0 0 0 0 0
0
1 1 1
0
0
0
0
1
0 1 1 0 0 0 0
0
0
0
0
1 1 0 1
0
0
0
0
1 1 1
0
0
0
0
0
0
1 1 1
0
0
0
0
1 0 1 1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1 1 1 1 1 1 1
[0049] Como ya se ha explicado mas arriba, independientemente de la eleccion de m entre los valores 4, 8,
16, 32, las m salidas de medios de combinacion 20 se alteran a traves de unas secuencias de alteracion generadas por unos registros de desplazamiento. Un registro de desplazamiento 26 se representa en la figura 2. La secuencia 10 de alteracion se aplica en la salida Y(n) por la puerta «o exclusivo» 34.
[0050] Las salidas Y(n) para i=1,...,m se alteran en el instante inicial y todos los A/, donde A, es el valor de la orbita caotica sin alteracion. La medicion de la orbita caotica se efectua preferentemente segun la tecnica descrita en la solicitud de patente WO2011/121218.
15
[0051] Alternativamente, otras tecnicas conocidas de medicion de orbita caotica se pueden utilizar.
[0052]
20
La alteracion aplicada puede escribirse por tanto del siguiente modo, para cada i, de 1 a m:
imagen6
si mod(w, A;) ^ 0 si mod(w, A;) = 0
[0053] Donde el sfmbolo © representa la operacion «o exclusivo».
[0054] La ecuacion anterior muestra que la alteracion se aplica en los ki ultimos bits de peso reducido de Yi(n)
25 en los instantes n = lxAi, l = 0,1,....
[0055] Para el valor m=32, se aplican los siguientes polinomios g, siendo aplicado un polinomio g, por el
registro de desplazamiento aplicado para alterar la secuencia Y,(n):
(%) = %15 + %13 + x10 + + 1
.17 , 3 , ..2 , ..1
g2{x) — x +x X + X +1
.19
10
15
g3(x) — X + X + X + X +1
g4(x) = x23 + x12 + x5 + x4 +1 g5(x) = x21 +x2 +1
g6 (x) — X17 + X 1 + X4 + + 1
7
(x) — x15 + xy + x4 + x1 + 1
imagen7
#!()(*) =
gn (*) = .x;17 + xL0 + x^ + xL +1
16
imagen8
5
10
imagen9
(?32 — ^ ^ 1
15
[0056] En el caso en que m=4,8 o 16, un numero m de polinomios primitivos se selecciona en la lista anterior, pudiendo ser efectuada esta seleccion de forma arbitraria.
[0057] Segun una variante no representada, a fin de mejorar incluso los rendimientos del generador caotico 20 segun la invencion, es posible aplicar la tecnica denominada de sub-muestreo, que consiste en iterar la aplicacion de
los medios de aplicacion de funcion no lineal s veces, con s un entero positivo superior a 3. No obstante, el tiempo computacional se aumenta si se aplica esta variante.
[0058] El generador de secuencias caoticas, descrito mas arriba segun diferentes realizaciones, permite 25 generar unas secuencias caoticas que tienen buenos rendimientos criptograficos, especialmente unas
5
probabilidades de bits iguales a 0 y 1 muy proximas a 0,5 para todas las salidas X(n), i = 1,...,m.
[0059] Como se explica mas arriba, en la realizacion preferida, se aplica una alternancia de los tipos de tarjetas caoticas que definen las funciones no lineales aplicadas por los medios de aplicacion de funciones.
5
[0060] Asl, un generador 2 de secuencia caotica esta completamente definido por una clave secreta que consta de: m condiciones iniciales sobre N bits, m/2xN bits para representar los parametros de las tarjetas caoticas de primer tipo, m/2x(N-1) bits para representar los parametros de las tarjetas caoticas de segundo tipo, m condiciones iniciales de registros de desplazamiento lo que corresponde como mlnimo a mx15bits.
10
[0061] Asl, para esta realizacion, los tamanos de clave secreta son los siguientes: TK4=314 bits para m=4, TK8=628 bits para m=8, TK16=1256 bits para m=16 y TK32=2512 bits para m=32.
[0062] Como se puede constatar, los tamanos de claves son grandes, incluso para un numero de entradas 15 igual a 4.
[0063] La figura 3 ilustra las principales etapas de un procedimiento de generacion de secuencias caoticas de valores enteros segun una realizacion de la invencion. Tal procedimiento se puede implementar por un codigo informatico, ejecutado por una unidad central de un procesador, por ejemplo de un ordenador.
20
[0064] En entrada 50 del procedimiento se suministran las m condiciones iniciales, que son los valores iniciales X1(0),...,Xm(0), estando codificado cada valor sobre N bits. Ademas, los parametros que permiten definir las funciones no lineales y las alteraciones que se van a aplicar se suministran igualmente en entrada del procedimiento, asl como el numero Ns de muestras que se van a generar para cada una de las m salidas. Por
25 ejemplo, una clave secreta de formato determinado contiene todas las condiciones iniciales y todos los parametros en un orden predefinido.
[0065] Una primera etapa de inicializacion 52 consiste en inicializar una variable n entera a 1. A continuacion, una funcion no lineal Fi() se aplica a Xi(n-1) en la etapa 54 de generacion de numeros caoticos, para i=1,...,m. Como
30 se explica mas arriba, las funciones no lineales son de diferentes tipos segun los Indices i, por ejemplo una funcion de primer tipo para los Indices impares y una funcion de segundo tipo para los Indices pares. De manera opcional, cada etapa de generacion 54 se itera un numero s de veces en la etapa 56.
[0066] Un conjunto de m valores caoticos {X'1(n),..., X'm(n)} se obtiene despues de la etapa 56 cuando todos 35 los valores X1(n-1) se han tratado.
[0067] A continuacion, se aplica una etapa 58 de aplicacion de matriz de difusion binaria. Una matriz de difusion binaria de tamano mxm se memoriza, y la aplicacion de la matriz consiste en una multiplicacion seguida de la aplicacion de una operacion «o exclusivo» bit a bit, para cada i de i=1 a m, como se explica mas arriba en
40 referencia a la figura 2.
[0068] Un conjunto de valores caoticos combinados {Y1(n),..., Ym(n)} se obtiene despues de esta etapa.
[0069] A continuacion, una alteracion tal como se ha descrito mas arriba se aplica a la etapa 60 sobre cada 45 Yj(n) para obtener un valor Xj(n), para j=1,...,m, y los valores Xi(n) obtenidos se memorizan.
[0070] A continuacion, se verifica en la etapa de prueba 62 si n es inferior a Ns, que es el numero total de muestras que se van a generar por secuencia, en la etapa 62. Si n es inferior a Ns, la etapa 62 va seguida de la etapa 64 de incremento de n, seguida de la etapa 54 ya descrita.
50
[0071] Si n es superior a Ns, el procedimiento termina, siendo suministradas las secuencias caoticas {X(m)} para i=1,..., m y n=1,...Ns en salida de este procedimiento.
[0072] Cabe destacar como variante, que la tecnica de alteracion solo se aplica a un sub-conjunto de valores 55 caoticos combinados Yj(n).
[0073] Los inventores han aplicado diversas pruebas definidas por el NIST, denominadas pruebas de NIST, que permiten medir las propiedades de confusion-difusion de las secuencias caoticas generadas y han podido demostrar muy buenas propiedades.
En particular, las probabilidades de los valores 0 y 1 medidas sobre 10000 muestras generadas son muy proximas a 0,5, por tanto la distribucion es casi uniforme y la inter-correlacion de las secuencias generadas es muy reducida.
[0074] La tabla 1 a continuacion ilustra la correlacion p(Xi,Xj) calculada para Ns=10000 muestras, para m=4:
5
Tabla 1
Indices
1 2 3 4
1
1
0,00271649 -0,0020199 -0,01118557
2
0,00271649 1 -0,01352033 -0,00860343
3
-0,0020199 -0,01352033 1 0,0083838
4
-0,01118557 -0,00860343 0,0083838 1
10
[0075] La tabla 2 ilustra las probabilidades de tener unos bits iguales a «0» y a «1», senaladas
respectivamente como Pr_0 y Pr_1, en una secuencia caotica de Ns=10000 muestras, para m=4:
Tabla 2
Pr 0 Pr 1
X1
0,50049688 0,49950313
X2
0,50073125 0,49926875
X3
0,49981875 0,50018125
X4
0,50096250 0,4990375
[0076] Para demostrar la sensibilidad a la clave secreta, se ha efectuado la prueba siguiente. Para cada
entrada de indice i, las condiciones iniciales X(0) se han modificado por cambio del bit de peso escaso:
15 1 1 y se han generado las salidas respectivas i L 7 para todos los i que van de 1 a m. A
continuacion, se ha calculado la correlacion PiXt'X’x
■ v, , X*(n) :
secuencias X(n) y iV '
*»,
as! como la distancia de Hamming PDH entre las
imagen10
20
[0077] Donde Ns es el numero de muestras probadas. Ns=10000 para los resultados dados en la tabla 3
posterior, y m=4. La distancia de Hamming se expresa en porcentaje.
Tabla 3
PDH P
X1
50,0846875 0,00085691
X2
50,0190625 0,01004383
X3
49,971875 -0,00973299
X4
49,9796875 -0,0053712
25
[0078] Como se puede constatar a partir de las tablas de 1 a 3, se obtienen muy buenos resultados con m=4.
Se han obtenido unos resultados mejorados aun para los valores superiores de m, a saber m=8, 16 y 32.
[0079] Asl, el generador de secuencias caoticas segun la invencion permite obtener unas secuencias
30 caoticas con muy buenos rendimientos criptograficos de confusion-difusion, protegidas por unas claves secretas de mas de 300 bits, que encuentran unas aplicaciones en todos los campos que necesitan unas secuencias de numeros pseudo-aleatorios: cifrado por bloque y por flujo, esteganografla, marca de agua digital resistente y generacion de claves secretas.

Claims (10)

  1. REIVINDICACIONES
    1. Generador (2) de secuencias caoticas de numeros de valores enteros representados en un numero de bits predeterminado, estando destinadas dichas secuencias a ser utilizadas especialmente en unos sistemas de
    5 encriptacion de informaciones basados en clave, constando dicho generador de un numero m de medios (4, 6, 8, 10) de aplicacion de funciones no lineales, caracterizado porque consta, en salida de dichos medios (4, 6, 8, 10) de aplicacion de funciones no lineales, de unos medios de combination (20) aptos para combinar las salidas de dichos medios (4, 6, 8, 10) de aplicacion de funciones no lineales por aplicacion de una matriz de difusion binaria dada, que permite obtener un numero m de salidas, siendo calculado cada valor de salida por una combinacion binaria de 10 salidas de dichos medios (4, 6, 8, 10) de aplicacion de funciones no lineales, siendo suministrados de nuevo los valores de salida en entrada de los medios de aplicacion de funciones no lineales.
  2. 2. Generador de secuencias caoticas segun la reivindicacion 1, caracterizado porque consta ademas de unos medios (22, 24, 26, 28) de alteration conectados en salida de los medios de combinacion (20).
    15
  3. 3. Generador de secuencias caoticas segun la reivindicacion 2, caracterizado porque consta de m medios (22, 24, 26, 28) de alteracion, estando conectado un llamado medio de alteracion a cada salida de los medios de combinacion (20).
    20 4. Generador de secuencias caoticas segun cualquiera de las reivindicaciones 2 o 3, caracterizado
    porque un llamado medio (22, 24, 26, 28) de alteracion comprende un registro de desplazamiento a reaction.
  4. 5. Generador de secuencias caoticas segun cualquiera de las reivindicaciones 1 a 4, caracterizado porque dichos medios (4, 6, 8, 10) de aplicacion de funciones no lineales constan de unos medios de aplicacion de
    25 tarjetas caoticas de un primer tipo y unos medios de aplicacion de tarjetas caoticas de un segundo tipo.
  5. 6. Generador de secuencias caoticas segun la reivindicacion 5, caracterizado porque los medios de aplicacion de tarjetas caoticas de primer tipo y los medios de aplicacion de tarjetas caoticas de segundo tipo se alternan.
    30
  6. 7. Generador de secuencias caoticas segun cualquiera de las reivindicaciones 5 o 6, caracterizado porque las tarjetas caoticas de primer tipo son unas tarjetas caoticas de tipo «skew tent» y las tarjetas caoticas de segundo tipo son unas tarjetas caoticas lineales por fragmentos PWLCM.
    35 8. Generador de secuencias caoticas segun cualquiera de las reivindicaciones anteriores, caracterizado
    porque el numero de entradas y de salidas de los medios de combinacion es igual a uno de los numeros siguientes:
  7. 4. 8, 32, 64.
  8. 9. Generador de secuencias caoticas segun cualquiera de las reivindicaciones anteriores, caracterizado 40 porque los medios de combinacion (20) constan, para la obtencion de una salida, de un numero m de interruptores
    (40, 42, 44, 46) conectados en salida de los medios (4, 6, 8, 10) de aplicacion de funciones no lineales, un interruptor cerrado correspondiente a la presencia de un elemento igual a uno en la matriz de difusion binaria y un interruptor abierto correspondiente a la presencia de un elemento igual a cero en la matriz de difusion binaria, estando las salidas de dichos interruptores conectadas a una puerta «o exclusivo» (48).
    45
  9. 10. Procedimiento de generation de secuencias caoticas de numeros de valores enteros representados en un numero de bits predeterminado, aplicado por un generador de secuencias caoticas segun la reivindicacion 1, estando destinadas dichas secuencias a ser utilizadas especialmente en unos sistemas de encriptacion de informaciones basados en clave, estando el procedimiento caracterizado porque consta de las etapas de:
    50
    - aplicacion (54) de m funciones no lineales en m valores iniciales dados, que permiten obtener m valores caoticos,
    - combinacion (62) de m valores caoticos por aplicacion de una matriz de difusion binaria, que permite obtener m valores caoticos combinados, siendo los valores caoticos combinados suministrados de nuevo
    55 como valores iniciales en la etapa de aplicacion (54).
  10. 11. Procedimiento de generacion de secuencias caoticas segun la reivindicacion 10, caracterizado porque consta ademas de una etapa de aplicacion (66) de una alteracion en al menos una subparte de los m valores caoticos combinados.
ES13815502.3T 2012-12-21 2013-12-20 Generador de secuencias caóticas Active ES2628051T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1262677A FR3000246B1 (fr) 2012-12-21 2012-12-21 Generateur de sequences chaotiques
FR1262677 2012-12-21
PCT/EP2013/077693 WO2014096363A1 (fr) 2012-12-21 2013-12-20 Generateur de sequences chaotiques

Publications (1)

Publication Number Publication Date
ES2628051T3 true ES2628051T3 (es) 2017-08-01

Family

ID=48856666

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13815502.3T Active ES2628051T3 (es) 2012-12-21 2013-12-20 Generador de secuencias caóticas

Country Status (4)

Country Link
EP (1) EP2936302B1 (es)
ES (1) ES2628051T3 (es)
FR (1) FR3000246B1 (es)
WO (1) WO2014096363A1 (es)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678729A (zh) * 2017-08-30 2018-02-09 东南大学 一种基于m序列的Lorenz混沌伪随机序列发生器
CN110944096B (zh) * 2019-12-11 2021-06-08 齐齐哈尔大学 一种有意义密文的图像加密方法
CN111682933B (zh) * 2020-06-17 2023-05-09 湖南科技大学 一种基于多参数五维超混沌系统的动态密码电子锁

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10339999B4 (de) * 2003-08-29 2005-07-14 Infineon Technologies Ag Pseudozufallszahlengenerator
FR2958057B1 (fr) * 2010-03-29 2016-04-01 Univ Nantes Generateur de sequences chaotiques, systeme de generation, procede de mesure d'orbite et programme d'ordinateur correspondants

Also Published As

Publication number Publication date
EP2936302B1 (fr) 2017-03-08
FR3000246A1 (fr) 2014-06-27
FR3000246B1 (fr) 2016-04-15
EP2936302A1 (fr) 2015-10-28
WO2014096363A1 (fr) 2014-06-26

Similar Documents

Publication Publication Date Title
Ahmad et al. A secure image encryption scheme based on chaotic maps and affine transformation
Smart et al. Fully homomorphic SIMD operations
Etemadi Borujeni et al. Chaotic Image Encryption Design Using Tompkins‐Paige Algorithm
Wong et al. Simultaneous arithmetic coding and encryption using chaotic maps
Suri et al. A synchronous intertwining logistic map-DNA approach for color image encryption
KR101393806B1 (ko) 다단계 물리적 복제 불가 함수 시스템
JP2008299330A (ja) 閉ガロア体組合せ
Chizhov et al. The failure of McEliece PKC based on Reed-Muller codes.
Aslan et al. Algebraic construction of cryptographically good binary linear transformations
Zaibi et al. Efficient and secure chaotic S‐Box for wireless sensor network
Lone et al. A novel image encryption using random matrix affine cipher and the chaotic maps
Battey et al. An efficient quasigroup block cipher
ES2628051T3 (es) Generador de secuencias caóticas
Razaq et al. A novel technique for the construction of safe substitution boxes based on cyclic and symmetric groups
Murtaza et al. Designing an Efficient and Highly Dynamic Substitution‐Box Generator for Block Ciphers Based on Finite Elliptic Curves
Mohammed et al. Cryptosystems using an improving hiding technique based on latin square and magic square
Awad et al. New chaotic permutation methods for image encryption
Perrin et al. Exponential s-boxes: a link between the s-boxes of BelT and Kuznyechik/Streebog
Dömösi et al. A novel cryptosystem based on abstract automata and Latin cubes
WO2012152956A1 (es) Procedimiento de doble criptograma simetrico de seguridad de shannon por codificacion de informacion para transmision telematica y electronica.
Zaghloul et al. A block encryption scheme for secure still visual data based on one-way coupled map lattice
Sakallı et al. On the construction of 20× 20 and 24× 24 binary matrices with good implementation properties for lightweight block ciphers and hash functions
Faraoun Design of fast one-pass authenticated and randomized encryption schema using reversible cellular automata
Nabeel et al. IoT light weight (LWT) crypto functions
Fabšič et al. On generating invertible circulant binary matrices with a prescribed number of ones