Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Пото́чный шифр — это симметричный шифр, в котором каждый символ открытого текста преобразуется в символ шифрованного текста в зависимости не только от используемого ключа, но и от его расположения в потоке открытого текста.
СЧИТАЕТСЯ стойким RSA с длиной ключа больше N бит потому что нет быстрых методов факторизации в целыхО чем я и говорю. Нет эффективного теста, который позволит определить случайный текст вы получили или RSA-шифр.
Из определения нужно доказать нестойкость. Вкратце: стойкий — это когда нет эффективного теста, который мог бы различить случайный выход и шифр. Так что пока такого теста нет — метод стойкий.
Из определения нужно доказать нестойкость. Вкратце: стойкий — это когда нет эффективного теста
С практической точки зрения эту победу никак не применишь.
Почему я не лезу в криптографию
Криптография — это то, что я лучше доверю другим. Либо они смогли достичь совершенства, таких я крайне уважаю, либо у них тоже не вышло, таким я посочувствую.
сложно разобраться и понять что есть хорошо, а что плохо, и где ошибка
Эта маленькая ошибка на одну позицию вмиг сломала приложение целиком
Вот почему, друзья мои, я держусь подальше от криптографии. Я просто не настолько крут.
Обычно узнаём об этом сразу же: у нас валятся тесты, где-нибудь в логах видны возникшие исключения, или мы слышим жалобы от наших клиентов — мол, то и сё перестало работать.
Я с криптографией не работал никогда, но сомневаюсь, что за столько лет не придумали никаких механизмов.
Вы обязаны ставить перед собой цель достичь совершенства. Если достичь не удаётся — вы безнадёжны.
Не забывайте, в статье в основном речь о программистах и практическом применении (скорее всего в ИТ).
Какой тогда в них практический смысл? Если у вас есть защищенный канал для передачи большого ключа, передайте сразу сообщение (той же длины).
Ассиметричные шифры гораздо более полезны в цифровых системах, чем симметричные, но у них куча недостатков и часто это решается шифрованием симметричного ключа ассиметричным, с OTP такое не прокатит.
Плюс, у OTP есть еще недостаток, его нужно где-то хранить и нельзя потерять, в то время как более короткий симметричный ключ можно вывести из легкозапоминаемого пароля c помощью любой PBKDF.
Конечно, OTP хорош, но слишком трудоемок и непрактичен (не в том плане, что нельзя применить, а в том что нецелесообразно в большинстве случаев).
Слабое звено рвёт всю цепь.Это не всегда так. В SSH, например, до сих пор используется Encrypt-and-MAC, который не считается стойким, но тем не менее он не вносит проблем с безопасностью. В TLS недавно рекомендовали использовать RC4, который тоже менее надежный, чем AES, но из-за особенностей реализации AES-CBC оказался подвержен атаке, а RC4 — нет.
Написание теста для этого случая требовало бы специальных навыков и умений, да и вероятность допущения ошибки в тесте настолько же высока, насколько высока вероятность ошибки в самом коде, требующем тестирования.Даже в статье об ошибке показано, что относительно простого chi square хватило бы для выявления этой ошибки.
Мысль автора лучше перефразировать так: не пишите свою криптографию, не придумывайте алгоритмов, если вы в этом не разбираетесь.
да и вероятность допущения ошибки в тесте настолько же высока, насколько высока вероятность ошибки в самом коде, требующем тестирования.
Как говорит Dan Boneh из Стэнфорда: «Don't implement crypto yourself» ( c )
Слабость генератора случайных чисел, используемого Mega при создании RSA-пары (создатель Cryptocat, Nadim Kobeissi, долго и зло проходился по их генератору в твиттере)
Почему я не лезу в криптографию