ES2204117T3 - Procedimiento y dispositivo para el procesamiento criptografico con la ayuda de una curva eliptica en un ordenador. - Google Patents
Procedimiento y dispositivo para el procesamiento criptografico con la ayuda de una curva eliptica en un ordenador.Info
- Publication number
- ES2204117T3 ES2204117T3 ES99914397T ES99914397T ES2204117T3 ES 2204117 T3 ES2204117 T3 ES 2204117T3 ES 99914397 T ES99914397 T ES 99914397T ES 99914397 T ES99914397 T ES 99914397T ES 2204117 T3 ES2204117 T3 ES 2204117T3
- Authority
- ES
- Spain
- Prior art keywords
- parameters
- curve
- parameter
- elliptical
- mod
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
- G06F7/725—Finite field arithmetic over elliptic curves
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Numerical Control (AREA)
- Devices For Executing Special Programs (AREA)
- Complex Calculations (AREA)
Abstract
Procedimiento para el procesamiento criptográfico con la ayuda de una curva elíptica en un ordenador, a) en el que la curva elíptica es predeterminada (101) en una primera forma, donde varios primeros parámetros determinan la curva elíptica; b) en el que la curva elíptica es transformada en una segunda forma y2 = x3 + c4ax + c6b siendo determinados (102) varios segundos parámetros, donde al menos uno de los segundos parámetros es acortado en su longitud con respecto al primer parámetro correspondiente, donde x, y designan variables, a, b designan los primeros parámetros y c designa una constante; c) donde al menos se acorta (103) el parámetro a, siendo seleccionada la constante c de tal forma que c4a mod p se determina claramente más corto que la longitud del parámetro b y la longitud de la variable p predeterminada; d) en el que la curva elíptica se determina (104) en la segunda forma para el procesamiento criptográfico.
Description
Procedimiento y dispositivo para el procesamiento
criptográfico con la ayuda de una curva elíptica en un
ordenador.
La invención se refiere a un procedimiento y a
una disposición para el procesamiento criptográfico con la ayuda de
una curva elíptica en un ordenador.
Un cuerpo finito significa un campo de Galois.
Con respecto a las propiedades y a la definición del campo de
Galois se remite a [3].
Con la amplia difusión de redes de ordenadores y
de aplicaciones correspondientes, que se desarrollan a través de
sistemas electrónicos de comunicación (redes de comunicación), se
plantean requerimientos cada vez más elevados a la seguridad de los
datos. El aspecto de la seguridad de los datos tiene en cuenta,
entre otras cosas:
- -
- la posibilidad de un fallo de la transmisión de los datos,
- -
- la posibilidad de datos corruptos,
- -
- la autenticidad de los datos, es decir, la posibilidad de determinación y la identificación de un emisor y
- -
- la protección de la confidencialidad de los datos.
Por una "clave" se entienden datos, que
encuentran aplicación en el procesamiento criptográfico. Se conoce
por el procedimiento de Clave Pública [4] emplear una clave secreta
y una clave pública.
Un "agresor" es una persona no autorizada
con el objetivo de acceder a las claves.
Especialmente en un ordenador, pero en medida
creciente también en medios portátiles, por ejemplo en un teléfono
móvil o una tarjeta de chip, hay que asegurar que una clave
memorizada no es accesible tampoco cuando un agresor se apodera del
ordenador, del teléfono móvil o de la tarjeta de chip.
Para garantizar seguridad suficiente de los
procedimientos criptográficos, se determinan claves, en particular
en los procedimientos asimétricos, respectivamente, con longitudes
de varios 100 bits. Una memoria especial de un ordenador o medio
portátil está dimensionada la mayoría de las veces de forma escasa.
Una longitud de una clave de varios 100 bits depositada en un área
de la memoria de este tipo reduce el espacio libre de la memoria
sobre el ordenador o bien sobre el medio, de manera que solamente
se pueden memorizar de una vez pocas de tales claves.
Se conoce por [1], [2], [5] y [6] una curva
elíptica y su aplicación en el procesamiento criptográfico.
El cometido de la invención consiste en indicar
un procedimiento para el procesamiento criptográfico con la ayuda de
al menos una curva elíptica sobre un ordenador, donde se necesita
poco área de la memoria.
Este cometido se soluciona con un procedimiento y
un dispositivo con las características de las reivindicaciones 1 y 9
de la patente, respectivamente.
Se indica un procedimiento para el procesamiento
criptográfico con la ayuda de al menos una curva elíptica en un
ordenador, en el que la curva elíptica es predeterminada en una
primera forma, donde varios primeros parámetros determina la curva
elíptica en la primera forma. La curva elíptica se transforma en
una segunda forma, siendo determinados varios segundos parámetros,
donde al menos uno de los segundos parámetros es acortado en su
longitud con respecto a uno de los primeros parámetros. La curva
elíptica es utilizada para el procesamiento criptográfico después de
la transformación, por lo tanto en la segunda forma.
A través del acortamiento significativo de uno de
los primeros parámetros se consigue un ahorro de un área de la
memoria que debería prepararse para estos parámetros. Puesto que el
área de la memoria está dimensionada estrecha, por ejemplo en una
tarjeta de chip, a través del ahorro de varios 100 bits para el
parámetro acortado se consigue área de la memoria libre, por ejemplo
para la memorización de otra clave secreta. A través del
acortamiento del parámetro respectivo se mantiene garantizada a
pesar de todo la seguridad del procedimiento criptográfico.
En el caso de utilización de una curva
criptográfica en un procedimiento criptográfico, se incrementa el
gasto para que un agresor determine la clave, en una medida
exponencial a su longitud.
En este caso, la primera forma de la curva
elíptica puede estar determinada por:
(1)y^{2} = x^{3} + ax + b \
sobre \
GF(p)
\newpage
donde
GF(p) | designa un campo de Galois con p elementos y |
x, y, a, b | designan elementos del cuerpo GF(p). |
La designación utilizada más adelante "mod
p" designa un caso especial para el campo de Galois, a saber,
los números naturales menores que p. "mod " representa MÓDULO
y comprende una división de número entero con resto.
La invención consiste en que la segunda forma de
la curva elíptica está determinada por:
(2)y^{2} = x^{3} + c^{4}ax +
c^{6}b \ sobre \
GF(p)
donde c designa una
constante.
Para el ahorro de espacio de memoria se
transforma la ecuación (1) en la ecuación (2)y se acorta una
variable que identifica a la curva elíptica según la ecuación
(2).
La invención consiste, además, en acortar el
parámetro a, seleccionando la constante c de tal forma que
(3)c^{4}a \ mod \
p
es claramente más corto que los otros parámetros
que describen la curva elíptica según la ecuación (2). A través de
esta reducción, el parámetro necesita correspondientemente menos
espacio de
memoria.
También es un desarrollo emplear el procedimiento
en una de las siguientes aplicaciones:
- \bullet
- Codificación o decodificación:
- Los datos son codificados por un emisor -por medio de procedimientos simétricos o asimétricos- y son decodificados en el lado opuesto en el receptor.
- \bullet
- Adjudicación de claves a través de una instancia de certificación:
- Una instalación confidencial (instancia de certificación) adjudica la clave, debiendo asegurarse que la clave procede de esta instancia de certificación.
- \bullet
- Firma digital o verificación de la firma digital:
- Un documento electrónico es firmado y la firma es agregada al documento. En el receptor, con la ayuda de la firma se puede determinar si la ha firmado realmente el emisor deseado.
- \bullet
- Autenticación asimétrica:
- Con la ayuda de un procedimiento asimétrico, un usuario puede verificar su identidad. Esto se realiza con preferencia a través de codificación con una clave secreta (privada) correspondiente. Con la clave pública correspondiente de este usuario, cualquiera puede determinar que la codificación procede realmente de este usuario.
- \bullet
- Reducción de claves:
- Una variante del procesamiento criptográfico comprende la reducción de una clave, cuya clave se puede utilizar con preferencia para procedimientos de gran alcance de la criptografía.
Además, se indica un dispositivo, que presenta
una unidad de procesador, que está instalada de tal forma que se
predetermina una curva elíptica en una primera forma, donde varios
primeros parámetros determinan la curva elíptica, y de tal forma
que la curva elíptica es transformada en una segunda forma, siendo
determinados varios segundos parámetros, donde al menos uno de los
segundos parámetros es acortado en su longitud con respecto a los
primeros parámetros. Por último, se determina la curva elíptica en
la segunda forma para el procesamiento criptográfico.
Este dispositivo puede ser una tarjeta de chip,
que presenta un área de la memoria protegida y un área de la
memoria no protegida, donde se pueden depositar claves tanto en el
área de la memoria protegida como también en el área de la memoria
no protegida, es decir, parámetros que identifican la curva
elíptica.
\newpage
Este dispositivo es adecuado para la realización
del procedimiento según la invención de uno de sus desarrollos
explicados anteriormente.
Los desarrollos de la invención se deducen
también a partir de las reivindicaciones dependientes.
Con la ayuda de la figura siguiente se
representan en detalle ejemplos de realización de la invención. En
este caso:
La figura 1 muestra un procedimiento para el
procesamiento criptográfico por medio de una curva elíptica, donde
se acorta al menos un parámetro de la curva elíptica y de esta
manera se consigue un ahorro de una parte del área de la memoria
necesaria para los parámetros de la curva elíptica.
La figura 2 muestra una selección de
posibilidades para el número primo p, de manera que se acorta el
parámetro "a" de la curva elíptica.
La figura 3 muestra un procedimiento para la
determinación de una curva elíptica y la transformación siguiente
en la segunda forma.
La figura 4 muestra una disposición para el
procesamiento criptográfico.
La figura 5 muestra una unidad de procesador.
La figura 1 muestra un procedimiento para el
procesamiento por medio de una curva elíptica. La curva elíptica
(ver el bloque 101)es transformada a tal fin des una primera
forma a una segunda forma (ver el bloque 102), se acorta un
parámetro de la segunda forma (ver el bloque 103) y se memoriza la
segunda forma para el procesamiento criptográfico (ver el bloque
104). A continuación se describen las etapas mencionadas, siendo
mostradas a modo de ejemplo algunas posibilidades para el
acortamiento.
Se describe cómo se consigue una reducción de la
longitud del parámetro "a" en la ecuación de la curva elíptica
(curva elíptica en la primera forma, ver bloque 101)
(3)y^{2} = x^{3} + ax + b \
sobre \
GF(p)
donde p es especialmente un número primo mayor
que 3 y GF(p) representa un campo de Galois con p
elementos.
Una curva elíptica
(4)y^{2} = x^{3} + ax + b \
sobre \
GF(p)
se puede transferir a través de transformación en
una curva elíptica isomorfa birracional (curva elíptica en la
segunda forma, ver bloque
102)
(5)y^{2} = x^{3} + c^{4}ax +
c^{6}b \ sobre \
GF(p)
A través de la selección adecuada de las
constantes c se puede acortar el coeficiente
(6)c^{4}a \ o \
bien
(7)-c^{4}a
(ver bloque 103) con la ventaja de que el área de
memoria necesaria para la memorización de este coeficiente puede
ser reducida en comparación con el área de memoria para el
parámetro
a:
De acuerdo con la ecuación (5) se determinan a
continuación los índices:
c^{4}a (o bien c^{4}a) y
c^{2}
\newpage
Para la determinación del índice c^{4}a (o bien
c^{4}a) se distinguen con preferencia los casos siguientes:
En estos cuerpos se aplica:
- -
- todos los cuadrados son también cuartas potencias,
- -
- "-1" es no cuadrado.
- Supongamos ahora que p = 4k + 3 y s es una cuarta potencia, que genera el subgrupo multiplicativo de las cuartas potencias (o bien de los cuadrados) en GF/p).
En este caso
V = \{1, s, s^{2}, s^{3},
...,
s^{2k}\}
es la cantidad de las cuartas potencias en
GF(p)
y
NQ =
\{-1,-s,-s^{2},-s^{3},...,-s^{2k}\}
es la cantidad de los no cuadrados en
GF(p).
En este caso, s, t y k designan elementos del
cuerpo de GF(p).
Para p \equiv 3 mod 4, se puede transferir el
parámetro "a" a través de la selección adecuada de las
constantes c en el índice c^{4}a = 1 en GF (p) o c^{4}a = -1 en
GF(p)
En un cuerpo de este tipo se aplica:
- -
- (p-1)/4 elementos del grupo multiplicativo del cuerpo son cuartas potencias;
- -
- (p-1)/4 elementos del grupo multiplicativo del cuerpo son cuadrados, pero no cuartas potencias;
- -
- (p-1)/4 elementos del grupo multiplicativo del cuerpo son no cuadrados:
- -
- "-1" es no cuadrado.
En un cuerpo de este tipo, se aplica
adicionalmente:
- -
- "-1" es un cuadrado, pero no una cuarta potencia,
- -
- "+2", "-2" no son cuadrados.
Supongamos ahora que p = 8k + 5 y s es una cuarta
potencia, que genera el subgrupo multiplicativo de la cuarta
potencia en GF(p).
En este caso:
V = \{1, s, s^{2}, s^{3},
...,
s^{2k}\}
Es la cantidad de las cuartas potencias en
GF(p) y
Q =
\{-1,-s,-s^{2},-s^{3},...,-s^{2k}\}
es la cantidad de los cuadrados, que no son
cuartas potencias en GF(p)
y
NQ = \{2, 2s, 2s^{2},
2s^{3},..., 2s^{2k}, -2, -2s, -2s^{2}, -2s^{3},...,
-2s^{2k}\}
es la cantidad de los no cuadrados en
GF(p).
Para p \equiv 5 mod 8 se puede transferir el
parámetro "a" a través de la selección adecuada de las
constantes c al índice c^{4}a = 1 ó -1 ó 2 ó -2 en
GF(p).
El índice c^{4}a se puede determinar según el
esquema siguiente:
Para r = 1, -1, 2, -2, 3, -3, 4,
-4,...
- -
- formar x \equiv ra^{-1} mod p;
- -
- calcular u \equiv z^{(p-1)/4} mod p;
- -
- interrumpir en el caso de que sea u = 1;
- -
- memorizar z = c^{4} y r = c^{4}a.
\newpage
Para la determinación del incide c^{2} mod p se
establece en primer lugar en el cuerpo GF(p) correspondiente
si "a" es una cuarta potencia, un cuadrado pero no una cuarta
potencia o no un cuadrado.
En estos cuerpos se calcula u =
a^{(p-1)/2} en GF (p).
- -
- Si es u = 1 en GF (p), entonces a es una cuarta potencia (o bien un cuadrado). En este caso es c^{4} = a^{-1} en GF (p).
- -
- Si es u = -1 en GF (p), entonces a es no cuadrado. En este caso es c^{4} = -a^{-1} en GF (p).
En estos cuerpos se calcula u =
a^{(p-1)/4} en GF (p).
- -
- Si es u = 1 en GF (p), entonces a es una cuarta potencia. En este caso es c^{4} = a^{-1} en GF(p).
- -
- Si es u = -1, entonces a es un cuadrado, pero no una cuarta potencia. En este caso es c^{4} = -a^{-1} en GF(p).
- -
- Si u no es ni 1 ni -1 en GF(p), entonces a es no cuadrado en GF(p). En este caso, se calcula v = (2 a)^{(p-1)/4} en GF(p). Si es v = 1 en GF(p), entonces es c^{4} = 2a^{-1} en GF(p), en otro caso es c^{4} = -2a^{-1} en GF(p).
En estos cuerpos, de acuerdo con el esquema
descrito en 1.2, caso B, es z = c^{4}.
En todos los tres casos, con un gasto de
O(log p) se pueden calcular las dos raíces (c^{2} y
-c^{2}) a partir de c^{2}. Para el caso p = 4 k + 3, solamente
es admisible una de las dos soluciones mencionadas, a saber, aquélla
que es un cuadrado en GF(p). En los otros casos, ambas
soluciones son admisibles. Por lo tanto, se puede calcular el
coeficiente c^{6}b de la curva elíptica.
En virtud de las fórmulas cerradas para los casos
p = 4k + 3 y p = 8k + 5, hay que preferir en la práctica tales
números primos.
Supongamos el número primo p = 11 \Rightarrow
Caso 1.1: p \equiv 3 mod 4
Cuadrados y cuartas potencias mod 11 | ||
Índice | Cuadrados Q | Cuartas potencias V |
1 | 1 | 1 |
2 | 4 | 5 |
3 | 9 | 4 |
4 | 5 | 3 |
5 | 3 | 9 |
6 | 3 | 9 |
7 | 5 | 3 |
8 | 9 | 4 |
9 | 4 | 5 |
10 | 1 | 1 |
De esta manera se obtienen la cantidad de los
cuadrados Q, la cantidad de las cuartas potencias V y la cantidad
de los no cuadrados NQ:
Q = V = {1, 3, 4, 5, 9};
NQ = {2, 6, 7, 8, 10}.
a \in V = Q\Rightarrow ac^{4} =
1
Determinación de c^{4} con parámetro a dado | |
a= | c^{4}= |
1 | 1 |
3 | 4 |
4 | 3 |
5 | 9 |
9 | 5 |
a \in NQ\Rightarrow ac^{4} = -1
Determinación de c^{4} con parámetro a dado | |
a= | c^{4}= |
2 | 5 |
6 | 9 |
7 | 3 |
8 | 4 |
10 | 1 |
La Tabla 2 muestra diferentes posibilidades de
una asociación de valor de a y c^{4}, que dan como resultado
siempre 1 en la combinación ac^{4}, y la Tabla 3 muestra
diferentes posibilidades de una asociación de valor de a y c^{4},
que dan como resultado siempre -1 en la combinación ac^{4}. Esto
se aplica en GF(11).
Supongamos el número primo p = 13 \Rightarrow
Caso 1.2 A) : p \equiv 1 mod 4 y al mismo tiempo p \equiv 5
mod 8.
Cuadrados y cuartas potencias mod 13 | ||
Índice | Cuadrados Q | Cuartas potencias V |
1 | 1 | 1 |
2 | 4 | 3 |
3 | 9 | 3 |
4 | 3 | 9 |
5 | 12 | 1 |
6 | 10 | 9 |
7 | 10 | 9 |
8 | 12 | 1 |
9 | 3 | 9 |
10 | 9 | 3 |
11 | 4 | 3 |
12 | 1 | 1 |
De esta manera se obtienen la cantidad de los
cuadrados Q (que no son cuartas potencies), la cantidad de las
cuartas potencias V y la cantidad de los no cuadrados NQ:
Q = {4, 10, 12};
V = {1, 3, 9};
NQ = {2, 5, 6, 7, 8, 11}.
a \in V \Rightarrow c^{4} \in
V
Determinación de c^{4} con parámetro a dado | |
a= | c^{4}= |
1 | 1 |
3 | 9 |
9 | 3 |
\Rightarrow ac^{4} \equiv 1 mod 13
a \in Q
Determinación de c^{4} con parámetro a dado | ||
a= | c^{4}= | ac^{4} = |
4 | 3 | 12 = -1 mod 13 |
10 | 9 | 90 = -1 mod 13 |
12 | 1 | 12 = -1 mod 13 |
\Rightarrow ac^{4} \equiv -1 mod 13
a \in NQ
NQ = {2, 5, 6, 7, 8, 11},
2*V = {1, 5, 6} y
2*Q = {7, 8, 11}
Caso
a
a \in NQ y a \in (2 * V)
Determinación de c^{4} con parámetro a dado | ||
A= | c^{4}= | ac^{4} = |
2 | 1 | 2= 2 mod 13 |
5 | 3 | 15 = 2 mod 13 |
6 | 9 | 54 = 2 mod 13 |
\Rightarrow ac^{4} \equiv 2 mod 13
\newpage
Caso
b
a \in NQ y a \in (2 * Q)
Determinación de c^{4} con parámetro a dado | ||
A= | c^{4}= | ac^{4}= |
7 | 9 | 63 = -2 mod 13 |
8 | 3 | 24 = -2 mod 13 |
11 | 1 | 11 = -2 mod 13 |
\Rightarrow ac^{4} \equiv -2 mod 13
La curva elíptica obtenida de la manera descrita
en la segunda forma (ver bloque 103) se emplea para un
procesamiento criptográfico.
La figura 2 muestra una elección de posibilidades
para la selección del número primo p para la reducción del
parámetro a (ver bloque 201), como se ha descrito anteriormente. La
posibilidad 202 determina p de tal manera que se aplica p = 3 mod
4. En este caso, se puede acortar el parámetro a con la ayuda del
procedimiento descrito anteriormente. Lo mismo se aplica para p = 1
mod 4 (Caso 203), donde una distinción de los casos indica de forma
separada los dos casos p = 5 mod 8 (Caso 204) y p = 1 mod 8 (Caso
205). Las formulaciones cerradas para la determinación de un
parámetro a reducido están indicadas, respectivamente, más arriba.
La figura 2 muestra expresamente una selección de posibilidades, sin
pretender una selección exhaustiva.
En la figura 3 se determina en una primera etapa
301 una curva elíptica con los parámetros a, b, p y un número de
puntos ZP según la ecuación (1). En una etapa 302 se transforma la
curva elíptica (ver la ecuación (2)). Después de la transformación,
la curva elíptica comprende los parámetros a', b', p y ZP. a' y b'
indican que han sido modificados los parámetros a y b, donde un
parámetro, con p0referencia el parámetro a', es corto en
comparación con el parámetro a, de manera que a través de la
memorización del parámetro a' en lugar del parámetro a como
distintivo de la curve elíptica, se ahorra espacio de la
memoria.
En la figura 4 se representa una disposición para
el procesamiento criptográfico.
Un medio portátil 401, con preferencia una
tarjeta de chip, comprende un área de la memoria (no segura) MEM
403 y un área de la memoria protegida (segura) SEC 402. Con la
ayuda de un interfaz IFC 404 se intercambian datos, a través de un
canal 405, entre el medio 401 y la red de ordenadores 406. La red
de ordenadores 406 comprende varios ordenadores, que están
conectados entre sí y que se comunican entre sí. Los datos para el
funcionamiento del medio portátil 401 están disponibles con
preferencia distribuidos en la red de ordenadores RN 406.
El área de la memoria protegida 402 está
realizada de forma no legible. Con la ayuda de una unidad de
ordenador, que está alojada en el medio portátil 401 o en la red de
ordenadores 406, se utilizan los datos del área de la memoria
protegida 402. De esta manera, una operación de comparación puede
indicar como resultado si una comparación de una entrada con una
clave en el área de la memoria protegida 402 ha tenido éxito o
no.
Los parámetros de la curva elíptica están
depositados en el área de la memoria protegida 402 o en el área de
la memoria no protegida 403. Especialmente se memoriza una clave
secreta o privada en el área protegida de la memoria y una clave
pública en el área no segura de la memoria.
En la figura 5 se representa una unidad de
ordenador 501. La unidad de ordenador 501 comprende un procesador
CPU 502, una memoria 503 y un interfaz de entrada / salida 504, que
se utiliza de una manera diferente a través de un interfaz 505
conducido desde la unidad de cálculo 501: A través de un interfaz
gráfico se puede ver una salida sobre un monitor 507 y/o se puede
expresar en una impresora 508. Se realiza una entrada a través de
un ratón 509 o un teclado 510. La unidad de cálculo 501 dispone
también de un bus 506, que asegura la comunicación de la memoria
503, el procesador 502 y el interfaz de entrada/salida 504. Además,
es posible conectar en el bus 506 componentes adicionales: memoria
adicional, disco duro, etc.
\newpage
[1] Neal Koblitz: A Course in Number
Theory and Cryprography, Springer Verlag, Nueva York, 1987,
ISBN 0-387-96576-9,
páginas 150-179.
[2] Alfred J. Menezes: Elliptic Curve
Public Key Cryptosystems, Kluwer Academic Publishers, Massachusetts
1993, ISBN
0-7923-9368-6,
páginas 83-116.
[3] Rudolf Lidl, Harald
Niederreiter: Introduction to finite fields and their
applications, Cambridge University Press, Cambridge 1986,
ISBN 0-521-30706-6,
páginas 15, 45.
[4] Christoph Ruland:
Informationssicherheit in Datennetzen,
DATACOM-Verlang, Bergheim 1993, ISBN
3-89238-081-3,
páginas 73-85.
[5] Miyaji A: "Elliptic curves suitable
for cryptosystems" Oeice transactions on fundamentals of
electronics, Communications and computer sciences, vol.
E77-A, nº 1, 1 enero de 1994
(1994-01-01), páginas
98-104, XP000439669 ISSN:
0916-8508.
[6] US-A-5 497
423 (Miyaji Atsuko), 5 de Marzo de 1996
(1996-03-05).
Claims (11)
1. Procedimiento para el procesamiento
criptográfico con la ayuda de una curva elíptica en un
ordenador,
- a)
- en el que la curva elíptica es predeterminada (101) en una primera forma, donde varios primeros parámetros determinan la curva elíptica;
- b)
- en el que la curva elíptica es transformada en una segunda forma
y^{2} = x^{3} + c^{4}ax +
c^{6}b
- siendo determinados (102) varios segundos parámetros, donde al menos uno de los segundos parámetros es acortado en su longitud con respecto al primer parámetro correspondiente, donde
x, y designan variables,
a, b designan los primeros parámetros y
c designa una constante;
- c)
- donde al menos se acorta (103) el parámetro a, siendo seleccionada la constante c de tal forma que
c^{4}a \ mod \
p
- se determina claramente más corto que la longitud del parámetro b y la longitud de la variable p predeterminada;
- d)
- en el que la curva elíptica se determina (104) en la segunda forma para el procesamiento criptográfico.
2. Procedimiento según la reivindicación
precedente, en el que se determina la primera forma de la curva
elíptica a través de
y^{2} = x^{3} + ax +
b,
donde
x, y designan variables y
a, b designan los primeros parámetros.
3. Procedimiento según una de las
reivindicaciones anteriores, en el que se realiza una codificación
criptográfica.
4. Procedimiento según una de las
reivindicaciones anteriores, en el que se realiza una
decodificación criptográfica.
5. Procedimiento según una de las
reivindicaciones anteriores, en el que se realiza una adjudicación
de claves.
6. Procedimiento según una de las
reivindicaciones anteriores, en el que se realiza una firma
digital.
7. Procedimiento según la reivindicación 6, en el
que se realiza una verificación de la firma digital.
8. Procedimiento según una de las
reivindicaciones anteriores, en el que se realiza una autenticación
asimétrica.
9. Dispositivo para el procesamiento
criptográfico, con una unidad de procesador (501), que está
instalada de tal forma que
- a)
- se predetermina (101) una curva elíptica en una primera forma, donde varios primeros parámetros determinan la curva elíptica;
- b)
- la curva elíptica es transformada (102) en una segunda forma
y^{2} = x^{3} + c^{4}ax +
c^{6}b
\newpage
- siendo determinados varios segundos parámetros, donde al menos uno de los segundos parámetros es acortado en su longitud con respecto al primer parámetro correspondiente, donde
x, y designan variables,
a, b designan los primeros parámetros y
c designa una constante;
- c)
- al menos se acorta (103) el parámetro a, siendo seleccionada la constante c de tal forma que
c^{4}a \ mod \
p
- se determina claramente más corto que la longitud del parámetro b y la longitud de la variable p predeterminada;
- d)
- la curva elíptica se determina (104) en la segunda forma para el procesamiento criptográfico.
10. Dispositivo según la reivindicación 9, en el
que el dispositivo es una tarjeta de chip (401) con un área de
memoria (403), pudiendo memorizarse en el área de la memoria los
parámetros de la curva elíptica.
11. Dispositivo según la reivindicación 10, en el
que se puede memorizar una clave secreta en un área de la memoria
protegida (402) de la tarjeta de chip.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19806825 | 1998-02-18 | ||
DE19806825 | 1998-02-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2204117T3 true ES2204117T3 (es) | 2004-04-16 |
Family
ID=7858204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES99914397T Expired - Lifetime ES2204117T3 (es) | 1998-02-18 | 1999-02-02 | Procedimiento y dispositivo para el procesamiento criptografico con la ayuda de una curva eliptica en un ordenador. |
Country Status (13)
Country | Link |
---|---|
US (1) | US6956946B1 (es) |
EP (1) | EP1062764B1 (es) |
JP (1) | JP2002504720A (es) |
KR (1) | KR20010024912A (es) |
CN (1) | CN100380860C (es) |
AT (1) | ATE245875T1 (es) |
BR (1) | BR9908095A (es) |
CA (1) | CA2321478A1 (es) |
DE (1) | DE59906358D1 (es) |
ES (1) | ES2204117T3 (es) |
RU (1) | RU2232476C2 (es) |
UA (1) | UA57827C2 (es) |
WO (1) | WO1999043124A1 (es) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6307935B1 (en) * | 1991-09-17 | 2001-10-23 | Apple Computer, Inc. | Method and apparatus for fast elliptic encryption with direct embedding |
AU758621B2 (en) * | 1997-12-05 | 2003-03-27 | Icesoft Technologies, Inc. | Transformation methods for optimizing elliptic curve cryptographic computations |
US7555122B2 (en) * | 2002-12-04 | 2009-06-30 | Wired Communications LLC | Method for elliptic curve point multiplication |
JP4634046B2 (ja) * | 2003-01-28 | 2011-02-16 | パナソニック株式会社 | 故障利用攻撃に対抗できる楕円べき倍演算装置及び情報セキュリティ装置 |
CN101034991B (zh) * | 2007-04-06 | 2011-05-11 | 中兴通讯股份有限公司 | 安全引导系统及方法、代码签名构造方法及认证方法 |
US8102998B2 (en) * | 2007-05-02 | 2012-01-24 | King Fahd University Of Petroleum And Minerals | Method for elliptic curve scalar multiplication using parameterized projective coordinates |
US20080273695A1 (en) * | 2007-05-02 | 2008-11-06 | Al-Gahtani Theeb A | Method for elliptic curve scalar multiplication using parameterized projective coordinates |
DE102008046291B4 (de) | 2008-09-08 | 2012-02-23 | Siemens Aktiengesellschaft | Effiziente Speicherung kryptographischer Parameter |
CN101378321B (zh) * | 2008-09-26 | 2011-09-28 | 北京数字太和科技有限责任公司 | 一种安全处理的方法和装置 |
FR2941115B1 (fr) * | 2009-01-14 | 2011-02-25 | Sagem Securite | Codage de points d'une courbe elliptique |
CN101515853B (zh) * | 2009-03-09 | 2011-05-04 | 深圳同方电子设备有限公司 | 信息终端及其信息安全装置 |
EP2228715A1 (en) * | 2009-03-13 | 2010-09-15 | Thomson Licensing | Fault-resistant calculcations on elliptic curves |
FR2946819B1 (fr) * | 2009-06-16 | 2011-07-01 | Sagem Securite | Cryptographie sur une courbe elliptique. |
RU2457625C1 (ru) * | 2010-11-30 | 2012-07-27 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный политехнический университет" (ФГБОУ ВПО "СПбГПУ") | Способ электронной цифровой подписи на основе эллиптической кривой |
CN114143051B (zh) * | 2021-11-19 | 2024-02-23 | 江苏林洋能源股份有限公司 | 一种智能电表基于性能调整tls协议选择的方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3323268A1 (de) | 1983-06-28 | 1985-01-10 | Siemens AG, 1000 Berlin und 8000 München | Verfahren zum potenzieren in galois-feldern gf(2(pfeil hoch)n(pfeil hoch)) fuer zwecke der datenverarbeitung, der datensicherung, der datenuebertragung usw., insbesondere fuer den schluesselaustausch fuer eine verschluesselte datenuebertragung, und schaltungsanordnung zur durchfuehrung des verfahrens |
RU2007884C1 (ru) | 1991-11-22 | 1994-02-15 | Борис Владимирович Березин | Устройство шифрования двоичной информации "албер" |
US5442707A (en) * | 1992-09-28 | 1995-08-15 | Matsushita Electric Industrial Co., Ltd. | Method for generating and verifying electronic signatures and privacy communication using elliptic curves |
US5497423A (en) * | 1993-06-18 | 1996-03-05 | Matsushita Electric Industrial Co., Ltd. | Method of implementing elliptic curve cryptosystems in digital signatures or verification and privacy communication |
-
1999
- 1999-02-02 EP EP99914397A patent/EP1062764B1/de not_active Expired - Lifetime
- 1999-02-02 ES ES99914397T patent/ES2204117T3/es not_active Expired - Lifetime
- 1999-02-02 JP JP2000532949A patent/JP2002504720A/ja not_active Withdrawn
- 1999-02-02 UA UA2000084890A patent/UA57827C2/uk unknown
- 1999-02-02 CA CA002321478A patent/CA2321478A1/en not_active Abandoned
- 1999-02-02 DE DE59906358T patent/DE59906358D1/de not_active Expired - Lifetime
- 1999-02-02 CN CNB998051624A patent/CN100380860C/zh not_active Expired - Fee Related
- 1999-02-02 BR BR9908095-8A patent/BR9908095A/pt not_active IP Right Cessation
- 1999-02-02 KR KR1020007008946A patent/KR20010024912A/ko not_active Application Discontinuation
- 1999-02-02 RU RU2000123792/09A patent/RU2232476C2/ru not_active IP Right Cessation
- 1999-02-02 AT AT99914397T patent/ATE245875T1/de not_active IP Right Cessation
- 1999-02-02 WO PCT/DE1999/000278 patent/WO1999043124A1/de not_active Application Discontinuation
-
2000
- 2000-08-18 US US09/641,868 patent/US6956946B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE59906358D1 (de) | 2003-08-28 |
RU2232476C2 (ru) | 2004-07-10 |
ATE245875T1 (de) | 2003-08-15 |
WO1999043124A1 (de) | 1999-08-26 |
CA2321478A1 (en) | 1999-08-26 |
UA57827C2 (uk) | 2003-07-15 |
CN1297635A (zh) | 2001-05-30 |
EP1062764B1 (de) | 2003-07-23 |
KR20010024912A (ko) | 2001-03-26 |
BR9908095A (pt) | 2000-10-31 |
CN100380860C (zh) | 2008-04-09 |
EP1062764A1 (de) | 2000-12-27 |
JP2002504720A (ja) | 2002-02-12 |
US6956946B1 (en) | 2005-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2204117T3 (es) | Procedimiento y dispositivo para el procesamiento criptografico con la ayuda de una curva eliptica en un ordenador. | |
Beaver | Precomputing oblivious transfer | |
Deng et al. | Deniable authentication protocols | |
RU2236760C2 (ru) | Способ и устройство для взаимной аутентификации двух блоков обработки данных | |
ES2359205T3 (es) | Procedimiento y aparato para el almacenamiento y uso seguros de claves criptográficas. | |
US5615268A (en) | System and method for electronic transmission storage and retrieval of authenticated documents | |
US8300811B2 (en) | Method and device for processing data | |
JP4774492B2 (ja) | 認証システム及び遠隔分散保存システム | |
US4926480A (en) | Card-computer moderated systems | |
ES2308725T3 (es) | Firmas de pregunta-respuesta y protocolos de seguridad de diffie-hellman. | |
JP5180678B2 (ja) | Icカード、icカードシステムおよびその方法 | |
CN100432889C (zh) | 提供断开鉴别的系统和方法 | |
Di Crescenzo et al. | How to forget a secret | |
CN1326354C (zh) | 利用瞬时模数的密码验证 | |
EP0720326A2 (en) | Method for secure session key generation | |
US6052467A (en) | System for ensuring that the blinding of secret-key certificates is restricted, even if the issuing protocol is performed in parallel mode | |
CN101296075B (zh) | 一种基于椭圆曲线的身份认证系统 | |
KR20040102110A (ko) | 집적회로의 인증 방법 및 장치 | |
McAndrew | Introduction to Cryptography with open-source software | |
CN104782077A (zh) | 密码证书重发 | |
Hartung | Attacks on secure logging schemes | |
ES2279525T3 (es) | Procedimiento de criptografia de clave publica basado en el logaritmo discreto. | |
KR100971038B1 (ko) | 다수의 엔티티와 그에 따른 장치에 부하를 분배하는암호화 방법 | |
EP1267516B1 (en) | Method for securing data relating to users of a public-key infrastructure | |
Brandt et al. | Anonymous and verifiable registration in databases |