Jump to content

Алгоритм двойного храпового механизма

Полный шаг храпового механизма в алгоритме двойного храпового механизма. Функция деривации ключей (KDF) обеспечивает храповой механизм. Первый «храповик» применяется к симметричному корневому ключу, второй — к асимметричному ключу Диффи-Хеллмана (DH). [1]

В криптографии алгоритм двойного храповика (ранее называемый храповым механизмом Аксолотля) [2] [3] ) — алгоритм управления ключами , разработанный Тревором Перрином и Мокси Марлинспайком в 2013 году. Его можно использовать как часть криптографического протокола для обеспечения сквозного шифрования для обмена мгновенными сообщениями . После первоначального обмена ключами он управляет постоянным обновлением и обслуживанием кратковременных сеансовых ключей. Он сочетает в себе криптографический так называемый «храповик», основанный на обмене ключами Диффи-Хеллмана (DH), и храповик, основанный на функции деривации ключей (KDF), такой как хэш-функция , и поэтому называется двойным храповиком.

Алгоритм обеспечивает прямую секретность сообщений и неявное повторное согласование ключей пересылки; свойства, в честь которых назван протокол. [4]

Алгоритм двойного храпового механизма был разработан Тревором Перрином и Мокси Марлинспайком ( Open Whisper Systems ) в 2013 году и представлен как часть протокола сигналов в феврале 2014 года. Конструкция алгоритма двойного храпового механизма основана на храповом механизме DH, который был представлен Off-the- Запишите сообщения (OTR) и объедините их с храповым механизмом с симметричными ключами, созданным по образцу протокола обмена мгновенными сообщениями Silent Circle (SCIMP). Первоначально трещотка была названа в честь находящегося под угрозой исчезновения водного вида аксолотля саламандры , обладающего необычайными способностями к самовосстановлению. [5] В марте 2016 года разработчики переименовали Axolotl Ratchet в алгоритм Double Ratchet, чтобы лучше различать храповой механизм и полный протокол. [3] потому что некоторые использовали имя Аксолотль, говоря о Сигнальном Протоколе. [6] [3]

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

Алгоритм двойного храповика обладает свойствами, которые уже давно широко доступны в системах сквозного шифрования: шифрование содержимого на всем пути передачи, а также аутентификация удаленного узла и защита от манипуляций с сообщениями. Являясь гибридом трещоток DH и KDF , он сочетает в себе несколько желаемых характеристик обоих принципов. От обмена сообщениями OTR он перенимает свойства прямой секретности и автоматического восстановления секретности в случае компрометации сеансового ключа, прямой секретности с компрометацией секретного постоянного основного ключа и правдоподобного отрицания авторства сообщений. Кроме того, он позволяет обновлять ключ сеанса без взаимодействия с удаленным узлом с помощью вторичных храповиков KDF. Дополнительный этап создания ключа позволяет сохранить сеансовые ключи для сообщений, находящихся в неправильном порядке, не ставя под угрозу следующие ключи.

Говорят [ кем? ] для обнаружения изменения порядка, удаления и повтора отправленных сообщений, а также для улучшения свойств прямой секретности против пассивного прослушивания по сравнению с обменом сообщениями OTR.

В сочетании с инфраструктурой открытых ключей для хранения предварительно сгенерированных одноразовых ключей (предварительных ключей) это позволяет инициализировать сеансы обмена сообщениями без присутствия удаленного узла ( асинхронная связь ). Использование тройного обмена ключами Диффи-Хеллмана (3-DH) в качестве метода первоначального обмена ключами улучшает свойства отрицания. Примером этого является протокол Signal, который сочетает в себе алгоритм двойного храпового механизма, предварительные ключи и рукопожатие 3-DH. [7] Протокол обеспечивает конфиденциальность, целостность, аутентификацию, согласованность участников, проверку места назначения, прямую секретность, обратную секретность (также известную как будущая секретность), сохранение причинно-следственной связи, несвязность сообщений, отказ от сообщений, отказ от участия и асинхронность. [8] Он не обеспечивает сохранение анонимности и требует серверов для ретрансляции сообщений и хранения материалов открытого ключа. [8]

Функционирование

[ редактировать ]
Схема принципа работы

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

В качестве криптографических примитивов алгоритм двойного храповика использует

для трещотки DH
Эллиптическая кривая Диффи-Хеллмана (ECDH) с Curve25519 ,
для кодов аутентификации сообщений (MAC, аутентификация)
Код аутентификации сообщения с хеш-ключом (HMAC) на основе SHA-256 ,
для симметричного шифрования
Расширенный стандарт шифрования (AES), частично в режиме цепочки блоков шифра (CBC) с заполнением согласно PKCS #5 и частично в режиме счетчика (CTR) без заполнения,
для хэш-трещотки
ХМАС. [9]

Приложения

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

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

Примечания

[ редактировать ]
  1. ^ Перейти обратно: а б с д По OMEMO протоколу
  2. ^ Только в «Секретных беседах»
  3. ^ Перейти обратно: а б с д и ж г час Через сигнальный протокол
  4. ^ Перейти обратно: а б Через Matrix протокол
  5. ^ Только в «режиме инкогнито».
  6. ^ Только в индивидуальных чатах RCS.
  7. ^ Через протокол Зины
  8. ^ Только в "частных беседах"
  9. ^ Viber «использует те же концепции протокола «двойного храповика», которые используются в приложении Open Whisper Systems Signal»
  10. ^ Через протокол Протеуса
  1. ^ Тревор Перрин (редактор), Мокси Марлинспайк, « Алгоритм двойного храповика » . Редакция 1, 20 ноября 2016 г.
  2. ^ Перрин, Тревор (30 марта 2016 г.). «Сравнить версии» . Гитхаб . Проверено 9 апреля 2016 г.
  3. ^ Перейти обратно: а б с Марлинспайк, Мокси (30 марта 2016 г.). «Сигнал снаружи, сигнал внутри» . Открытые системы шепота . Проверено 31 марта 2016 г.
  4. ^ Кон-Гордон, К.; Кремерс, К.; Гарратт, Л. (2016). «О посткомпромиссной безопасности» . 29-й симпозиум IEEE по основам компьютерной безопасности (CSF) , 2016 г. стр. 164–178. дои : 10.1109/CSF.2016.19 . ISBN  978-1-5090-2607-4 . S2CID   5703986 .
  5. ^ Ксения Ермошина, Франческа Мусиани. «Стандартизация путем выполнения кода»: протокол Signal и фактическая стандартизация сквозного зашифрованного обмена сообщениями. Истории Интернета, 2019, стр.1-21. �10.1080/24701475.2019.1654697�. �халшс-02319701�
  6. ^ Кон-Гордон и др. 2016 , с. 1
  7. ^ Унгер и др. 2015 , с. 241.
  8. ^ Перейти обратно: а б Унгер и др. 2015 , с. 239.
  9. ^ Лягушка и др. 2014 год
  10. ^ "Безопасность" . Криптокат. Архивировано из оригинала 7 апреля 2016 года . Проверено 14 июля 2016 г.
  11. ^ Гринберг, Энди (4 октября 2016 г.). «Наконец-то вы все можете зашифровать Facebook Messenger, так что сделайте это» . Проводной . Конде Наст . Проверено 5 октября 2016 г.
  12. ^ Силс, Тара (17 сентября 2015 г.). «G DATA добавляет шифрование для безопасного мобильного чата» . Журнал Инфобезопасность . ООО "Рид Выставочник" . Проверено 16 января 2016 г. .
  13. ^ «Безопасный чат» . Гитхаб . Г-данные . Проверено 14 июля 2016 г.
  14. ^ Гринберг, Энди (18 мая 2016 г.). «Благодаря Allo и Duo Google наконец-то обеспечивает сквозное шифрование разговоров» . Проводной . Конде Наст . Проверено 14 июля 2016 г.
  15. ^ Амадео, Рон (16 июня 2021 г.). «Google включает сквозное шифрование для стандартного приложения Android SMS/RCS» . Арс Техника . Проверено 3 марта 2022 г.
  16. ^ «Атрибуции Хейвена» . Гитхаб . Проект «Гардиан» . Проверено 22 декабря 2017 г.
  17. ^ Ли, Мика (22 декабря 2017 г.). «Новое приложение Сноудена использует ваш смартфон для физической защиты вашего ноутбука» . Перехват . СМИ первого взгляда . Проверено 22 декабря 2017 г.
  18. ^ Лэнгли, Адам (9 ноября 2013 г.). «Проволока в новую храповую систему» . GitHub (вклад GitHub) . Проверено 16 января 2016 г. .
  19. ^ Мясник, Майк (19 сентября 2016 г.). «Riot хочет быть похожим на Slack, но с гибкостью базовой платформы с открытым исходным кодом» . ТехКранч . АОЛ Инк . Проверено 20 сентября 2016 г.
  20. ^ «Тихий круг/либзина» . Гитхаб . Тихий круг . Проверено 19 декабря 2017 г.
  21. ^ Лунд, Джошуа (11 января 2018 г.). «Назначьте партнерство с Microsoft для внедрения сквозного шифрования в Skype» . Открытые системы шепота . Проверено 11 января 2018 г.
  22. ^ «Обзор шифрования Viber» (PDF) . Вайбер. 25 июля 2018 года . Проверено 26 октября 2018 г.
  23. ^ Мец, Кейд (5 апреля 2016 г.). «Забудьте Apple против ФБР: WhatsApp только что включил шифрование для миллиарда человек» . Проводной . Конде Наст . Проверено 5 апреля 2016 г.
  24. ^ «Информационный документ по безопасности проводов» (PDF) . Вайр Свисс ГмбХ. 17 августа 2018 г. Проверено 28 августа 2020 г.

Литература

[ редактировать ]
  • Кон-Гордон, Катриэль; Кремерс, Кас; Даулинг, Бенджамин; Гарратт, Люк; Стебила, Дуглас (25 октября 2016 г.). «Формальный анализ безопасности протокола обмена сигналами» (PDF) . Архив электронной печати по криптологии . Международная ассоциация криптологических исследований (IACR).
  • Фрош, Тилман; Майнка, Кристиан; Бадер, Кристоф; Бергсма, Флориан; Швенк, Йорг; Хольц, Торстен (2014). «Насколько безопасен TextSecure?» (PDF) . Архив электронной печати по криптологии . Международная ассоциация криптологических исследований (IACR) . Проверено 16 января 2016 г. .
  • Унгер, Ник; Дечанд, Сергей; Бонно, Джозеф; Фаль, Саша; Перл, Хеннинг; Голдберг, Ян Аврум; Смит, Мэтью (2015). SoK: Безопасный обмен сообщениями (PDF) . Материалы симпозиума IEEE по безопасности и конфиденциальности 2015 г. Технический комитет IEEE Computer Society по безопасности и конфиденциальности. стр. 232–249. дои : 10.1109/СП.2015.22 .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: e0b084ba2b50cbb8023459aca6fdb28d__1719946620
URL1:https://arc.ask3.ru/arc/aa/e0/8d/e0b084ba2b50cbb8023459aca6fdb28d.html
Заголовок, (Title) документа по адресу, URL1:
Double Ratchet Algorithm - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)