Параметры Диффи-Хеллмана и безопасность

Я хочу создать собственное безопасное соединение для приложения VOIP.

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

Есть ли на практике лучшие подходы, чем Диффи-Хеллман?

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

Пожалуйста, помогите мне с некоторой справочной информацией/вдохновением.


person Rainbowdesign    schedule 28.03.2015    source источник
comment
youtube.com/watch?v=cFl-AHMyffw   -  person ZdaR    schedule 28.03.2015


Ответы (3)


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

Самым серьезным ограничением Диффи-Хеллмана в его базовой или «чистой» форме является отсутствие аутентификации. Коммуникации с использованием Диффи-Хеллмана сами по себе уязвимы для атак «человек посередине». В идеале метод Диффи-Хеллмана следует использовать в сочетании с признанным методом аутентификации, таким как цифровые подписи, для проверки личности пользователей в общедоступной среде связи.

Более подробная информация по теме доступна ниже:

1 ссылка 1

2 ссылка 2

3 ссылка 3

person Tharif    schedule 28.03.2015

DH подходит для этой цели, просто убедитесь, что используете 2048-битные ключи или больше.

Однако для VoIP стандартами являются TLS с SRTP/zrtp, поэтому было бы лучше, если бы вы реализовали их. С DH вы теряете совместимость и создаете множество сложностей. Также обратите внимание, что DH предназначен только для обмена ключами, поэтому вам понадобится что-то еще и для самого шифрования. С TLS вы можете справиться со всем этим за один шаг, используя хорошо известную реализацию вместо того, чтобы писать собственный стек шифрования с нуля.

person Istvan    schedule 26.04.2015

Диффи-Хеллман — это алгоритм обмена ключами. Таким образом, любой может получить доступ к вашим общедоступным параметрам. Вы можете использовать безопасность, кроме рассекреченных частных параметров. Очень важно обеспечить безопасность общих ключей. Если вы хотите более безопасную систему, попробуйте forward-secrecy

person dralexnumber    schedule 15.11.2017