2010-07-01 6 views
3

Я пытаюсь настроить небольшую сеть компьютеров, где 4 дочерних узла подают небольшие фрагменты данных в один родительский узел. Мне нужна передача данных между узлами, которые должны быть защищены (безопасно, как и в случае, если пакеты перехватываются, определить их содержимое непросто). У кого-нибудь есть предложения? Я заглянул в HTTPS POST и зашифровал сообщения SOAP, но прежде, чем я получил слишком грязные руки, я хотел получить мнение от толпы.Лучший защищенный метод передачи данных?

ответ

3

HTTP over TLS в порядке. И, поскольку вокруг уже есть довольно много инструментов, это должен быть довольно простой и продуктивный подход.

+0

Большинство людей также фактически не проверяют сертификат сервера или не разрешают клиентские сертификаты с помощью https, что делает его склонным ко всем развлечениям. –

+1

@ TheRook: HTTP через SSL и HTTP через TLS называются HTTPS. Я просто уточнил. –

+1

@Irm: «Все виды» означает «Человек в середине». В любом случае, почти любая библиотека TLS будет принудительно применять доверенные сертификаты по умолчанию. –

2

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

1

Опять же, HTTP over TLS (ранее известный как HTTPS) достаточно безопасен для большинства потребностей безопасности, а так как сетевые пакеты уже зашифрованы HTTPS, вам не нужно повторно шифровать ваше сообщение (если у вас нет чрезвычайной ситуации).

1

Я бы предложил использовать протокол TLS/SSL.
Есть некоторые библиотеки, доступные для реализации этого (в зависимости от языка программирования, который вы используете):
- OpenSSL
- GnuTLS
- JSSE
-...

Вы также можете проверить wikipedia on TLS/SSL Чтобы получить больше информации.

1

Возможно, вы захотите найти TLS, который был построен на его предшественнике: слот Secure Sockets Layer. Версия 1.2 использует комбинацию ключей MD5 и SHA-1.

SHA - один из лучших алгоритмов одностороннего шифрования на сегодняшний день.

Вы также должны посмотреть в виртуальные частные сети (VPN), так как вам кажется, что вам нужно поддерживать безопасный сеанс.

+0

SHA-1 считается сломанным и, таким образом, определенно * не * лучшим алгоритмом криптографического хеширования в настоящее время. – Gumbo

+1

Правда, но его, вероятно, все еще достаточно хорошо: http://xkcd.com/538/ –

+1

Я предпочитаю SHA-256 или выше, я не уверен, что SHA-1 сломался, но MD5 сломан. Что бы вы предпочли AES-128 +? – vol7ron

1

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

+0

Лучше чем? –

Смежные вопросы