DRM分为两类,一类是多媒体保护,例如加密电影、音乐、音视频、流媒体文件。另外一类是加密文档,例如Word, Excel, PDF等。
DRM主要通过技术手段来保护文档、电影、音乐不被盗版。
这项技术通过对数字内容进行加密和附加使用规则对数字内容进行保护,其中,使用规则可以断定用户是否符合播放。
 
系统原理
系统会将密钥标识和许可证颁发机构地址写入打包加密后的内容的头部,并且使用另一对密钥。
通过椭圆曲线加密算法对头部信息进行签名,防止头部信息被非法修改。
内容部分的加密过程可以简单描述为,首先使用SHA-1散列算法处理56位密钥,得到一个160位,即20字节的密钥散列。
这个密钥散列的前12字节将用作生成加密过程中使用的密钥。
12个字节将作为一个密钥,通过RC4算法加密一个全零的64字节串,得到一个64字节的加密结果。
其前48字节,即1232位字作为产生加密内容使用的密钥的来源,分别针对前面632位字的和后面632位字进行操作。对于被加密的内容来说,首先把被加密的内容切分为8个字节的数据块。
对于每一个8个字节的数据块,它的前32位数据将和上述密钥的前面632位字的进行运算,后32位数据将和上述密钥的后面6个字节进行运算。
具体运算过程是,32位数据与632位字的的密钥的第一节字节相乘,然后除以4294967296,取其余数,并交换结果的高16位和低16位,然后再与632位字的的密钥的第二节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与632位字的的密钥的第三节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与6个字节的密钥的第四节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再与632位字的的密钥的第一节字节相乘,然后除以4294967296取其余数,并交换结果的高16位和低16位,然后再加上632位字的密钥,然后除以4294967296取其余数,上述过程定义为函数f(x),设一个64位状态值,并设初值为零。