您将如何测试SSL连接?

时间:2008-09-29 09:16:29

标签: security network-programming openssl

我正在网络应用程序上试验OpenSSL,我想测试发送的数据是否已加密,窃听者无法看到。

您可以使用哪些工具进行检查?这可以通过编程方式完成,以便可以放在单元测试中吗?

7 个答案:

答案 0 :(得分:16)

openssl has an s_client,这是一个快速而又脏的通用客户端,可用于测试服务器连接。它将显示服务器证书和协商加密方案。

答案 1 :(得分:9)

我发现this guide非常有帮助。这些是他使用的一些工具:

$ openssl s_client -connect mail.prefetch.net:443 -state -nbio 2>&1 | grep "^SSL"

$ ssldump -a -A -H -i en0

$ ssldump -a -A -H -k rsa.key -i en0

$ ssldump -a -A -H -k rsa.key -i en0 host fred and port 443

答案 2 :(得分:7)

查看线鲨http://www.wireshark.org/

和tcp dump http://en.wikipedia.org/wiki/Tcpdump

不确定将这些集成到单元测试中。它们将让您了解网络级别的最低级别。

也许单元测试确定流看起来像未加密的并确保加密流不相似

答案 3 :(得分:4)

Franci Penov回答了我的一个问题“Log Post Parameters sent to a website”,建议我看看Fiddler:http://www.fiddler2.com/fiddler2/

如果您对查看HTTP请求感兴趣,我尝试了它并且效果很好。 :)

答案 4 :(得分:1)

是的 - Wire Shark(http://www.wireshark.org/)非常酷(过滤器,报告,统计数据)。

至于测试,您可以将其作为集成测试的一部分(wireshark中有一些命令行选项)

答案 5 :(得分:0)

要快速检查,您可以使用Wireshark(以前称为Ethereal)查看您的数据是否以纯文本格式传输。

答案 6 :(得分:0)

正如之前提到的http://www.wireshark.org/,您还可以使用cain & able将流量重定向到第三台计算机,并从那里开始协议。

相关问题