гебраїчні властивості еліптичних кривих. З цього моменту почався бурхливий розвиток нового напряму в криптографії, для якого використовується термін криптографія на еліптичних кривих ( Elliptic Curve Cryptography , скорочено ECC). Криптосистеми з відкритим ключем на еліптичних кривих забезпечують таку ж функціональність, як і алгоритм RSA. Проте їх крипостійкість заснована на іншій проблемі, а саме на проблемі дискретного логарифма в групі точок еліптичної кривої ( Elliptic Curve Discrete Logarithm Problem , скорочено ECDLP). В даний час кращі алгоритми для вирішення ECDLP мають експоненціальне час роботи, на відміну від алгоритмів для вирішення проблеми простого дискретного логарифма і проблеми факторизації цілого числа, які мають субекспоненціальное час роботи. Це означає, що в системах на еліптичних кривих бажаний рівень безпеки може бути досягнутий при значно меншій довжині ключа, ніж, наприклад, у схемі RSA. Наприклад, 160-бітний ключ в ECC забезпечує той же рівень безпеки, що і 1024-бітний ключ в RSA. У цій роботі докладно розглядаються способи та переваги реалізації криптографічних протоколів з використанням теорії еліптичних кривих і як приклад реалізований алгоритм цифрового підпису на еліптичних кривих ( Elliptic Curve Digital Signature Algorithm < span align = "justify">, скорочено ECDSA) на мові Java.
алгоритм точка еліптична крива протокол
Еліптичні криві
У цьому розділі будуть викладені основи теорії еліптичних кривих, дані основні визначення, які знадобляться в подальшому при описі алгоритмів арифметики еліптичних кривих.
Алгебраїчні криві
алгебраїчну кривої порядку n над полем F називається безліч точок ( x, y): x, y ГЋ ? F , задовольняють рівняння F (X, Y) = 0 < span align = "justify">, де F (X, Y) -багаточлен ступеня n з коефіцієнтами з F . Пари (x, y) ГЋ ? F 2 , задовольняють рівняння кривої, називаються її точками.
Точка (x, y) кривої F (X, Y) = 0 називається неособо, якщо в ній не рівні нулю обидві приватні похідні много...