Прямая секретность

редактировать

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

Прямая секретность защищает данные на транспортном уровне сети, которая использует общие протоколы SSL / TLS, включая OpenSSL, когда ее долгосрочные секретные ключи скомпрометированы, как в случае с ошибкой безопасности Heartbleed. Если используется прямая секретность, зашифрованные сообщения и сеансы, записанные в прошлом, не могут быть получены и расшифрованы, если долгосрочные секретные ключи или пароли будут скомпрометированы в будущем, даже если злоумышленник активно вмешался, например, через злоумышленника. средняя атака.

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

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

Значение прямой секретности ограничено не только предположением, что злоумышленник атакует сервер только путем кражи ключей и не изменяя генератор случайных чисел, используемый сервером, но также ограничивается предположением, что злоумышленник будет только пассивно собирать трафик по каналу связи и не будет активен с помощью атаки Man-in-the-Middle (MITM). Прямая секретность обычно использует эфемерный обмен ключами Диффи-Хеллмана для предотвращения чтения прошедшего трафика. Обмен эфемерными ключами Диффи-Хеллмана часто подписывается сервером с использованием статического ключа подписи. Если злоумышленник может украсть (или получить по решению суда) этот статический (долгосрочный) ключ подписи, рекламный агент может замаскироваться как сервер для клиента и как клиент для сервера, и реализовать классический Man-in- Атака среднего.

Содержание
  • 1 История
  • 2 Определение
  • 3 Пример
  • 4 Атаки
  • 5 Слабая идеальная прямая секретность
  • 6 Протоколы
  • 7 Использование
  • 8 См. Также
  • 9 Ссылки
  • 10 Внешние ссылки
История

Термин «совершенная прямая секретность» был введен К.Г. Гюнтером в 1990 году и далее обсуждался Уитфилдом Диффи, Полом van Oorschot и Майкла Джеймса Винера в 1992 году, где он использовался для описания свойства протокола Station-to-Station.

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

В 2000 году IEEE впервые ратифицировал IEEE 1363, который устанавливает соответствующие свойства односторонней и двусторонней прямой секретности различных стандартных схем согласования ключей.

Определение

Система шифрования имеет свойство прямой секретности, если проверка открытого текста (дешифровки) обмен данными, который происходит во время ke На этапе согласования начала сеанса не раскрывается ключ, который использовался для шифрования оставшейся части сеанса.

Пример

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

  1. Алиса и Боб каждый генерируют пару долгосрочных, асимметричных общедоступных и закрытые ключи, затем проверить отпечатки открытого ключа лично или по уже аутентифицированному каналу. Проверка с уверенностью устанавливает, что заявленный владелец открытого ключа является фактическим владельцем.
  2. Алиса и Боб используют алгоритм обмена ключами, такой как Диффи – Хеллмана, чтобы надежно согласовать эфемерный сеансовый ключ. Они используют ключи из шага 1 только для аутентификации друг друга во время этого процесса.
  3. Алиса отправляет Бобу сообщение, шифруя его с помощью симметричного шифра, используя сеансовый ключ, согласованный на шаге 2.
  4. Боб расшифровывает сообщение Алисы, используя ключ, согласованный на шаге 2.
  5. Процесс повторяется для каждого нового отправленного сообщения, начиная с шага 2 (и, при необходимости, меняя роли Алисы и Боба как отправителя / получателя). Шаг 1 никогда не повторяется.

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

Атаки

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

Слабая идеальная прямая секретность

Слабая идеальная прямая секретность (wPFS) - это более слабое свойство, благодаря которому, когда долгосрочные ключи агентов скомпрометированы, секретность ранее установленных сеансовых ключей гарантируется, но только для сеансов, в которые противник активно не вмешивался. Это новое понятие и различие между этой и прямой секретностью было введено Хьюго Кравчиком в 2005 году. Это более слабое определение неявно требует, чтобы полная (идеальная) прямая секретность сохраняла секретность ранее установленных ключей сеанса даже в сеансах, в которых злоумышленник действительно активно вмешивался, или пытался действовать как мужчина посередине.

Протоколы

Прямая секретность присутствует в нескольких основных реализациях протоколов, таких как SSH и как дополнительная функция в IPsec (RFC 2412 ). Off-the-Record Messaging, криптографический протокол и библиотека для многих клиентов обмена мгновенными сообщениями, обеспечивает прямую секретность, а также запрещенное шифрование.

в Transport Layer Security (TLS), наборы шифров на основе обмена ключами Диффи – Хеллмана (DHE- RSA, DHE- DSA ) и эллиптической кривой Диффи-Хеллмана обмен ключами (ECDHE- RSA, ECDHE- ECDSA ) доступен. Теоретически TLS может выбирать подходящие шифры, начиная с SSLv3, но в повседневной практике многие реализации отказываются предлагать прямую секретность или предоставляют только очень низкий уровень шифрования. TLS 1.3 оставляет эфемерный Диффи-Хеллман в качестве единственного механизма обмена ключами для обеспечения прямой секретности.

OpenSSL поддерживает прямую секретность с использованием эллиптической кривой Диффи-Хеллмана, начиная с версии 1.0, с вычислительными затратами приблизительно 15% для начального подтверждения.

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

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

Использование

Прямая секретность рассматривается как важная функция безопасности некоторыми крупными поставщиками информации в Интернете. С конца 2011 года Google по умолчанию обеспечивал прямую секретность с помощью TLS для пользователей своей службы Gmail, службы Google Docs и служб зашифрованного поиска. С ноября 2013 года Twitter обеспечивает прямую секретность с помощью TLS для своих пользователей. Вики, размещенные Фондом Викимедиа, с июля 2014 года обеспечивают прямую секретность для пользователей. требует использования прямой секретности с августа 2018 года.

Facebook сообщил в рамках расследования шифрования электронной почты, что по состоянию на май 2014 года 74% хостов, поддерживающих STARTTLS, также обеспечивают прямую секретность. TLS 1.3, опубликованный в августе 2018 года, отказался от поддержки шифров без прямой секретности. По состоянию на февраль 2019 года 96,6% опрошенных веб-серверов поддерживают ту или иную форму прямой секретности, а 52,1% будут использовать прямую секретность в большинстве браузеров.

На WWDC 2016 Apple объявила, что все приложения iOS должны будут использовать приложение. Транспортная безопасность (ATS), функция, которая принудительно использует передачу HTTPS. В частности, ATS требует использования шифра, обеспечивающего прямую секретность. ATS стала обязательной для приложений с 1 января 2017 года.

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

немецком языке почтовый провайдер Mailbox.org, ориентированный на безопасность, использует PFS и HSTS для сообщений в пути.

См. также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-20 12:26:22
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте