一种文件加、解密方法及装置与流程

文档序号:16311647发布日期:2018-12-19 05:18阅读:225来源:国知局
一种文件加、解密方法及装置与流程

本发明涉及文件保护技术,尤其涉及一种文件加、解密方法及装置。

背景技术

http实时流媒体协议(hls,httplivestreaming)是基于http的流媒体网络传输协议。在hls协议规范中提出了对媒体文件进行加密保护时,在表征索引文件的m3u8播放列表文件中,通过#ext-x-key标签指定加密算法和加密密钥的统一资源标识符(uri,uniformresourceidentifier),播放器请求下载媒体文件的m3u8播放列表时,根据uri从密钥服务器获取该媒体文件的密钥信息,然后利用该密钥信息完成对m3u8播放列表文件的解密工作。

但是,现有技术在服务器部署和维护方面成本较高,且集成复杂度也高,使得中小型的企业无法承受,并且在当下数字媒体娱乐流行时代,演唱会、秀场直播节目时效性短需要快速上线的场景不太适用。

为解决上述技术问题,本发明实施例提供了一种文件加、解密方法及装置。

本发明实施例的技术方案是这样实现的:

根据本发明实施例的一方面,提供一种文件加密方法,所述方法包括:

在待发布的媒体文件的协议标签中添加伪密钥信息;

利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

利用所述真密钥信息对所述媒体文件进行加密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

上述方案中,所述方法还包括,在所述协议标签中添加加密标识和所述密钥映射规则的编号。

上述方案中,所述方法还包括:

预设所述密钥映射规则的编号与所述密钥映射规则的关系对照表。

上述方案中,所述方法还包括:

接收针对所述媒体文件的播放请求;

基于所述播放请求,发送所述媒体文件对应的播放列表;所述播放列表中携带有所述协议标签。

上述方案中,所述方法还包括:

根据预设周期,更新所述伪密钥信息和所述密钥映射规则。

根据本发明实施例的另一方面,提供一种文件解密方法,所述方法包括:

发送针对媒体文件的播放请求;

接收针对所述播放请求返回的播放列表;

解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有伪密钥信息、加密标识和密钥映射规则的编号;

确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

利用所述真密钥信息对所述媒体文件进行解密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

根据本发明实施例的第三方面,提供一种文件加密装置,所述装置包括:

添加单元,用于在待发布的媒体文件的协议标签中添加伪密钥信息;

转换单元,用于利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

加密单元,用于利用所述真密钥信息对所述媒体文件进行加密。

根据本发明实施例的第四方面,提供一种文件解密装置,所述装置包括:

发送单元,用于发送针对媒体文件的播放请求;

接收单元,用于接收针对所述播放请求返回的播放列表;

解析单元,用于解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有的伪密钥信息、加密标识和密钥映射规则的编号;

生成单元,用于确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

解密单元,用于利用所述真密钥信息对所述媒体文件进行解密。

本发明实施例的技术方案中,提供一种文件加、解密方法及装置,通过在待发布的媒体文件的协议标签中添加伪密钥信息;利用密钥映射规则将所述伪密钥信息转换成真密钥信息;利用所述真密钥信息对所述媒体文件进行加密。如此,通过在媒体文件的协议标签中添加伪密钥信息,而不是真密钥信息,再利用该伪密钥信息对应的真密钥信息对媒体文件加密,能够在实现针对媒体文件进行版权保护的基础上,省去了密钥服务器的部署及维护成本。

附图说明

图1为本发明实施例中文件加密方法的流程示意图;

图2为本发明实施例中文件解密方法的流程示意图;

图3为本发明实施例中文件加密装置的结构组成示意图;

图4为本发明实施例中文件解密装置的结构组成示意图;

图5为本发明实施例中文件加、解密装置的结构示意图。

具体实施方式

下面结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。

图1为本发明实施例中文件加密方法的流程示意图;如图1所示,所述方法包括:

步骤101,在待发布的媒体文件的协议标签中添加伪密钥信息;

本发明实施例中,所述方法主要应用于hls直播的端到端内容的场景中,利用hls协议把整个媒体流分成一个个小的基于http的文件来供客户端下载。在开始一个流媒体会话时,客户端会下载一个包含元数据的m3u8播放列表文件。其中,m3u8播放列表文件用于寻找可用的媒体流。

当媒体服务器从视频源提供商处获取到媒体数据时,媒体服务器将该媒体数据转换成hls格式的媒体文件,即ts和m3u8文件。然后,媒体服务器中的编码器会随机生成一个字符串作为伪密钥信息,然后将生成的伪密钥信息添加到该媒体文件的hls协议标签中。

具体地,媒体服务器可以将生成的伪密钥信息添加到m3u8播放列表k#ext-x-key标签中的uri字段。

本发明实施例中,媒体服务器还在#ext-x-key标签中添加了keyformatversions字段,用于描述伪密钥到真密钥的密钥映射规则。具体针对keyformatversions字段的定义如下:

当字段keyformatversions=0时,表示当前ts视频文件为未加密内容,此时,可以用于对未加密内容的加密流进行加密;其中,ts文件是指媒体文件的封装格式。

当字段keyformatversions=1时,表示采用基于字符串预处理加扰码策略的静态映射规则;

当字段keyformatversions=2时,表示采用基于md5加盐的随机动态映射规则。

本发明实施例中,在待发布的媒体文件的协议标签中添加伪密钥信息时的示例如下:

#ext-x-key:method=aes-128,uri=”key(false)&salt”,keyformat="privatedrm",keyformatversions=2;

其中url表示暴露给客户端的加盐的伪密钥;key(false)为利用预设混淆规则对所述伪密钥信息和所述数字字符串进行混淆计算的计算结果(即真密钥),salt为第一步生成的随机字符串;keyformatversions=2表示伪密钥到真密钥采用的密钥映射规则的算法编号。

步骤102,利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

本发明实施例中,所述密钥映射规则包括但不限于基于字符串预处理加扰码策略的静态映射规则;和/或,基于md5消息摘要算法加盐的随机动态映射规则。

其中,基于字符串预处理加扰码策略的静态映射规则,将所述伪密钥信息转换成真密钥信息,包括:

将原始的第一base64字典序列进行随机排序,生成乱序后的第二base64字典;

对所述伪密钥信息中第一位置(例如,奇数位置或偶数位置)的字符进行逻辑或运算,生成字符串混淆后的第二伪密钥信息;

采用所述第二base64字典对所述第二伪密钥信息进行base64运算,生成第一密钥值;

采用所述第二伪密钥信息和所述第一密钥值对预设扰码进行运算,生成第二密钥值;

将所述第一密钥值和所述第二密钥值按照第一运算规则(例如,奇、偶异或等运算)进行组合,生成第三密钥值;

利用md5消息摘要算法对所述第三密钥值进行计算,得到所述真密钥信息。

另一方面,基于md5加盐的随机动态映射规则,将所述伪密钥信息转换成真密钥信息,包括:

生成数字字符串,所述数字字符串为12位;例如,生成1000000000000以内的随机数字字符串,当该数字字符串不足12位时,高位用“0”补全,记为“salt”,并定义salt(i),其中,salt(i)表示随机字符串第i位的数值,i取值范围为[0,11];

利用预设混淆规则对所述伪密钥信息和所述数字字符串进行混淆计算,得到所述真密钥信息。

这里,预设混淆规则可以为:key(false)(i)=key(false)(i)^salt(i%11),且i取值范围为[0,key(false)长度-1];

key(false)=base64_encode(key(false))。

本发明实施例中,媒体服务器还用于预设所述密钥映射规则的编号与所述密钥映射规则的关系对照表。

例如,keyformatversions=1表示密钥映射规则的编号是“1”,

密钥映射规则的编号“1”对应的密钥映射规则是:基于字符串预处理加扰码策略的静态映射规则;

keyformatversions=2表示密钥映射规则的编号是“2”,

密钥映射规则的编号“2”对应的密钥映射规则是:基于md5加盐的随机动态映射规则。

步骤103,利用所述真密钥信息对所述媒体文件进行加密。

本发明实施例中,加密方式可以是aes-128。例如,加密后的完整的媒体文件的播放列表格式如下:

#extm3u

#ext-x-version:3

#ext-x-targetduration:10

#ext-x-media-sequence:152249

#ext-x-key:method=aes-128,uri="http://117.131.17.40:8080/live/testdrm/fileupvv4kj.key",keyformat="privatedrm",keyformatversions=2

#extinf:10.000000,

20180625041516-01-152249.ts

#extinf:10.000000,

20180625041516-01-152250.ts

#ext-x-key:method=aes-128,uri="http://117.131.17.40:8080/live/testdrm/filemw4iyuc.key",keyformat="privatedrm",keyformatversions=1

#extinf:10.000000,

20180625041516-01-152251.ts

其中,出现在#ext-x-key标签后面的ts文件表明该媒体文件是采用了uri指定的伪密钥http://117.131.17.40:8080/live/testdrm/fileupvv4kj.key进行加密的。

本发明实施例中,当客户端向媒体服务器发送播放请求,以请求媒体文件的m3u8播放列表文件时,媒体服务器能够接收到该播放请求,并基于该播放请求,向客户端发送该媒体文件对应的m3u8播放列表文件;m3u8播放列表文件的协议标签中携带有该媒体文件伪密钥信息、加密标识和对应的密钥映射规则的算法编号。

这里,客户端可以是手机、电脑、电视等终端中安装的播放器。

当客户端获取到m3u8播放列表文件时,解析m3u8播放列表文件,得到协议标签中携带的加密标识。然后,将所述加密标识与预设加密标识进行比较,当比较结果表征该加密标识是预设加密标识时,确定该媒体文件为预设加密流,接着,可以通过解析#ext-x-key标签中的url字段和keyformatversions字段,得到伪密钥字符串以及伪密钥到真密钥的映射规则的编号,然后采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息。

本发明实施例中,所述预设加密标识可以是“privatedrm”,当客户端解析到加密标识字段keyformat=privatedrm时,表示该媒体文件采用的是伪密钥加密方法。

本发明实施例中,为了提升针对媒体文件的安全等级,增加破解成本,媒体服务器还可以根据预设周期,更新所述伪密钥信息和所述密钥映射规则。

例如,预设周期可以是三天、一星期或一个月,那么,媒体服务器则可以根据预设周期将#ext-x-key标签中添加的keyformatversions字段的密钥映射规则的编号进行更新。

例如,当前字段keyformatversions=2,那么媒体服务器在满足预设周期“三天或一星期或一个月”时,将该字段keyformatversions=2改为字段keyformatversions=1。

本发明实施例通过在hls协议规范中,在媒体文件的播放列表中指定一个“假密钥”作为keyuri,媒体服务器中的编码器和客户端的播放器约定好从“假密钥”到“真密钥”的密钥映射规则,当播放器获取到播放列表中的“假密钥”后,通过与编码器加密时使用的密钥映射规则计算出真实密钥,利用真密钥对媒体文件进行解密;如此,增加了对媒体文件的非法破解难度。

图2为本发明实施例中文件解密方法的流程示意图,如图2所示,所述方法包括:

步骤201,发送针对媒体文件的播放请求;

这里,所述方法主要应用于安装有媒体播放器的终端,该终端可以是手机、电脑、电视等。

也就是说,播放器向媒体服务器发送播放请求,以请求获取媒体文件的播放列表。

步骤202,接收针对所述播放请求返回的播放列表;

本发明实施例中,具体返回的播放列表是媒体文件的索引文件:m3u8播放列表。

步骤203,解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有伪密钥信息、加密标识和密钥映射规则的编号;

本发明实施例中,当客户端获取到m3u8播放列表文件时,解析m3u8播放列表文件,得到协议标签中携带的加密标识。然后,将所述加密标识与预设加密标识进行比较,当比较结果表征该加密标识是预设加密标识时,确定该媒体文件为预设加密流,接着,可以通过解析#ext-x-key标签中的url字段和keyformatversions字段,得到伪密钥字符串以及伪密钥到真密钥的映射规则的编号。

步骤204,确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

例如,得到的密钥映射规则的编号是:keyformatversions=2,则客户端从预设的所述密钥映射规则的编号与所述密钥映射规则的关系对照表中进行查询,得到密钥映射规则的编号“2”对应的密钥映射规则。

然后利用得到的密钥映射规则的编号“2”对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息。

步骤205,利用所述真密钥信息对所述媒体文件进行解密。

本发明实施例中,所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

其中,基于字符串预处理加扰码策略的静态映射规则的具体定义如下:

将原始的第一base64字典序列进行随机排序,生成乱序后的第二base64字典;对所述伪密钥信息中第一位置(例如,奇数位置或偶数位置)的字符进行逻辑或运算,生成字符串混淆后的第二伪密钥信息;采用所述第二base64字典对所述第二伪密钥信息进行base64运算,生成第一密钥值;采用所述第二伪密钥信息和所述第一密钥值对预设扰码进行运算,生成第二密钥值;将所述第一密钥值和所述第二密钥值按照第一运算规则(例如,奇、偶异或等运算)进行组合,生成第三密钥值;利用md5消息摘要算法对所述第三密钥值进行计算,得到所述真密钥信息。

基于md5消息摘要算法加盐的随机动态映射规则的具体定义如下:

生成数字字符串,所述数字字符串为12位;例如,生成1000000000000以内的随机数字字符串,当该数字字符串不足12位时,高位用“0”补全,记为“salt”,并定义salt(i),其中,salt(i)表示随机字符串第i位的数值,i取值范围为[0,11];利用预设混淆规则对所述伪密钥信息和所述数字字符串进行混淆计算,得到所述真密钥信息。

这里,预设混淆规则可以为:key(false)(i)=key(false)(i)^salt(i%11),且i取值范围为[0,key(false)长度-1];key(false)=base64_encode(key(false))。

本发明实施例中,假如播放器得到的uri=“key(false)&salt”,则确定媒体文件采用的是基于md5加盐的随机动态映射规则进行的加密,则首先要对该媒体文件进行“去盐”操作,以还原出uri=key(false)。具体还原规则为:

key(false)=base64_decode(key(false));

key(false)(i)=key(false)(i)^salt(i%11),i取值范围[0,key(false)长度-1];最后,利用32位小写md5对key(false)进行计算,得到与该伪密钥信息对应的真密钥信息。

需要说明的是:上述实施例提供的文件解密方法在对媒体文件进行文件解密时,采用的密钥映射规则与上述实施例提供的文件加密方法在对媒体文件进行文件加密时,采用的密钥映射规则相同。也就是说,客户端与媒体服务器之间,只要按照约定好的一致密钥映射规则对字符串进行处理即可实现对媒体文件内容安全保护。

图3为本发明实施例中文件加密装置的结构组成示意图,如图3所示,所述装置包括:

添加单元301,用于在待发布的媒体文件的协议标签中添加伪密钥信息;

这里,在所述协议标签中还添加有加密标识和所述密钥映射规则的编号。

转换单元302,用于利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

加密单元303,用于利用所述真密钥信息对所述媒体文件进行加密。

本发明实施例中,所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

其中,基于字符串预处理加扰码策略的静态映射规则为:

将原始的第一base64字典序列进行随机排序,生成乱序后的第二base64字典;对所述伪密钥信息中第一位置(例如,奇数位置或偶数位置)的字符进行逻辑或运算,生成字符串混淆后的第二伪密钥信息;采用所述第二base64字典对所述第二伪密钥信息进行base64运算,生成第一密钥值;采用所述第二伪密钥信息和所述第一密钥值对预设扰码进行运算,生成第二密钥值;将所述第一密钥值和所述第二密钥值按照第一运算规则(例如,奇、偶异或等运算)进行组合,生成第三密钥值;利用md5消息摘要算法对所述第三密钥值进行计算,得到所述真密钥信息。

基md5加盐的随机动态映射规则为:

生成数字字符串,所述数字字符串为12位;例如,生成1000000000000以内的随机数字字符串,当该数字字符串不足12位时,高位用“0”补全,记为“salt”,并定义salt(i),其中,salt(i)表示随机字符串第i位的数值,i取值范围为[0,11];利用预设混淆规则对所述伪密钥信息和所述数字字符串进行混淆计算,得到所述真密钥信息。

这里,预设混淆规则可以为:key(false)(i)=key(false)(i)^salt(i%11),且i取值范围为[0,key(false)长度-1];key(false)=base64_encode(key(false))。

本发明实施例中,在媒体服务器中预设有所述密钥映射规则的编号与所述密钥映射规则的关系对照表。基于该关系对照表,可以确定目标媒体文件的加密规则对应的真密钥信息。

本发明实施例中,所述装置还包括:接收单元304和发送单元305;

其中,接收单元304,用于接收客户端针对所述媒体文件的播放请求;

发送单元305,用于基于所述播放请求,发送所述媒体文件对应的播放列表;所述播放列表中携带有所述协议标签。

本发明实施例中,所述装置还包括:更新单元306;

更新单元306,用于根据预设周期,更新所述伪密钥信息和所述密钥映射规则。

需要说明的是:上述实施例提供的文件加密装置具体可以是媒体服务器,在媒体服务器对媒体文件进行加密时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的文件加密装置与文件加密方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图4为本发明实施例中文件解密装置的结构组成示意图;如图4所示,所述装置包括:

发送单元401,用于发送针对媒体文件的播放请求;

接收单元402,用于接收针对所述播放请求返回的播放列表;

解析单元403,用于解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有的伪密钥信息、加密标识和密钥映射规则的编号;

生成单元405,用于确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

解密单元406,用于利用所述真密钥信息对所述媒体文件进行解密

本发明实施例中,该文件解密装置具体可以是安装有媒体客户端的媒体播放器,该媒体播放器具体可以是手机、电脑、音箱、电视等。

本发明实施例中,所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

其中,基于字符串预处理加扰码策略的静态映射规则为:

将原始的第一base64字典序列进行随机排序,生成乱序后的第二base64字典;对所述伪密钥信息中第一位置(例如,奇数位置或偶数位置)的字符进行逻辑或运算,生成字符串混淆后的第二伪密钥信息;采用所述第二base64字典对所述第二伪密钥信息进行base64运算,生成第一密钥值;采用所述第二伪密钥信息和所述第一密钥值对预设扰码进行运算,生成第二密钥值;将所述第一密钥值和所述第二密钥值按照第一运算规则(例如,奇、偶异或等运算)进行组合,生成第三密钥值;利用md5消息摘要算法对所述第三密钥值进行计算,得到所述真密钥信息。

基md5加盐的随机动态映射规则为:

生成数字字符串,所述数字字符串为12位;例如,生成1000000000000以内的随机数字字符串,当该数字字符串不足12位时,高位用“0”补全,记为“salt”,并定义salt(i),其中,salt(i)表示随机字符串第i位的数值,i取值范围为[0,11];利用预设混淆规则对所述伪密钥信息和所述数字字符串进行混淆计算,得到所述真密钥信息。

这里,预设混淆规则可以为:key(false)(i)=key(false)(i)^salt(i%11),且i取值范围为[0,key(false)长度-1];key(false)=base64_encode(key(false))。

本发明实施例中,在媒体服务器中预设有所述密钥映射规则的编号与所述密钥映射规则的关系对照表。播放器在解析到媒体文件中携带的密钥映射规则的编号和伪密钥信息时,可以基于该关系对照表,查询出与该密钥映射规则的编号对应的密钥映射规则,然后,利用查询出的密钥映射规则确定该伪密钥信息对应的真密钥信息,从而可以利用真密钥信息对媒体文件进行解密。

需要说明的是:上述实施例提供的文件解密装置具体可以是媒体服务器,在媒体服务器对媒体文件进行解密时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的文件解密装置与文件解密方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图5为本发明实施例中文件加、解密装置的结构示意图,如图5所示,文件加密装置或文件解密装置500可以是移动电话、计算机、数字广播终端、信息收发设备、游戏控制台、平板设备、个人数字助理、信息推送服务器、内容服务器等。图5所示的文件加密装置或文件解密装置500包括:至少一个处理器501、存储器502、至少一个网络接口504和用户接口503。文件加密装置或文件解密装置500中的各个组件通过总线系统505耦合在一起。可理解,总线系统505用于实现这些组件之间的连接通信。总线系统505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图5中将各种总线都标为总线系统505。

其中,用户接口503可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。

可以理解,存储器502可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory)、可编程只读存储器(prom,programmableread-onlymemory)、可擦除可编程只读存储器(eprom,erasableprogrammableread-onlymemory)、电可擦除可编程只读存储器(eeprom,electricallyerasableprogrammableread-onlymemory)、磁性随机存取存储器(fram,ferromagneticrandomaccessmemory)、快闪存储器(flashmemory)、磁表面存储器、光盘、或只读光盘(cd-rom,compactdiscread-onlymemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,randomaccessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,staticrandomaccessmemory)、同步静态随机存取存储器(ssram,synchronousstaticrandomaccessmemory)、动态随机存取存储器(dram,dynamicrandomaccessmemory)、同步动态随机存取存储器(sdram,synchronousdynamicrandomaccessmemory)、双倍数据速率同步动态随机存取存储器(ddrsdram,doubledataratesynchronousdynamicrandomaccessmemory)、增强型同步动态随机存取存储器(esdram,enhancedsynchronousdynamicrandomaccessmemory)、同步连接动态随机存取存储器(sldram,synclinkdynamicrandomaccessmemory)、直接内存总线随机存取存储器(drram,directrambusrandomaccessmemory)。本发明实施例描述的存储器502旨在包括但不限于这些和任意其它适合类型的存储器。

本发明实施例中的存储器502用于存储各种类型的数据以支持文件加密装置或文件解密装置500的操作。这些数据的示例包括:用于在文件加密装置或文件解密装置500上操作的任何计算机程序,如操作系统5021和应用程序5022;音乐数据;动漫数据;图书信息;视频等。其中,操作系统5021包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序5022可以包含各种应用程序,例如媒体播放器(mediaplayer)、浏览器(browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序5022中。

上述本发明实施例揭示的方法可以应用于处理器501中,或者由处理器501实现。处理器501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器501可以是通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器501可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器502,处理器501读取存储器502中的信息,结合其硬件完成前述方法的步骤。

在示例性实施例中,文件加密装置或文件解密装置500可以被一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)、通用处理器、控制器、微控制器(mcu,microcontrollerunit)、微处理器(microprocessor)、或其他电子元件实现,用于执行前述方法。

其中,所述存储器,用于存储能够在所述处理器上运行的计算机程序;

所述处理器,用于运行所述计算机程序时,执行:在待发布的媒体文件的协议标签中添加伪密钥信息;

利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

利用所述真密钥信息对所述媒体文件进行加密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

所述处理器,用于运行所述计算机程序时,还执行:在所述协议标签中添加加密标识和所述密钥映射规则的编号。

所述处理器,用于运行所述计算机程序时,还执行:预设所述密钥映射规则的编号与所述密钥映射规则的关系对照表。

所述处理器,用于运行所述计算机程序时,还执行:接收针对所述媒体文件的播放请求;

基于所述播放请求,发送所述媒体文件对应的播放列表;所述播放列表中携带有所述协议标签。

所述处理器,用于运行所述计算机程序时,还执行:根据预设周期,更新所述伪密钥信息和所述密钥映射规则。

另一个实施例中,所述处理器,用于运行所述计算机程序时,执行:发送针对媒体文件的播放请求;

接收针对所述播放请求返回的播放列表;

解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有伪密钥信息、加密标识和密钥映射规则的编号;

确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

利用所述真密钥信息对所述媒体文件进行解密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

在示例性实施例中,本发明实施例还提供了一种计算机可读存储介质,例如包括计算机程序的存储器502,上述计算机程序可由文件加密装置或文件解密装置500的处理器501执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flashmemory、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备,如移动电话、计算机、平板设备、个人数字助理等。

一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器运行时,执行:在待发布的媒体文件的协议标签中添加伪密钥信息;

利用密钥映射规则将所述伪密钥信息转换成真密钥信息;

利用所述真密钥信息对所述媒体文件进行加密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

该计算机程序被处理器运行时,还执行:在所述协议标签中添加加密标识和所述密钥映射规则的编号。

该计算机程序被处理器运行时,还执行:预设所述密钥映射规则的编号与所述密钥映射规则的关系对照表。

该计算机程序被处理器运行时,还执行:接收针对所述媒体文件的播放请求;

基于所述播放请求,发送所述媒体文件对应的播放列表;所述播放列表中携带有所述协议标签。

该计算机程序被处理器运行时,还执行:根据预设周期,更新所述伪密钥信息和所述密钥映射规则。

另一个实施例中,该计算机程序被处理器运行时,执行:发送针对媒体文件的播放请求;

接收针对所述播放请求返回的播放列表;

解析所述播放列表,得到所述媒体文件的协议标签信息,所述协议标签信息中包括有伪密钥信息、加密标识和密钥映射规则的编号;

确定所述加密标识是预设标识时,采用与所述密钥映射规则的编号对应的密钥映射规则,生成与所述伪密钥信息对应的真密钥信息;

利用所述真密钥信息对所述媒体文件进行解密。

所述密钥映射规则至少包括下列规则之一:

基于字符串预处理加扰码策略的静态映射规则;

和/或,基于md5消息摘要算法加盐的随机动态映射规则。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1