2012-03-19 81 views
1

我必须编写一个应用程序,该应用程序使用Microsoft API在客户端和服务器之间实现安全连接。 谷歌给了我很多的结果,我有一个很大的混乱 - 需要有人让我有些为了在我的脑海:在C++中使用SSPI实现安全连接 - 澄清一些术语

问题:

  1. 是什么SSPI接口?什么是Schannel.dll库?什么是差异? (我看到我可以包含“SSPI.h”和“Schannel.h”和“security32.h” - 我真的需要哪个头文件?)
  2. 如何找到一个真正简单的示例,创建安全套接字?

  3. 在我开始之前,您是否有一些准则需要了解?

如果您能帮到,我将非常感激。

+0

客户端和服务器...协议的任何具体的选择呢? – user1055604 2012-03-19 17:34:14

+0

该协议是TLS – RRR 2012-03-19 17:56:14

回答

3

SSPI允许应用程序使用计算机或网络上可用的各种安全模型,而无需更改与安全系统的接口。

为了解释,它允许您使用具有不同身份验证或验证机制的单个API集,从而隐藏复杂性。

关于第二个问题,看看这个:Creating a Secure Connection Using Schannel与相关的代码示例here.

+0

谢谢!因此,我最好使用SSPI而不是schannel? SSPI接口包装schanel接口?如果是这样,你有我的例子,展示如何使用sspi接口实现TLS连接?非常感谢你! – RRR 2012-03-20 09:23:53

+0

好的 - 我看到上面的链接也显示了SSPI的实现。所以我只需要补充说明schannel和sspi之间的区别 - 谢谢。 – RRR 2012-03-20 10:18:39

+0

SSPI提供SChannel实现的接口,用于在两个端点之间建立SSL/TLS连接。此外,阅读[this](http://www.codeproject.com/Articles/2642/SSL-TLS-client-server-for-NET-and-SSL-tunnelling)文章中给出的解释。希望这回答你的问题。 – user1055604 2012-03-20 12:12:59