2012-03-19 3 views
1

Мне нужно написать приложение, которое реализует безопасное соединение между клиентом и сервером с использованием Microsoft API. Google дал мне много результатов, и у меня есть большой беспорядок -need кто-то, чтобы заставить меня какой-то порядок в моей голове:Внедрить безопасное соединение с использованием SSPI в C++ - уточнить некоторые условия

Вопросы:

  1. что такое интерфейс SSPI? Что такое библиотека Schannel.dll? каковы различия? (Я вижу, что я могу включить «SSPI.h» и «Schannel.h» и «security32.h» - какой файл заголовка мне действительно нужен?)
  2. Как я могу найти простой образец, который объясняет мне, как создать безопасные сокеты?

  3. У вас есть некоторые рекомендации, которые я должен знать, прежде чем начать?

Я бы очень признателен, если вы можете помочь.

+0

клиентом и сервером ... любой конкретный выбор протокола? – user1055604

+0

протокол TLS – RRR

ответ

3

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

Чтобы перефразировать, он позволяет использовать один набор API с различными механизмами аутентификации или проверки, тем самым скрывая сложность.

Для вашего второго вопроса, посмотрите на это: Creating a Secure Connection Using Schannel с родственным примером кодом here.

+0

Спасибо !, так что мне лучше использовать SSPI вместо schannel? интерфейс SSPI обертывает интерфейс schanel? если да, то у вас есть пример для меня, показывающий, как реализовать соединение TLS с помощью интерфейса sspi? Большое спасибо! – RRR

+0

ok - Я видел, что ссылки выше показывают также реализацию SSPI. так что мне нужно только дополнительное объяснение различий между schannel и sspi - спасибо. – RRR

+0

SSPI предоставляет интерфейс, который SChannel реализует для настройки соединения SSL/TLS между двумя конечными точками. Далее прочитайте объяснение, приведенное в статье [this] (http://www.codeproject.com/Articles/2642/SSL-TLS-client-server-for-NET-and-SSL-tunnelling). Надеюсь, что это ответ на ваш вопрос. – user1055604