Онлайн-інструмент операцій з точками еліптичної кривої
Додавання точок на еліптичній кривій y^2=x^3+ax+b над полем p. Введіть a, p, P і Q – отримайте суму. Приклад: a=2, p=17, P(5,1), Q(6,3) → (10,6). Обробка вик…
Почати роботу
Що робить цей інструмент
Цей калькулятор додає дві точки на еліптичній кривій у формі короткого рівняння Вейєрштрасса y^2 = x^3 + ax + b над простим полем. Він призначений для навчальних цілей і перевірки невеликих прикладів, а не для криптографічного використання.
Контрольовані параметри
- Ціле число a (коефіцієнт кривої).
- Просте число p (модуль) від 3 до 200000.
- Координати точок P і Q (x та y).
Параметр b не вводиться безпосередньо: він обчислюється з точки P, а точка Q має лежати на тій самій кривій. Якщо точки не належать спільній кривій, обчислення буде відхилено.
Приклад роботи
Візьмемо a = 2, p = 17, P = (5, 1), Q = (6, 3). Калькулятор обчислить P + Q = (10, 6). Це перевірений приклад.
Як виконується додавання
Для різних точок обчислюється нахил s = (yQ - yP) / (xQ - xP) за модулем p. Для подвоєння (коли P = Q) використовується s = (3xP^2 + a) / (2yP) за модулем p. Обернені елементи знаходяться за розширеним алгоритмом Евкліда. Координати результату: xR = s^2 - xP - xQ, yR = s(xP - xR) - yP (всі операції за модулем p).
Обмеження
- Калькулятор виконує лише одну операцію додавання; він не підтримує скалярне множення, названі криві, стиснені ключі, проективні координати, підписи чи перевірку ключів.
- Модуль p обмежений до 200000, щоб уникнути переповнення в JavaScript.
- Складені або парні модулі відхиляються.
- Це не криптографічний інструмент; не використовуйте його для генерації ключів або підписів.
Поширені запитання
Що станеться, якщо точки P і Q мають однакову x, але протилежні y?
Якщо xP = xQ і yP = -yQ (за модулем p), то лінія вертикальна, і сума буде точкою в нескінченності. Наприклад, P = (5, 1) і Q = (5, 16) при p = 17 дають точку в нескінченності.
Чи можу я ввести складове число p?
Ні, калькулятор приймає лише прості числа p у межах від 3 до 200000. Складові або парні модулі відхиляються.
Чи можу я обчислити подвоєння точки?
Так, якщо ввести однакові координати для P і Q, калькулятор виконає подвоєння за відповідною формулою.
Обробка виконується локально у вашому браузері.