2012-06-24 37 views
0

我正在使用wireshark拦截正在从我的计算机发送的SSL通信。由于它是在我的机器上加密的,连接的私钥必须存储在那里...正确?在Windows上查找私钥

有没有一个应用程序只显示我的私钥。如果它很容易,我想这会是一种安全漏洞。

纠正我,如果我错了,但因为我加密与服务器公钥的连接,并用我的私钥解密传入,我只能解密传入连接...正确吗?

+0

您总是使用私钥进行加密并使用公开进行解密。连接的方向在这里并不重要。 –

+0

私钥存储在注册表AFAIK中。使用DACL保护访问。如果您拥有足够的权限,您可以获取此信息。 –

+0

我是完整的管理员,这是我的机器,所以权限不用担心。任何想法在注册表中的关键名称? –

回答

2

你在这里混淆了几件事情。

  1. 你不一定在客户端有私钥;

  2. an SSL server几乎总是有私钥;但是

  3. SSL未使用公钥/私钥加密,它使用会话中使用RFC 2246中定义的算法生成的对称会话密钥加密。

0

正如EJP指出的那样,只有在运行服务器而不是客户端时才有意义。

如果运行服务器,所用密钥的位置和格式将在特定服务器的配置中详细说明。某些服务器还包含一个导出此密钥的过程,该过程位于容器或密钥库中。

请注意,即使您获得私钥,某些SSL密码套件(特别是那些使用Diffie-Hellman密钥交换机制的套件)也会阻止Wireshark解密流量。