摘要
- RFC 5159 是 2008 年 3 月发布的资料性 RFC,为 OMA BCAST 登记四个 SDP 属性。
bcastversion声明广播系统版本,能够影响终端选择哪一套处理规则。- 未受完整性保护的版本值可能被篡改,从而让终端发生能力降级。
stkmstream把受保护媒体指向应处理的短期密钥消息流。- 指向正确的流并不等于收到密钥,更不证明授权、状态安装、解密与播放。
- 媒体级
stkmstream会覆盖会话级列表,因此作用域解析本身就是控制状态。 - 流编号只需在当前 SDP 会话内唯一,脱离会话便不是持久身份。
SRTPAuthentication选择 RCCm1、RCCm2 或 RCCm3,但字段本身不认证任何分组。SRTPROCTxRate声明 ROC 发送频率,缺省值为一。- 声明频率不证明接收端及时、经认证地收到 ROC,也不证明双方保持同步。
- IETF/IANA 负责名称登记,而属性解释的变更控制仍属于 OMA。
- 审计必须分别保存信令意图、实际接收、授权、安装状态、认证结果、解密与播放回执。
不含秘密的字段也能支配安全结果
安全审查常把注意力集中在密钥、令牌和加密载荷上,版本字段则容易被归入普通元数据。bcastversion 说明 BCAST 版本,表面上没有秘密,也没有直接执行密码运算。但终端读取它之后,会决定采用哪一种能力集合和处理路径。这使一个字符串获得了选择权。
RFC 5159 的安全注意事项直接指出:如果该属性没有得到保护,攻击者可以改写版本,促使系统使用旧版本。这不是“显示错误版本号”那么简单。真正的影响是接收端可能启用与发布端意图不同的协议行为,甚至选择保护更弱的路径。
因此,证明服务器生成过正确 SDP 不足以证明终端使用了正确规则。证据链至少要包括服务器原文、传输后的接收副本、完整性验证、解析结果、最终选中的能力以及随后发生的密码学结果。只保存第一项,会把发布意图错当成执行事实。
这里的治理原则适用于许多系统:凡是能够改变算法、输入、权限或回退路径的“元数据”,都应按控制输入保护。内容是否敏感,不决定它是否有权力;下游是否自动执行它,才决定风险。
密钥流映射只是路线图
广播终端面对的复用流可能很多。为了节省无线接收、耗电和处理成本,终端需要知道哪些短期密钥消息流与当前媒体有关。stkmstream 正是为此提供映射。它允许一个媒体关联一个或多个流,让终端集中处理所需控制信息。
地图不是交付回执。属性可以准确指出流 5,而流 5 的分组仍可能丢失、延迟、损坏或无法通过验证。终端可以收到消息,却没有解包密钥的权利。它可以得到密钥,却装入错误的上下文。上下文也可能已经安装,但媒体认证或解密仍然失败。
多条 stkmstream 还可能表示备选路径,或表示必须共同处理的多个流。仅仅看到多条引用,无法判断终端应任选其一还是必须收齐。操作记录需要保存选择规则和每一分支的结果,而不能把“存在引用”折算成“密钥可用”。
对于未加密媒体,该属性可以省略。由此可见,缺失也不能单独判定为故障。审计必须先判断媒体的保护状态,再解释属性是否应当存在。
覆盖规则会让同一份会话出现不同真相
stkmstream 可以出现在会话级,也可以出现在具体媒体段。媒体级值不是简单追加,而是覆盖会话级列表。这条语义决定终端最终监听什么。
假设全局声明指向流 3,而视频段改为流 8。只采集会话级字段的监控会报告流 3;把全部数字合并的工具会报告 3 和 8;遵守覆盖规则的终端则只对视频采用 8。三份记录都可能来自同一文本,只有最后一份反映有效控制状态。
更新会进一步放大差异。服务器发布新 SDP 后,终端可能仍持有缓存版本,可能收到但未应用,也可能在解析时丢失媒体作用域。服务器端的配置成功并不是端到端变更成功。必须让终端报告它实际接收的版本、解析后的有效列表以及订阅动作。
流编号本身也只在一个 SDP 会话内唯一。把 stkmstream=8 单独送入数据仓库,会丢掉编号的命名空间。另一会话可以合法地把 8 用于完全不同的流。可靠关联键应同时包含会话身份、描述版本或哈希、媒体段、作用域与时间。
算法选择不是分组认证结果
SRTPAuthentication 用数值选择 RCCm1、RCCm2 或 RCCm3。它让双方知道应使用哪一种认证方式,却没有对任何具体分组作出结论。只有接收端使用正确密钥、状态和算法处理分组后,才会产生通过或失败的回执。
SRTPROCTxRate 则规定发送端多久传输一次 rollover counter,允许 1 到 65535,属性缺失时按一处理。ROC 用于扩展较短的序列号空间。如果发送端与接收端对高位状态理解不同,即便静态配置完全一致,接收端仍可能无法正确解释后续分组。
声明“每次都发送”不证明接收端每次都收到;收到也不证明通过完整性检查;通过检查还不证明状态在需要之前完成切换。应分别记录声明值、实际控制分组、接收判决、安装后的计数器和受该状态影响的媒体认证结果。
配置符合语法,只能证明配置符合语法。它不能越过网络、授权、状态机和密码运算替下游作证。
登记名称与掌管含义是两种权力
RFC 5159 不是 IETF 标准轨文档,而是资料性文档。原因之一是相关技术来自 Open Mobile Alliance。IETF 和 IANA 为 SDP 属性提供稳定名称,避免不同实现使用冲突标记;OMA 仍保留这些属性语义的变更控制。
这是一种分层协作。登记机构可以证明某个名称被分配、格式如何记录,却不因此拥有全部技术含义,也不因此认证某个厂商实现。若要解释历史抓包,除了查看今天的 IANA 表格,还需要知道当时适用的 OMA 版本、实现配置和终端行为。
后来的 SDP 多路复用分类把 bcastversion 与 stkmstream 标为 NORMAL,而两个 SRTP 属性的类别尚未确定。该分类回答属性在捆绑媒体描述中如何处理,不是安全等级,也不是部署证明。把登记状态解读成成熟度,会再次让一个有限回执承担它没有承诺的事实。
RFC 当年提到预期用于 3GPP MBMS、3GPP2 BCMCS 和 DVB-H。那是 2008 年的设计语境,不证明某个运营商实际部署,更不证明某台终端完成过受保护播放。部署需要运行证据,播放需要终端结果。
来源
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
