Блочный шифр: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Содержимое удалено Содержимое добавлено
VortBot (обсуждение | вклад) исправление разметки (ВП:РДБ#Bogus file options) |
Спасено источников — 1, отмечено мёртвыми — 0. #IABot (v1.5.2) |
||
Строка 108:
=== Шифрование, зависящее от предыдущих блоков ===
[[Файл:EncryptCBC.png|thumb|500px|right|Шифрование в режиме сцепления блоков шифротекста]]
Чтобы преодолеть эти проблемы, были разработаны иные режимы работы<ref name="NIST-modes">{{cite web|title=Block Cipher Modes|publisher=[[NIST]] Computer Security Resource Center|url=http://csrc.nist.gov/groups/ST/toolkit/BCM/index.html|archiveurl=
Общая идея заключается в использовании случайного числа, часто называемого вектором инициализации ({{lang-en|[[:en:Initialization Vector|initialization vector, IV]]}}). В популярном [[Режим шифрования#Cipher Block Chaining (CBC)|режиме сцепления блоков]] ({{lang-en|Cipher Block Chaining, CBC}}) для безопасности IV должен быть случайным или псевдослучайным. После его определения, он складывается при помощи операции исключающее ИЛИ с первым блоком открытого текста. Следующим шагом шифруется результат и получается первый шифроблок, который используем как IV для второго блока и так далее. В [[Режим шифрования#Cipher Feedback (CFB)|режиме обратной связи по шифротексту]] ({{lang-en|Cipher Feedback, CFB}}) непосредственному шифрованию подвергается IV, после чего складывается по модулю два (XOR, исключающее ИЛИ) с первым блоком. Полученный шифроблок используется как IV для дальнейшего шифрования. У режима нет особых преимуществ по сравнению с остальными. В отличие от предыдущих режимов, [[Режим шифрования#Output Feedback (OFB)|режим обратной связи вывода]] ({{lang-en|Output Feedback, OFB}}) циклически шифрует IV, формируя поток ключей, складывающихся с блоками сообщения. Преимуществом режима является полное совпадение операций шифрования и расшифрования. [[Режим шифрования#Counter Mode (CTR)|Режим счетчика]] ({{lang-en|Counter, CTR}}) похож на OFB, но позволяет вести параллельное вычисление шифра: IV объединяется с номером блока без единицы и результат шифруется. Полученный блок складывается с соответствующим блоком сообщения.
|