поиск по сайту
Принципы и методы КРИПТОГРАФИЧЕСКОЙ защиты данных в устройствах с блочной внутренней структурой

Принципы и методы КРИПТОГРАФИЧЕСКОЙ защиты данных в устройствах с блочной внутренней структурой

Коробов В.В., «ОКБ САПР»

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

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

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

Защищая данные носителей информации с блочной внутренней структурой, необходимо определиться со следующими вопросами:

— какой режим шифрования должен использоваться?

— каким образом обеспечить контроль целостности данных?

— каким образом организовать ключевую систему?

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

— использование традиционных механизмов контроля целостности,

— использование аутентифицированного шифрования.

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

Режимы аутентифицированного шифрования (CCM [1], CS [2], CWC [3], XCBC [4], OCB [5], GCM [6] и подобные) в большей своей части подразумевают, что контроль целостности и обеспечение конфиденциальности будет выполняться совместно в рамках единого криптографического преобразования, что в общем случае не потребует выделения дополнительной памяти для сохранения значений данных, используемых при контроле целостности (значения хеш-функции или КАС). В то время как использование традиционных режимов шифрования данных в устройствах рассматриваемого класса (подробнее см. [7]) совместно с механизмами контроля целостности (HMAC [8], режим выработки имитозащитной вставки ГОСТ 28147-89 [9], CBC—MAC [10] и другие) страдает от этого недостатка. В некоторых случаях это может привести к выделению дополнительных регионов памяти в ущерб общему полезному объему устройства.

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

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

Таким образом, актуальной следует считать задачу дополнения алгоритма шифрования ГОСТ 28147 режимом аутентифицированного шифрования.

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

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

— ключи используется некоторое, заранее установленное время (модель с конечным временем — МКВ);

— ключи используются для обработки некоторого, заранее установленного объема данных (модель с конечным ресурсом — МКР).

Наиболее распространенными методами организации ключевой системы являются:

— использования единственного ключа шифрования (мастер-ключа), применяемого для шифрования всех блоков данных;

— использования производных ключей, применяемых для шифрования блоков данных;

— генерация случайного ключа для шифрования каждого блока данных.

Рассмотрим достоинства и недостатки каждого из методов.

Таблица 1 — Достоинства и недостатки методов организации ключевой системы

Метод организаций ключевой системы

Достоинства

Недостатки

Использование мастер-ключа

Простота реализации.

Необходимость обеспечения безопасного хранения только одного ключа шифрования

Большой объем защищаемых данных на один ключ.

Необходимость перешифрования больших объемов данных при смене ключа

Использование производных ключей

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

Необходимость обеспечения безопасного хранения только одного ключа шифрования

Сложность реализации.

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

Необходимость перешифрования больших объемов данных при смене ключа шифрования.

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

Использование произвольных ключей

Отсутствие зависимости от компрометации ключей других блоков.

Необходимость перешифрования небольших объемов данных при смене ключа шифрования

Сложность реализации.

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

Необходимость периодического контроля характеристик ДСЧ

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

В последнем случае — использование случайных ключей — накладные расходы возрастают значительно. Для корректной реализации необходимо осуществлять контроль характеристик ДСЧ и выделять дополнительные ресурсы для организации безопасного хранения ключа шифрования конкретного блока, что приводит к необходимости выделения дополнительных регионов памяти, и сокращению общего полезного объема устройства. Кроме того, необходимо контролировать ресурс мастер-ключа, используемого в этом случае для шифрования произвольных ключей, что при использовании МКР при организации ключевой системы нивелирует преимущества этого метода относительно более простых.

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

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

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

Литература

1 SP 800-38 C Recommendation for Block Cipher Modes of Operation: the CCM Mode for Authentication and Confidentiality.

2 Cipher-State (CS). W. Erik Anderson, Cheryl L. Beaver, Timothy J. Draelos, Richard C. Schroeppel, Mark D. Torgerson.

3 The CWC Authenticated Encryption (Associated Data) Mode. Tadayoshi Kohno, John Viega, Doug Whiting.

4 Fast Encryption and Authentication: XCBC Encryption and XECB Authentication Modes. Virgil D. Gligor, Pompiliu Donescu.

5 OCB: A Block-Cipher Mode of Operation for Efficient Authenticated Encryption. Phillip Rogaway, Mihir Bellare, John Black, Ted Krovetz.

6 SP 800-38 D Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC.

7 Коробов В.В, Шифрование данных в устройствах с блочной внутренней структурой. (Комплексная защита информации. Безопасность информационных технологий. Материалы XVII Международной конференции 15-18 мая 2012 года, Суздаль (Россия). 2012. С. 151-152.).

8 NIST FIPS 198 The Keyed-Hash Message Authentication Code (HMAC).

9 ГОСТ 28147-89 «Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования».

10 ISO/IEC 9797-1:1999 Information technology — Security techniques — Message Authentication Codes (MACs) — Part 1: Mechanisms using a block cipher.


ФорумФорум
Форум ОКБ САПР
Вопросы специалистовВопросы специалистов
Вопросы, которые нам присылают, и наши ответы на них