数字版权管理
来自ITwiki,开放的信息技术大百科
数字版权管理(Digital Rights management,DRM)是一种保护内容免遭未经授权的使用或复制的方法。
目录 |
概述
数字版权管理为内容提供者保护他们的私有音乐或其他数据免受非法复制和使用提供了一种手段。这项技术通过对数字内容进行加密和附加使用规则对数字内容进行保护,其中,使用规则可以断定用户是否符合播放
微软视窗操作系统媒体数字版权管理
微软视窗操作系统媒体数字版权管理(Microsoft Windows Media Digital Rights Management)是微软公司开发的一套数字版权管理解决方案。
内容提供商提供的内容首先经过Package过程打包加密,然后分发到最终用户。当最终用户尝试播放经过打包加密的内容时,播放器会自动获取许可证,许可证中包含了解密内容需要的密钥。
MS-DRM系统的对内容进行打包加密需要几个步骤。打包加密过程需要一个种子作为输入,这个种子需要严格保密,并且由打包加密机构和许可证颁发机构共享,打包加密程序将会为针对内容自动生成一个密钥标识。密钥通过种子和密钥标识生成,密钥长度为56位。
MS-DRM系统会将密钥标识和许可证颁发机构地址写入打包加密后的内容的头部,并且使用另一对密钥,通过椭圆曲线加密算法对头部信息进行签名,防止头部信息被非法修改。内容部分的加密过程可以简单描述为,首先使用SHA-1散列算法处理56位密钥,得到一个160位,即20字节的密钥散列。这个密钥散列的前12字节将用作生成加密过程中使用的密钥。这12个字节将作为一个密钥,通过RC4算法加密一个全零的64字节串,得到一个64字节的加密结果,其中前48字节,即12个32位字作为产生加密内容使用的密钥的来源,分别针对前面6个32位字的和后面6个32位字进行操作。对于被加密的内容来说,首先把被加密的内容切分为8个字节的数据块。对于每一个8个字节的数据块,它的前32位数据将和上述密钥的前面6个32位字的进行运算,后32位数据将和上述密钥的后面6个字节进行运算。具体运算过程是,32位数据与6个32位字的的密钥的第一节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与6个32位字的的密钥的第二节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与6个32位字的的密钥的第三节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与6个字节的密钥的第四节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与6个32位字的的密钥的第一节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再加上6个32位字的密钥,然后除以4294967296取其余数,上述过程定义为函数f(x),设一个64位状态值,并设初值为零。然后待续。
OpenIPMP
建设中




