2010-06-21 2 views
0

Я разрабатываю учебную программу на C++, которая будет распространена на большое количество объектов, большинство из которых не будут иметь большого отношения к ИТ-персоналу. Программа подключается через TCP-соединение к центральной базе данных, которая хранит различные данные для исследований и оценки.Рекомендации по безопасному подключению TCP для потребительского применения

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

Есть ли у кого-нибудь рекомендации по решению этой проблемы? Я просто ошибаюсь в своих предположениях, и можно ли распространять его без установки? Если нет, есть ли более практичная альтернатива?

ответ

3

Пока все ваши компьютеры XP +, с двумя версиями OpenSSL вы должны быть готовы, один для 32 бит и один для 64 бит. Просто поставьте два отдельных установщика, и это должно быть так. Нет необходимости компилировать для каждой машины.

Не забудьте включить также распространяемый пакет Visual C++ в ваш установщик.

Если вам необходимо поддерживать старые версии Windows, это становится немного сложнее, но не так много.

1

На самом деле, OpenSSL выглядит как хороший вариант, основанный на том, что вы описали.

Из того, что я понимаю в OpenSSL, это библиотека, написанная на C (с обертками вокруг нее для других языков), что означает, что вы можете включить ее в базу кода того, что вы пишете.

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

1

Возможно, вам также понравится экспериментировать с IPSEC, если вы заинтересованы в распространении двоичных файлов и т. Д. На клиентские машины, IPSEC может быть интересным решением. Так как практически все окна Windows поддерживают его, все, что вам нужно сделать, это настроить политику IPSEC на сервере БД - сделав ее «обязательной» таким образом, все данные между клиентскими компьютерами и сервером БД будут зашифрованы.

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