首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用python解密ssl加密数据

用python解密ssl加密数据
EN

Stack Overflow用户
提问于 2013-12-06 20:14:17
回答 1查看 3.8K关注 0票数 1

我正在使用dpkt分析用python捕获的数据包。应用层使用ssl加密。我想解密ssl数据(即tcp有效负载)。我有私钥,所以我应该能够使用密钥来解密数据。这是我的剧本:

代码语言:javascript
复制
#!/bin/python
import sys
import dpkt

def main():

    if not len(sys.argv) == 2:
        print "need a pcap file"
        return 1

    filename = sys.argv[1]
    f = open(filename)
    pcap = dpkt.pcap.Reader(f)

    framenum = 1
    for ts, buf in pcap:

        if framenum == 123:
            eth = dpkt.ethernet.Ethernet(buf)
            ip = eth.data
            tcp =  ip.data
            ssl =  tcp.data

            # decrypt ssl

        framenum += 1



if __name__ == '__main__':
    sys.exit( main() )

我可以用什么代替“解密ssl”注释来获得解密的ssl字节?我猜想应该有一些库可以为我做到这一点,但是我对ssl和python的所有搜索都提供了有关编写可以接收ssl连接的套接字程序的信息。我对此不感兴趣。相反,我需要解密使用ssl加密的数据。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-06 20:56:46

你不太可能找到现成的库来做这件事。从数据包转储中解密相当复杂,我相信现在最好的工具仍然是Wireshark

请注意,您还需要从握手开始捕获整个TLS会话。此外,如果连接使用了提供前向保密(任何DHE或ECDHE)的临时模式,则无法对数据进行解密。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20432770

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档