HDCP的key交互
2014-03-06 16:44
183 查看
HDCP保护系统包含三个重要的部分,它们分别是授权认证协议、数据加密/解密和自我更新。
1.授权认证(Authentication
Protocol) 每一台支持HDCP技术的设备(发送端和接收端)都有一套由Digital Content Protection LLC公司统一分发的全球唯一的设备钥匙集(Device Key Set),它由一组设备私有密钥(Device
Private Keys,DPKs)和一个与之配套的密钥选择向量(Key Selection Vector,KSV)组成。其中前者由40个不同的56bit二进制数组成(严格保密),后者是一个40bit的二进制数。
在两台HDCP设备传输数据前,根据授权认证协议,发射端和接收端先相互读取对方的KSV值.然后根据对方的KSV值在自己的DPKs值中选取一部分密钥,经过特定算法计算出各自的共享密值(Shared
Secret Value),根据HDCP的设计,如果双方都提交的是经过授权的KSV值,则计算出的共享密值应该相等,否则连接设备就是非法的。
2.数据加密/解密
当设备合法性验证成功之后,设备之间开始传送数据,HDCP的密码模块(HDCP Cipher)根据在授权认证过程中产生的共享密值,通过特定算法算出一个24bit伪随机加密数据,该数据与由HDMI(High
Definition Multimedia Interface,高清晰多媒体接口)三条TMDS(Transition
Minimized Differential Signal,最小化传输差分信号)通道传输的24bit内容数据进行异或逻辑运算,结果再送往TMDS编码器生成TMDS信号,然后传送出去。而在接收端,由相同的机构和共享密值产生相应的24bit伪随机解密数据,来还原内容数据。
3.自我更新(Renewability)
为了应对密钥泄露的情况,HDCP特别建立了“撤销密钥”机制。如上所述,在HDCP系统工作前,首先会检查发送设备的KSV值(这个值实际上就是该设备的序列号,是唯一的),在HDCP系统收到KSV值以后,将会对比包含在视频数据中的撤销列表。如果该KSV值出现在撤销列表中,则HDCP系统就会把这个传输设备判定为非法设备而拒绝连接。值得一提的是,为防止授权设备的DPKs泄露后被用于制造非法设备、窃取数据,HDCP中的撤销列表将随着视频节目的更新而更新。
这样的设计就能够保证整个HDCP系统的可靠性。即便是一台HDCP发送器或者接收器被破解,也不会影响到整个HDCP系统。而一旦该设备被破解,在播放随后更新的电影内容时也会因为KSV被加入撤销列表而无法正常播放。
HDCP通过专门的TMDS编/解码器完成信号的加密/解密。[5]
1.授权认证(Authentication
Protocol) 每一台支持HDCP技术的设备(发送端和接收端)都有一套由Digital Content Protection LLC公司统一分发的全球唯一的设备钥匙集(Device Key Set),它由一组设备私有密钥(Device
Private Keys,DPKs)和一个与之配套的密钥选择向量(Key Selection Vector,KSV)组成。其中前者由40个不同的56bit二进制数组成(严格保密),后者是一个40bit的二进制数。
在两台HDCP设备传输数据前,根据授权认证协议,发射端和接收端先相互读取对方的KSV值.然后根据对方的KSV值在自己的DPKs值中选取一部分密钥,经过特定算法计算出各自的共享密值(Shared
Secret Value),根据HDCP的设计,如果双方都提交的是经过授权的KSV值,则计算出的共享密值应该相等,否则连接设备就是非法的。
2.数据加密/解密
当设备合法性验证成功之后,设备之间开始传送数据,HDCP的密码模块(HDCP Cipher)根据在授权认证过程中产生的共享密值,通过特定算法算出一个24bit伪随机加密数据,该数据与由HDMI(High
Definition Multimedia Interface,高清晰多媒体接口)三条TMDS(Transition
Minimized Differential Signal,最小化传输差分信号)通道传输的24bit内容数据进行异或逻辑运算,结果再送往TMDS编码器生成TMDS信号,然后传送出去。而在接收端,由相同的机构和共享密值产生相应的24bit伪随机解密数据,来还原内容数据。
3.自我更新(Renewability)
为了应对密钥泄露的情况,HDCP特别建立了“撤销密钥”机制。如上所述,在HDCP系统工作前,首先会检查发送设备的KSV值(这个值实际上就是该设备的序列号,是唯一的),在HDCP系统收到KSV值以后,将会对比包含在视频数据中的撤销列表。如果该KSV值出现在撤销列表中,则HDCP系统就会把这个传输设备判定为非法设备而拒绝连接。值得一提的是,为防止授权设备的DPKs泄露后被用于制造非法设备、窃取数据,HDCP中的撤销列表将随着视频节目的更新而更新。
这样的设计就能够保证整个HDCP系统的可靠性。即便是一台HDCP发送器或者接收器被破解,也不会影响到整个HDCP系统。而一旦该设备被破解,在播放随后更新的电影内容时也会因为KSV被加入撤销列表而无法正常播放。
HDCP通过专门的TMDS编/解码器完成信号的加密/解密。[5]
相关文章推荐
- 一顺眸
- 关于强命名
- C++堆栈实现及拷贝构造函数的使用注意事项
- 宏定义#define
- 反编译教程
- ASP.NET AJAX(Atlas)和Anthem.NET——管中窥豹般小小比较
- 《三体——地球往事》
- 声明
- ECShop 添加文章时作者默认为当前登录用户
- linux Centos 配置本地yum源
- java中的向下转型和向上转型
- 一次rac+dataguard 创建过程遇到密码文件问题
- ios 键盘事件处理
- Hibernate Annotation导入包说明
- Android四大组件的生命周期
- Android -- 状态栏通知Notification、NotificationManager详解
- maven 常用命令
- class 字节码研究,针对动态代理源码深入研究
- C,C++宏中#与##的讲解
- sublime text3的Package Control安装