[发明专利]一种音频文件的加密解密方法在审

专利信息
申请号: 201710067081.0 申请日: 2017-02-06
公开(公告)号: CN106934296A 公开(公告)日: 2017-07-07
发明(设计)人: 张达林 申请(专利权)人: 北京音未文化传媒有限责任公司
主分类号: G06F21/60 分类号: G06F21/60;H04L29/06;H04L9/32
代理公司: 北京奥翔领智专利代理有限公司11518 代理人: 路远
地址: 100000 北京*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 音频文件 加密 解密 方法
【权利要求书】:

1.一种音频文件的加密方法,其特征在于,该方法包括如下步骤:

A、准备好加密算法alg密钥key和加密解密的初始值iv;

B、选择一种音频编码方式,用于对原始音频数据进行编码;

C、初始化OGG输出流,给当前音频流分配一个二进制流序号serial_no,页序数page_seq_no置零;

D、取一小段固定长度的音频数据wave_data_1,使用给定的音频编码方式对音频数据进行编码,得到编码后的二进制数据块data_block_1;

E、将所述二进制数据块data_block_1写入OGG流,得到若干个OGG页;

F、对新产生的OGG页,使用步骤A当中准备好的加密参数对该页的负载进行加密计算。

2.根据权利要求1所述音频文件的加密方法,其特征在于,所述步骤F后进一步包括:

G、重复步骤D~步骤F,直至音频流结束。

3.根据权利要求1所述音频文件的加密方法,其特征在于,步骤B所述的音频编码方式,包括FLAC、MP3、AAC、Opus、Vorbis中的任意一种。

4.根据权利要求1所述音频文件的加密方法,其特征在于,步骤F具体包括:

F1、采用加密初始值vi'=vi XOR serial_no XOR page_seq_no,页头当中包含的CRC校验码使用加密后的内容作为负载重新计算;

F2、使用加密后的二进制数据替换该页原有的负载,把新产生的OGG页写入输出流。

5.一种音频文件的解密方法,其特征在于,该方法包括如下步骤:

a、准备好加密算法alg密钥key和加密解密的初始值iv;

b、用户或上层调用程序提供音频编码方式;

c、初始化OGG输入流,获得音频输入流的二进制流序号serial_no;

d、读入一个OGG页,获取当前页的CRC校验码、页序数page_seq_no和负载;

e、对当前页的负载进行CRC校验,检测其是否完整;

f、计算实际使用的解密初始值vi'=vi XOR serial_no XORpage_seq_no;

g、使用加密算法alg、密钥key和初始值vi'对当前OGG页的负载进行解密,获得解密后的数据data_block_1;

h、使用步骤b中提供的音频解码方式对data_block_1进行解码,获得一小段音频数据wave_data_1。

6.根据权利要求5所述音频文件的解密方法,其特征在于,步骤h之后进一步包括:

i、重复步骤d~步骤h,直到OGG输入流结束。

7.根据权利要求5所述音频文件的解密方法,其特征在于,步骤b所述的音频编码方式,包括FLAC、MP3、AAC、Opus、Vorbis中的任意一种。

8.根据权利要求5所述音频文件的解密方法,其特征在于,步骤e所述当前页的负载进行CRC校验,检测其是否完整,具体包括:

如果完整,则返回解密、解码后的原始音频;如果不完整,则提示上层应用,由上层应用进行静音、停止解码或提示用户有数据损坏。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京音未文化传媒有限责任公司,未经北京音未文化传媒有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710067081.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top