Рекомендации по безопасным соединениям TCP для потребительских приложений - PullRequest
0 голосов
/ 22 июня 2010

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

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

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

Ответы [ 3 ]

3 голосов
/ 22 июня 2010

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

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

Если вам нужно поддерживать древние версии Windows, он становится немного сложнее, но не намного.

1 голос
/ 25 июня 2010

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

1 голос
/ 22 июня 2010

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

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

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

...