SIP 身份验证与证书服务详解
1. SIP 认证身份主体(AIB)
在 SIP 通信中,身份验证至关重要。传统的 S/MIME 方式通过对整个隧道化 SIP 消息(message/sip)计算签名来进行身份断言,但 SIP 消息通常较大,签名中的大多数头部字段与身份无关,并且在请求通过一系列 SIP 代理路由时,部分字段可能会发生变化,这给接收方的用户代理(UA)带来了区分合法头部变化和安全违规的难题。
SIP 认证身份主体(AIB)则通过对与确定发送者身份以及将发送者与请求关联相关的 SIP 消息头部子集计算签名来解决这一问题,这个子集被称为 message/sipfrag。
1.1 message/sipfrag 头部字段选择
选择构成 message/sipfrag 的头部字段子集是为了防止重放和剪贴攻击。例如,至少包含 From、Date、Call - ID 和 Contact 字段可以为防止此类攻击提供合理的保证。为了获得额外的保护,该集合还可以包含 To 和 CSeq 头部字段。
- 如果包含可选的 CSeq 头部字段,由于每个新请求的 CSeq 值都会递增,因此在会话期间发送的每个请求都必须生成并验证新的 AIB。
- 如果不使用 CSeq 值,则 AIB 可以在同一会话中重复使用,但由于 Call - ID 字段的存在,不能跨会话使用。
1.2 AIB 示例
以下是一个包含 AIB 的 INVITE 请求示例:
INVITE sip:bob@example.net SIP/2.0
Via:
超级会员免费看
订阅专栏 解锁全文
985

被折叠的 条评论
为什么被折叠?



