HDCP组成部分解析和烧录方式介绍
第一部分是鉴定协议,确认接收者的合法性。发送方与接收方进行信息交换,接收方将KEY传给发送方,发送方验证并用此产生公共密钥,通过公共密钥作为均衡KEY混入授权证实序列中,用于加密内容的解密,授权确认完成 出于保密原因,密钥不能从IC里读出 (要透过 Scaler HDCP Engine 去 get)
第二,一旦确认,发送方将加密内容以双方都知道的解密方式传给接收方;
第三,当非授权设备接收时,通过发送方的检测,将中断内容传送。
HDCP具体工作过程:首先由主机发送密钥选择导引序列(AKSV)和64bit伪随机序列(An)到接收方,接收方回传密钥选择导引序列(BKSV)和转发器位(REPEAT-bit)(如是转发器用以表示身份),发送方确认BKSV是否已被废除和是否包含20个1和20个0;如果双方的设备密钥和KSV有效,则计算产生一个56bit的公共密钥Km和Km`,然后可产生KS、KS`(传输密钥)、M0、MO`(64bit后续验证用追加初始序列)、RO、R0`(16bit指示验证成功,它必须在AKSV发送后100ms内传回发送方;验证成功后R01和R0相等;每128帧修正一次,每2s回传一次)。因此当DVI接口中断传输2s以上,或是非授权设备接收时,主机将停止传输内容,以达到保护传输内容的目的。
1.如果要指定 HDCP Key 的 Counter 你可以在档案最后两个 Bytes 修改 然后 save 一次,再 close HDCP Writer 程序 然后 再 Run 一次HDCP Writer 程序 ,你可以看到 4a380 , 4a381 = 0x0308 (十六进制)= 776 (十进制) 代表现在烧到 776 组
2. 用序号的方式 要考虑到
1. 不同的 Model 会有相同的序号
2. 相同的 Model , 序号也会有相同的可能性 (y ww) 不同 序号相同
3. 每一千组为一档案 那序号应该索引那一个 File ?
4. 烧 HDCP Key时 如何得到 S/N 数据 ? 还需要 Bar Code Reader 吗 ?
5. 那 S/N 格式每家格式都不同 维护有其困难(要针对 Model)
3. HDCP Key 的掌控要完善必须 all models 联机管理 But ,工程耗大
4. I can write a tool to skip the address of 0x1f000 ~0x1ffff for update BIOS ,But the speed is very slow , I do not know why ?
5. Any Comments , call me B/R HH
HDCP KEY功能我有以下疑问:
按目前来说.
1.每次在烧录密码只能在TOOL里烧录时递进场(+1),如果有一个号码(998)因主板坏了,更换主板.要第二次烧录此号码.需要从1烧起再来一直烧录到998号码.-->这样真的很麻烦.如果这个号码不要了.又是浪费.
2.如因其它问题,需要重新Update BIOS时,虽然在烧录BIOS的Tool中设置(如下:
将F->变为E.可以不复掉此原来的号码.但这如果来给产线作业者又是一大的难关.
2.1:作业员漏记做更改.-->号码被改掉.
2.2:作业内容增加.-->没有防呆.
是否在烧录密码时,可否能采用烧S/N方法进行.如能这样的话,一切问题都将能解决..以上为个人观点...
我补充一下 HDCP Key 的概念
公司买了 10 万组的 Key , 暂且称为 Original Source Key ,这些 Key 不能直接拿来烧到 EEPROM or 程序 ROM ,每家 scaler 厂商都有提供 其加秘的程序 所以要将 Original Source Key 输入到加秘的程序 产生的 Key 才能烧到 EEPROM or 程序 ROM不能用 Genesis 的 加秘程序 产生的 Key 烧到 Master 的 Projects ,反之也是 , 目前我的做法是 把加秘过的 Key 以 1000 组为一个 档案
example : Mstart_Key_0000_0999.bin (代表 Key 000 ~ 999)每次烧完一组 HDCP Key , 程序自动 加 1 , 等到 Operator 关掉
烧录程序 Counter 就会被 save 到档案(Mstart_Key_0000_0999.bin )所以 next time , open file Counter 就会被自动加载
My Suggestion如果 10 万组的 Key 是否画分成
0 ~ 3万组 For Genesis
3~ 6万组 For Mastart
6~ 9万 For Realteck
9~10万 For other
Dear ALL
再补充一点,假如事后要Update BIOS时,请一定一定要确定绝对不能修改到HDCP KEY 的地址。以WBTB for Mstar scalar来说,HDCP KEY 存放的地址在1F000h~1F120h,因此,这块区域是不能被破坏的,在update BIOS时必需将这段地址空下来。您可以利用烧录程序设定这段地址不要破坏:在Mstar 提供的烧录程序ISP_tools,在读取ROM file的选项中(Read),start Addr(一般从00000h)、End addr(一般到1ffffh)请将End Addr设到1efffh,如此1f000h地址就不会被破坏了。
Dear All
1. This BIOS is WBTB-D1A V1.01 for HDCP ready. I’d tested to burn HDCP KEY and the result is OK.
2. Please make sure that HDCP KEY must burn after BIOS update is finished.
1. Open HDCP source file
2. 按一下 最右边的 ICON (那个很爽的女人)
3. 自动 Disable ISP and ISP HDCP button (因为 User 采用 BarCode Auto Scan 的方式)
4. (那个很爽的女人) 知道你按了 她 就 POP a Menu as below
5. 在 Serial Number 字段 扫入 序号 后 (如果手动 KeyIn S/N 记得要按 Enter 键)
6. LP.exe 就开始把 HDCP Key Data 烧入 程序 ROM address 0x1F000 ~ 0x1FFFF
7. 解释 Form1 的定义 Example S/N 10005 烧入第 898 组 Key 他的数据是 在档案 0x42930 开始的地方 长度 0x130
8. 当 Close 上述的 Menu , LP.exe 就自动把 Form1 的数据存放到 相同文件名但附档名为 xls (Excel 的格式)
另外,因为存在以下隐患,还需请你帮忙是否能够再改善.
1.烧录的时候,要用手动点\"ISP_HDCP\"才能进行烧录.
--->作业较麻烦.会出现点错造成其它想不到的ISSUE出来.
2.当作业员上班休息时/白天上下班/白夜班交接时如果忘记最后烧录的号码.又碰到PC非法关机或当机的情形. 会造成最后烧录为
第几组号码.所以,我有以下想法.同白平衡调整一样.当扫条形码时.就运行HDCP烧录.同时烧录完成后在Tool的目录
下有一个data.ini文件记录着如下:
S/N HDCP Key Password Date(日期/时间)
100017814_001234 107 **** 20061026 16:50
100017814_001235 100017814_001236 依次类推下去.
108 109 **** **** 20061026 16:51 20061026 16:52
因篇幅问题不能全部显示,请点此查看更多更全内容