Security 如何测试SSL连接?

Security 如何测试SSL连接?,security,network-programming,openssl,Security,Network Programming,Openssl,我正在我的网络应用程序上试用OpenSSL,我想测试发送的数据是否经过加密,并且窃听者看不到 您可以使用什么工具进行检查?这是否可以通过编程实现,以便将其放在单元测试中?检查wire shark 和tcp转储 不确定是否将这些集成到单元测试中。他们会让你在一个非常低的层面上了解网络层面上发生了什么 也许在单元测试中,确定流看起来是什么样的未加密流,并确保加密流不相似,以便进行快速检查,您可以使用(以前称为Ethereal)查看您的数据是否以纯文本传输。耶-Wire Shark()非常酷(过滤器、

我正在我的网络应用程序上试用OpenSSL,我想测试发送的数据是否经过加密,并且窃听者看不到

您可以使用什么工具进行检查?这是否可以通过编程实现,以便将其放在单元测试中?

检查wire shark

和tcp转储

不确定是否将这些集成到单元测试中。他们会让你在一个非常低的层面上了解网络层面上发生了什么


也许在单元测试中,确定流看起来是什么样的未加密流,并确保加密流不相似,以便进行快速检查,您可以使用(以前称为Ethereal)查看您的数据是否以纯文本传输。

耶-Wire Shark()非常酷(过滤器、报告、统计数据)


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

,这是一个快速而肮脏的通用客户端,您可以使用它来测试服务器连接。它将显示服务器证书和协商的加密方案。

Franci Penov回答了我的一个问题“”,建议我看看Fiddler:

我试过了,如果您对查看HTTP请求感兴趣的话,它工作得很好。:)

如前所述,您还可以使用将流量重定向到第三台机器,并从那里对协议进行任意更改。

我发现非常有用。以下是他使用的一些工具:

$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主机fred和端口443

要测试流是否加密,请计算字节值的分布。正确加密的流将具有均匀分布,因为它看起来像随机噪声,而未加密的流则不会。根据我的经验,当stddev大于等于3时,这一点出人意料地好。有趣的想法一定要尝试一段时间