Генерация ключей - Key generation

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

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

Генерация в криптографии

Современные криптографические системы включают: алгоритмы с симметричным ключом (Такие как DES и AES ) и алгоритмы с открытым ключом (Такие как ЮАР ). Алгоритмы с симметричным ключом используют один общий ключ; Чтобы сохранить данные в секрете, необходимо хранить этот ключ в секрете. Алгоритмы с открытым ключом используют открытый ключ и закрытый ключ. Открытый ключ становится доступным для всех (часто с помощью Цифровой сертификат ). Отправитель шифрует данные с помощью открытого ключа получателя; только владелец закрытого ключа может расшифровать эти данные.

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

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

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

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

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

Генерация на физическом уровне

Беспроводные каналы

Беспроводной канал характеризуется двумя конечными пользователями. Посредством передачи пилот-сигналов эти два пользователя могут оценить канал между ними и использовать информацию о канале для сгенерировать ключ что секрет только для них.[1] Общий секретный ключ для группы пользователей может быть сгенерирован на основе канала каждой пары пользователей.[2]

Оптоволокно

Ключ также может быть сгенерирован с использованием флуктуаций фазы в оптоволоконном канале.[требуется разъяснение ]

Смотрите также

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

Рекомендации

  1. ^ Чан Дай Труен Тай; Джемин Ли; Тони К. С. Квек (февраль 2016 г.). «Генерация секретного ключа физического уровня с использованием ненадежных реле». Транзакции IEEE по беспроводной связи. 15 (2): 1517–1530. Дои:10.1109 / TWC.2015.2491935.
  2. ^ Чан Дай Труен Тай; Джемин Ли; Тони К. С. Квек (декабрь 2015 г.). «Генерация ключа секретной группы на физическом уровне для топологии сетки». Конференция по глобальным коммуникациям IEEE, 2015 г. (GLOBECOM). Сан Диего. С. 1–6. Дои:10.1109 / GLOCOM.2015.7417477.