Криптология

skzi

Модернизация СТБ 34.101.27

05.05.2017 Администратор

Действующий стандарт СТБ 34.101.27 определяет требования к программным СКЗИ (средствам криптографической защиты информации). Проект Skzi, открытый нами на площадке Github, сопровождает разработку новой редакции СТБ 34.101.27.

В новой редакции мы хотим:

  1. Ввести требования безопасности не только к программным, но и к аппаратным СКЗИ. 
  2. Уточнить классификацию СКЗИ, ввести новые классы (по сути, уровни безопасности).
  3. Ввести пакеты – опциональные группы консолидированных тематических требований.
  4. Уточнить действующие требования, учитывая практику применения СТБ 34.101.27.

Мы считаем, что требование безопасности должно быть компромиссом между заказчиком, разработчиком и экспертом.

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

Разработчику СКЗИ важно, чтобы требования были понятны и технологически реализуемы. Разработчик не принимает декларации типа "генератор случайных чисел, который используется для построения ключей, должен выдавать реализации независимых случайных величин с равномерным распределением на {0,1}".

esign3.0

ЭЦП 3.0

20.04.2017 Администратор

Мы завершаем серию публикаций, посвященных инфраструктурам открытых ключей и технологии ЭЦП в целом. Вот ссылки на предыдущие части:

  1. ГосСУОК.
  2. Граф доверия.
  3. Динамика доверия.
  4. Аттестаты.
  5. Расширенная ЭЦП.
  6. Процессы выработки и проверки РЭЦП.

Закон об ЭЦП был принят в нашей стране в 1999 году. Раньше чем в США, РФ и странах Западной Европы. Закон решил главную задачу – он объявил электронные документы, т.е. документы с ЭЦП, юридическими значимыми. Для этого было достаточно, чтобы генерация личного ключа и выработка подписи выполнялись с помощью сертифицированного средства ЭЦП.

sig_vfy

Процессы выработки и проверки РЭЦП

20.04.2017 Администратор

[продолжение, предыдущая часть]

Процессы управления расширенной подписью намного сложнее процессов управления обычной.

Во-первых, к процессам выработки и проверки добавляется процесс дополнения подписи новыми неподписанными атрибутами. Дополнение, как мы уже говорили, может выполнять не только подписант, но и верификатор. Дополняемые атрибуты – это в основном аттестаты, которые облегчают проверку подписи или других аттестатов. 

Во-вторых, усложняется и детализируется процесс выработки подписи (см. рисунок). Вырабатывать подпись средству ЭЦП помогает специальная программа. Она передает средству документ, который требуется подписать, организует взаимодействие между средством и подписантом. В совокупности средство ЭЦП и программа составляют систему выработки подписи. С этой системой, в свою очередь, взаимодействует прикладная программа. Именно здесь готовится подписываемый документ, формируются атрибуты, аттестаты и прочие данные, необходимые для выработки РЭЦП. Подготовленные данные передаются системе. Перечень передаваемых данных определяется политикой выработки подписи. Политика описывается специальным документом, задается конфигурационными файлами прикладной программы или жестко фиксируется в ее коде. Политика определяет формат подписи (CAdES, XAdES или PAdES), задает профиль, определяет размещение подписи (вложенная, обертывающая или отделенная).

В-третьих, усложняется процесс проверки подписи.

ades

Расширенная ЭЦП

19.04.2017 Администратор

[продолжение, предыдущая часть]

Электронная цифровая подпись (ЭЦП) предназначена для контроля целостности и подлинности сообщений. Автор сообщения использует свой личный ключ для выработки ЭЦП, а связанный с личным ключом открытый ключ используется другими сторонами для проверки ЭЦП. При правильном управлении ключами корректность проверяемой подписи означает, что она была выработана владельцем личного ключа и после этого сообщение не изменялось. Только владелец личного ключа может выработать корректную ЭЦП, что не позволяет ему отказаться от авторства сообщения и может быть использовано другими сторонами для доказательства такого авторства.

Мы привели цитату из СТБ 34.101.45 (Bign). Кратко сказанное означает, что ЭЦП – это доказательство целостности и подлинности сообщения (документа). Доказательство, от которого нельзя отказаться.

В современной криптографии имеется разветвленная система доказательств различных фактов и свойств. От доказательства хранения файла на облачном сервере до доказательства вычислительной работы (proof-of-work) в Bitcoin. ЭЦП строится как доказательство владения личным ключом применительно к подписываемому документу. Во многих случаях, одним из которых является Bign, ЭЦП – это доказательство с нулевым разглашением: подпись не содержит информации о личном ключе.

Личный ключ – это уникальный идентификатор подписанта в цифровом мире, открытый ключ – это ссылка на личный. Фраза "при правильном управлении ключами" из приведенной цитаты очень важна.

val_data

Аттестаты

18.04.2017 Администратор

[продолжение, предыдущая часть]

Аттестат – это утверждение, заверенное электронной цифровой подписью службы ИОК или зафиксированное во внутреннем журнале службы. Это утверждение о стороне ИОК или о данных, циркулирующих в ИОК, в том числе о других аттестатах. Проводя аналогию с реальным миром, аттестат – это справка. Справка о чем угодно: о человеке, об организации, о другой справке. Система аттестатов – это сложная разветвленная бюрократия, аналогом которой собственно и является ИОК государственного уровня.

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

На рисунке приводится классификация аттестатов, рассмотренных выше и определяемых далее.

Сертификат открытого ключа (СОК) связывает имя Алисы с ее личным ключом. Как мы уже говорили, личный ключ уникально идентифицирует Алису в цифровом мире. Поэтому, продолжая аналогию со справками, СОК – это цифровой паспорт Алисы. Или даже ее пропуск в цифровой мир. Кстати, перед выпуском пропуска Регистрационный центр (еще одна служба ИОК) обычно проверяет паспортные данные Алисы, и речь при этом идет не о цифровом, а об обычном бумажном паспорте.

Бумажный паспорт является серьезным долговременным аттестатом. В период его действия Алиса может получать временные полномочия, и эти полномочия будут отражаться в ее краткосрочных аттестатах.

dyn_trust

Динамика доверия

18.04.2017 Администратор

[продолжение, предыдущая часть]

Доверие не статично. Рут доверяет Алисе ограниченно долго, с момента t1 до момента t2. Например, с момента приема на работу и до окончанияконтракта. Отрезок [t1,t2] указывается в сертификате A(R) и называется сроком действия. Интересно, что сертификат X.509 спроектирован так, что момент выпуска в нем не фиксируется. Обычно предполагается, что сертификат выпущен в момент t1.

Отрезок доверия [t1,t2] также не статичен. Алиса может уволиться в момент t3 > t2 или потерять в этот момент свой личный ключ. В таких ситуациях отрезок доверия должен быть сокращен до [t1,t3]. Как это сделать? Ведь сертификат A(R) уже выпущен, забрать его нельзя. Мы сталкиваемся с общей особенностью цифрового мира – опубликованные данные бессрочны, "рукописи не горят".

Если нельзя отменить публикацию, то давайте опубликуем опровержение. Так и поступает Рут. Рут регулярно (например, ежедневно) публикует объявление об отзыве. В нем Рут перечисляет номера отозванных сертификатов, ранее им выпущенных, указывает время отзыва. Рут фиксирует время публикации текущего и следующего объявлений, подписывает объявление.  Объявление называется списком отозванных сертификатов (СОС). По последнему СОС Боб определяет текущий отрезок доверия сертификата Алисы.

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

graph_of_trust

Граф доверия

14.04.2017 Администратор

[продолжение, предыдущая часть]

Зед, Рут, Алиса, другие стороны ИОК генерируют личные, только им известные,ключи. Ключи, вообще говоря, уникальны, и эта уникальность является выражением индивидуальности сторон в цифровом мире. Важно, что ключи секретны: разгласив свой ключ, Алиса позволит любой другой стороне скопировать свою индивидуальность.

По личному ключу Алиса строит открытый ключ. Открытый ключ вместе с именем Алисы и другими реквизитами подписывается Рутом, и в результате получается сертификат. Алису (A) называют субъектом сертификата, Рута (R) – эмитентом. Выпуск сертификата обозначим как R → A. Боб (B) также получает сертификат у Рута, сертификат Руту выдает Зед (Z), предварительно Зед выпускает сертификат самому себе:

R → B, Z → R, Z → Z.

Сертификат является видом электронного документа, т. е. документа с подписью. Доверие к стороне переносится на документы, подписанные этой стороной, и, наоборот, доверие к стороне возникает из доверия к ее сертификату. Доверяя Зеду, мы доверяем выпущенному Зедом сертификату Рута и, как следствие Руту. Доверяя Руту, мы доверяем Алисе и Бобу. Доверяя Алисе и Бобу, мы доверяем подписанным Алисой и Бобом документам. Как видим, доверие транзитивно.

Построим граф доверия, в котором вершины – это стороны ИОК, а дуги связывают эмитентов с субъектами.

bpki

ГосСУОК

07.04.2017 Администратор

Ахиллесовой пятой криптографии с открытыми ключами является, по выражению В. Столлингса, управление этими самыми ключами. Ключи должны распространяться по так называемым аутентифицированным каналам связи (АКС): получатель Боб должен иметь возможность проверить, что ключ отправлен Алисой (подлинность) и что ключ не был изменен во время передачи (целостность). Важно, что Алисе и Бобу не нужен дорогостоящий секретный канал связи (СКС), который дополнительно обеспечивает конфиденциальность ключей. Отказ от СКС в пользу АКС и есть суть революции, состоявшейся в криптографии в 1970-х годах. Революцию начали У. Диффи и М. Хеллман, продолжили разработчики RSA. И протокол Диффи – Хеллмана, и криптосистема RSA фактически являются инструментами поднятия АКС до СКС. 

Не следует понимать АКС буквально. Это не физический канал связи, а скорее интерфейс, концепция. Для организации АКС Алиса и Боб прибегают к сервисам, которые принято называть услугами доверия. Сервисы предоставляют специальные службы (центры, серверы)   поставщики услуг доверия.

Последний термин является калькой с английского Trust Service Provider. Интересно, что англоязычный термин претерпел несколько транформаций. Прежде было принято говорить Trusted Service Provider (доверенный поставщик  услуг), а еще раньше – Trusted Third Party (третья доверенная сторона). Термин Trust Service Provider кажется наиболее удачным.

bee2evp

Bee2evp: плагин для OpenSSL

21.12.2016 Администратор

Почти все криптографические алгоритмы и протоколы, стандартизированные в нашей стране, реализованы в библиотеке Bee2. Это общедоступная библиотека, опубликованная на платформе GitHub два года назад. За прошедшие два года Bee2 стала интерпретироваться криптографической общественностью как эталонная программная реализация национальной криптографии.

Но криптографическая инфраструктура нашей страны не исчерпывается алгоритмами и протоколами. Имеется довольно большой массив, так называемых, форматных стандартов: СТБ 34.101.17 (запросы на выпуск сертификата), СТБ 34.101.19 (сертификаты открытого ключа, списки отозванных сертификатов), СТБ 34.101.23 (CMS), СТБ 34.101.26 (OCSP), СТБ 34.101.67 (атрибутные сертификаты).

Управление форматами – это довольно трудная задача. Трудная из-за многообразия форматов и их внутренней сложности. Сложность определяется как большим количеством форматных полей, так и большим числом вариантов их комбинирования. Целевые форматы описываются на языке АСН.1. Этот язык позволяет задать структуру полей, типы полей, атрибуты полей. Варианты комбинирования появляются из-за того, что поля могут описываться различными способами (идет речь о конструкции CHOICE) и что поля могут опускаться (конструкция OPTIONAL).

Известный криптографический тезис гласит: "сложность – главный враг безопасности". Из-за сложности форматов постоянно возникают уязвимости в различных криптографических продуктах.

safe(bee2)

Регуляризация Bee2

21.12.2016 Администратор

В классических постановках задач криптоанализа противник наблюдал за выходами криптографического алгоритма и частично знал его входы. В современной криптографии потенциал противника сильно вырос. Сначала ему разрешили выбирать входы (сразу или адаптивно, по мере поступления выходов), затем открыли доступ к побочным каналам. По побочным каналам противник получает дополнительную информацию о ходе выполнения криптоалгоритма. Основные побочные каналы: время выполнения алгоритма, профиль потребляемого в ходе выполнения напряжения. Данные из побочного канала могут коррелировать с ключами, что облегчает противнику их восстановление. Повышение потенциала противника объясняется усилением требований к криптографическим устройствам в связи с их эксплуатацией в потенциально агрессивной среде.

Для защиты от атак по побочным каналам (точнее, снижения пропускной способности каналов) в криптоустройствах применяют различные защитные решения. Так, если речь идет о программах, защита состоит в регуляризации. Регулярные вычисления — это "равномерные" вычисления, всегда одни и те же при обработке различных данных фиксированной размерности.

auth

Аутентификация

02.09.2016 Администратор

Многие из нас участвовали в конференциях и семинарах. Регистрируясь на конференции, я подхожу к специальному столику, где получаю бэдж со своей фамилией и логотипом конференции. Хорошая практика – посещать мероприятия конференции, прикрепив бэдж на лацкан пиджака или повесив на груди. Тогда другие участники смогут идентифицировать меня, полагаясь на проверку, проведенную при регистрации.

К счастью, эта проверка обычно является очень мягкой. Участник просто сообщает свое имя, а регистратор, представляющий оргкомитет, проверяет наличие имени в списках. Проверку можно усилить (к всеобщему неудовольствию участников), если проверять их первичные (паспорт) или вторичные (командировочное предписание) удостоверения. Можно пойти по-другому пути: при предварительной регистрации на сайте конференции согласовывать с участниками секретные коды (пароли) и проверять их знание непосредственно у столика.

После регистрации я могу пройти к другому столику. Здесь после проверки бэджа мне выпишут билеты на объекты или мероприятия конференции. Билеты могут быть именными (в них вписано мое имя) или на предъявителя. Перед выпуском билета меня снова могут попросить сообщить предварительно согласованный код.

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

bash

Алгоритмы хэширования Bash

21.04.2016 Администратор

В информационных системах республики для управления электронными цифровыми подписями (ЭЦП) используется СТБ 34.101.45 «Информационные технологии и безопасность. Алгоритмы электронной цифровой подписи на основе эллиптических кривых».  Этот стандарт определяет три уровня стойкости: l = 128, l = 192 и l =256. Для того, чтобы поддержать уровень l, требуется использовать функцию хэширования с 2l-битовыми значениями. СТБ 34.101.31 определяет 256-битовую хэш-функцию belt-hash, но 384- и 512-битовые функции хэширования пока в нашей стране не стандартизованы. Отметим, что ЭЦП на высоких уровнях стойкости востребованы уже сейчас. Например, сверхнадежные подписи нужны для построения долговременных архивных хранилищ.

Для поддержки ЭЦП на уровнях l = 192 и l = 256 было решено разработать  семейство алгоритмов хэширования. Это семейство получило рабочее название Bash (Hash c заменой H на B). 

Алгоритмы Bash строятся по схеме sponge (губка),  предложенной Г. Бертони, Дж. Дэменом, М. Питерсом и Ж. Ван Ашем.  Базовым композиционным элементом Bash является шаговая функция Bash-f. Эта функция обновляет хэш-состояние по очередному блоку обрабатываемых данных. Функция строится с помощью логических операций (¬, ∨, ∧) над 64-разрядными словами, циклических сдвигов этих слов и поразрядных исключающих сложений (⊕).

bee2

Библиотека Bee2

28.04.2015 Администратор

Криптографические программные библиотеки должны не только точно и эффективно реализовывать криптографические алгоритмы и протоколы, но и соответствовать дополнительным принципам безопасности. Попытка сформулировать и реализовать эти принципы привела к созданию библиотеки Bee2. На сегодняшний день в библиотеке реализованы алгоритмы и протоколы национальных криптографических стандартов (СТБ 34.101.31, 45, 47, 60, 66), а также алгоритмы электронной цифровой подписи, стандартизированные в РФ и Украине.Обсудим принципы построения Bee2.

Переносимость. Библиотека написана на языке Си, без ассемблерных вставок и поэтому компилируется практически на любой аппаратно-программной платформе с помощью средств GCC. Расширения C99 не использованы, и поэтому библиотека компилируется также в среде Visual Studio любой версии.

Контроль памяти. В низкоуровневые функции библиотеки могут передаваться указатели state и stack. Эти указатели ссылаются на память, в которой размещаются состояния алгоритмов / протоколов и могут размещаться локальные переменные. Память может содержать критические объекты (ключи), и поэтому взята под контроль. Функции объявляют о потребностях в памяти через дополнительные сервисные функции (они имеют суффиксы keep и deep). Высокоуровневые функции обрабатывают объявления и определяют общий объем памяти для состояния и стека. Интересно, что объем памяти оказывается довольно небольшим.

otp

Одноразовые пароли

19.03.2015 Администратор

В массовых информационных системах для проверки подлинности клиентов перед серверами чаще всего используется парольная аутентификация. Пароль – это классический секрет, c обработкой которого может справиться обычный человек. Пароль достаточно легко запомнить, для его хранения не нужны дополнительные устройства, пароль легко ввести практически в любой программно-аппаратной среде. Но парольная аутентификация обладает и существенными недостатками. Во-первых, пользователь не способен запомнить сильный высокоэнтропийный секрет. Пароль – это всегда слабый секрет, и у противника появляется возможности угадать его. Во-вторых, парольная аутентификация теряет надежность в агрессивной среде, т. е. там, где противник может перехватывать вводимые пользователем данные.

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

todo

Что дальше

17.07.2014 Администратор

В 2007-2014 гг. в республике введена в действие серия стандартов в области криптографической защиты информации. Стандартизированы алгоритмы шифрования, имитозащиты, хэширования и управления ключами (СТБ 34.101.31), разделения секрета (СТБ 34.101.60), генерации псевдослучайных чисел (СТБ 34.101.47), электронной цифровой подписи и транспорта ключа (СТБ 34.101.45), протокол TLS (СТБ 34.101.65), протоколы формирования общего ключа на основе эллиптических кривых (СТБ 34.101.66). Стандартизированные алгоритмы и протоколы соответствуют лучшим зарубежным аналогам, а в некоторых случаях опережают эти аналоги или не имеют таковых. Разработанные стандарты начинают широко применяться при построении республиканских систем защиты информации. Известные примеры – запускаемая Государственная система управления открытыми ключами (ГоСУОК) и проектируемая Единая система идентификации физических и юридических лиц (ЕСИФЮЛ).

 

 

 

В основном разработка стандартов велась в нашей организации (НИИ прикладных проблем математики и информатики). Следует подчеркнуть, что каждый из стандартов не является отдельной разработкой. В стандарте, по сути, фиксируются результаты научных исследований в определенных областях криптологии. Базовые научные исследования проводились в НИИ на протяжении последних 15-20 лет.

Криптографические стандарты определяют национальную криптографическую инфраструктуру. Схожие инфраструктуры созданы  в РФ и Южной Корее.

btls2

Завершение стандартизации TLS

19.06.2014 Администратор

В сентябре вводится в действие СТБ 34.101.65. Этот стандарт определяет протокол защиты транспортного (коммуникационного) уровня, известный как протокол TLS (Transport Layer Security) версии 1.2. Стандарт основан на спецификации RFC5246.

TLS обеспечивает аутентификацию сторон протокола, конфиденциальность и контроль целостности передаваемых между сторонами данных. TLS встраивается в стек коммуникационных протоколов поверх транспортного уровня и обеспечивает защиту данных этого уровня. Для организации защиты используются криптографические алгоритмы, которые оформляются в виде так называемых криптонаборов. В СТБ 34.101.65 определены криптонаборы, основанные на действующих криптографических стандартах СТБ 34.101.31, 45, 47.

Основным в криптонаборе является алгоритм (а по сути протокол) формирования общего ключа. В базовой спецификации RFC5246 алгоритмы формирования общего ключа описываются с учетом сложившейся практики, с привязкой к RSA, DSA и другим конкретным криптографическим алгоритмам.

bake

Протоколы формирования общего ключа

27.05.2014 Администратор

В 2014 году в Республике Беларусь вводятся в действие два новых стандарта в области криптографической защиты информации. Это СТБ 34.101.65 «Информационная технология и безопасность. Протокол защиты транспортного уровня (TLS)» и СТБ 34.101.66 «Информационные технологии и безопасность. Протоколы формирования общего ключа на основе эллиптических кривых». Если в предыдущих стандартах определялись криптографические алгоритмы, то в новых – криптографические протоколы – интерактивные алгоритмы, которые выполняют несколько сторон-участ­ни­ков, обмениваясь между собой сообщениями, содержащими промежуточные результаты вычислений.

СТБ 34.101.66 (условное название BAKE, от AKE – Authenticated Key Establishment) определяет протоколы, которые позволяют двум сторонам сформировать общий, только им известный, ключ. Ключ формируется так, что ни одна из сторон не может определить его значение самостоятельно, без данных от противоположной стороны.

Протоколы СТБ 34.101.66 построены по схемам MQV, STS и PACE. Схема определяет общий вид протокола и не содержит исчерпывающих деталей, обеспечивающих совместимость различных его реализаций. В СТБ 34.101.66 зафиксированы все базовые криптографические алгоритмы схем, окончательно определены действия сторон, уточнены форматы передаваемых сообщений. В схемы MQV и STS встроены алгоритмы электронной цифровой подписи (ЭЦП), схожие с алгоритмами СТБ 34.101.45. В схеме STS выработка одноразовой подписи совмещена с расчетом одноразовых открытых ключей.

RSA vs STB

О стойкости

16.03.2014 Администратор

Как известно, криптографическая стойкость RSA основывается на сложности факторизации целых чисел. Для полной компрометации систем типа RSA-l достаточно разложить на множители общедоступное l-битовое число, которое называют модулем. Модуль, как правило, является произведением двух различных простых.

Решето числового поля (Number Field Sieve, NFS) является самым эффективным на сегодняшний день методом факторизации целых чисел. NFS – субэкспоненциальный метод. С его помощью можно достаточно  быстро факторизовывать 512-битовые модули, которые использовались в системах защиты информации еще совсем недавно. Действующий рекорд – факторизация модуля RSA-768 – также установлен с помощью NFS.

Стойкость алгоритмов электронной цифровой подписи, определенных в СТБ 1176.2-99, основывается на сложности дискретного логарифмирования в подгруппах мультипликативных групп простых полей. Поле задается l-битовым модулем p, порядок подгруппы является r-битовым числом q.

Для логарифмирования могут применяться либо универсальные методы (они годятся для любой циклической группы), либо снова метод решета числового поля. Сложность универсальных методов определяется величиной q, лучшие из них выполняются за экспоненциальное время порядка 2r/2.

bels2

Окончательный стандарт по разделению секрета

28.08.2013 Николай Шенец

Завершаются работы по переводу предварительного стандарта по разделению секрета СТБ П 34.101.60 (bels) в статус стандарта. Получены отзывы заинтересованных организаций на проект СТБ 34.101.60 "Информационные технологии и безопасность. Алгоритмы разделения секрета". Проект стандарта опубликован на нашем сайте для ознакомления. Планируется, что СТБ 34.101.60 будет введен в действие в конце текущего года.

Подведем итоги и перечислим характеристики разработанного стандарта.

  1. Поддерживается разделение секрета длиной l ∈ {128,192,256}. Для секретов иной длины предложено два способа их разделения.
  2. Стандарт определяет алгоритмы разделения и восстановления секрета для (t,n)-пороговой схемы, т.е. любые t из n пользователей могут восстановить секрет, а в меньшем количестве — нет.
  3. Длина частичных секретов пользователей совпадает с длиной секрета.
  4. Знание злоумышленником любых t - 1 частичных секретов не дает ему никакой информации о значении секрета, т.е. это равносильно тому, что у него нет ни одного частичного секрета и необходимо выполнять полный перебор.
  5. Полностью изменены алгоритмы генерации параметров по сравнению с СТБ П 34.101.60-2011. Определено три алгоритма генерации параметров: алгоритм генерации общего открытого ключа, алгоритм генерации открытых ключей пользователей и алгоритм генерации открытого ключа пользователя по идентификатору.

btls

Стандартизация TLS

05.06.2013 Администратор

Для защиты соединений между клиентом и сервером в сети Интернет в большинстве случаев применяется протокол TLS (Transport Layer Security). TLS обеспечивает взаимную аутентификацию сторон протокола, конфиденциальность и контроль целостности передаваемых между сторонами данных. Последняя на сегодняшний день редакция TLS определена в RFC 5246. Стандартизация этой редакции завершается сейчас в Республике Беларусь. Предполагается, что в текущем году будет введен в действие стандарт, определяющий как собственно TLS, так и использование в TLS отечественных криптографических алгоритмов. Рабочее название стандарта – BTLS.

TLS является объединением нескольких субпротоколов, разбитых на два уровня. На нижнем уровне действует протокол Record, обеспечивающий шифрование и имитозащиту данных. На верхнем уровне действуют 3 протокола, основным из них является протокол Handshake. С помощью Handshake стороны согласуют применение определенных криптографических алгоритмов, формируют общий ключ, строят ключи для протокола Record, проводят аутентификацию друг друга. Применяемые алгоритмы оформляются в TLS в виде криптонабора (cipher suite).

bign2

Окончательный стандарт ЭЦП

07.03.2013 Администратор

Завершаются работы по переводу предварительного стандарта электронной цифровой подписи СТБ П 34.101.45 (bign) в статус стандарта. Проект СТБ 34.101.45 «Информационные технологии и безопасность. Алгоритмы электронной цифровой подписи и транспорта ключа на основе эллиптических кривых» разослан в заинтересованные организации, опубликован на нашем сайте для обсуждения. Планируется, что СТБ 34.101.45 будет введен в действие в текущем году.

Подведем итоги и перечислим характеристики разработанного стандарта.

  1. Поддерживаются три уровня стойкости. Выбор уровня определяется параметром безопасности l ∈ {128, 192, 256}. На уровне l поддерживается паритет стойкости с l-битовыми cимметричными криптосистемами.
  2. Алгоритмы ЭЦП применяются не к самому сообщению, а к его хэш-значению. Это упрощает встраивание реализаций алгоритмов ЭЦП в распространенные программные интерфейсы. Допускается смена хэш-функции.
  3. Длина ЭЦП составляет 3l битов. Для сравнения, в стандартах ECDSA, ГОСТ Р 34.10-2012, ДСТУ 4145-2002, EC-KDSA вырабатываются 4l-битовые ЭЦП. «Обрезка» подписи ускоряет ее проверку.
  4. Алгоритмы ЭЦП основаны на схеме Шнорра – одной из наиболее эффективных и обоснованных схем ЭЦП.

deterministic signature

Детерминированная ЭЦП

18.10.2012 Администратор

Предварительный стандарт СТБ П 34.101.45 определяет алгоритмы электронной цифровой подписи на основе эллиптических кривых. Алгоритм выработки подписи Sign берет на вход долговременные параметры params, которые описывают группу точек эллиптической кривой, личный ключ d подписывающей стороны, сообщение X и возвращает его подпись. Корректность подписи может быть проверена любой другой стороной на открытом ключе Q, соответствующем личному ключу. 

Алгоритм Sign является вероятностным, в нем используется случайный одноразовый ключ k. В СТБ П 34.101.45 сказано, что «для создания… одноразовых ключей может быть использован физический генератор случайных чисел… или алгоритм генерации псевдослучайных чисел с секретным параметром».

Физический генератор – это устройство Dev, которое «оцифровывает» стохастические физические процессы, как правило, шум в полупроводниковых приборах. Разработчику средства ЭЦП требуется, по крайней мере, приобрести Dev, встроить Dev, контролировать работу Dev. Все это вызывает удорожание и усложнение средства ЭЦП. Имеются трудности с размещением Dev на микроустройствах.

Алгоритм генерации псевдослучайных чисел берет на вход секретный ключ K, уникальную синхропосылку S и возвращает k. Как правило, алгоритмы генерации строятся на основе функций хэширования.

GOST S-boxes

Узлы замены ГОСТ 28147-89

08.08.2012 Администратор

Базовым элементом блочных криптосистем являются узлы замены – заданные таблично преобразования двоичных слов малой длины. Узлы замены называют также S-блоками или даже S-боксами. (Последнее название – калька с английского S-box – в совокупности с раундами шифрования кажется нам боксерским перебором.) Узлы замены отвечают за установление сложных нелинейных зависимостей между символами открытых текстов, шифртекстов и ключей. Их использование в криптосистемах реализует принцип усложнения (confusion) К. Шеннона.

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

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

С момента принятия ГОСТ 28147 научно-техническая неопределенность, связанная с выбором узлов замены, заполнялась слухами и домыслами. Ходили разговоры о секретных критериях, известных только разработчикам ГОСТ. Естественно, что эта неопределенность снижала доверие к криптосистеме, затрудняла применение ГОСТ на практике.

Все это происходило одновременно с открытием принципов выбора S-блоков DES.

citizen card 2

Электронная гражданская карта - 2

07.05.2012 Администратор

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

Имеется много мнений относительно способов разработки и внедрения карты. Наша позиция состоит в следующем.

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

Должна быть налажена система сертификации карт различных производителей, в том числе контроль совместимости карт.

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

Спецификация архитектуры безопасности карты должна определять следующие механизмы:

  • парольная аутентификация владельца карты;
  • защита соединения между картой и терминалом;
  • аутентификация карты перед терминалом;
  • аутентификация терминала перед картой;
  • анонимная идентификация карты в информационной системе.

В спецификации должны быть зафиксированы обязательные объекты карты (в том числе форматы объектов) и командный интерфейс, соответствующий ISO 7816.

Nash machine

Машина Нэша

07.03.2012 Администратор

 Агентство национальной безопасности США (National Security Agency, NSA) в феврале 2012 года опубликовало два письма известного математика, лауреата нобелевской премии по экономике, героя голливудского фильма "Игры разума" Джона Нэша.

Письма  датированы 1955 годом. Нэш пишет, что является специалистом по теории игр, интересуется криптографией и хотел бы поделиться с NSA идеями построения надежных шифровальных машин. Напомним, что аббревиатуру NSA до недавнего времени шутливо расшифровывали как No Such Agency – Нет Такого Агентства – настолько секретной была эта организация. Не удивительно, что Нэш посылает письмо не напрямую, а через посредника – американский исследовательский центр RAND, который по сведениям знакомых Нэшу математиков сотрудничает с NSA.

Как известно, Клод Шеннон считал, что совершенная криптосистема должна противостоять атакам противника, который знает статистические свойства открытых текстов, перехватывает шифртексты и  обладает неограниченными вычислительными возможностями по их анализу. Нэш считает по-другому. Противник знает и шифртексты и открытые тексты и вообще знает все, кроме ключа, но его вычислительные ресурсы ограничены.

crypto/std

О криптографической стандартизации в РБ

27.02.2012 Администратор

Как известно, до конца 70-х годов прошлого века криптография являлась закрытой научной дисциплиной. В частности, в Советском Союзе действовал всего один открытый криптографический стандарт – ГОСТ 28147-89. В Беларуси криптографическая стандартизация началась в 1999 году, когда были приняты СТБ 1176.1-99 (стандарт на функцию хэширования) и СТБ.1176.2-99 (стандарт на выработку и проверку электронной цифровой подписи). С тех пор в республике был разработан еще ряд нормативных документов в области криптографии. Документы оформлялись в виде предварительных государственных стандартов (СТБ П) или руководящих документов (РД РБ).

К сожалению,  в определенный момент темп стандартизации был потерян. Возникло отставание по следующим позициям:

Не были охвачены все области стандартизации. Часть первоочередных стандартов (например, стандарты на криптографические протоколы) так и не была принята. Осталась неохваченной такая важная область, как криптография на эллиптических кривых.

Не были завершено принятие ряда стандартов. Некоторые разработанные нормативные документы так и остались проектами. В 2006–2007 гг. была принята серия предварительных криптографических стандартов, которые являлись идентичными переводами международных стандартов ISO/IEC, стандартов США и корпоративных стандартов серии PKCS. В 2007 г. действие почти всех этих предстандартов было приостановлено в связи с низким качеством перевода.

Не были зафиксированы расширения стандартов для поддержки отечественной криптографии.

bit vs trit

Троичная система счисления

30.12.2011 Администратор

У меня на столе лежит книга «Справочник программиста. Том первый», выпущенная в 1963 году в Ленинграде Государственным союзным издательством судостроительной промышленности. В этой книге есть глава «Вычислительная машина «Сетунь». Из этой главы можно узнать, что машина «Сетунь» выполняет 5500 сложений или 3000 сложений в секунду, ввод данных осуществляется с бумажной перфоленты со скоростью 800 цифр в секунду, в качестве ОЗУ используются ферритовые сердечники, в качестве ПЗУ – магнитный барабан. 

Но не это главное. Самое интересное  –  это то, что в «Сетуни» для представления чисел используется не двоичная, а троичная система счисления! Вместо привычных битов используются триты!

Точнее, в «Сетуни» используется сокращенная троичная система счисления. Это значит, что тритами являются цифры -1, 0, 1. Цифра -1 кодируется символом 1.

sec reqs

Требования безопасности

15.12.2011 Администратор

В 2007-2009 гг. в республике действовал предварительный стандарт СТБ П 34.101.27. В 2011 г. этот предстандарт был переведен в статус стандарта СТБ 34.101.27 «Информационные технологии и безопасность. Требования безопасности к программным средствам криптографической защиты информации».

Корректировка СТБ П 34.101.27 проводилась по следующим направлениям.

  1. Требования безопасности к программным средствам криптографической защиты информации (ПСКЗИ) изложены не в виде профиля защиты согласно СТБ 34.101.1–3 (Общие критерии, ОК), а в более ясном для разработчиков и потребителей виде, который лучше подходит для криптографических средств.
  2. В СТБ П 34.101.27 к ПСКЗИ отнесены программные средства, которые выполняются на компьютерах общего назначения (персональных компьютерах, серверах). В СТБ 34.101.27 класс программно-аппаратных платформ ПСКЗИ расширен, дополнительно учтены смарт-карты, токены, мобильные устройства.
  3. Введено 2 класса ПСКЗИ. К средствам первого класса выдвигается базовый набор требований, к средствам второго – усиленный.
  4. В СТБ П 34.101.27 для защиты объектов разрешается использовать только криптографические методы. При этом для защиты ключа требуется использовать другой ключ. Если последний ключ также нужно защищать, то для этого должен использоваться новый ключ и так далее.

CBC vs TLS

Атака на TLS

11.11.2011 Администратор

19 сентября 2011 года Интернет облетела новость: «Хакеры взломали протокол SSL, который используется для защиты миллионов сайтов». Речь идет о том, что на конференции Ekoparty исследователи Риццо и Дуонг описали атаку на протокол TLS, в ходе которой можно определить секретные данные S (например, пароли доступа в виде куки), пересылаемые клиентом серверу.

Для проведения атаки требуется выполнение следующих условий:

  1. Для шифрования используется блочный алгоритм в режиме CBC.
  2. Противник знает, какая синхропосылка будет использоваться при шифровании очередного пакета, в том числа пакета, содержащего S. Для этого требуется, чтобы использовался TLS версии 1.0 или SSL любой версии. В этих протоколах синхропосылка очередного пакета определяется как последний блок шифртекста при обработке предыдущего пакета.
  3. Противник имеет возможность навязывать данные, которые будут следовать перед S при зашифровании. Для реализации навязывания Риццо и Дуонг предложили использовать уязвимости технологии WebSockets, которая часто используется для загрузки дополнительного контента с сайта B при обращении к сайту А. Детали можно найти в Интернет по адресу http://www.educatedguesswork.org/2011/09/security_impact_of_the_rizzodu.html
  4. Противник перехватывает пакеты TLS.

Пусть P – навязываемые данные. Выбирая длину P, противник добивается того, что сообщение P || S будет разбито на блоки X1, X2,…, причем первый октет P будет последним октетом X1.

CBC vs CFB

Какой режим выбрать?

20.10.2011 Администратор

Как известно, при шифровании с помощью блочной криптосистемы F открытый текст разбивается на блоки X1, X2,..... К каждому из блоков применяется преобразование зашифрования FK, действие которого определяется секретным ключом K. Из блоков Y1 = FK(X1), Y2 = FK(X2),... составляется шифртекст. Такой способ использования F в русскоязычной литературе называется режимом простой замены. В англоязычной литературе принято говорить о режиме ECB (Electronic Codebook).

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

В США при введении DES был выпущен стандарт FIPS PUB 81, в котором определялись дополнительные режимы CBC (Cipher Block Chaining), CFB (Cipher Feedback) и OFB (Output Feedback), лишенные недостатков ECB. Со временем наибольшее распространение из этих режимов получил CBC. В частности, шифрование CBC по умолчанию используется в протоколах SSL/TLS, которые широко применяются для защиты каналов Интернет.

Популярность CBC до конца непонятна.

non-secret encryption

Несекретное засекречивание

18.09.2011 Администратор

Как известно, Алиса и Боб обмениваются сообщениями по открытым каналам связи, которые могут прослушиваться противником Виктором. Боб посылает Алисе зашифрованное сообщение. Возможно ли организовать шифрование таким образом, чтобы Алисе и Бобу не пришлось предварительно договариваться об общем секретном ключе? На первый взгляд кажется, что это невозможно. Действительно, если Алиса и Боб не обладают общим секретным ключом, то Виктор знает те же секреты Боба, что и Алиса. Следовательно, если Алиса может читать шифртексты Боба, то это вполне способен сделать и Виктор.

Мы сказали секреты Боба и поняли, что Боб не может переслать свой секрет Алисе в тайне от Виктора. А Алиса? Алисе нет необходимости отсылать свой секрет кому-либо. Алиса может попытаться устроить дело так, что все могут зашифровывать и только она сама расшифровывать.

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

В конце 60-х годов прошлого века отчет компании Bell заинтересовал сотрудника Британской секретной службы (CESG) Д. Эллиса. Эллис опубликовал в закрытой печати схему, которая является прототипом современных криптосистем с открытым ключом.

citizen card

Электронная гражданская карта

01.09.2011 Администратор

Как известно, для получения доступа к информационным сервисам гражданин должен быть идентифицирован и аутентифицирован. Для этого используется электронная интеллектуальная карта гражданина (citizen card), по сути «пропуск в цифровой мир». Например, на Тайване каждый гражданин, достигший 18 лет, получает карту, которая открывает ему доступ более чем к 1500 информационным сервисам по принципу «одного окна». Гражданские карты широко распространены в различных странах Европы. В настоящее время в рамках проекта Евросоюза STORK (www.eid-stork.eu) решаются вопросы взаимодействия систем идентификации и аутентификации европейских стран. В США в 2004 году стартовала национальная программа PIV (Personal Identity Verification), в рамках которой разрабатывается национальная идентификационная карта. В РФ в 2012 году планируется массовое внедрение Универсальной электронной карты (www.uecard.ru).

Электронная карта является технологичным криптографическим устройством, которое генерирует и хранит ключи, реализует криптографические алгоритмы и протоколы, проводит аутентификацию. Электронная карта предоставляет высокоуровневым приложениям набор криптографических сервисов. Вызывая эти сервисы, приложения реализуют различные транзакции в информационных системах (например, запрос данных или заполнение форм). Одна и та же карта может использоваться в разных информационных системах, т.е. в разных профилях.

В республике при планировании программ по информатизации акцент делался на создание конкретных информационных систем.

verified vs valid

Что означает корректность ЭЦП?

14.07.2011 Администратор

Как известно, алгоритм проверки ЭЦП принимает на вход документ X, его подпись S и открытый ключ Q подписавшейся стороны. Алгоритм состоит в проверке определенного равенства, в котором задействованы X, S, Q и долговременные параметры алгоритма.

Например, в схеме ЭЦП Шнорра долговременными параметрами являются алгебраическая группа (аддитивная) и некоторый ее элемент G. Открытый ключ Q определяется как d-кратное G, где d -- это личный ключ. Проверочное равенство в схеме Шнорра имеет вид:

φ(X, S0Q + S1G) = S0

где S0, S1 – целые числа – части подписи S; φ – функция хэширования. Элементы G и φ выбираются так, что противнику, который не знает d, вычислительно трудно решить проверочное уравнение относительно S0, S1 при заданном X.

Алгоритм проверки ЭЦП возвращает ответ ДА, если проверочное равенство выполняется, и НЕТ в противном случае.

bign

Стандарт электронной цифровой подписи

11.10.2010 Администратор

В республике действует стандарт СТБ 1176.2-99, который определяет алгоритмы выработки и проверки электронной цифровой подписи (ЭЦП). Вычисления в алгоритмах ведутся в подгруппе G мультипликативной группы поля из p элементов, p – простое. Из-за наличия субэкспоненциальных (от длины p) методов дискретного логарифмирования в таких группах, для обеспечения требуемого уровня криптографической стойкости требуется выбирать достаточно большие p, что существенно  замедляет выработку и проверку подписи.

Для повышения быстродействия в качестве G выбирают группу точек эллиптической кривой. По некоторым оценкам, переход к такой группе ускоряет выработку и проверку ЭЦП не менее чем в 8 раз.

Стандартизация алгоритмов ЭЦП на основе эллиптических кривых закончена в США, Корее, РФ, Украине, странах Евросоюза. Стандартизация ведется и в нашей стране. В 2010 году завершается разработка стандарта "Информационные технологии и безопасность. Алгоритмы выработки и проверки электронной цифровой подписи" с условным названием "bign". Стандарт будет определять алгоритмы ЭЦП на основе эллиптических кривых.

В стандарте планируется введение 3 уровней стойкости, паритетных уровням (длинам ключей) СТБ П 34.101.31-2007. На уровне стойкости l длина ЭЦП будет составлять 3l битов, что меньше, чем у всех  известных аналогов.

belt

Стандарт шифрования и контроля целостности

10.10.2010 Администратор

В 1997 году в США начался конкурс по разработке стандарта шифрования XXI века. Победителем конкурса в 2000 году стал алгоритм блочного шифрования AES (первоначально он назывался Rijndael). В 2001 году AES был стандартизирован.

С небольшим отставанием разработка национального стандарта шифрования велась и в нашей стране. В 2001 году был разработан алгоритм BelT, который, как и AES, выполняет шифрование 128-битовых блоков данных на 256-битовых ключах. Впоследствии BelT был использован для построения нескольких алгоритмов шифрования данных произвольного объема. Были разработаны алгоритмы выработки имитовставки и хэширования, основанные на BelT.

Перечисленные алгоритмы были приняты в 2008 году в виде предварительного стандарта СТБ П 34.101.31-2007 "Информационные технологии и безопасность. Криптографические алгоритмы шифрования и контроля целостности" (pdf).

В настоящий момент ведутся работы по переводу СТБ П 34.101.31-2007 в статус государственного стандарта СТБ 34.101.31. Подготовлена окончательная редакция СТБ 34.101.31, которая дополняет СТБ П 34.101.31-2007 новыми алгоритмами одновременного шифрования и имитозащиты, алгоритмами преобразования (обновления и диверсификации) ключей.

 

Новости
09.10.2017
Белорусско-Индийский мини-семинар
27.09.2017
План семинара осень 2017
23.05.2017
XХII научно-практическая конференция «Комплексная защита информации»
31.03.2017
ITSecurity-2017
22.02.2017
Ввод в действие новой редакции СТБ 34.101.47
21.02.2017
План семинара весна 2017
20.01.2017
Итоги NSUCRYPTO-2016
24.10.2016
План семинара осень 2016
29.08.2016
Ввод в действие СТБ 34.101.77