基于DisplayPort接口的HDCP软件实现及应用
DisplayPort
1 DisplayPort接口
DisplayPort体积小,传输结构利用了类似PCI Express的电气层,采用"Micro-Packet Architecture(微封包架构)"传输架构,使视频内容以封包方式传送。传输数据最高可支持10.8Gb/s的传输带宽。
图1 DisplayPort数据传输通道
2 DisplayPort链路
DisplayPort链路由一个主链路、一个辅助通道(AUX CH)、一个热插拔检测(HPD)信号线组成。如图1所示,主链路是一条单向、高带宽并且低延时的通道,用于传输未经压缩的视频和音频等同步数据流。辅助通道是一条用于链路管理和设备控制的、半双工的双向通道。HPD信号用作终端设备的中断请求信号。
HDCP
HDCP技术由好莱坞与Intel合作开发,保护未经压缩的数字音视频内容,适用于高速的数字视频接口(DisplayPort、HDMI、DVI),其最新版本HDCP 1.3已经支持DisplayPort接口采用源设备和显示设备间直接认证,内容加扰实现保护。HDCP设计为内容消费链中的最后一个环节,从内容源设备到显示设备,HDCP不允许完全内容拷贝行为,即拷贝控制信息CCI 只有禁止拷贝状态。在系统更新方面,HDCP采用吊销列表来屏蔽已经被窃取的设备私钥。
HDCP与DisplayPort
1 HDCP在DisplayPort上应用机制
HDCP应用于DisplayPort接口的保护机制包括以下三个元素。
①HDCP发送器,能立即识别下游接收器的拓扑连接结构,认证协议会确保HDCP发送器发出的信号是HDCP接收器所授权接受的。
②DCP LLC会撤销授权无效的HDCP接收器的授权。
③在有HDCP保护的信号下发送与接收的同时,不断对加密视频传输的完整性进行验证。
2 HDCP结构以及算法实现
①HDCP结构
HDCP在DisplayPort接口内容保护中采用了树状的拓扑结构,为了使得完成认证的时间在容许范围之内,HDCP规定了一个拓扑结构最多允许有7层结点、128个接收设备。图2显示了一个设备深度为2、设备数为4的拓扑结构。
图2 HDCP拓扑结构图
②结合硬件采用软件实现HDCP
软件实现HDCP过程中,需要芯片内部硬件加密系统的支持,如伪随机数的产生等。硬件加密系统结构如图3所示。
(d)函数定义
在SHA1中需要一系列的函数。每个函数ft(0≤t≤79)都操作32位字B,C,D(B,C,D为32位的函数形参)并且产生32位字作为输出。ft(B,C,D)定义如下。
(e) 计算消息摘要
SHA1使用补位和补长度后的消息来计算消息摘要。计算需要两个缓冲区,每个都由5个32位的字组成,还需要一个80个32位字的缓冲区。第一个5个字的缓冲区被标识为A,B,C,D,E。第一个5个字的缓冲区被标记为H0, H1, H2, H3, H4。80个字的缓冲区被标记为W0,W1,..., W79,另外还需要一个字的TEMP缓冲区。
为了产生消息摘要,首先处理前面定义的16个字的数据块M1, M2,..., Mn,处理每个数据块Mi包含80个步骤。在处理每个数据块之前,缓冲区被初始化为下面的值(十六进制):
处理Mi包括以下步骤:
(I)将 Mi分成16个字W0,W1,…, W15,W0是最左边的字。
(II)对于t=16~79令
(III)令A=H0, B=H1, C=H2, D =H3, E=H4。
(IV)对于t=0~79,执行下面的循环
E=D; D=C; C=S30(B); B=A; A=TEMP;
(V)令H0=H0+A,H1=H1+B, H2=H2+C, H3=H3+D, H4=H4+E
在处理完所有的Mn后,得到一个160位的字符串,也就是最后得到的V(V’)。中继器会将V’发送给发送端,发送端通过比较本地计算的V与接收到的V’是否相等来判断认证结果。
● 协议第三步:加密完整性检测
在解密过程中,HDCP在HDMI与DisplayPort中的应用所不同。在HDMI的解密过程中,HDCP系统会每2s中进行一次连接确认,同时每128帧画面进行一次发送端和接受端同步识别码,确保连接的同步,所有这些都是由发送端发起。而在DisplayPort的解密过程中, DisplayPort的Link Layer负责确认两台设备之间的连结效能与正确的沟通,以其参数值(0=完整、1=不完整)作为沟通的语言,该参数是发送端通过辅助通道读取接收端的DPCD的某一位的值来获取,也就是说,解密的完整性验证完全是由接收端来执行的。
DisplayPort HDCP 相关文章:
- 平板显示接口技术 (下)(09-10)
- 挑战HDMI:DisplayPort接口技术解析(10-08)
- DisplayPort接口(02-17)
- 基于DisplayPort 的解决方案实现多屏显示(07-22)
- DisplayPort 在电视中的应用(08-07)
- DisplayPort转DVI/HDMI信号的接口适配器(10-23)