Как стать автором
Обновить

Реализация шифра «Магма» на языке RUST

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров4.6K
Всего голосов 12: ↑11 и ↓1+11
Комментарии8

Комментарии 8

Насколько я знаю, в подобных отраслях используются аппаратные криптографические средства. Тогда задача Rust, C или CPP сводится к тому, чтобы доставлять и получать из определенных регистров байты.

На самом деле не вижу никакой разницы будет здесь работать Rust или CPP.

В чем вы видите проблему для себя ?

Почему? На какой слайд смотреть?

сложение по модулю 32

Может быть: сложение по модулю 2 в степени 32?

Да, вы правы. Почему-то после Стрибог немного не то запомнил.

Правки внес, спасибо за исправление!

Безусловно, использование собственной криптографии на реальных рабочих серверах, даже в личных целях, категорически запрещено. Сотни нюансов не могут обеспечить безопасность ваших данных.

А собственно, говоря, почему?

Я понимаю почему нельзя придумывать свои алгоритмы или протоколы. Но в чём может быть проблема реализации?

Свои алгоритмы, протоколы и криптографию придумывать можно, никто не запрещает, но всегда будет вероятность ошибиться.

Говоря о том, что именно криптографию свою использовать нельзя, я имею в виду уровень угрозы возможной ошибки.

Что будет, если мой алгоритм сортировки содержит ошибку? Просто будет неверный порядок элементов. Это легко выявляется и легко исправляется. Это все относится к теории информации.

А что будет, если я ошибусь в криптографии? Например, если что-то зашифрованное не будет расшифровываться? Это можно будет легко обнаружить, но непонятно как исправить. Еще пример, допустим все, что нужно, расшифровывается, но сам процесс шифрования содержит математическую ошибку. Тогда и выявить, и исправить ошибку будет сложно. Это относится как к теории информации, так и к теории криптографии.

К моей предыдущей статье оставили несколько комментариев по поводу атаки оракула с заполнением. Совершенно неочевидная ошибка, которая реально была выявлена в распространенном криптографическом пакете.

Поэтому когда вы что-то реализуете, необходимо учитывать какой уровень угрозы несут потенциальные ошибки.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации