主题:闲聊密码 外一篇——悲惨的DVD(上) -- 代码ABC
楼主对当时巨头们聘请的密码学家颇有瞧不起的意思,不过他们也是迫不得已啊,一来类似于DVD这种类型的保密问题本来就很难,确切地说现在也没有什么很好的办法可以完美地解决;二来当时美国政府有密码出口限制的,40bit密钥已经是出口政策的上限。
另外,每张DVD上实际上是有四百多个加密后的disk key,分别用不同厂家的密钥来加密,当时的确是先获得了xing的密钥,从而可以将dvd内容解密出来,算法公布后又有人发现这一算法很弱(不仅仅是密钥短),于是开发出穷尽密钥的程序。下面就是号称世界上最短的破解css的程序,只有434个字符:(注释不算)
/* efdtt.c Author: Charles M. Hannum <[email protected]> */
/* */
/* Thanks to Phil Carmody <[email protected]> for additional tweaks. */
/* */
/* Length: 434 bytes (excluding unnecessary newlines) */
/* */
/* Usage is: cat title-key scrambled.vob | efdtt >clear.vob */
#define m(i)(x[i]^s[i+84])<<
unsigned char x[5],y,s[2048];main(n){for(read(0,x,5);read(0,s,n=2048);write(1,s
,n))if(s[y=s[13]%8+20]/16%4==1){int i=m(1)17^256+m(0)8,k=m(2)0,j=m(4)17^m(3)9^k
*2-k%8^8,a=0,c=26;for(s[y]-=16;--c;j*=2)a=a*2^i&1,i=i/2^j&1<<24;for(j=127;++j<n
;c=c>y)c+=y=i^i/8^i>>4^i>>12,i=i>>8^y<<17,a^=a>>14,y=a^a*8^a<<6,a=a>>8^y<<9,k=s
[j],k="7Wo~'G_\216"[k&7]+2^"cr3sfw6v;*k+>/n."[k>>4]*2^k*257/8,s[j]=k^(k&k*2&34)
*6^c+~y;}}
- 相关回复 上下关系8
🙂同等blueray的故事,巨头吃一堑 胡丹青 字43 2009-05-17 15:40:48
🙂xing这公司也挺倒霉的 小河流水 字54 2009-05-17 12:37:21
🙂没有, 被Real Network 收购了 非洲母鸡 字86 2009-05-24 17:58:22
🙂稍微补充几句
🙂冒个泡 riverside 字122 2009-05-17 10:42:22
🙂【原创】闲聊密码 外一篇——悲惨的DVD(下) 143 代码ABC 字3777 2009-05-17 10:18:36