基于智能密码钥匙的离线DRM认证方案,用智能密码钥匙来代替服务器发送新的版权许可,使用户可以在没有网络的情况下使用受DRM保护的信息内容,同时也可以在无DRM服务器的情况下使用DRM保护版权。
比如内容提供商使用DRM模式加密视频文件,在视频文件中设置URL,将内部信息存入智能密码钥匙中。
内容提供商将需要保护的视频文件加密,打包视频文件头信息,对大包好的视频文件头签名,将签名好的视频文件头和加密视频文件再一起打包,将内部信息存入智能密码钥匙中,完成智能密码钥匙的生产。
内部信息包括种子ID、密钥、公钥、密钥ID、公钥ID、开发商信息及证书名称。
内容提供商向用户分发视频文件、服务软件和智能密码钥匙。
用户接收到内容提供商所分发的产品后,先安装服务软件,然后将身份认证与本地计算机相连,再使用媒体播放器打开受DRM保护的视频文件。
媒体播放器为支持DRM的播放器软件,采用HTTP协议来申请和获取DRM版权许可。
受DRM保护的视频文件被打开后,媒体播放器寻找版权许可。
当支持DRM的媒体播放器打开受DRM保护的视频文件时,内置的DRM组件自动搜索本地的系统从而得到一个有效的版权许可,如果发现版权许可则DRM组件自动解密视频文件,解密视频文件的权限在版权许可中被指定。如果未找到一个有效的版权许可,媒体播放器将从DRM组件收到一个状态通知,媒体播放器将自动开始初始化版权许可申请过程;收到一个有效的版权许可后,视频文件就可以解密。如果权限允许,同时还可以在本地计算机备份一个版权许可。
如果找到版权许可,媒体播放器将寻找到的版权许可的信息发送给服务程序,然后服务程序再向身份认证设备发送版权许可的信息,身份认证设备接收到版权许可信息后,验证版权许可的信息的合法性。
在智能密码钥匙中验证版权许可。如果版权许可合法,则将信息返回给服务程序,服务程序生成新的版权许可,将版权许可返回给媒体播放器。
媒体播放器正常打开并播放视频文件
如果媒体播放器未找到版权许可,媒体播放器向服务程序发送许可申请信息重新申请版权许可,服务程序接收到媒体播放器的许可申请信息后,解析许可申请信息,然后送入智能密码钥匙,智能密码钥匙根据生产时存入的内部信息,判断内部信息的合法性。
服务程序后启动监听指定端口。为防止其他机器或外部网络的盗用,限制只接收本机的申请,当有本地信息申请时,从被监听端口先读取许可申请信息串,并调用许可申请信息解析函数,将得到的许可申请信息中的各个元素保存起来,用于以后验证和生成许可。
智能密码钥匙接收到服务程序发送的加密许可中请信息后,将在智能密码钥匙中解密得到的信息和智能密码钥匙中生产时存入的内部信息进行对比,并验证合法性和权限管理。
许可申请信息为内容头,内容头包括种子ID、内容ID、内容标识、属性和地址。
许可申请信息是在DRM的加密标准打包时写入视频文件内的信息产生的,具体过程为未找到版权许可时,媒体播放器先读出视频文件头的信息,生成许可申请信息包,发给头文件信息中指定的地址。
验证合法性是指版权许可是否为该视频文件的许可,是否有效,本操作需要与服务程序链接,服务程序为HTTP服务程序,能够接收HTTP协议的申请,并能访问智能密码钥匙和生成许可信息。权限管理是指包括备份、恢复、上播放、复制、起始日期、期满日期、安全级别和播放计数的管理。
属性为可选的一组命名值,可以用于标识内容所有者、作者的名字、内容的类型等。
判断许可申请信息的合法性,智能密码钥匙将许可信息发送给服务程序,服务程序接收到智能密码钥匙的返回许可信息后,利用DRM的机制生成版权许可,发给媒体播放器。
许可中请信息中包含用户的信息和视频文件的信息,当用户提交许可申请信息时将其发送给服务程序,服务程序将其解析成种子ID、公钥ID、内容ID和权限,将解析后的信息发送到智能密码钥匙,将在智能密码钥匙中对发送来的信息解密后得到的信息和智能密码钥匙中的内部信息进行对比,判断许可申请信息的合法性,并生成种子、私钥、内容ID、权限,最后根据种子ID、种子、权限,一起生成许可信息反馈给用户,用于媒体播放器对许可信息进行解密。
播放器得到版权许可后,通过版权许可中的密钥对视频文件进行解密。打开视频文件执行播放。