diff --git a/www/PD_protect_doc.html b/www/PD_protect_doc.html new file mode 100644 index 0000000..5d2bf45 --- /dev/null +++ b/www/PD_protect_doc.html @@ -0,0 +1,267 @@ + + + + + Security is an important thing + + + + + + + + + + + + + + +


+ + + + + +
+
+ Назад +

Введение

+

Перед описанием документа следует определить некоторые вещи, речь о которых пойдет ниже.

+

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

+ +

+ Персональные данные - любые сведения, относящиеся к прямо или косвенно определенному или определяемому физ. лицу (субъекту персональных данных), которые предоставляются другому физическому или юридическому лицу либо лицам. Нормативная база РФ в отношении персональных данных включает в себя следующие нормативные документы: +

+

+ +

+ В офицальный перечень документов на тему защиты персональных данных на официальном сайте + Роскомнадзора входит: +

+

+ +

Содержание документа

+ +

+ Представленный выше документ определяет все требования защиты пользовательских персональных данных при их обработке в информационных системах персональных данных. Он включает в себя две части: +

    +
  1. + Постановление о том, что документ от 2012-го года является действующим, а аналогичный документ 2007-го (от 17 ноября 2007 г. +N 781 "Об утверждении Положения об обеспечении безопасности персональных данных при их обработке в +информационных системах персональных данных" (Собрание законодательства Российской Федерации, 2007, +N 48, ст. 6001) года утрачивает свою силу. +
  2. +
  3. + Список с требованиями по защите персональных данных, представленный в виде 17-ти пунктов. +
  4. +
+

+

Перечень требований к защите персональных данных

+

Взято из документа "Об утверждении требований к защите персональных данных при их обработке в информационных системах персональных данных" от 01.11.2012 № 1119.

+
    +
  1. Настоящий документ устанавливает требования к защите персональных данных при их обработке в +информационных системах персональных данных (далее - информационные системы) и уровни +защищенности таких данных.
  2. +
  3. Безопасность персональных данных при их обработке в информационной системе обеспечивается с +помощью системы защиты персональных данных, нейтрализующей актуальные угрозы, определенные в +соответствии с частью 5 статьи 19 Федерального закона "О персональных данных". +Система защиты персональных данных включает в себя организационные и (или) технические меры, +определенные с учетом актуальных угроз безопасности персональных данных и информационных +технологий, используемых в информационных системах.
  4. +
  5. Безопасность персональных данных при их обработке в информационной системе обеспечивает +оператор этой системы, который обрабатывает персональные данные (далее - оператор), или лицо, +осуществляющее обработку персональных данных по поручению оператора на основании заключаемого с +этим лицом договора (далее - уполномоченное лицо). Договор между оператором и уполномоченным лицом +должен предусматривать обязанность уполномоченного лица обеспечить безопасность персональных данных +при их обработке в информационной системе.
  6. +
  7. Выбор средств защиты информации для системы защиты персональных данных осуществляется +оператором в соответствии с нормативными правовыми актами, принятыми Федеральной службой +безопасности Российской Федерации и Федеральной службой по техническому и экспортному контролю во +исполнение части 4 статьи 19 Федерального закона "О персональных данных".
  8. +
  9. Информационная система является информационной системой, обрабатывающей специальные +категории персональных данных, если в ней обрабатываются персональные данные, касающиеся расовой, +национальной принадлежности, политических взглядов, религиозных или философских убеждений, +состояния здоровья, интимной жизни субъектов персональных данных. +Информационная система является информационной системой, обрабатывающей биометрические +персональные данные, если в ней обрабатываются сведения, которые характеризуют физиологические и +биологические особенности человека, на основании которых можно установить его личность и которые +используются оператором для установления личности субъекта персональных данных, и не обрабатываются +сведения, относящиеся к специальным категориям персональных данных. +Информационная система является информационной системой, обрабатывающей общедоступные +персональные данные, если в ней обрабатываются персональные данные субъектов персональных данных, +полученные только из общедоступных источников персональных данных, созданных в соответствии со +статьей 8 Федерального закона "О персональных данных". +Информационная система является информационной системой, обрабатывающей иные категории +персональных данных, если в ней не обрабатываются персональные данные, указанные в абзацах первом - +третьем настоящего пункта. +Информационная система является информационной системой, обрабатывающей персональные +данные сотрудников оператора, если в ней обрабатываются персональные данные только указанных +сотрудников. В остальных случаях информационная система персональных данных является +информационной системой, обрабатывающей персональные данные субъектов персональных данных, не +являющихся сотрудниками оператора.
  10. +
  11. Под актуальными угрозами безопасности персональных данных понимается совокупность условий и +факторов, создающих актуальную опасность несанкционированного, в том числе случайного, доступа к +персональным данным при их обработке в информационной системе, результатом которого могут стать +уничтожение, изменение, блокирование, копирование, предоставление, распространение персональных +данных, а также иные неправомерные действия. +Угрозы 1-го типа актуальны для информационной системы, если для нее в том числе актуальны угрозы, +связанные с наличием недокументированных (недекларированных) возможностей в системном +программном обеспечении, используемом в информационной системе. +Угрозы 2-го типа актуальны для информационной системы, если для нее в том числе актуальны угрозы, +связанные с наличием недокументированных (недекларированных) возможностей в прикладном +программном обеспечении, используемом в информационной системе. +Угрозы 3-го типа актуальны для информационной системы, если для нее актуальны угрозы, не +связанные с наличием недокументированных (недекларированных) возможностей в системном и +прикладном программном обеспечении, используемом в информационной системе.
  12. +
  13. Определение типа угроз безопасности персональных данных, актуальных для информационной +системы, производится оператором с учетом оценки возможного вреда, проведенной во исполнение пункта 5 +части 1 статьи 18.1 Федерального закона "О персональных данных", и в соответствии с нормативными +правовыми актами, принятыми во исполнение части 5 статьи 19 Федерального закона "О персональных +данных".
  14. +
  15. При обработке персональных данных в информационных системах устанавливаются 4 уровня +защищенности персональных данных.
  16. +
  17. Необходимость обеспечения 1-го уровня защищенности персональных данных при их обработке в +информационной системе устанавливается при наличии хотя бы одного из следующих условий:
      +
    • для информационной системы актуальны угрозы 1-го типа и информационная система обрабатывает +либо специальные категории персональных данных, либо биометрические персональные данные, либо иные +категории персональных данных;
    • +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +специальные категории персональных данных более чем 100000 субъектов персональных данных, не +являющихся сотрудниками оператора.
  18. +
  19. Необходимость обеспечения 2-го уровня защищенности персональных данных при их обработке в +информационной системе устанавливается при наличии хотя бы одного из следующих условий:
      +
    • для информационной системы актуальны угрозы 1-го типа и информационная система обрабатывает +общедоступные персональные данные;
    • +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +специальные категории персональных данных сотрудников оператора или специальные категории +персональных данных менее чем 100000 субъектов персональных данных, не являющихся сотрудниками +оператора;
    • +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +биометрические персональные данные;
    • +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +общедоступные персональные данные более чем 100000 субъектов персональных данных, не являющихся +сотрудниками оператора; +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +иные категории персональных данных более чем 100000 субъектов персональных данных, не являющихся +сотрудниками оператора;
    • +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +специальные категории персональных данных более чем 100000 субъектов персональных данных, не +являющихся сотрудниками оператора.
  20. +
  21. Необходимость обеспечения 3-го уровня защищенности персональных данных при их обработке в +информационной системе устанавливается при наличии хотя бы одного из следующих условий:
      +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +общедоступные персональные данные сотрудников оператора или общедоступные персональные данные +менее чем 100000 субъектов персональных данных, не являющихся сотрудниками оператора;
    • +
    • для информационной системы актуальны угрозы 2-го типа и информационная система обрабатывает +иные категории персональных данных сотрудников оператора или иные категории персональных данных +менее чем 100000 субъектов персональных данных, не являющихся сотрудниками оператора;
    • +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +специальные категории персональных данных сотрудников оператора или специальные категории +персональных данных менее чем 100000 субъектов персональных данных, не являющихся сотрудниками +оператора;
    • +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +биометрические персональные данные;
    • +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +иные категории персональных данных более чем 100000 субъектов персональных данных, не являющихся +сотрудниками оператора.
  22. +
  23. Необходимость обеспечения 4-го уровня защищенности персональных данных при их обработке в +информационной системе устанавливается при наличии хотя бы одного из следующих условий:
      +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +общедоступные персональные данные;
    • +
    • для информационной системы актуальны угрозы 3-го типа и информационная система обрабатывает +иные категории персональных данных сотрудников оператора или иные категории персональных данных +менее чем 100000 субъектов персональных данных, не являющихся сотрудниками оператора.
  24. +
  25. Для обеспечения 4-го уровня защищенности персональных данных при их обработке в +информационных системах необходимо выполнение следующих требований: +
      +
    • организация режима обеспечения безопасности помещений, в которых размещена информационная +система, препятствующего возможности неконтролируемого проникновения или пребывания в этих +помещениях лиц, не имеющих права доступа в эти помещения;
    • +
    • обеспечение сохранности носителей персональных данных;
    • +
    • утверждение руководителем оператора документа, определяющего перечень лиц, доступ которых к +персональным данным, обрабатываемым в информационной системе, необходим для выполнения ими +служебных (трудовых) обязанностей;
    • +
    • использование средств защиты информации, прошедших процедуру оценки соответствия +требованиям законодательства Российской Федерации в области обеспечения безопасности информации, в +случае, когда применение таких средств необходимо для нейтрализации актуальных угроз.
  26. +
  27. Для обеспечения 3-го уровня защищенности персональных данных при их обработке в +информационных системах помимо выполнения требований, предусмотренных пунктом 13 настоящего +документа, необходимо, чтобы было назначено должностное лицо (работник), ответственный за обеспечение +безопасности персональных данных в информационной системе.
  28. +
  29. Для обеспечения 2-го уровня защищенности персональных данных при их обработке в +информационных системах помимо выполнения требований, предусмотренных пунктом 14 настоящего +документа, необходимо, чтобы доступ к содержанию электронного журнала сообщений был возможен +исключительно для должностных лиц (работников) оператора или уполномоченного лица, которым сведения, +содержащиеся в указанном журнале, необходимы для выполнения служебных (трудовых) обязанностей.
  30. +
  31. Для обеспечения 1-го уровня защищенности персональных данных при их обработке в +информационных системах помимо требований, предусмотренных пунктом 15 настоящего документа, +необходимо выполнение следующих требований:
      +
    • автоматическая регистрация в электронном журнале безопасности изменения полномочий +сотрудника оператора по доступу к персональным данным, содержащимся в информационной системе;
    • +
    • создание структурного подразделения, ответственного за обеспечение безопасности персональных +данных в информационной системе, либо возложение на одно из структурных подразделений функций по +обеспечению такой безопасности.
  32. +
  33. Контроль за выполнением настоящих требований организуется и проводится оператором +(уполномоченным лицом) самостоятельно и (или) с привлечением на договорной основе юридических лиц и +индивидуальных предпринимателей, имеющих лицензию на осуществление деятельности по технической +защите конфиденциальной информации. Указанный контроль проводится не реже 1 раза в 3 года в сроки, +определяемые оператором (уполномоченным лицом).
+
+ +
+ + + + + + + + + + + + + + diff --git a/www/aes.html b/www/aes.html new file mode 100644 index 0000000..5883c77 --- /dev/null +++ b/www/aes.html @@ -0,0 +1,447 @@ + + + + + Security is an important thing + + + + + + + + + + + + + + +


+ + + + + +
+
+

Введение

+

Advanced Encryption Standard (AES), также известный + как Rijndael (Рэндал)) —  + симметричный алгоритм блочного шифрования  + (размер блока 128 бит, ключ 128/192/256 бит), + принятый в качестве стандарта  шифрования правительством США по + результатам конкурса AES. +

+

+ Этот алгоритм хорошо проанализирован и сейчас широко используется, + как это было с его предшественником  DES . Национальный институт + стандартов и технологий США ( англ.  National Institute of Standards and + Technology, NIST) опубликовал спецификацию AES  26 ноября  2001 + года после пятилетнего периода, в ходе которого были созданы и оценены 15 + кандидатур.  + 26 мая 2002 года AES был объявлен стандартом шифрования. +

+ +

Попробуем его описать простыми словами

+

Как применить AES

+ +

+ Этот алгоритм преобразует один 128-битный блок в другой, используя секретный + ключ который нужен для такого преобразования. Для расшифровки полученного + 128-битного блока используют второе преобразование с тем же секретным + ключом. Выглядит это так: +

+

+ cipher = encrypt(block, key) // шифруем block с помощью key
+ block = decrypt(cipher, key) // расшифровываем cipher с помощью key
+

+

+ Размер блока всегда равен 128 бит. Размер ключа также имеет фиксированный + размер. Чтобы зашифровать произвольный текст любым паролем можно + поступить так: +

  + + +

Это можно записать так:

+

+ hash = md5(password) // MD5 хеш имеет длину 128 бит
+ key = keyexpansion(hash) // преобразуем хеш в ключ
+ blocks = split(text, 16) // разбить текст на блоки по 16 байт
+

+

+ for (i = 0; i < blocks.length; i++)
+ cipher[i] = encrypt(blocks[i], key)
+

+

+ Чтобы расшифровать массив блоков cipher нужно применить к каждому блоку + decrypt: +

+

+ hash = md5(password)
+ key = keyexpansion(hash)
+

+

+ for (i = 0; i < cipher.length; i++)
+ blocks[i] = decrypt(cipher[i], key)
+

+

+ text = merge(blocks) // соединить все блоки в одну строку +

+

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

+
+
+

Поле GF(2^8)

+

AES активно использует так называемое конечное поле GF(2^8). Чтобы написать + AES на JavaScript не обязательно знать, что это за поле.

+ +

Поле GF(2^8) это числа 0..255 для которых определили особое умножение и особое сложение.

+
+
+

Таблица SBox

+

+ Эта таблица представляет собой 256-байтый массив и используется для замены + одного байта другим. Не обязательно понимать как она получается, потому что в + код можно просто скопировать этот массив. Чтобы узнать чему равен элемент + SBox[b] нужно три действия: +

+
    +
  1. найти обратный байт к b в поле GF(2 8 ) (ноль оставить без изменений)
  2. +
  3. умножить результат состоящий из восьми битов на матрицу 8×8 из 64 битов
  4. +
  5. добавить {63}
  6. +
+

В сумме эти три действия дают афинное преобразование

+ + + +

Построенная таблица выглядит так:

+ +
+ +
+

Таблица InvSBox

+

+ Для дешифрования текста AES использует таблицу обратную к SBox. Таблица + InvSBox обладает одним свойством: InvSBox[SBox[i]] = i. InvSBox выглядит так: +

+ +
+ +
+

Виды AES

+

+ Алгоритм AES преобразует блок длиной 128 битов в другой блок той же длины. + Для преобразования применяется расписание ключей w получаемое из ключа. + 128-битный блок в AES представляется в виде матрицы 4×N b . Стандарт допускает + только одно значение N b  = 4, поэтому длина блока всегда 128 бит, хотя алгоритм + может работать с любым N b . Длина ключа равна 4N k  байт. Алгоритм шифрования + блока состоит из N r  раундов — применений одной и той же группы + преобразований к 128-битному блоку данных. Стандарт допускает следующие + комбинации этих трёх параметров: +

+ + + + + + + + + + + + + + + + + + + + + + + + + +
NkNbNr
AES-1284410
AES-1926412
AES-2568414
+
+
+

Преобразование KeyExpansion

+

+ Для шифрования текста AES применяет не пароль или хеш от пароля, а так + называемое «расписание ключей» получаемое из ключа. Это расписание можно + представить как N r  + 1 матриц размера 4×N b . Алгоритм шифрования делает N r  + 1 + шагов и на каждом шаге он, помимо других действий, берёт одну матрицу 4×N b  из + «расписания» и поэлементно добавляет её к блоку данных. +

+
+
+

Шифрование блока данных

+

+ Алгоритм шифрования получает на вход 128-битный блок данных input и + расписание ключей w, которое получается после KeyExpansion. 16-байтый input он + записывает в виде матрицы s размера 4×N b , которая называется состоянием AES, + и затем N r  раз применяет к этой матрице 4 преобразования. В конце он + записывает матрицу в виде массива и подаёт его на выход — это зашифрованный + блок. Каждое из четырёх преобразований очень простое. +

+
    +
  1. + AddRoundKey берёт из расписания ключей одну матрицу размера 4×N b  и + поэлементно добавляет её к матрице состояния. Если два раза применить + AddRoundKey, то ничего не изменится, поэтому преобразование обратное к + AddRoundKey это оно само. +
  2. +
  3. + SubBytes заменяет каждый элемент матрицы состояния соответвующим + элементом таблицы SBox: s ij  = SBox[s ij ]. Преобразование SubBytes обратимо. + Обратное к нему находится с помощью таблицы InvSBox. +
  4. +
  5. + ShiftRows сдвигает i-ую строку матрицы s на i позиций влево, считая i с нуля. + Обратное преобразование InvShiftRows сдвигает строки вправо. +
  6. +
  7. + MixColumns умножает каждый столбец матрицы s слева на особую матрицу размера 4×4: +
  8. +
+ +

+ Для шифрования используют [a b c d] = [{02} {03} {01} {01}]. Можно проверить, + что преобразование обратное к MixColumns[{02} {03} {01} {01}] это + MixColumns[{0e} {0b} {0d} {09}]. +

+
+
+

Расшифровка

+

+ Как видно, для шифрования блока данных AES последовательно применяет к + нему много обратимых преобразований. Для расшифровки нужно применить + обратные преобразования в обратном порядке. +

+ http://crypt-online.ru/crypts/aes/
+ https://www.youtube.com/watch?v=CxU4ROAYGzs +
+
+
+

ГОСТ

+

+ ГОСТ 28147-89 (Магма) — российский стандарт симметричного блочного шифрования, + принятый в 1989 году. Полное название — «ГОСТ 28147-89 Системы обработки + информации. Защита криптографическая. Алгоритм криптографического преобразования». + Является примером DES-подобных криптосистем, созданных по классической + итерационной схеме Фейстеля.
+

+

+ В России в качестве стандарта на блочные алгоритмы шифрования с закрытым ключом в 1989 году был + принят ГОСТ 28147-89. Он рекомендуется к использованию для криптографической защиты данных. Шифр, + предлагаемый ГОСТ 28147-89 построен по тем же принципам, что и американский DES, однако по сравнению + с DES отечественный стандарт шифрования более удобен для программной реализации. +

+

+ В отличие от американского DES в отечественном стандарте применяется более длинный ключ – 256 бит. + Кроме того, российский стандарт предлагает использовать 32 раунда шифрования, тогда как DES – только 16. +

+

+ Таким образом, основные параметры алгоритма криптографического преобразования данных ГОСТ 28147-89 + следующие: размер блока составляет 64 бита, размер ключа – 256 бит, количество раундов – 32. +

+

+ Алгоритм представляет собой классическую сеть Фейштеля. Шифруемый блок данных разбивается на две + одинаковые части, правую R и левую L. Правая часть складывается с подключом раунда и посредством + некоторого алгоритма шифрует левую часть. Перед следующим раундом левая и правая части меняются + местами. Такая структура позволяет использовать один и тот же алгоритм как для шифрования, так и для + дешифрования блока. +

+ +

В алгоритме шифрования используются следующие операции:

+
    +
  • сложение слов по модулю 232;
  • +
  • циклический сдвиг слова влево на указанное число бит;
  • +
  • побитовое сложение по модулю 2;
  • +
  • замена по таблице.
  • +
+ +

+ На различных шагах алгоритмов ГОСТа данные, которыми они оперируют, интерпретируются и используются + различным образом. В некоторых случаях элементы данных обрабатываются как массивы независимых битов, + в других случаях – как целое число без знака, в третьих – как имеющий структуру сложный элемент, + состоящий из нескольких более простых элементов. +

+
+
+

Структура раунда ГОСТ 28147-89

+

Структура одного раунда ГОСТ 28147-89 приведена на рис. 5.1.

+

+ Шифруемый блок данных разбивается на две части, которые затем обрабатываются как отдельные 32- + битовые целые числа без знака. Сначала правая половина блока и подключ раунда складываются по модулю + 232. Затем производится поблочная подстановка. 32-битовое значение, полученное на предыдущем шаге + (обозначим его S), интерпретируется как массив из восьми 4-битовых блоков + кода: S=(S0 ,S1 ,S2 ,S3,S4 ,S5 ,S6 ,S7 ). Далее значение каждого из восьми блоков заменяется на новое, которое + выбирается по таблице замен следующим образом: значение блока Si  заменяется на Si -тый по порядку + элемент (нумерация с нуля) i-го узла замен (т.е. i-той строки таблицы замен, нумерация также с нуля). + Другими словами, в качестве замены для значения блока выбирается элемент c номером строки, равным + номеру заменяемого блока, и номером столбца, равным значению заменяемого блока как 4-битового целого + неотрицательного числа. В каждой строке таблицы замен записаны числа от 0 до 15 в произвольном порядке + без повторений. Значения элементов таблицы замен взяты от 0 до 15, так как в четырех битах, которые + подвергаются подстановке, может быть записано целое число без знака в диапазоне от 0 до 15. Например, + первая строка S-блока может содержать такие значения: 5, 8, 1, 13, 10, 3, 4, 2, 14, 15, 12, 7, + + 6, 0, 9, 11. В этом случае значение блока S0  (четыре младших бита 32-разрядного числа S) заменится на + число, стоящее на позиции, номер которой равен значению заменяемого блока. Если S0  = 0, то оно + заменится на 5, если S0 = 1, то оно заменится на 8 и т.д. +

+ +

Рис. 5.1. Структура одного раунда ГОСТ 28147-89

+

+ После выполнения подстановки все 4-битовые блоки снова объединяются в единое 32-битное слово, которое + затем циклически сдвигается на 11 битов влево. Наконец, с помощью побитовой операции "сумма по + модулю 2" результат объединяется с левой половиной, вследствие чего получается новая правая + половина Ri . Новая левая часть Li  берется равной младшей части преобразуемого блока: Li = Ri-1. +

+

+ Полученное значение преобразуемого блока рассматривается как результат выполнения одного раунда алгоритма шифрования. +

+
+
+

Процедуры шифрования и расшифрования

+

+ ГОСТ 28147-89 является блочным шифром, поэтому преобразование данных осуществляется блоками в так + называемых базовых циклах. Базовые циклы заключаются в многократном выполнении для блока данных + основного раунда, рассмотренного нами ранее, с использованием разных элементов ключа и отличаются друг + от друга порядком использования ключевых элементов. В каждом раунде используется один из восьми + возможных 32-разрядных подключей. +

+

+ Рассмотрим процесс создания подключей раундов. В ГОСТ эта процедура очень проста, особенно по + сравнению с DES. 256-битный ключK разбивается на восемь 32-битных подключей, обозначаемых K0,K1,K2,K3, + K4,K5,K6,K7. Алгоритм включает 32 раунда, поэтому каждый подключ при шифровании используется в + четырех раундах в последовательности, представленной на таблица 5.1. +

+

Таблица 5.1. Последовательность использования подключей при шифровании

+ +

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

+

Таблица 5.2. Последовательность использования подключей при расшифровании

+ +
+
+

Основные режимы шифрования

+

ГОСТ 28147-89 предусматривает следующие режимы шифрования данных: простая замена, гаммирование, + гаммирование с обратной связью и один дополнительный режим выработки имитовставки.

+

В любом из этих режимов данные обрабатываются блоками по 64 бита, на которые разбивается + шифруемый массив, именно поэтому ГОСТ 28147-89 относится к блочным шифрам. В режимах гаммирования + есть возможность обработки неполного блока данных размером меньше 8 байт, что существенно при + шифровании массивов данных с произвольным размером, который может быть не кратным 8 байтам.

+

Режим простой замены. Этот режим использования блочного шифра аналогичен рассмотренному в лекции 4 + режиму простой поблочной замены (ECB). В этом режиме каждый блок исходных данных шифруется + независимо от остальных блоков, с применением одного и того же ключа шифрования. Особенностью этого + режима является то, что одинаковые блоки исходного текста преобразуются в одинаковый шифротекст. + Поэтому ГОСТ 28147-89 рекомендует использовать режим простой замены только для шифрования ключей.

+

Режимы гаммирования и гаммирования с обратной связью могут использоваться для шифрования данных произвольного + размера.

+

В режиме гаммирования биты исходного текста складываются по модулю 2 с гаммой, которая вырабатывается + с помощью алгоритма шифрования по ГОСТ 28147-89. То есть алгоритм шифрования по ГОСТ 28147-89 в + данном режиме используется в качестве генераторов 64-разрядных блоков гаммы. При шифровании каждого + нового блока данных гамма, использованная на предыдущем шаге, зашифровывается и используется уже как + "новая" гамма. В качестве начального массива данных, шифруемых для получения самой первой гаммы, + используется так называемая синхропосылка – 64-разрядный начальный блок данных, который должен быть + одинаковым на шифрующей и расшифровывающей стороне. Благодаря тому, что наложение и снятие гаммы + осуществляется при помощи одной и той же операции сложения по модулю 2, алгоритмы зашифрования и + расшифрования в режиме гаммирования совпадают.

+

Так как все элементы гаммы различны для реальных шифруемых массивов, то результат зашифрования даже + двух одинаковых блоков в одном массиве данных будет различным. Кроме того, хотя элементы гаммы и + вырабатываются одинаковыми порциями в 64 бита, использоваться может и часть такого блока с размером, + равным размеру шифруемого блока. Именно это дает возможность шифрования неполных блоков данных.

+

Режим гаммирования с обратной связью похож на режим гаммирования и отличается от него только способом + выработки элементов гаммы. При гаммировании с обратной связью очередной 64-битный элемент гаммы + вырабатывается как результат преобразования по базовому циклу алгоритма ГОСТ 28147-89 предыдущего + блока зашифрованных данных. Для зашифрования первого блока массива данных элемент гаммы + вырабатывается как результат преобразования по тому же циклу синхропосылки. Этим достигается + зацепление блоков – каждый блок шифротекста в этом режиме зависит от соответствующего и всех + предыдущих блоков открытого текста. Поэтому данный режим иногда называется гаммированием с + зацеплением блоков. На стойкость шифра факт зацепления блоков не оказывает никакого влияния.

+

Для решения задачи обнаружения искажений в зашифрованном массиве данных в ГОСТе 28147-89 + предусмотрен дополнительный режим криптографического преобразования – + выработка имитовставки. Имитовставка – это контрольная комбинация, зависящая от открытых данных и + секретной ключевой информации. Целью использования имитовставки является обнаружение всех случайных + или преднамеренных изменений в массиве информации. В режиме выработки имитовставки входной текст + обрабатывается блоками следующим образом:

+ +

где f – базовый цикл по ГОСТ 28147-89; Xi  – 64-разрядный блок исходного текста; K – ключ.

+

В качестве имитовставки берется часть блока Yn , полученного на выходе, обычно 32 его младших бита.

+

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

+
+
+

Отличия алгоритмов шифрования по ГОСТ 28147-89 и DES

+

Несмотря на то, что алгоритм, изложенный в ГОСТ 28147-89, проектировался достаточно давно, в него + заложен достаточный запас по надежности. Это связано, прежде всего, с большой длиной ключа + шифрования.

+

Как известно, разработчики современных криптосистем придерживаются принципа, что секретность + зашифрованных сообщений должна определяться секретностью ключа. Это значит, что даже если + сам алгоритм шифрования известен криптоаналитику, тот, тем не менее, не должен иметь возможности + расшифровать сообщение, если не располагает соответствующим ключом. Все классические блочные шифры, + в том числе DES и ГОСТ 28147-89, соответствуют этому принципу и спроектированы таким образом, чтобы не + было пути вскрыть их более эффективным способом, чем полным перебором по всему ключевому + пространству, т.е. по всем возможным значениям ключа. Ясно, что стойкость таких шифров определяется + размером используемого в них ключа.

+

В шифре, реализуемом в ГОСТ 28147-89, используется 256-битовый ключ, и объем ключевого пространства + составляет 2256 . Даже если, как и в "Алгоритмы шифрования DES и AES" , предположить, что на взлом шифра + брошены все силы вычислительного комплекса с возможностью перебора 1012 (это примерно равно 240 ) + ключей в одну секунду, то на полный перебор всех 2256  ключей потребуется 2216  секунд (это время составляет более миллиарда лет). +

+

К уже отмеченным отличиям между алгоритмами DES и ГОСТ 28147 можно добавить также следующее. В + основном раунде DESприменяются нерегулярные перестановки исходного сообщения, в ГОСТ 28147 + используется 11-битный циклический сдвиг влево. Последняя операция гораздо удобнее для программной + реализации. Однако перестановка DES увеличивает лавинный эффект. В ГОСТ 28147 изменение одного + входного бита влияет на один 4-битовый блок при замене в одном раунде, который затем влияет на два 4- + битовых блока следующего раунда, три блока следующего и т.д. В ГОСТ 28147 требуется 8 раундов прежде, + чем изменение одного входного бита повлияет на каждый бит результата; DES для этого нужно только 5 + раундов. +

+

Также следует отметить, что в отличие от DES, у ГОСТ 28147-89 таблицу замен для + выполнения операции подстановки можно произвольно изменять, то есть таблица замен является + дополнительным 512-битовым ключом. +

+
+ +
+ + + + + + + + + + + + + + diff --git a/www/images/lectures/aes/aes_1.png b/www/images/lectures/aes/aes_1.png new file mode 100644 index 0000000..4482e1f Binary files /dev/null and b/www/images/lectures/aes/aes_1.png differ diff --git a/www/images/lectures/aes/aes_2.png b/www/images/lectures/aes/aes_2.png new file mode 100644 index 0000000..056fc52 Binary files /dev/null and b/www/images/lectures/aes/aes_2.png differ diff --git a/www/images/lectures/aes/aes_3.png b/www/images/lectures/aes/aes_3.png new file mode 100644 index 0000000..b64537c Binary files /dev/null and b/www/images/lectures/aes/aes_3.png differ diff --git a/www/images/lectures/aes/aes_4.png b/www/images/lectures/aes/aes_4.png new file mode 100644 index 0000000..c7888da Binary files /dev/null and b/www/images/lectures/aes/aes_4.png differ diff --git a/www/images/lectures/aes/aes_5.png b/www/images/lectures/aes/aes_5.png new file mode 100644 index 0000000..0abc1aa Binary files /dev/null and b/www/images/lectures/aes/aes_5.png differ diff --git a/www/images/lectures/aes/aes_6.png b/www/images/lectures/aes/aes_6.png new file mode 100644 index 0000000..8af3d3a Binary files /dev/null and b/www/images/lectures/aes/aes_6.png differ diff --git a/www/images/lectures/aes/aes_7.png b/www/images/lectures/aes/aes_7.png new file mode 100644 index 0000000..36d8205 Binary files /dev/null and b/www/images/lectures/aes/aes_7.png differ diff --git a/www/images/lectures/aes/aes_8.png b/www/images/lectures/aes/aes_8.png new file mode 100644 index 0000000..34a945a Binary files /dev/null and b/www/images/lectures/aes/aes_8.png differ diff --git a/www/personal_data.html b/www/personal_data.html index c4997c4..0d28948 100644 --- a/www/personal_data.html +++ b/www/personal_data.html @@ -65,6 +65,7 @@

Закон "О персональных данных"