用于解密捕获的SRTP数据包的前端。

dsrtp的Python项目详细描述


https://travis-ci.org/mayfieldrobotics/dsrtp.svghttps://img.shields.io/pypi/v/dsrtp.svg

用于使用:

解密捕获的SRTP and SRTCP数据包的简单前端

安装

如果需要,请安装devellibpcaplibsrtp,例如:

sudo apt-get install libpcap-dev libsrtp0-dev

然后:

pip install dsrtp

用法

命令

例如,解密捕获的数据包,然后写入捕获文件:

dsrtp test/fixtures/av.pcap /tmp/rtp.pcap -ld -k test/fixtures/av_material.hex

如果您有一个混乱的捕获(例如,多个srtp流),那么您可以 例如,通过address:port选择绑定流,例如:

dsrtp test/fixtures/av.pcap /tmp/rtp.pcap -k test/fixtures/av_material.hex -l d -i 192.168.121.234:60401

lib

在代码中执行相同操作:

importdsrtpenc_km=open('test/fixtures/av_material.hex').read()km=dsrtp.KeyingMaterial.unpack_hex(enc_km)p=dsrtp.SRTPPolicy(ssrc_type=dsrtp.SRTPPolicy.SSRC_ANY_INBOUND,key=km.local)withdsrtp.SRTP(p)asctx, \
        open('test/fixtures/av.pcap','rb')assrtp_pcap, \
        open('/tmp/rtp.pcap','wb')asrtp_pcap:pkts=dsrtp.read_packets(srtp_pcap)decrypted_pkts=dsrtp.decrypt_packets(ctx,pkts)dsrtp.write_packets(rtp_pcap,decrypted_pkts)

开发

创建venv

mkvirtualenv dsrtp
pip install Cython

然后得到它:

git clone git@github.com:mayfieldrobotics/dsrtp.git
cd dsrtp
workon dsrtp
pip install -e .[test]

并进行测试:

py.test test/ --cov dsrtp --cov-report term-missing --pep8

释放

测试通过:

py.test test/ --cov dsrtp --cov-report term-missing --pep8

所以更新__version__in:

  • dsrtp/__init__.py

提交并标记:

git commit -am "release v{version}"
git tag -a v{version} -m "release v{version}"
git push --tags

并且travis将它发布到pypi

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java操作数组上的字符串   java JAXB内容未实例化   图形在Java中如何绘制垂直居中的字符串?   java Apache Ant:使用Junit时出现NoClassDefFoundError   java无法从服务器上运行perl脚本   如何在java中沿树进行预排序遍历,并打印0和1以对应每个节点上的特定字符?   java如何创建。p12文件?   java线程访问无效   java只匹配命名空间中的XML节点,而不知道NS前缀   从java获取2d arraylist元素   数组Java动态集合对象   java Xpath通过通配符或布尔运算查找以相同名称开头的节点?   java注释元素类型   java在中看不到Super()。反编译后的类文件