Red de conocimiento del abogados - Bufete de abogados - Algoritmo de cifrado de curva elíptica ECC (1)

Algoritmo de cifrado de curva elíptica ECC (1)

dirección btc: 1 fmwxnjt 3 jvkahbqs 2 gas 6 plgvwx 1 ZP phf

dirección eth: 0xd 91 c 747 b4a 76 b 8013aa 336 CBC 52 FD 95 a 7a 9 BD 3d 9

Con la popularidad de blockchain, los algoritmos de curva elíptica también se han convertido en un tema candente en criptografía. La generación de direcciones de Bitcoin utiliza el algoritmo de cifrado de curva elíptica.

La expresión general de la curva elíptica:

La curva elíptica no es una elipse, sino la siguiente figura:

Bitcoin utiliza una curva elíptica especial secp256k1, la La fórmula es:

¿Cómo se cifra esto?

En el siglo XIX, el joven noruego Niels Abel abstrajo el grupo aditivo (también llamado grupo abeliano o grupo conmutativo) de las operaciones algebraicas ordinarias, unificando los algoritmos de números reales y curvas elípticas en el grupo aditivo. . ¿Qué quiere decir esto?

¡La suma, resta, multiplicación y división que usamos en números reales también se puede usar en curvas elípticas!

Sí, las curvas elípticas también pueden tener operaciones de suma y multiplicación.

Un grupo en matemáticas es un conjunto. Para él definimos una operación binaria, a la que llamamos "suma" y se representa con el símbolo +. Supongamos que queremos dirigir un grupo. Indica que la suma a definir debe cumplir con las siguientes cuatro características:

Si se agrega una quinta condición:

La ley de conmutación: a+b = b+a

Entonces, este grupo se llama grupo abeliano. Según esta definición, el conjunto de los números enteros es un grupo abeliano.

Cambiando de tema, Galois y Abel propusieron de forma independiente la teoría de grupos, y también son conocidos como los fundadores de la teoría de grupos moderna. Desafortunadamente, ambos genios murieron jóvenes.

Como se mencionó anteriormente, podemos definir un grupo basado en curvas elípticas. Específicamente:

En la curva elíptica, hay dos puntos A y B. Estos dos puntos no se superponen y no son simétricos. Dos puntos cortan la curva en

Debido a que hay un término en la ecuación de la curva elíptica, la curva elíptica debe ser simétrica con respecto a x.

Curva:

Coordenadas: A=(2,5), B=(3,7)

a y B están exactamente en la curva, porque las coordenadas Satisfacen la fórmula de la curva.

Entonces, ¿cómo encontrar el tercer punto de intersección?

Determina la ecuación lineal que pasa por los puntos A y B.

Supongamos que la ecuación de la recta es: m es la pendiente de la recta.

Además, obtenemos c=1.

Ecuaciones simultáneas:

El método de sustitución de la coordenada X -1 de X(-1,-1) simplemente satisface la ecuación, por lo que la recta y la curva donde están los dos puntos A y B están ubicados intersecándose en X (-1, -1), el punto de simetría del punto X con respecto al eje X es R (-65438).

De acuerdo con la fórmula de la teoría de grupos de la curva elíptica, podemos calcular fácilmente el punto R.

Ecuación de curva:

Cuando A=(x1, y1), B=(x2, y2), R=A+B=(x3, y3), x1≠x2,

m es la pendiente.

x3=

y3=m(x1-x3)-y1

A = (2, 5), b = (3, 7), r = (-1, 1) se ajusta a la fórmula anterior.

¿La suma de curvas elípticas cumple la ley conmutativa?

Calcule (A+B) primero, luego A+B+C.

Calcule B+C primero, luego b+c+a.

Mirando la imagen, los resultados del cálculo son los mismos. Hagámoslo manualmente.

¿Qué pasa con A+A? ¿Cómo calcular?

Cuando dos puntos coinciden, es imposible trazar una "línea recta que pase por los dos puntos". En este caso,

La recta tangente de la curva elíptica que pasa por el punto A se cruza con el punto X, y el punto de simetría del punto X con respecto al eje X es 2A. Este cálculo se denomina "operaciones dobles sobre curvas elípticas".

La siguiente figura muestra la operación de multiplicación de curvas elípticas:

Introduciremos el problema del logaritmo discreto de curvas elípticas en campos finitos en el algoritmo de cifrado de curvas elípticas ECC (2). La criptografía de curva elíptica es una aplicación del problema del logaritmo discreto.

Referencia:

/Blockchain-101-Matemáticas Básicas

/Blockchain-101-Cripto Curva Elíptica

https://Andrea . corbellini . nombre/2015/05/17/Cifrado de curva elíptica-una-introducción-suave/