Paso 10: El ECDSA algoritmo
Ahora que nosotros hemos manejado las "bases", vamos a hablar del real algoritmo de firma ECDSA.
Para ECDSA, primero necesita conocer sus parámetros de la curva, son a, b, p, N y G. Ya sabes que 'un' y 'b' son los parámetros de la función de la curva (y ^ 2 = x ^ 3 + ax + b), que 'p' es el módulo principal, que 'N' es el número de puntos de la curva, pero también es 'G' que se necesita para ECDSA y representa un «punto de referencia» o un punto de origen si lo prefiere. El punto de referencia podría ser cualquier punto de la curva.
Los parámetros de la curva son importantes y sin conocerlos, obviamente no puedes firmar o verificar una firma. Sí, verificación de una firma no es conocer sólo la clave pública, también debe conocer los parámetros de la curva para la cual se deriva esta clave pública. El NIST (National Institute of Standards and Technology) y SECG (normas para el eficiente grupo de criptografía) ofrecen parámetros de la curva estandarizada y prefabricadas que se saben para ser segura y eficaz.
Así que en primer lugar, usted tendrá una privada y una clave pública... la clave privada es un número aleatorio (de 160 bits también) que se genera, y la clave pública es un punto de la curva generada a partir de la multiplicación del punto de G con la clave privada. Establecer 'dA' como la clave privada (número aleatorio) y 'Qa' como la clave pública (un punto), así que tenemos: Qa = dA * G (donde G es el punto de referencia en los parámetros de la curva).