音视频开源库: libsrtp

libsrtp是被广泛使用的 SRTP/SRTCP 加密的开源项目。

源码地址: GitHub - cisco/libsrtp: Library for SRTP (Secure Realtime Transport Protocol)

常用接口:

1. srtp_init:初始化 srtp 库,初始化内部加密算法,在使用 srtp 前,必须要调用了

2. srtp_create:创建 srtp_session

3. srtp_unprotect/srtp_protect: RTP 包加解密接口

4. srtp_protect_rtcp/srtp_unprotect_rtcpRTCP 包的加解密接口

5. srtp_set_stream_roc/srtp_get_stream_roc:设置和获取 stream 的 ROC,这两个接口在最新的 2.3 版本加入

重要的结构 srtp_policy_t,用来初始化加解密参数,在 srtp_create 中使用这个结构。以下参数需要关注:

1. DTLS 协商后得到的 MasterKeyMasterSalt 通过这个结构传递给 libsrtp,用于 session key 的生成。

2. window_size,对应我们之前描述的 srtp 防重放攻击的窗口大小。

3. allow_repeat_tx,是否允许重传相同序号的包。

 

使用该库作为基础库的开源音视频项目: srs/zlmediakit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值