Ключи шифрования

Ключ шифрования — секретная информация, используемая для шифрования данных. Именно ключ шифрования определяет стойкость алгоритма шифрования.

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

Контроль качества ключей

При генерации ключей как с помощью программно-аппаратного решения Stealthphone Key Hard, так и с помощью программных решений Stealthphone Key Soft или Stealthphone Tell, производится постоянный контроль качества ключей с точки зрения их надежности.

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

Программные генераторы построены на принципе постоянного накопления энтропии – действительно случайной последовательности – и дальнейшего ее использования при выполнении процедуры генерации ключей

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

Классификация ключей

  • Все ключи шифрования делятся на ключи шифрования данных и ключи шифрования ключей. Это значит, что каждый ключ шифрования используется либо исключительно для шифрования данных (включая речь), либо исключительно для шифрования ключей, в частности тех, на которых шифруются данные и речь.
  • Все ключи делятся на долговременные и одноразовые. Долговременные ключи используются неоднократно в течение определенного периода времени; одноразовые ключи используются один раз для шифрования фрагмента данных или речи. К долговременным ключам относятся все ключи шифрования ключей, а также ключи шифрования данных внутри смартфона или компьютера; для долговременных ключей предусмотрены процедуры их замены, плановой или внеплановой – в случае утери или компрометации.
  • Кроме того, ключи шифрования могут быть выстроены в определенную иерархию:
    • На самом верху находится ключ аутентификации, который нигде не хранится и вырабатывается в результате выполнения процедуры аутентификации абонента устройством на основе пароля
      • Далее располагается зашифрованный с использованием ключа аутентификации мастер-ключ. С помощью мастер-ключа шифруются:
        • все ключи шифрования ключей шифрования данных
        • все ключи шифрования данных, хранящиеся в аппаратном шифраторе Stealthphone Hard или мобильном телефоне (планшете).
    • Следующий уровень составляют ключи шифрования ключей шифрования данных. Данные ключи шифруются при помощи мастер-ключа и используются при выработке сеансовых ключей.
    • На нижнем уровне располагаются ключи, при помощи которых шифруются данные. Каждый такой ключ шифруется.
  • Для шифрования речи используются только одноразовые сеансовые ключи, которые уничтожаются в конце разговора; объем речевых данных, шифруемых одним сеансовым ключом, поэтому время одного сеанса зашифрованного разговора также ограничено.
  • Для шифрования передаваемых данных используются только одноразовые ключи; объем данных, шифруемых одним сеансовым ключом, ограничен, т.е. при шифровании, например, файла большого объема, может быть использовано несколько сеансовых ключей.

Хранение долговременных ключей шифрования

Долговременные ключи шифрования хранятся только в зашифрованном виде. В зависимости от используемого продукта, они хранятся либо в аппаратном шифраторе (Stealthphone Hard), либо в программном шифраторе (Stealthphone SoftStealthphone Tell).

Особенности ключевой системы в системе информационной безопасности Stealthphone

В системе Stealthphone защищенный обмен информацией возможен исключительно в рамках одной криптосети (сети Stealthphone).

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

Голосовые данные шифруются с помощью сеансового ключа, который вырабатывается в результате комбинирования ключа, полученного с помощью метода ECDH, и общего для двух абонентов секретного ключа парной связи для шифрования речи.

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

Ключи парной связи шифрования речи для всех абонентов сети Stealthphone можно расположить в квадратной таблице (матрице) размера N×N по следующему правилу:

  • диагональ матрицы содержит нулевые элементы
  • на пересечении строки A и столбца B располагается общий секретный ключ парной связи для шифрования речи абонентов с криптономерами A и B
  • матрица симметрична относительно диагонали.

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

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

Строка матрицы с номером A образует множество всех ключей парной связи для обмена шифрованной информацией абонента с криптономером A с остальными абонентами криптосети. Общее количество ключей парной связи каждого абонента для обмена шифрованной информацией со всеми остальными абонентами сети равно 4×(N – 1), где N — число абонентов сети.

Матрица ключей парной связи сети Stealthphone, а также все остальные ключи абонентов, вырабатывается администратором сети с помощью комплекса Stealthphone Key Soft. Запись ключей в абонентские устройства производится на рабочем месте администратора с помощью комплекса Stealthphone Key, либо самим абонентом с помощью персонального компьютера, с использованием предварительно подготовленного для него администратором массива ключей.

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

Таким образом, начальной загрузки ключей в абонентские устройства может хватить на несколько лет эксплуатации без перезаписи.