Размер ключа
В криптографии и криптосистемах, разме́р ключа́ (также: длина ключа или пространство ключей) — это число бит в ключе, используемом в криптографических операциях, таких как шифрование и подписывание электронной цифровой подписью.
Так, например, если указано, что криптосистема использует ключ шифрования размером 8 бит, это означает, что из 8 разрядов двоичного кода можно получить возможных комбинаций ключей, а, например, длина ключа в 256 бит подразумевает уже комбинаций[1].
Размер ключа не следует путать с количеством символов обычного пароля, а также с символьным представлением открытого или закрытого ключей в асимметричных криптосистемах.
Системы шифрования
Существуют два семейства шифрования: симметричные системы (например, AES) и асимметричные системы (например, RSA). Поскольку каждое из них имеет разный уровень криптографической сложности, обычно для одного и того же уровня безопасности используются ключи разного размера в зависимости от используемого алгоритма. Например, безопасность, обеспечиваемая 1024-битным ключом с использованием асимметричного алгоритма, считается примерно равной безопасности 80-битного ключа в симметричном алгоритме[2].
Степень безопасности криптосистемы, зафиксированная на этапе выпуска, со временем снижается по мере того, как становится доступной бо́льшая вычислительная мощность и более мощные методы математического анализа. По этой причине криптологи, как правило, обращают внимание на индикаторы того, что алгоритм или длина ключа демонстрируют признаки потенциальной уязвимости, чтобы увеличить размеры ключей или перейти на более сложные алгоритмы[3]. Так, например, в 2010 году группе учёных удалось успешно вычислить данные, зашифрованные при помощи криптографического ключа стандарта RSA длиной 768 бит. Что могло быть заблаговременным предупреждением о том, что 1024-битный RSA, используемый с 2007 года, должен быть признан устаревшим, поскольку в ближайшем будущем он может стать уязвимым[4].
Эффективная криптостойкость
Работа Шеннона по теории информации в частности показала, что для получения абсолютно стойкого шифра совершенной секретности длина ключа должна быть не меньше длины сообщения[5]. Из-за практической сложности управления такими длинными ключами, современная криптографическая практика отказалась от понятия совершенной секретности и сосредоточилась на эффективной криптостойкости, при которой вычислительные требования для взлома зашифрованного текста должны быть невыполнимы для атакующего. Таким образом, длина ключа должна быть такова, чтобы атака методом грубой силы стала бы невозможна, то есть выполнялась бы слишком долго.
В
В соответствии с принципом Керкгоффса большинство криптосистем проектируют так, чтобы степень их безопасности полностью определялась длиной ключа и не снижалась конструкцией алгоритма.[7]. Также следует отметить, что заданный изначально порог безопасности вследствие обнаруженной уязвимости может быть снижен. Так, например, Triple DES был разработан для использования со 168-битным ключом, но затем стала известна атака на сложности [8]. То есть нижний порог криптостойкости этой системы снизился до 112. Тем не менее, пока эффективная криптостойкость (то есть количество усилий, которые потребуются для получения доступа) достаточна для применения в конкретном приложении, несовпадение длины ключа с нижним порогом безопасности не имеет практического значения, что нашло подтверждение в рекомендациях NIST[9].
Эффективность криптосистем с асимметричным ключом зависит от неразрешимости или трудности решения той или иной математической задачи по правилам которой генерируется ключ. Например, в случае RSA, атака производится не полным перебором всего пространства ключей, а методом разложения ключа на простые множители[10].
С 2015 года
Примечания
- ↑ wolframalpha.com (англ.). Дата обращения: 26 июля 2022. Архивировано 26 июля 2022 года.
- ↑ Anatomy of a change – Google announces it will double its SSL key sizes – Naked Security (англ.). Дата обращения: 26 июля 2022. Архивировано 15 июня 2022 года.
- ↑ Researchers: 307-digit key crack endangers 1024-bit RSA (англ.) (24 мая 2007). Дата обращения: 27 июля 2022. Архивировано 22 января 2009 года.
- ↑ Факториация RSA-768 Архивная копия от 13 декабря 2012 на Wayback Machine
- ↑ Шеннон К. Работы по теории информации и кибернетике. — М.: Иностранная литература, 1963 г. — 830 с.
- ↑ Шнайер Б.. Прикладная криптография. 2-е изд. Протоколы, алгоритмы и исходные тексты на языке Си. Глава 7.1 Длина симметричного ключа.
- ↑ Шнайер Б.. Прикладная криптография. 2-е изд. Протоколы, алгоритмы и исходные тексты на языке Си. Глава 1.1 Алгоритмы и ключи.
- ↑ Attacking Triple Encryption by Stefan Lucks (англ.). Дата обращения: 27 июля 2022. Архивировано 27 июля 2022 года.
- ↑ Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher (англ.). Дата обращения: 27 июля 2022. Архивировано 21 июня 2022 года.
- ↑ Шнайер Б.. Прикладная криптография. 2-е изд. Протоколы, алгоритмы и исходные тексты на языке Си. Глава 7.2 Длина открытого ключа.
- ↑ NIST Special Publication 800-57 Part 3 Revision 1: Recommendation for Key Management (англ.). Дата обращения: 26 июля 2022. Архивировано 19 июля 2022 года.
- ↑ NSA Suite B Cryptography (англ.) (15 января 2009). Дата обращения: 26 июля 2022. Архивировано 4 июня 2019 года.