
ECIES-X25519-AEAD-Ratchet — новый быстрый протокол сквозного шифрования сети I2P

C++ разработчик
В последнее время все большую популярность набирает электронная подпись Ed25519, основанная на разновидности эллиптической кривой, предложенной Бернштейном. По мере увеличения числа узлов I2P с данным видом подписи возникла необходимость ее поддержки в своей реализации I2P, поскольку Ed25519 не входит в состав популярных криптографических библиотек. Как правило используются разновидности ref10 из библиотеки SUPERCOP, реализованной самим Бернштейном на ассемблере, и затем портированной на другие языки. Данная реализация работает хорошо и быстро, однако у нее есть главный недостаток — она непонятна. Действительно, если заглянуть в исходный код, то можно увидеть большое количество однотипных строк, оперирующих с множеством «магических» чисел, понять же, что они означают, без углубления в теорию не представляется возможным. Целью данной статьи является математически прозрачная реализация Ed22519, используя лишь стандартные операции с большими числами, присутствующие в любой криптографической библиотеке, со скоростью работы, достаточной для практического использования в I2P.
Information