Головна Криптографія та Кібербезпека Еліптична крива (ECC)

📈 Еліптична крива (ECC)

Візуалізуйте додавання точок на еліптичній кривій. Дізнайтеся, як скалярне множення генерує пару ключів і чому обернення неможливо.

Криптографія та Кібербезпека2DСередній60 FPS
elliptic-curve ↗ Відкрити окремо
DRAG · SCROLL · CLICK — керуйте прямо у вікні симуляції.

📈 Еліптична крива (ECC) — Додавання точок

Візуалізуйте додавання точок та скалярне множення на еліптичній кривій y² = x³ + ax + b. Дізнайтеся, як множення твірної точки на великий скаляр створює пару ключів — і чому обернути цю операцію обчислювально нездійсненно.

🔬 Що демонструє

Додавання точок на еліптичній кривій: пряма через дві точки P та Q перетинає криву в третій точці, яку відбивають, щоб отримати P+Q. Скалярне множення k·P повторює цю операцію k разів. Вважається, що задача дискретного логарифма на еліптичних кривих потребує експоненційного часу.

🎮 Як використовувати

Клацніть по двох точках на кривій, щоб додати їх. Використайте скалярний режим, щоб множити твірну точку на зростаюче k. Спостерігайте, як результуюча точка непередбачувано «стрибає» по кривій — це ілюструє односторонню функцію-пастку.

💡 Чи знали ви?

Криптографія на еліптичних кривих досягає такого самого рівня безпеки, як RSA-3072, лише за допомогою 256-бітних ключів — зменшення розміру ключа у 12 разів. Крива secp256k1 біткоїна щодня обробляє мільйони транзакцій, використовуючи саме цю математику.

Про криптографію на еліптичних кривих

Ця симуляція візуалізує груповий закон на еліптичній кривій вигляду y² = x³ + ax + b над дійсними числами. Коли ви додаєте дві точки P та Q, через них проводиться пряма хорда; вона перетинає криву в третій точці, яку потім відбивають відносно осі x, щоб отримати P+Q. Подвоєння точки (P+P) натомість використовує дотичну лінію. Скалярне множення k·P послідовно повторює цю операцію k разів, і ви спостерігаєте, як результуюча точка непередбачувано стрибає по кривій.

Ця непередбачуваність — серце криптографії на еліптичних кривих. Хоча обчислити k·P за k та P швидко, відновити k за P та k·P — задача дискретного логарифма на еліптичних кривих — вважається такою, що потребує експоненційного часу, що робить її односторонньою функцією-пасткою. ECC лежить в основі TLS/HTTPS, SSH, Signal та кривої secp256k1, яка захищає Bitcoin і Ethereum, забезпечуючи безпеку рівня RSA зі значно меншими ключами.

Поширені запитання

Що таке додавання точок на еліптичній кривій?

Маючи дві точки P та Q на кривій, ви проводите пряму через них, знаходите третю точку, де ця пряма перетинає криву, і відбиваєте її відносно осі x. Відбита точка визначається як P+Q. Це геометричне правило перетворює точки кривої на математичну групу.

Що таке скалярне множення k·P і чому воно важливе?

Скалярне множення додає точку P до самої себе k разів. Це основна операція ECC: закритий ключ — це скаляр k, а публічний ключ — точка k·P. Обчислити цю операцію в прямому напрямку легко, але обернути її надзвичайно важко.

Чому криптографія на еліптичних кривих вважається безпечною?

Її безпека спирається на задачу дискретного логарифма на еліптичних кривих: відновлення скаляра k за точками P та k·P. Жодного ефективного класичного алгоритму для цього невідомо, тож для вдало обраних кривих найкращі атаки потребують часу, що зростає експоненційно з розміром ключа.

Що означає подвоєння точки?

Подвоєння — це додавання точки до самої себе, P+P. Оскільки провести хорду через одну точку неможливо, використовують дотичну лінію до кривої в точці P, знаходять, де вона знову перетинає криву, і відбивають цю точку відносно осі x.

Що таке «точка на нескінченності»?

Це нейтральний елемент групи кривої, який діє як нуль у звичайному додаванні. Коли ви додаєте точку P до її дзеркального відображення −P, хорда стає вертикальною і перетинає криву «на нескінченності», даючи нейтральний елемент. Симуляція показує це як «Точка на ∞».

Чому крива має бути невиродженою?

Груповий закон працює, лише якщо крива не має каспів чи самоперетинів. Це вимагає, щоб дискримінант −16(4a³ + 27b²) був ненульовим, що гарантує гладкі, чітко визначені дотичні та хорди в усіх точках.

Чим ECC відрізняється від RSA?

Обидві є системами з відкритим ключем, але ECC досягає еквівалентної безпеки зі значно меншими ключами. 256-бітний ключ еліптичної кривої дає приблизно таку саму стійкість, як 3072-бітний ключ RSA, забезпечуючи швидші операції та менше навантаження на пропускну здатність.

Яку криву використовує Bitcoin?

Bitcoin та Ethereum використовують secp256k1, задану рівнянням y² = x³ + 7 над 256-бітним простим полем. Кожна адреса гаманця походить від публічного ключа, що є скалярним кратним фіксованої твірної точки цієї кривої.

Чому симуляція використовує дійсні числа замість скінченного поля?

Дійсні числа дозволяють намалювати криву як гладке, наочне зображення, щоб побачити геометрію хорд і дотичних. Промислова криптографія використовує ту саму алгебру над великим скінченним полем, де точки утворюють дискретну множину, яку неможливо зобразити як неперервну криву.

Чи можуть квантові комп'ютери зламати ECC?

У принципі так — алгоритм Шора міг би розв'язати задачу дискретного логарифма на еліптичних кривих на достатньо великому відмовостійкому квантовому комп'ютері. Саме цей ризик стимулює розвиток постквантових криптографічних схем, хоча сьогодні такої машини не існує.

Схожі симуляції