ECDSA. Elliptic Curve Digital Signature Algorithm es una variante del algoritmo DSA que emplea operaciones sobre puntos de curvas elípticas en lugar de las exponenciaciones que usa DSA (problema del logaritmo discreto). La principal ventaja de este esquema es que requiere números de tamaños menores para brindar la misma seguridad que DSA o RSA. Existen dos tipos de curvas dependiendo del campo finito en el que se definan, que pueden ser GF(P) o GF(2m).
YouTube Encyclopedic
-
1/3Views:7 32628 4812 013
-
Breaking ECDSA (Elliptic Curve Cryptography) - rhme2 Secure Filesystem v1.92r1 (crypto 150)
-
Elliptic Curve Cryptography & Diffie-Hellman
-
Digitale Signatur mit elliptischen Kurven (ECDSA)
Transcription
Proceso de firma y verificación
- Generación de llaves
- Seleccione una curva elíptica E.
- Seleccione un punto P (que pertenezca a E) de orden n.
- Seleccione aleatoriamente un número d en el intervalo [1, n - 1].
- Calcule Q = dP.
- d será la llave privada.
- Q será la llave pública.
- Proceso de firma
- Seleccione un número k de forma aleatoria.
- Calcule kP = (x1,y1).
- Calcule r = x1 mod n. Si r = 0 regresa al primer paso. (En este paso x1 es tratado como un entero).
- Calcule (k-1) mod n.
- Calcule s = k-1(H(m) + dr) mod n. Si s = 0 regrese al primer paso. (H(m) es el hash del mensaje a firmar, calculado con el algoritmo SHA-1).
- La firma del mensaje m son los números r y s.
- Proceso de verificación
- Verifique que r y s estén dentro del rango [1,n - 1].
- Calcule w = s-1 mod n.
- Calcule u1 = H(m)w mod n.
- Calcule u2 = r·w mod n.
- Calcule u1P + u2Q = (x0,y0)
- Calcule v = x0 mod n
- La firma verifica si y solo si v = r
Referencias
Enlaces externos
![](/s/i/modif.png)