← Все публикации

Эллиптические кривые и магия

У меня непростые отношения с криптографией. Ходил на пару факультативов, немного разбирался со всякими шифрами, но дальше там начиналась какая-то духота безопасников, и я сливался.

Забавно, что криптография не определяет понятие доверия. Самое нормальное определение: «доверие — это когда стороны ведут себя так, как ожидает другая сторона». И всё! Такая будто бы комплексная штука как доверие, а в криптографии сводится к такому простому принципу. Красота!

В итоге я конечно слышал про всякие эллиптические кривые, но думал что это что-то очень сложное и как-то интерес посмотреть побольше никогда не приходил. Ну типа да, я знаю что это повсеместно используемые алгоритмы для шифрования моих закрытых ключей, но как бы и всё. Судя по цвету ссылки, соответствующую страницу в Википедии я даже открывал пару раз. Но как-то в сознании закрепилось что там очень сложные и скучные формулы. А оказалось нифига! Очередной внезапный приступ «пожалуй пора погуглить про крыжовник» привёл к тому что у меня дома на одну книжку больше и эта книжка с названием "Эллиптические сказки", а кто же не любит сказки.

Что такое эллиптические кривые?

Представьте себе, что вы взяли лист бумаги и написали на нем простенькое уравнение:

y² = x³ + ax + b

Где a и b — какие-то константы. Вот. Всё. Эллиптическая кривая в своей самой базовой форме так и задаётся, семиклассник поймёт даже. Ну там, понятно, дьявол в мелочах, надо чтобы было три корня, но базово — моё почтение, как я оказывается 🎩 скрывался от такого безобидного уравнения все эти годы.

При этом это тот случай когда красота идёт пользу:

1️⃣ придуманные на этой системе ключи будут короче, чем в других системах, а это экономия памяти и вычислительных ресурсов.

2️⃣ операции на эллиптических кривых часто быстрее, чем в других криптосистемах.

3️⃣ сложно сломать, быстро проверить, типа как всё что приживается в криптографии.

Получается, эллиптические кривые — это как картины Пикассо в мире уравнений: простые на вид, но невероятно глубокие по содержанию. Кстати, никакого отношения к эллипсам нет, эллипсы не рисуют, и вообще это исторически так сложилось, кривые как кривые.

Дальше веселее, оказалось что на этих кривых делают свою алгебру и складывают точки типа как не знаю, точки катающиеся по суперзапутанной горке в аквапарке, и ещё и сталкиваются друг с другом тоже красиво. Очень завораживает.

В общем, оказалось, что криптография — это не только про паранойю и духоту безопасников. Иногда это про красивые уравнения, которые выглядят так, будто их мог бы написать семиклассник, но при этом защищают наши секреты лучше, чем любой замок. Кто бы мог подумать, что преодолеть внутреннее фырканье к криптографии можно, просто взглянув на 'школьное' уравнение y² = x³ + ax + b?

Этот же пост в Telegram ↗