ES2422868T3 - Procedimiento de conversión de un primer cifrado en un segundo cifrado - Google Patents

Procedimiento de conversión de un primer cifrado en un segundo cifrado Download PDF

Info

Publication number
ES2422868T3
ES2422868T3 ES10752070T ES10752070T ES2422868T3 ES 2422868 T3 ES2422868 T3 ES 2422868T3 ES 10752070 T ES10752070 T ES 10752070T ES 10752070 T ES10752070 T ES 10752070T ES 2422868 T3 ES2422868 T3 ES 2422868T3
Authority
ES
Spain
Prior art keywords
encryption
entity
conversion
matrix
secret
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
ES10752070T
Other languages
English (en)
Inventor
Yannick Seurin
Henri Gilbert
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.)
Orange SA
Original Assignee
France Telecom SA
Orange SA
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 France Telecom SA, Orange SA filed Critical France Telecom SA
Application granted granted Critical
Publication of ES2422868T3 publication Critical patent/ES2422868T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/34Encoding or coding, e.g. Huffman coding or error correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

Procedimiento de conversión, mediante una entidad de conversión, de un primer cifrado (y1) en un segundocifrado (y2), correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento demensaje en abierto (x) por medio de una primera matriz secreta (M1) parametrada mediante un vector aleatorio (a),correspondiendo el segundo cifrado (y2) al resultado de un cifrado probabilista simétrico del elemento de mensaje enabierto por medio de una segunda matriz secreta (M2) parametrada mediante el vector aleatorio, caracterizado por elhecho de que el procedimiento incluye una etapa de: - cálculo (E22) del segundo cifrado (y2) mediante cifrado del primer cifrado por medio de una matriz secreta deconversión (M12) en función de la primera y la segunda matriz secreta, y parametrada mediante el vector aleatorio(a).

Description

Procedimiento de conversión de un primer cifrado en un segundo cifrado
5 La presente invención se refiere al ámbito de la criptografía con clave secreta. Más concretamente, la invención trata de un procedimiento de conversión por parte de una entidad de conversión de un primer cifrado en un segundo cifrado.
La invención tiene una interesante aplicación en servicios denominados de transcifrado adaptados para recibir un contenido cifrado de una primera entidad y para transmitirlo cifrado a la atención de una segunda entidad.
En criptografía simétrica, el emisor y el destinatario de un mensaje comparten el conocimiento de una misma clave secreta K. Esta permite al emisor transformar un mensaje en abierto en un criptograma, o mensaje cifrado, y al destinatario recuperar el mensaje en abierto a partir del mensaje cifrado.
15 Algunas aplicaciones requieren que una entidad intermediaria entre el emisor y el destinatario convierta un primer cifrado C1 de un mensaje en abierto M, obtenido mediante una primera entidad U1 por medio de una primera clave secreta K1, en un segundo cifrado C2 del mismo mensaje en abierto M por medio de una segunda clave secreta K2 para una segunda entidad U2. La segunda entidad U2, que posee la segunda clave secreta K2, es capaz de obtener el mensaje en abierto mediante descifrado del segundo cifrado C2. Un ejemplo de dicho servicio consiste en un servicio de almacenamiento remoto de contenidos. La primera entidad transmite a un servidor remoto de almacenamiento datos cifrados por medio de su clave secreta K1. Más adelante, la primera entidad U1 desea dar acceso a sus datos a una segunda entidad U2 sin revelarle su clave secreta. Una manera evidente de proceder consiste en transmitir a la entidad intermediaria, en este caso el servidor remoto, las claves secretas K1 y K2 de
25 ambas entidades, con el fin de que la entidad intermediaria descifre por medio de la clave K1 el primer cifrado C1 para obtener el mensaje en abierto M, y cifre por medio de la clave secreta K2 de la segunda entidad el mensaje M obtenido a la atención de la segunda entidad U2. Sin embargo, procediendo de esta manera, la entidad intermediaria toma conocimiento del mensaje en abierto M. Además, la entidad intermediaria posee las respectivas claves secretas de las entidades. Se entiende sin embargo que unos usuarios deseosos de poner en funcionamiento semejante servicio puedan no confiar en la entidad intermediaria. Por lo tanto, se entiende que algunos usuarios deseen, por motivos de confianza, tener la garantía de que la entidad intermediaria no accede al mensaje en abierto y que, por otra parte, no desean, por motivos de seguridad, transmitir su clave secreta a la entidad intermediaria.
Por lo tanto, la manera evidente de proceder puede no convenir. Ahora bien, no existe procedimiento alguno que 35 permite cifrar de nuevo para otro usuario en el marco de la criptografía con clave secreta.
Se conoce mediante el documento D1 del estado de la técnica: “How to encrypt with the LPN Problem”, de Henri Gilbert, Matthew Robshaw y Yannick Seurin, un esquema de cifrado probabilista con clave privada denominado LNP_C, cuya seguridad puede reducir la dificultad de aprendizaje a partir del problema de paridad con ruido. El protocolo propuesto implica únicamente operaciones básicas en GF(2) y un código corrector de error.
El esquema de cifrado enriquece el número de primitivas criptográficas cuya seguridad reposa en la dificultad del LNP.
45 Con objeto de remediar los problemas identificados anteriormente, la invención propone un procedimiento de conversión, mediante una entidad de conversión, de un primer cifrado en un segundo cifrado, correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de mensaje en abierto por medio de una primera matriz secreta parametrada mediante un vector aleatorio, correspondiendo el segundo cifrado al resultado de un cifrado probabilista simétrico del elemento de mensaje en abierto por medio de una segunda matriz secreta parametrada mediante el vector aleatorio, caracterizado por el hecho de que el procedimiento incluye una etapa de cálculo del segundo cifrado mediante cifrado del primer cifrado por medio de una matriz secreta de conversión en función de la primera y la segunda matriz secreta, y parametrada mediante el vector aleatorio.
Inmediatamente, se observa que, por definición, un “elemento de mensaje” incluye todo o parte de un mensaje.
55 Con el procedimiento de la invención, es posible, en un contexto de criptografía simétrica, convertir un primer cifrado de un mensaje en abierto obtenido por medio de una primera clave secreta en un segundo cifrado del mismo mensaje en abierto para ser descifrado por medio de una segunda clave secreta. Esta conversión se realiza sin que la entidad encargada de la conversión pueda tomar conocimiento del mensaje en abierto asociado correspondiente a estos dos cifrados. En efecto, la entidad de conversión procesa el primer cifrado que resulta de un cifrado probabilista simétrico por medio de una primera matriz secreta, pero no dispone de la primera matriz secreta que le permitiría descifrar el primer cifrado para obtener el mensaje en abierto. Asimismo, la entidad de conversión calcula el segundo cifrado, destinado a ser descifrado conforme a un descifrado probabilista simétrico por medio de una segunda matriz secreta, pero no dispone de la segunda matriz secreta que le permitiría descifrar el segundo cifrado
65 para obtener el mensaje en abierto. En efecto, la entidad de conversión utiliza, para efectuar la conversión del primer cifrado en el segundo cifrado, una matriz de conversión que no proporciona información alguna sobre las matrices secretas. Por lo tanto, no es posible, a partir de la matriz de conversión, encontrar la primera o la segunda matriz secreta.
Se observa además que el procedimiento de conversión es simétrico en el sentido de que la entidad de conversión
5 está asimismo adaptada para convertir el segundo cifrado asociado obtenido mediante cifrado simétrico probabilista por medio de la segunda matriz secreta en el primer cifrado asociado a la primera matriz secreta utilizando la misma matriz de conversión que para una conversión del primer cifrado en el segundo cifrado.
En un modo de realización de la invención, el procedimiento incluye una etapa de: 10
-
recepción del primer cifrado acoplado al vector aleatorio procedente de una primera entidad,
-
envío del segundo cifrado acoplado al vector aleatorio con destino a una segunda entidad.
15 Este modo de realización corresponde a una utilización del procedimiento de conversión por dos entidades para transmitir datos cifrados de la primera entidad a la segunda entidad. Unas entidades, por ejemplo usuarios que utilizaran esta entidad de conversión en el marco de un servicio de intercambio de datos cifrados, quedarían así tranquilizadas sobre la seguridad empleada por el servicio, y confiadas en lo que se refiere al carácter confidencial de los datos transmitidos.
20 De manera ventajosa, la matriz secreta de conversión se calcula mediante una operación de O EXCLUSIVO entre la primera y la segunda matriz secreta.
La matriz de conversión, aunque calculada a partir de las matrices secretas de la primera y la segunda entidad, no
25 proporciona información que permita encontrar la primera o la segunda matriz secreta. Por lo tanto, no es posible, a partir de la matriz de conversión, obtener el mensaje en abierto asociado al primero y al segundo cifrado.
La invención se describe en este caso con una única matriz de conversión calculada a partir de dos matrices secretas, estando cada matriz asociada a una entidad. Se entiende que la entidad de conversión puede emplear el 30 procedimiento de conversión para n entidades, con n > 2. Las entidades se escriben 1, 2, …, n. En este caso, la entidad de conversión solo necesita almacenar en su memoria (n - 1) matrices de conversión. Se calcula entonces (n-1) matrices de conversión M12, M23, M34, …, Mn-1n, que se transmiten a la entidad de conversión. Se observa en efecto que no es necesario calcular todas las matrices de conversión propias de todas las parejas de entidades (i, j). En efecto, es posible obtener una matriz de conversión para una pareja (i, j) con j>i+1, a partir de las matrices
35 calculadas. En efecto, se observa que Mij = Mi(i+1) ⊕ … ⊕ M(i+(j-i-1))j.
Ventajosamente, la matriz de conversión es una matriz de Toeplitz. Se conoce que con una matriz de Toeplitz, los coeficientes sobre una diagonal descendente de izquierda a derecha son los mismos. Por lo tanto, el conjunto de coeficientes de la matriz de conversión M12 puede deducirse únicamente de los coeficientes de la primera línea y la
40 primera columna de la matriz. Asimismo, es suficiente con almacenar únicamente los coeficientes de la primera línea y la primera columna de la matriz de conversión, para disponer del conjunto de coeficientes de la matriz de conversión. Esto es interesante cuando la entidad de conversión dispone de poca memoria de almacenamiento.
Según un modo de realización de la invención, la matriz de conversión se obtiene mediante la entidad de conversión
45 ante una entidad de confianza que calcula la matriz de conversión por medio de la primera y la segunda matriz secreta transmitida respectivamente por la primera y la segunda entidad.
En este modo de realización, se calcula la matriz de conversión mediante una entidad de confianza a partir de la primera y la segunda matriz secreta que le han transmitido la primera y la segunda entidad. La matriz de conversión,
50 una vez calculada, se pone a disposición de la entidad de conversión. Se observa que la operación, delicada en términos de seguridad, que consiste en manipular la primera y la segunda matriz secreta para calcular la matriz de conversión se efectúa con una seguridad máxima por parte de una entidad dedicada en la que confían la primera y la segunda entidad.
55 La invención se refiere asimismo a un procedimiento de transmisión de un elemento de mensaje en abierto en forma cifrada entre una primera y una segunda entidad, que incluye una etapa de:
-
cifrado por parte de la primera entidad por medio de un cifrado probabilista simétrico del mensaje en abierto, por
medio de una primera matriz secreta, parametrada mediante un vector aleatorio, con objeto de obtener un primer 60 cifrado,
-
envío del primer cifrado acoplado al vector aleatorio, a una entidad de conversión,
-
conversión por la entidad de conversión del primer cifrado en un segundo cifrado según el procedimiento de 65 conversión,
-
envío por parte de la entidad de conversión a la segunda entidad del segundo cifrado acoplado al vector aleatorio,
-
recepción por la segunda entidad del segundo cifrado acoplado al vector aleatorio,
5 - descifrado por la segunda entidad del segundo cifrado por medio de una segunda matriz secreta mediante descifrado probabilista simétrico.
El procedimiento corresponde en este caso a un procedimiento de transmisión de extremo a extremo que integra una conversión de un primer cifrado en un segundo cifrado.
La invención se refiere asimismo a una entidad de conversión adecuada para convertir un primer cifrado en un segundo cifrado, correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de mensaje en abierto por medio de una primera matriz secreta parametrada mediante un vector aleatorio, correspondiendo el segundo cifrado al resultado de un cifrado probabilista simétrico del elemento de mensaje en
15 abierto por medio de una segunda matriz secreta parametrada mediante el vector aleatorio, incluyendo la entidad de conversión:
-
medios de cálculo del segundo cifrado, adecuados para calcular el segundo cifrado mediante cifrado del primer cifrado recibido por medio de una matriz secreta de conversión en función de la primera y la segunda matriz secreta, y parametrada mediante el vector aleatorio.
En un modo de realización de la invención, la entidad de conversión incluye además:
-
medios de recepción adecuados para recibir el primer cifrado acoplado a un vector aleatorio, 25
-
medios de envío adecuados para enviar el segundo cifrado acoplado al vector aleatorio.
La invención se refiere asimismo a un sistema de conversión adecuado para convertir un primer cifrado en un segundo cifrado, correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de mensaje en abierto por medio de una primera matriz secreta parametrada mediante un vector aleatorio, correspondiendo el segundo cifrado al resultado de un cifrado probabilista simétrico del elemento de mensaje en abierto por medio de una segunda matriz secreta parametrada mediante el vector aleatorio, incluyendo el sistema:
-
una entidad de conversión según la invención, 35
-
una entidad de confianza adecuada para calcular la matriz de conversión a partir de las matrices secretas.
La invención se refiere asimismo a un programa de ordenador destinado a ser instalado en una memoria de una entidad intermediaria, con instrucciones para la aplicación de las etapas del procedimiento de la invención, cuando el programa es ejecutado por un procesador.
La invención trata asimismo de un soporte de datos en el que está grabado el programa de ordenador de la invención.
45 Otras características y ventajas de la presente invención se entenderán mejor mediante la siguiente descripción y los dibujos adjuntos, en los cuales:
-
las figuras 1a y 1b representan respectivamente un organigrama de las etapas de un procedimiento de cifrado simétrico probabilista y un organigrama de las etapas de un procedimiento de descifrado simétrico según el estado anterior de la técnica;
-
la figura 2 representa un organigrama de las etapas del procedimiento de conversión de un primer cifrado y un segundo cifrado según un modo de realización particular descrito;
55 - la figura 3 representa un esquema bloque funcional de una forma particular de una entidad de conversión adecuada para poner en práctica el procedimiento de la figura 2.
El procedimiento de conversión según la invención se basa en un cifrado/descifrado probabilista simétrico como el descrito en [GRS08] (H. Gilbert, M. Robshaw and Y. Seurin. How to Encrypt with the LPN Problem? In ICALP’08, Lectures Notes in Computer Science, volumen 5126, págs. 679-690, Springer Verlag, 2008). Un cifrado se denomina “probabilista” cuando interviene un aleatorio en el cifrado. De esta forma, cuando se cifra dos veces el mismo mensaje en abierto, se obtienen dos mensajes cifrados distintos con una elevada probabilidad. El cifrado probabilista utilizado en el marco de la presente invención se basa en la combinación de una codificación mediante código corrector de errores y de la incorporación de un ruido. Esta combinación tiene por efecto dificultar el descifrado del 65 cifrado por parte de un adversario, al mismo tiempo que está adaptado para ser naturalmente eliminado mediante la descodificación del código corrector de errores. Con este cifrado, es posible demostrar la seguridad mediante un
planteamiento reduccionista consistente en traducir la seguridad en una hipótesis sobre la dificultad de resolver un problema conocido. Dicho de otro modo, es posible demostrar que, para romper la seguridad de este método de cifrado, un atacante debe ser capaz de resolver un problema conocido, presuntamente difícil. En el marco del presente cifrado, el problema bien definido y bien conocido es el problema “LPN” (para “Learning Parity with Noise).
5 Las etapas de los procedimientos de cifrado y descifrado según un modo particular de realización se describen en relación con las figuras 1a y 1b. Según el estado anterior de la técnica, el procedimiento de cifrado probabilista simétrico utiliza una clave secreta compartida por una primera y una segunda entidad, una de cifrado y otra de descifrado, respectivamente con referencia 1 y 2. La entidad de descifrado 2 es capaz de aplicar un procedimiento de descifrado, o de restitución de un mensaje en abierto x a partir de un mensaje cifrado proporcionado por la primera entidad 1. La clave secreta puede estar representada en forma de una matriz M de k líneas y n columnas, con 1 ≤ k y 1 ≤ n.
La entidad de cifrado 1 y la entidad de descifrado 2 están aquí integradas respectivamente en un equipamiento de
15 comunicación emisor y en un equipamiento de comunicación receptor, no representados, capaces de comunicarse entre ellos, por ejemplo vía radio. Por ejemplo, el equipamiento emisor puede ser una etiqueta RFID y el equipamiento receptor un lector asociado.
El cifrado se denomina probabilista debido a que utiliza un aleatorio para calcular un mensaje cifrado a partir de un mensaje en abierto.
El mensaje en abierto x está representado por un vector binario con R bits.
El procedimiento incluye una etapa E1 de codificación del mensaje en abierto x con la ayuda de un código corrector 25 de error, denominado C.
Un código corrector de errores es una técnica muy conocida por el especialista en la materia, basada en la redundancia. Tiene usualmente como vocación corregir errores de transmisión de un mensaje a través de un canal de comunicación poco fiable. En efecto, algunos datos del mensaje transmitido a través de este canal pueden verse alterados. El código corrector de errores desempeña como papel añadir datos redundantes en el mensaje antes de su transmisión. Estos datos redundantes permiten corregir los datos del mensaje tal como se ha recibido, que han sido alterados durante la transmisión.
En este caso, el código corrector de errores es un código lineal en bloques, denominado C. Este código corrector C
35 es de longitud n, de dimensión r y de capacidad de corrección t. Dicho de otro modo, el código corrector C es una función del espacio binario de dimensión r {0,1}r en el espacio binario de dimensión n {0,1}n. Esta función está adaptada para transformar un mensaje de r bits en una palabra de código de n bits, con n > r, mediante incorporación de bits de redundancia. Además, el código corrector C está adaptado para garantizar que, si se añade a la palabra de código un número de errores inferior a la capacidad de corrección t, la descodificación permite restituir el mensaje de origen.
En el ejemplo particular descrito aquí, se supone que el número de bits R del mensaje x es igual a la dimensión r del código corrector C.
45 La etapa E1 de codificación del mensaje x proporciona por lo tanto una palabra de código representada por un vector con n bits denominada C(x).
El procedimiento incluye una etapa E2 de generación de un aleatorio a. En el ejemplo de esta descripción, el imponderable a es un vector binario de k bits producido por una fuente seudoaleatoria de bits S.
La etapa E2 está seguida de una etapa E3 de cálculo del producto entre el vector aleatorio a, en forma de vector línea, con la matriz M representando la clave secreta. El resultado del producto a · M está representado por un vector de n bits.
55 Una vez realizadas las etapas E1 a E3, el procedimiento aplica un etapa de cálculo E4 en cuyo transcurso se añade el resultado del producto a · M a la palabra de código C(x). Dicho de otro modo, la etapa E4 realiza la operación C(x) ⊕ a · M. El papel de la etapa E4 es cifrar la palabra de código C(x).
El procedimiento incluye asimismo una etapa E5 de generación de un vector de ruido binario ε de n bits a partir de una fuente de ruido bernouilliano B. Esta está adaptada para producir bits independientes que valen 1 con una probabilidad η y bits independientes que valen 0 con una probabilidad 1 - η, con η∈ ]0, 1/2[. Además, la fuente de ruido B está adaptada para que la probabilidad δ para el peso de Hamming del vector de ruido ε de ser superior a la capacidad de corrección t del código corrector sea muy fiable, inferior a un umbral Σ predefinido. A título de ejemplo, este umbral puede ser igual a 10-3. Según el marco de utilización, podría ser inferior a dicho valor. Por definición, el 65 peso de Hamming de un vector binario es el número de bits distintos de 0, es decir que valen 1, de dicho vector. Por
lo tanto, para la mayoría de los vectores de ruido ε generados por la fuente B, el peso de Hamming del vector ε, denominado Hwt(ε) es inferior o igual a la capacidad de corrección t del código corrector C. En el ejemplo particular descrito aquí, para cumplir la condición relativa a la probabilidad δ, los parámetros t, η y n verifican la siguiente relación: t > η * n.
5 Una vez realizadas las etapas E4 y E5, el procedimiento aplica una etapa de cálculo E6, en la que el vector de ruido ε se añade al resultado de la operación E4, C(x) ⊕ a · M. El resultado de esta operación E6 es un vector de n bits, denominado y, correspondiente al mensaje x cifrado. Esta es en definitiva la palabra de código C(x), es decir el mensaje x codificado, cifrado y con ruido.
10 Finalmente, el procedimiento incluye una etapa E7 de envío del par (a, y), es decir (a, C(x) ⊕ a · M ⊕ε), a partir del equipamiento de comunicación emisor hacia el equipamiento de comunicación receptor.
El par (a, y) circula a través de un canal de comunicación, en este caso de radio, hasta su recepción por parte del
15 equipamiento receptor, durante una etapa E8 representada en la figura 1b. Como recordatorio, el equipamiento receptor integra una entidad de descifrado capaz de descifrar el mensaje cifrado y recibido, con objeto de recuperar el mensaje en abierto x.
En un caso en que el mensaje en abierto x es de tamaño R bits con R > r, se corta el mensaje en abierto en bloques
20 de r bits con, eventualmente, la incorporación de valores predeterminados para completar un bloque de r bits (se suele hablar de padding) si el valor R no es un múltiplo del valor r. El procedimiento de cifrado descrito se aplica entonces a cada bloque.
En la figura 1b, se han representado las distintas etapas del procedimiento de restitución, o de descifrado, para 25 recuperar el mensaje en abierto x a partir del par (a, y), empleadas por la entidad de descifrado 2.
Cabe recordar que la entidad de descifrado 2 tiene conocimiento de la clave secreta representada por la matriz secreta M.
30 El procedimiento de restitución incluye, en primer lugar, una fase de cálculo que incluye dos etapas de cálculo E9 y E10.
Durante la primera etapa de cálculo E9, se extrae el vector aleatorio del par (a, y) recibido y se calcula el producto a · M, a estando representada en forma de un vector línea de k bits.
35 Durante la etapa de cálculo E10, el vector de n bits resultante del producto a · M se añade al vector y recibido; dicho de otro modo, se realiza la operación de cálculo y⊕ a · M. En binario, esta operación corresponde a restar el resultado del producto a · M del vector y recibido.
40 Obsérvese que al ser e igual a la palabra de código cifrada y con ruido, es decir C(x) ⊕ a · M ⊕ε, el resultado de la etapa de cálculo E10 corresponde a la palabra de código únicamente con ruido, es decir C(x) ⊕ε.
A continuación, el procedimiento incluye una fase de descodificación E11, durante la que se descodifica el resultado de la etapa E10 con la ayuda del código corrector de errores utilizado durante el cifrado. El peso de Hamming del 45 vector de ruidos ε siendo inferior o igual a la capacidad de corrección t del código corrector de errores, la descodificación proporciona directamente el mensaje en abierto x.
A título de ejemplo, se proporcionan a continuación algunos ejemplos de realización de este procedimiento de cifrado con parámetros concretos. Se recuerda que la seguridad del sistema de cifrado depende de la dificultad de la
50 resolución del problema LPN. Ahora bien, esta dificultad se basa en los parámetros k y η, correspondientes al número de bits del vector aleatorio a y a la probabilidad para un bit del vector de ruido ε de valer 1 respectivamente. Por lo tanto, conviene elegir valores convenientes para dichos parámetros, que permitan garantizar una adecuada seguridad del sistema. Dos ejemplos de valores convenientes para dichos parámetros k y η son los siguientes:
55 - k = 512, η = 0,125
-
k = 768, η = 0,05
Obsérvese además que si el mensaje en abierto x es de tamaño r bits, el tamaño total del mensaje cifrado 60 transmitido, correspondiente al par (a, y) es de (n+k) bits, ya que el vector aleatorio a incluye k bits y el cifrado y n bits. Por lo tanto, se observa que el cifrado se acompaña de cierta expansión del mensaje. El factor de expansión se
escribe . Con objeto de limitar esta expansión, conviene por lo tanto, con k fijado, adoptar el valor de r mayor posible y el valor de n menor posible. Se recuerda además que la capacidad de corrección t del código
corrector y la longitud n del código correctos deben verificar la siguiente condición: t > η * n, con objeto de garantizar un descifrado correcto del mensaje en la mayoría de los casos.
Se anota [n,r,d] un trío de parámetros de un código corrector de errores. Estos parámetros n, r y d corresponden respectivamente a la longitud, la dimensión y la distancia mínima del código. La distancia mínima d del código es función de la capacidad de corrección t, mediante la siguiente relación:
10 A continuación, se proporcionan cuatro ejemplos de realización con parámetros concretos para la codificación y descodificación propiamente dichas:
• para los parámetros k = 512, η = 0,125, se puede utilizar:
15 - un código lineal parametrado por el trío [80, 27, 21], capaz de corregir 10 errores, con valor 21 para el parámetro de expansión o;
-
un código lineal parametrado por el trío [160, 42, 42], capaz de corregir 20 errores, con valor 16 para el factor de
expansión o. 20
• para los parámetros k = 768, η = 0,05, se puede utilizar:
-
un código lineal parametrado por el trío [80, 53, 9], capaz de corregir 4 errores, con valor 16 para el parámetro de
expansión o. 25
-
un código lineal parametrado por el trío [160, 99, 17], capaz de corregir 8 errores, con valor 8,8 para el factor de expansión o.
Para optimizar el factor de expansión o, es deseable por lo tanto utilizar un tamaño k grande para el vector aleatorio,
30 una probabilidad η para cada bit del vector de ruido ε de valer 1 débil, y un código de gran longitud n y de gran dimensión r. Se puede asimismo disminuir el factor de expansión o aumentando el tamaño de la matriz M. En efecto, tomando una matriz con k líneas y N * n columnas, con N entero estrictamente superior a 2, se puede cifrar N bloques de r bits al mismo tiempo, con el mismo vector aleatorio de k bits. El factor de expansión solo es entonces
35 A continuación, se describe el procedimiento de conversión según un modo de realización de la invención, en relación con la figura 2.
Una entidad de conversión, con referencia 3, es capaz de aplicar el procedimiento de conversión según la invención.
40 La entidad 3 se comunica con al menos una primera entidad, con referencia 1, y con una segunda entidad, con referencia 2. La entidad de conversión 3 se comunica con las entidades 1 y 2 por ejemplo por medio de una red. La primera entidad 1 es comparable con una entidad de cifrado adecuada para aplicar el procedimiento de cifrado probabilista simétrico descrito en relación con la figura 1a. Posee una clave secreta que puede estar representada en forma de una matriz M1 de k líneas y n columnas, con 1 ≤ k y 1 ≤ n. La segunda entidad 2 está adaptada para
45 aplicar el procedimiento de descifrado descrito en relación con la figura 1b. La segunda entidad posee una segunda clave secreta que puede estar representada en forma de una segunda matriz M2 de k líneas y n columnas. La invención descrita aquí tiene interés en caso de que las matrices secretas M1 y M2 de la primera y segunda entidad 1, 2 sean distintas, es decir en caso de que las entidades 1 y 2 no compartan una matriz secreta. En caso de que la primera y la segunda entidad compartan el conocimiento de una misma clave secreta representada por una matriz
50 M, se aplican los procedimientos de cifrado y descifrado descritos en relación con las figuras 1a y 1b, por parte de la primera entidad, como entidad de cifrado, y por parte de la segunda entidad como entidad de descifrado. Las dos entidades utilizan entonces la misma matriz secreta.
Se supone que se desea proceder a la conversión de un mensaje en abierto x de r bits cifrado por la primera entidad
55 1 mediante cifrado probabilista simétrico por medio de su matriz secreta M1, en un segundo mensaje cifrado a la atención de la segunda entidad 2. Dicho de otro modo, se desea que el segundo mensaje cifrado pueda ser descifrado por la segunda entidad 2 por medio de su matriz secreta M2 y que el descifrado del segundo mensaje cifrado permita a la segunda entidad 2 obtener el mensaje en abierto x.
60 En una etapa previa E19 de cálculo del primer cifrado, la primera entidad 1 procede al cifrado del mensaje en abierto x de r bits, conforme al procedimiento de cifrado probabilista simétrico descrito en relación con la figura 1a. Al efecto, la entidad 1 codifica el mensaje x por medio de un código corrector de errores C de longitud m, de dimensión r y de capacidad de corrección t. Se recuerda que si se añade a C(x) un número de errores inferior a t, el procedimiento de descodificación recupera el mensaje en abierto x. La entidad 1 obtiene asimismo un vector aleatorio a de k bits de una fuente S no representada en la figura 2, y un vector de ruido ε de n bits producido por una fuente B no representada en la figura 2. La entidad 1 calcula entonces el primer cifrado y1 mediante cifrado de la palabra de
5 código C(x) por medio de la matriz secreta M1 parametrada mediante el vector aleatorio a, y añadiendo el ruido ε al valor obtenido. Dicho de otro modo, la primera entidad calcula y1 = C(x) ⊕ a.M1 ⊕ε.
En una etapa E20 de envío del primer cifrado, la primera entidad 1 envía a la entidad de conversión 3 el primer cifrado y1, acoplado al vector aleatorio a.
10 En una etapa de recepción E21, la unidad de conversión 3 recibe de la primera entidad 1 el primer mensaje cifrado acoplado al vector aleatorio (y1, a).
En una etapa E22 de cálculo del segundo cifrado, la entidad de conversión 3 calcula un segundo cifrado y2 destinado
15 a ser descifrado por la segunda entidad 2 por medio de su matriz secreta M2. La entidad de conversión 3 extrae el vector aleatorio a del par recibido. El segundo cifrado y2 se calcula añadiendo al primer cifrado y1 el producto entre el vector aleatorio a, en forma de vector línea de k bits, con una matriz de conversión M12 que representa una clave secreta propia de la entidad de conversión 3. Dicho de otro modo, y2 = y1 ⊕ a·M12. El papel de esta etapa E21 es cifrar el primer cifrado y1. Se habla habitualmente de transcifrado para esta operación consistente en cifrar un valor
20 ya cifrado. La matriz de conversión M12 es memorizada por la entidad de conversión 3 en una memoria no representada en la figura 2. La matriz de conversión M12 ha sido previamente calculada, por ejemplo, por una entidad de confianza no representada en la figura 2, a la que la primera y la segunda entidad han transmitido su clave secreta respectiva. La matriz de conversión M12 es calculada por la entidad de confianza añadiendo la matriz M1 de la primera entidad 1 a la matriz M2 de la segunda entidad 2. De este modo, M12 = M1 ⊕ M2, donde ⊕
25 representa una suma bit a bit, o una operación de O EXCLUSIVO.
En una etapa E23 de envío, la entidad de conversión 3 envía a la segunda entidad 2 el segundo cifrado acoplado al vector aleatorio a (y2, a).
30 De este modo, la segunda entidad 2 recibe, en una etapa E24 de recepción, el par (y2, a), donde el segundo cifrado y2 corresponde al cifrado de y1 por medio de la matriz de conversión parametrada por el vector aleatorio a. Dicho de otro modo, y2 = y1 ⊕ a·M12. Ahora bien, el primer cifrado y1 se ha obtenido mediante cifrado probabilista simétrico del mensaje en abierto x por medio de la primera matriz secreta M1 parametrada por el vector aleatorio a. De este modo, y1 = C(x) ⊕ a·M1 ⊕ε. Sabiendo además que la matriz de conversión M12 se ha obtenido a partir de la primera y la
35 segunda matriz secreta M1 y M2 mediante una operación de O EXCLUSIVO, por lo que se verifica que:
y2 = y1 ⊕ a · M12 = C(x) ⊕ a · M1 ⊕ε⊕ a · M1 ⊕ a · M2 = C(x) ⊕ a · M2 ⊕ε,
por lo que y2 corresponde bien al cifrado probabilista simétrico del mensaje en abierto x por medio de la segunda
40 matriz secreta M2 parametrada mediante el vector aleatorio a. Por lo tanto, la segunda entidad 2 es capaz de descifrar el segundo cifrado y2 por medio de su matriz secreta M2, conforme al procedimiento de descifrado descrito en relación con la figura 1b, y de obtener el mensaje en abierto x.
En una etapa E25 de descifrado, la segunda entidad 2 extrae el vector aleatorio a del par recibido, y añade al
45 segundo cifrado y2 el resultado del producto entre el vector aleatorio a y la segunda matriz secreta M2. En binario, esta operación corresponde a restar el resultado del producto a · M2 del vector y2 recibido. Se observa que siendo y2 igual a la palabra de código cifrada y con ruido, es decir C(x) ⊕ a · M2 ⊕ε, el resultado de esta operación corresponde a la palabra de código únicamente con ruido, es decir C(x) ⊕ε. El resultado obtenido se descodifica a continuación con la ayuda del código corrector de errores C utilizado por la entidad 1 durante la etapa E19 de
50 cifrado. El peso de Hamming del vector de ruido ε siendo inferior o igual a la capacidad de corrección t del código corrector de errores, la descodificación proporciona directamente el mensaje en abierto x.
En otro modo de realización de la invención, la matriz de conversión M12 es calculada por la primera entidad 1 o la segunda entidad 2. Por ejemplo, la primera y la segunda entidad 1, 2 se ponen de acuerdo para que la entidad 1
55 calcule la matriz de conversión M12 a partir de la primera matriz secreta M1 que posee y de la segunda matriz secreta M2 que le transmite la segunda entidad 2.
El procedimiento de conversión se describe aquí con una entidad de conversión 3 y dos entidades que se califica de terminales: una primera entidad 1 que cifra un mensaje en abierto x y una segunda entidad 2 que descifra el 60 segundo cifrado y2 calculado por la entidad de conversión 3 para obtener el mensaje en abierto x. Por supuesto, el procedimiento puede aplicarse para n entidades terminales, con n > 2. En este caso, serán n entidades anotadas 1, 2, …, n. Se calcula entonces (n-1) matrices de conversión M12, M23, M34, …, Mn-1n que se transmiten a la entidad de conversión 3. Se observa en efecto que no es necesario calcular todas las matrices de conversión propias de todas las parejas de entidades (i, j). Por una parte, se observa el carácter simétrico de las matrices de conversión. En 65 efecto, para un primer par de entidades (i, j), la matriz de conversión asociada Mij es igual a la matriz de conversión
Mji asociada al par de entidades (j, i). Por otra parte, es posible obtener una matriz de conversión para una pareja (i, j) con j>i+1, a partir de las matrices calculadas. En efecto, se observa que Mij = Mi(i+1) ⊕ … ⊕ M(i+(j-i-1))j. Por ejemplo, M13 = M12 ⊕ M23.
5 A continuación, se describe la entidad de conversión 3 en relación con la figura 3.
La entidad de conversión 3 incluye una memoria 31 de almacenamiento de una clave secreta de conversión en forma de una matriz secreta M12, un módulo de cálculo 32 de un segundo cifrado a partir de un primer cifrado. El módulo de cálculo 32 tiene acceso a la memoria 31.
La entidad de conversión incluye además:
-
una unidad de procesamiento 33, o “CPU” (del inglés “Control Processing Unit”),
15 - una memoria volátil 34 o “RAM” (para “Random Access Memory) empleada para cargar instrucciones de código, ejecutarlas, almacenar variables, etc.
En funcionamiento, se proporciona un primer cifrado y1 (no representado en la figura 3) a la entrada del módulo de cálculo 32, que produce a la salida un segundo cifrado y2 (no representado en la figura 3).
La memoria 31 está destinada a almacenar la matriz secreta M12 utilizada para calcular el segundo cifrado y2 a partir del primer cifrado y1. La matriz secreta M12 se calcula previamente a partir de las matrices secretas M1 y M2 de las entidades. Las matrices M1 y M2 son por ejemplo matrices de Toeplitz. Por definición, se trata de matrices cuyos coeficientes en una diagonal descendiente de izquierda a derecha son las mismas. Por lo tanto, la matriz de
25 conversión M12 obtenida a partir de las dos matrices secretas de las entidades mediante un O EXCLUSIVO entre estas dos matrices es asimismo una matriz de Toeplitz. De este modo, el conjunto de coeficientes de la matriz de conversión M12 pueden deducirse únicamente de los coeficientes de la primera línea y de la primera columna de la matriz. Asimismo, es suficiente con almacenar únicamente los coeficientes de la primera línea y la primera columna de la matriz de conversión para disponer del conjunto de coeficientes de la matriz de conversión.
Por lo tanto, la memoria 31 puede almacenar únicamente los coeficientes de la primera línea y los coeficientes de la primera columna de la matriz de conversión M12. La utilización de la matriz de Toeplitz permite limitar la capacidad de almacenamiento necesaria para almacenar los coeficientes de la matriz de conversión M12.
35 El módulo de cálculo 32 está adaptado para:
-
calcular el producto del vector aleatorio a tomado en forma de un vector línea de k bits, con la matriz secreta M12, es decir el producto a · M12,
-
añadir el primer cifrado y1 recibido a la entrada del módulo al resultado del producto a · M12. El módulo de cálculo proporciona por lo tanto a la salida el cifrado de y1 por medio de la matriz de conversión M12, es decir y1 ⊕ a·M12.
45 Los distintos módulos se comunican gracias a un bus de comunicación. El módulo de cálculo 32 aplica la etapa E22 de cálculo del segundo cifrado. En un modo particular de realización de la inversión, la entidad de conversión 3 incluye asimismo:
-
un módulo 35 de recepción (en trazo discontinuo en la figura 3), adaptado para recibir de una primera entidad el primer cifrado y1,
-
un módulo 36 de emisión (en trazo discontinuo en la figura 3), adaptado para enviar a una segunda entidad el 55 segundo cifrado y2 obtenido a la salida del módulo de cálculo 32.
En este ejemplo de realización, el módulo 35 de recepción está conectado de entrada al módulo de cálculo 32, el cual está conectado de salida al módulo 36 de emisión.
El módulo 35 de recepción aplica la etapa E21 de recepción.
El módulo 36 de emisión aplica la etapa E23 de emisión.
En un ejemplo de realización, en el que la entidad de conversión 3 recibe la matriz de conversión M12, el módulo 35 65 de recepción está asimismo adaptado para recibir de una entidad tercera la matriz de conversión M12 y memorizarla en la memoria 31.
Los módulos 32, 34 y 35 son preferiblemente módulos de software que incluyen instrucciones de software para ejecutar las etapas del procedimiento de la invención.
5 Pueden almacenarse en un mismo ordenador de una red o en ordenadores distintos que garantizan las funciones de la entidad de conversión.
Por lo tanto, la invención se refiere asimismo:
10 - a programas de ordenador que incluyen instrucciones para la aplicación del procedimiento de conversión, cuando dichos programas son ejecutados por un procesador;
-
a un soporte de grabación legible por un ordenador, en el que está grabado el programa de ordenador descrito anteriormente.
15 Los módulos de software pueden almacenarse en o transmitirse mediante un soporte de datos. Este puede ser un soporte material de almacenamiento, por ejemplo un CD-ROM, un disquete magnético o un disco duro, o bien un soporte de transmisión como una señal o una red de telecomunicaciones.

Claims (8)

  1. REIVINDICACIONES
    1. Procedimiento de conversión, mediante una entidad de conversión, de un primer cifrado (y1) en un segundo cifrado (y2), correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de
    5 mensaje en abierto (x) por medio de una primera matriz secreta (M1) parametrada mediante un vector aleatorio (a), correspondiendo el segundo cifrado (y2) al resultado de un cifrado probabilista simétrico del elemento de mensaje en abierto por medio de una segunda matriz secreta (M2) parametrada mediante el vector aleatorio, caracterizado por el hecho de que el procedimiento incluye una etapa de:
    -
    cálculo (E22) del segundo cifrado (y2) mediante cifrado del primer cifrado por medio de una matriz secreta de conversión (M12) en función de la primera y la segunda matriz secreta, y parametrada mediante el vector aleatorio (a).
  2. 2. Procedimiento de conversión según la reivindicación 1, que incluye una etapa de: 15
    -
    recepción (E21) del primer cifrado (y1) acoplado al vector aleatorio (a) procedente de una primera entidad (1),
    -
    envío (E23) del segundo cifrado (y2) acoplado al vector aleatorio (a) con destino a una segunda entidad (2).
  3. 3.
    Procedimiento según la reivindicación 1, en el que la matriz secreta de conversión (M12) se calcula mediante una operación de O EXCLUSIVO entre la primera y la segunda matriz secreta (M1 ⊕ M2).
  4. 4.
    Procedimiento según la reivindicación 1, en el que la matriz de conversión (M12) es una matriz de Toeplitz.
    25 5. Procedimiento según la reivindicación 2, en el que la matriz de conversión se obtiene por parte de la entidad de conversión ante una entidad de confianza que calcula la matriz de conversión por medio de la primera y la segunda matriz secreta transmitidas por la primera y la segunda entidad respectivamente.
  5. 6. Procedimiento de transmisión de un elemento de mensaje en abierto (x) en forma cifrada entre una primera y una segunda entidad, que incluye una etapa de:
    -
    cifrado (E19) por parte de la primera entidad por medio de un cifrado probabilista simétrico del mensaje en abierto, por medio de una primera matriz secreta (M1), parametrada mediante un vector aleatorio (a), con objeto de obtener un primer cifrado (y1),
    -
    envío (E20) del primer cifrado acoplado al vector aleatorio, a una entidad de conversión,
    -
    conversión (E22) por la entidad de conversión del primer cifrado (y1) en un segundo cifrado (y2) según el procedimiento definido en la reivindicación 1,
    -
    envío (E23) por parte de la entidad de conversión a la segunda entidad del segundo cifrado acoplado al vector aleatorio,
    -
    recepción (E24) por la segunda entidad del segundo cifrado acoplado al vector aleatorio, 45
    -
    descifrado (E25) por la segunda entidad del segundo cifrado (y2) por medio de una segunda matriz secreta (M2) mediante descifrado probabilista simétrico.
  6. 7. Entidad de conversión (3) adecuada para convertir un primer cifrado en un segundo cifrado, correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de mensaje en abierto (x) por medio de una primera matriz secreta (M1) parametrada mediante un vector aleatorio (a), correspondiendo el segundo cifrado (y2) al resultado de un cifrado probabilista simétrico del elemento de mensaje en abierto por medio de una segunda matriz secreta (M2) parametrada mediante el vector aleatorio, incluyendo la entidad de conversión:
    55 - medios (32) de cálculo del segundo cifrado, adecuados para calcular el segundo cifrado mediante cifrado del primer cifrado recibido por medio de una matriz secreta de conversión (M12) en función de la primera y la segunda matriz secreta, y parametrada mediante el vector aleatorio (a).
  7. 8. Entidad de conversión según la reivindicación 7, que incluye, además:
    -
    medios (35) de recepción adaptados para recibir el primer cifrado acoplado a un vector aleatorio (a),
    -
    medios (36) de envío adaptados para enviar el segundo cifrado (y2) acoplado al vector aleatorio (a).
    65 9. Sistema de conversión adecuado para convertir un primer cifrado en un segundo cifrado, correspondiendo el primer cifrado al resultado de un cifrado probabilista simétrico de un elemento de mensaje en abierto (x) por medio de una primera matriz secreta (M1) parametrada mediante un vector aleatorio (a), correspondiendo el segundo cifrado (y2) al resultado de un cifrado probabilista simétrico del elemento de mensaje en abierto por medio de una segunda matriz secreta (M2) parametrada mediante el vector aleatorio, incluyendo el sistema:
    5 - una entidad de conversión según la reivindicación 7,
    -
    una entidad de confianza adecuada para calcular la matriz de conversión (M12) a partir de las matrices secretas (M1, M2).
    10 10. Programa de ordenador destinado a ser instalado en una memoria de una entidad intermediaria, que incluye instrucciones para la aplicación de las etapas del procedimiento de conversión según una de las reivindicaciones 1 a 5, cuando el programa se ejecuta mediante un procesador.
  8. 11. Soporte de datos en el que se graba el programa de ordenador según la reivindicación 10.
ES10752070T 2009-07-23 2010-07-21 Procedimiento de conversión de un primer cifrado en un segundo cifrado Active ES2422868T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0955153A FR2948518A1 (fr) 2009-07-23 2009-07-23 Procede de conversion d'un premier chiffre en un deuxieme chiffre
FR0955153 2009-07-23
PCT/FR2010/051544 WO2011010068A1 (fr) 2009-07-23 2010-07-21 Procede de conversion d'un premier chiffre en un deuxieme chiffre

Publications (1)

Publication Number Publication Date
ES2422868T3 true ES2422868T3 (es) 2013-09-16

Family

ID=42110049

Family Applications (1)

Application Number Title Priority Date Filing Date
ES10752070T Active ES2422868T3 (es) 2009-07-23 2010-07-21 Procedimiento de conversión de un primer cifrado en un segundo cifrado

Country Status (6)

Country Link
US (1) US9002000B2 (es)
EP (1) EP2457344B1 (es)
ES (1) ES2422868T3 (es)
FR (1) FR2948518A1 (es)
PL (1) PL2457344T3 (es)
WO (1) WO2011010068A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3001848B1 (fr) * 2013-02-01 2015-01-09 Morpho Procede de chiffrement homomorphe pour le ou exclusif et calcul securise d'une distance de hamming
US20140355760A1 (en) * 2013-05-30 2014-12-04 Chiou-Haun Lee Method of Third Party Identification for Cryptographic Communications
CN103701584B (zh) * 2013-12-10 2017-01-18 中国船舶重工集团公司第七0九研究所 一种对称密码中二进制线性扩散结构的设计方法
DE112014007226B4 (de) * 2014-12-05 2023-09-07 Mitsubishi Electric Corporation Entschlüsselungsbedingungs-Hinzufügungsvorrichtung, kryptografisches System und Entschlüsselungsbedingungs-Hinzufügungsprogramm
CN106330435A (zh) * 2015-07-02 2017-01-11 中兴通讯股份有限公司 一种密钥变换方法、装置及终端
TW201919361A (zh) * 2017-11-09 2019-05-16 張英輝 以雜文加強保護之區塊加密及其解密之方法
CN113204771B (zh) * 2021-04-21 2022-02-22 北京连山科技股份有限公司 一种利用国密sm3改进分组密码cbc模式缺点的高效方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08510365A (ja) * 1993-05-05 1996-10-29 リウ,ザンクアン データ暗号化のための方法および装置
EP1065593A1 (en) * 1999-07-02 2001-01-03 Institut Eurecom G.I.E. Process for securing the execution of a mobile code in an untrusted environment
US20040202318A1 (en) * 2001-10-04 2004-10-14 Chih-Chung Lu Apparatus for supporting advanced encryption standard encryption and decryption
FI20065276A0 (fi) * 2006-04-28 2006-04-28 Nokia Corp Signaalin käsittelymenetelmä, vastaanotin ja tasoitusmenetelmä vastaanottimessa

Also Published As

Publication number Publication date
EP2457344A1 (fr) 2012-05-30
US9002000B2 (en) 2015-04-07
FR2948518A1 (fr) 2011-01-28
WO2011010068A1 (fr) 2011-01-27
US20120321074A1 (en) 2012-12-20
EP2457344B1 (fr) 2013-05-01
PL2457344T3 (pl) 2013-09-30

Similar Documents

Publication Publication Date Title
ES2422868T3 (es) Procedimiento de conversión de un primer cifrado en un segundo cifrado
US8689087B2 (en) Method and entity for probabilistic symmetrical encryption
JP3901909B2 (ja) 暗号化装置およびプログラムを記録した記録媒体
US20080137837A1 (en) Encryption method for message authentication
CN114219483B (zh) 基于lwe-cpabe的区块链数据共享方法、设备和存储介质
US7894608B2 (en) Secure approach to send data from one system to another
CN111465006B (zh) 基于祖冲之算法的北斗短报文加解密方法及通信系统
CN114244507B (zh) 基于单路传输的量子直接通信方法、装置、设备和系统
CN112152805A (zh) 一种认证加密方法、验证解密方法和通信方法
CN110225028B (zh) 一种分布式防伪系统及其方法
CN111277605B (zh) 数据分享方法、装置、计算机设备以及存储介质
CN110677238A (zh) 广播加密方法和装置
CN113556381B (zh) Http请求的优化方法、终端以及存储介质
CN112907247B (zh) 一种区块链授权计算控制方法
US11196447B2 (en) Computer-implemented method for error-correction-encoding and encrypting of a file
CN112954388A (zh) 一种数据文件的获取方法、装置、终端设备和存储介质
CN102474413B (zh) 私钥压缩
KR101076747B1 (ko) 스트림 모듈의 계층적 트리 구조를 통한 무작위 접근이 가능한 암호화/복호화 방법 및 장치
KR20130121348A (ko) Aes-otp기반의 보안 시스템 및 방법
KR102626974B1 (ko) 화이트박스 암호의 비밀키 보호를 위한 방법 및 시스템
JP2002118548A (ja) 相互認証方法
JP2023010322A5 (es)
US20230299949A1 (en) Key exchange protocol
Xie et al. It all Started with Compression: Another Look at Reconciliation Mechanism
JP2000151577A (ja) 暗号化、復号化装置