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

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

Идея с расшифровкой — супер!
Великолепная статья. Просто, доступно, с примерами. Спасибо огромное!
В кои-то веки хорошая статья, да ещё и в корпоративном блоге! Очень понравилось. Только числительные исправьте (264 -> 264, и так далее)
Исправили, спасибо.
Чет совсем основы, тем более старых алгоритмов. Будет что из более-менее свежего?
Спасибо! Интересно. Ждем продолжения.

Chacha20 (усовершенствованная версия Salsa20) вместе с хэш-функцией Poly1305 этого же автора заявлена Google-ом на вариант шифрования и аутентификации (AEAD) в TLS и DTLS — RFC 7905. Сама Google активно использует эту связку.
На второй графике вместо D изображено Е.

НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Из мелких придирок: если уж переводите на русский язык, то следите за длиной алфавита. В русском языке 33 буквы, и рассуждения про 26 (длина английского алфавита) выглядят странно.
НЛО прилетело и опубликовало эту надпись здесь
Спасибо за статью. Только кончилась уж больно внезапно, почти на полуслове. Лучше бы закончить тем, что «у CBC тоже есть проблемы, о которых поговорим дальше».

electronic code boot -> electronic code book
НЛО прилетело и опубликовало эту надпись здесь
Отправил вам пуллреквест с правкой для Виженера.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Спасибо, интересная лекция! Когда ждать продолжения?
Вот ещё хорошая бесплатная книга по криптографии на английском: https://www.crypto101.io/. Всё изложено в очень доступной форме и достаточно подробно.
То чувство, когда ты учишься в провинции на ИБ, и там за полгода прочитать только то, о чем в статье написано. Грустно.
Опишите, пожалуйста, тот момент, насчёт инициализационного вектора (режим CBC в AES).
Без этого вектора расшифровать не получится?
Его что, придётся «таскать с собой» вместе с зашифрованным файлом?

Без вектора не получится, он не является секретным и может быть передан вместе с сообщением.
НЛО прилетело и опубликовало эту надпись здесь
Отличная статья, спасибо!

Спасибо, за статью, интересно. Ждем продолжения.

Разрешите уточнить пару моментов:
  • Сегодня существует «легкая» криптография, там длинна ключа 80 бит (пример: блочный шифр PRESENT),
  • В «тайминг» атаках смотрят время, потребление энергии это другой тип атак, но обе атаки относятся к атакам по сторонним каналам,
  • Если мне память не изменяет, в последнем раунде AES нет MixColumns не ради скорости, а чтобы «сломать симметрию», это от meet in the middle помогает. Обратить последний раунд без последнего ключа не получится, самая последняя операция это XOR с ключом «key whitening»


А вообще, по мне так неплохое введение. Аутентификации сообщений и асимметричное (в статье поправьте) шифрование, я полагаю, во второй части?
НЛО прилетело и опубликовало эту надпись здесь
На самом деле, если чуть точнее, key whitening — это схема (смешать с ключом)(алгоритм шифрования)(смешать с ключом). Как раз по такой схеме у блочных шифров всё обычно работает: AES начинается с AddRoundKey, потом магия-волшебство, а в самом конце AddRoundKey (тот же самый Present тоже так работает). А например DES не так, там InitialPermutation можно без всякого ключа выполнить (ну и в конце тоже такая штука), DES вообще в этом смысле динозавр, там ключ 64 бита, но из них 8 в алгоритме не участвуют (вот и выходит 56), так сегодня не делают.
Просто если в самом начале алгоритма идут операции без секретной части, то их можно выполнить не зная ключа, то же самое и в конце (можно от шифровки «пройтись» по алгоритму «назад» если последние операции не используют секрет).

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