Криптографическая гибкость («крипто-гибкость») позволяет системе информационной безопасности переключаться на альтернативные криптографические примитивы и алгоритмы, не внося существенных изменений в инфраструктуру системы. Крипто-гибкость заключается в способности предвидеть развитие угроз и переходить на новые алгоритмы по мере их появления. Криптографическая гибкость облегчает модернизацию и развитие системы, может выступать в качестве меры безопасности или механизма реагирования на атаки, когда обнаруживается уязвимость алгоритмов шифрования системы. Система безопасности считается крипто-гибкой, если её алгоритмы шифрования могут быть легко заменены и, по крайней мере, частично автоматизированы.[1][2]
Предпосылки
правитьРекомендации NIST по немедленному внедрению крипто-гибкости основаны на потенциале квантовых компьютеров, который делает многие существующие криптосистемы с открытым ключом нестойкими[3]. Например, в 1994 году Питер Шор из Bell Laboratories продемонстрировал способность квантовых компьютеров значительно ускорив процесс разложения простых чисел по сравнению с использованием классических компьютеров[4]. Спустя два года американский математик Лов Гровер изобрёл квантовый алгоритм поиска, который значительно ускоряет расшифровку симметричных криптоалгоритмов. По оценке специалистов NIST, к 2030 году взлом алгоритма RSA с ключом длиной 2000 бит будет занимать считанные часы[5]. Это будет недёшево (для этого понадобится не менее миллиарда долларов), но вполне реально[4][5]. Алгоритм AES можно будет защитить от взлома, существенно удлинив ключ, но алгоритмы RSA, ECDSA, ECDH, DSA и многие другие станут небезопасными[4].
Пример
правитьКриптографические алгоритмы постоянно подвергаются атакам. С одной стороны это возможно за счет непрерывного увеличения скорости процессоров, что делает более вероятным, что алгоритмы могут быть взломаны в разумные сроки, с другой стороны из-за исследований в области криптографии, которые постоянно обнаруживают уязвимости в алгоритмах. На данный момент хеш-функции MD4 и MD5 и SHA-1 не рекомендуются к использованию, так как существуют способы нахождения коллизий с приемлемой вычислительной сложностью. Фактически, Microsoft запретила использование MD4 и MD5 и SHA-1 в новых системах кодирования, за исключением случаев, когда алгоритм используется в промышленном стандарте, или в приложениях, с операционной системой Windows Vista или более ранней. Хорошим примером криптографической гибкости являются SSL и TLS, которые надежно согласовывают криптографические алгоритмы между сервером и клиентом.[6]
Важность
правитьКиберпреступность — это большой бизнес. Одним из примеров этого является взлом Target, в результате которого были украдены данные кредитных карт десятков миллионов людей. Согласно данным Malwarebytes, глобального поставщика решений для предотвращения и исправления вредоносных программ, атаки с помощью программы-вымогатель привели к тому, что почти четверть предприятий малого и среднего бизнеса, которые пострадали от них в 2017 году, полностью прекратили свою деятельность. Согласно отчету Verizon Data Breach Investigations за 2018 год , 58 % кибератак нацелены на малый бизнес из-за уязвимости их систем безопасности.[7]
Шифрование с открытым ключом, цифровые подписи и обмен ключами являются основой многих коммуникационных протоколов.[3] Уязвимости, которые были найдены в основных алгоритмах предоставили доказательства того, что организации должны быть готовы к быстрому переходу между стандартами. Крипто-гибкость может обеспечить быстрое реагирование на появляющиеся угрозы, поддерживая переход от одного стандарта шифрования к другому в любой момент[8]. С 2010 года инфраструктура открытых ключей (ИОК, англ. PKI — Public Key Infrastructure) постепенно интегрируется в бизнес-приложения с помощью сертификатов открытых ключей, которые использовались в качестве удостоверяющего центра между сетевыми объектами. Инфраструктура открытых ключей безопаснее, чем предыдущие способы идентификации и аутентификации, которые включают криптографические технологии, такие как цифровые сертификаты и подписи.[9] Сертификаты открытых ключей являются основными компонентами для строгой аутентификации и безопасной связи между объектами.[10]
Ожидается, что квантовые компьютеры смогут взломать существующие алгоритмы шифрования с открытым ключом. Большинство распространённых криптографических алгоритмов, используемых при шифровании и работе с электронными подписями, основаны на том, что разложение чисел на простые множители, дискретное логарифмирование и некоторые другие математические задачи имеют очень высокую сложность. Обычные компьютеры не способны выполнить необходимые вычисления за разумное время. Квантовые компьютеры, работающие по алгоритму Шора, могут решать эти задачи за полиномиальное время.[11][3] [12] Постквантовая криптография является областью криптографии, цель которой заменить уязвимые алгоритмы новыми, которые, как полагают, трудно взломать даже для квантового компьютера. Известно несколько криптоалгоритмов, основанных на математических проблемах, которые пока не получается упростить за счёт применения квантовых компьютеров. В NIST высоко оценивают алгоритмы асимметричного шифрования, основанные на решётках: они просты, эффективны и хорошо параллелизуются.[13]
Отличие от эволюции
правитьЭволюция системы и криптографическая гибкость не одно и то же. Эволюция системы возникает на основе коммерческих и технических требований. Крипто-гибкость связана с вычислительными требованиями и требует рассмотрения экспертами по безопасности, проектировщиками систем и разработчиками приложений.[14]
Рекомендации
правитьРекомендации по работе с криптографической гибкостью включают:[15]
- Все бизнес-приложения, использующие любые крипто-технологии, должны включать новейшие алгоритмы и методы.
- Требования к крипто-гибкости должны распространяться на всех провайдеров оборудования, программного обеспечения и услуг, которые должны своевременно выполнять эти требования.
- Провайдеры, которые не могут удовлетворить эти требования, должны быть заменены.
- Провайдеры должны своевременно предоставлять обновления и идентифицировать криптотехнологию, которую они используют.
- RSA должен быть заменен квантовостойкими алгоритмами.
- Алгоритм симметричного ключа должен использоваться с длинными ключами.[16]
- Хеш-алгоритмы должны использовать большие битовые размеры.
- Соблюдение стандартов и правил.
Криптографическая гибкость сегодня
правитьСегодня многие производители операционных систем (Microsoft, Apple, Google и т. д.) обладают некоторой внутренней гибкостью благодаря своим интегрированным процессам обновления программного обеспечения. Однако они обычно поддерживают только свою продукцию и требуют загрузки больших пакетов обновлений. К этому следует добавить тот факт, что этот процесс не является автоматическим и оставляет выбор за пользователем, что делает обновления крайне медленными. Внутренние приложения часто полностью статичны с точки зрения криптографии, лишены какой-либо гибкости. Как правило, обновления внутренних криптографических реализаций для устранения угроз или уязвимостей требуют полного обновления кода, тестирования качества и переустановки[17].
В последнее время регулярно обсуждаются гибкие сертификаты в контексте инфраструктуры открытых ключей. Обычно они относятся к сертификатам, которые содержат две формы открытого ключа и подписи: классический открытый ключ и постквантовый открытый ключ. Эти ключи будут иметь некоторые общие атрибуты (например, возможное имя субъекта), а также двойные подписи Центра сертификации (CA) — опять же, одну подпись, основанную на современной (классической) криптографии, и одну постквантовую на основе постквантовой криптографии[18].
См. также
правитьПримечания
править- ↑ Cryptographic Agility, 2010, p. 4.
- ↑ Key Reuse: Theory and Practice, 2018, p. 44.
- ↑ 1 2 3 Report on Post-Quantum Cryptography, 2016, p. 1.
- ↑ 1 2 3 Report on Post-Quantum Cryptography, 2016, p. 2.
- ↑ 1 2 Report on Post-Quantum Cryptography, 2016, p. 6.
- ↑ Writing Secure Code for Windows Vista, 2004, p. 136.
- ↑ Ivy Walker. Cybercriminals Have Your Business In Their Crosshairs And Your Employees Are In Cahoots With Them. (англ.). Forbes. Дата обращения: 25 декабря 2019. Архивировано 25 декабря 2019 года.
- ↑ Cryptographic Agility, 2010, pp. 1,5.
- ↑ Chapter 18. Fundamentals of the Public Key Infrastructure - CCNA Security 640-554 Official Cert Guide [Book] (англ.). www.oreilly.com. Дата обращения: 31 января 2020. Архивировано 29 октября 2020 года.
- ↑ Public Key Certificates . IBM Knowledge Center. Дата обращения: 31 января 2020. Архивировано 30 марта 2019 года.
- ↑ Stephanie Blanda. Shor’s Algorithm – Breaking RSA Encryption . AMS (30 апреля 2014). Дата обращения: 3 февраля 2020. Архивировано 22 января 2020 года.
- ↑ Algorithms for Quantum Computation: Discrete Log and Factoring, 1994, p. 7.
- ↑ Report on Post-Quantum Cryptography, 2016, p. 3.
- ↑ Cryptographic Agility in Practice, p. 4.
- ↑ Asim Mehmood. What is crypto-agility and how to achieve it? (англ.). content.hsm.utimaco.com. Дата обращения: 25 декабря 2019. Архивировано 27 марта 2019 года.
- ↑ Report on Post-Quantum Cryptography, 2016, pp. 10—11.
- ↑ Cryptographic Agility in Practice, p. 3.
- ↑ Cryptographic Agility in Practice, pp. 4—5.
Литература
править- Patterson, Royal Holloway. Key Reuse: Theory and Practice (англ.). — Stanford University, University of London, 2018.
- Macaulay, Tyson. Cryptographic Agility in Practice (англ.). — InfoSec Global. — 16 p.
- Sullivan, Bryan. Cryptographic Agility (англ.). — Microsoft Corporation, 2010.
- Chen, Lily; Jordan, Stephen; Liu, Yi-Kai; Moody, Dustin; Peralta, Rene; Perlner, Ray; Smith-Tone, Daniel. Report on Post-Quantum Cryptography (англ.). — NIST, 2016.
- Scott Morris,Keith Barker. CCNA Security 640-554 Official Cert Guide (англ.). — Cisco Press, 2012. — 700 p. — ISBN 9780132966061.
- Michael Howard, David LeBlanc. Writing Secure Code for Windows Vista (англ.). — Microsoft, 2004. — 224 p. — ISBN 0735623937.
- Peter W. Shor. Algorithms for Quantum Computation: Discrete Log and Factoring (англ.). — AT&T Bell Labs, 1994.