Calculadora de suma de puntos en curva elíptica
Suma dos puntos en una curva elíptica y^2=x^3+ax+b mód p. Introduce a, p y las coordenadas P y Q; obtén el punto resultante.
Empezar a usar
Ejemplo práctico verificado
Con los valores por defecto: a = 2, p = 17, P = (5,1) y Q = (6,3), la suma P + Q da como resultado (10,6). Puede comprobarlo manualmente: la pendiente es (3-1)/(6-5) = 2, y la coordenada x resultante es 2^2 - 5 - 6 = -7 ≡ 10 (mód 17), y la y es 2*(5-10) - 1 = -11 ≡ 6 (mód 17).
Casos especiales
Si P = (5,1) y Q = (5,16), ambos tienen la misma x pero y opuestas (1 y -1 mód 17), por lo que la recta es vertical y el resultado es el punto en el infinito. La herramienta lo indica explícitamente.
Validación y límites
La calculadora rechaza módulos compuestos o pares, y puntos que no compartan la misma curva. El límite de p ≤ 200000 garantiza que los cálculos intermedios no excedan el rango seguro de enteros de JavaScript. No realiza multiplicación escalar ni operaciones criptográficas.
Preguntas frecuentes
¿Qué ocurre si Q no está en la curva derivada de P?
La herramienta muestra un error indicando que los puntos no pertenecen a la misma curva, porque b se calcula a partir de P y Q debe satisfacer la ecuación resultante.
¿Cómo se calcula la pendiente en la duplicación de un punto?
Para P + P, la pendiente se calcula como (3xP^2 + a) / (2yP) módulo p, usando el inverso modular mediante el algoritmo de Euclides extendido.
¿Puedo usar esta calculadora para criptografía real?
No. Esta herramienta es puramente educativa y no implementa curvas nombradas, claves comprimidas ni firmas. No debe usarse para generar claves seguras.
Nota de privacidad
El cálculo se realiza localmente en su navegador; los datos no salen de su dispositivo. Sin embargo, no es una implementación criptográfica segura.
Lista de verificación
- Verifique que p sea un primo impar entre 3 y 200000.
- Confirme que ambos puntos tienen coordenadas enteras.
- Recuerde que el resultado se reduce módulo p.
- Si los puntos tienen la misma x y y opuestas, el resultado es el punto en el infinito.
Introduce enteros seguros separados por comas o espacios; no se admiten decimales. -9007199254740991 ≤ a, xP, yP, xQ, yQ ≤ 9007199254740991
a: 2; p: 17; P: 5,1; Q: 6,3; P + Q = (10,6)
4a³ + 27b² ≡ 0 (mod p): La curva es singular; no se admite la suma de puntos elípticos.
El procesamiento se realiza localmente en tu navegador.