发明名称 基于声纹的文档加密及解密方法
摘要 本发明涉及基于声纹的文档加密方法:一,用户记忆一个密钥;二,用户随机用语音叙述一句话,从该段语音的声纹特征参数中提取密钥,作为加密密钥;三,选定对称加密算法,用第二步中提取的密钥加密文档,生成中间文档,将第二步的随机文本串与中间文档一起打包,生成一新文档;四,用户记忆的密钥加密第三步的文档,形成加密文档。声纹文档解密方法:一,用选定的对称加密算法和用户记忆的密钥,生成临时文档;二,从临时文档中析出与文档加密密钥关联的文本串,用户用语音叙述该段文本串,并从该段语音的声纹特征参数中提取密钥;三,用第二步提取的密钥和选定的对称加密算法解密临时文档,完成文档解密。本发明使用方便且具有较高的安全性。
申请公布号 CN102073829B 申请公布日期 2012.11.28
申请号 CN201110003202.8 申请日期 2011.01.10
申请人 杭州电子科技大学 发明人 吴震东
分类号 G06F21/24(2006.01)I 主分类号 G06F21/24(2006.01)I
代理机构 浙江杭州金通专利事务所有限公司 33100 代理人 周希良;徐关寿
主权项 1.基于声纹的文档加密方法,其特征是按如下步骤:第一步,用户记忆一个密钥;第二步,用户随机地选择一句话,用语音叙述,从该段语音的声纹特征参数中提取密钥,作为文档的加密密钥;声纹产生过程:1)预增强以S1(n)(n:0..N-1)表示语音时域信号,预增强公式为:S(n)=S1(n)–a*S1(n-1)(0.9&lt;a&lt;1.0)2)音框化音框化即对语音信号分帧;3)汉明窗假设音框化的信号为S(n),n=0,1,…,N-1,那么乘上汉明窗后为:S’(n)=S(n)*W(n)<maths num="0001"><![CDATA[<math><mrow><mi>W</mi><mrow><mo>(</mo><mi>n</mi><mo>)</mo></mrow><mo>=</mo><mi>w</mi><mrow><mo>(</mo><mi>n</mi><mo>,</mo><mi>a</mi><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>a</mi><mo>)</mo></mrow><mo>-</mo><mi>a</mi><mi>cos</mi><mrow><mo>(</mo><mfrac><mrow><mn>2</mn><mi>&pi;n</mi></mrow><mrow><mi>N</mi><mo>-</mo><mn>1</mn></mrow></mfrac><mo>)</mo></mrow><mo>,</mo><mn>0</mn><mo>&le;</mo><mi>n</mi><mo>&le;</mo><mi>N</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>a</mi><mo>=</mo><mn>0.46</mn></mrow></math>]]></maths>4)快速傅立叶转换对S’(n)实施基2FFT变换5)三角带通滤波器计算每个滤波器输出的对数能量z(m),m=0,1,L,M-1,计算公式为<img file="FDA00001939445500012.GIF" wi="565" he="129" />其中H<sub>m</sub>(k)为第m个梅尔尺度的三角形滤波器的频率响应;6)离散余弦转换对上一步所获得的对数能量进行DCT变换,获得DCT系数数组r[20]r[]=dct(z[]);dct()变换公式为<maths num="0002"><![CDATA[<math><mrow><mi>r</mi><mo>[</mo><mi>k</mi><mo>]</mo><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>l</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>D</mi><mo>-</mo><mn>1</mn></mrow></munderover><mi>z</mi><mo>[</mo><mi>l</mi><mo>]</mo><mi>cos</mi><mrow><mo>(</mo><mfrac><mrow><mi>&pi;</mi><mrow><mo>(</mo><mn>2</mn><mi>l</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mi>k</mi></mrow><mrow><mn>2</mn><mi>D</mi></mrow></mfrac><mo>)</mo></mrow><mo>,</mo><mi>D</mi><mo>=</mo><mn>20</mn></mrow></math>]]></maths>r[]即一帧语音信号的MFCC参数;7)用MFCC参数训练话者的GMM,得到专属某话者的GMM声纹模型;8)将话者语音分为等间隔的若干段,训练相应的若干个GMM声纹模型,假设为m个;从GMM模型参数中提取密钥的过程为:a)取GMM模型中高斯模型的均值向量;b)将均值向量的值域分段,分段依据用户不同的声纹特征进行,原则是用户声纹特征参数以稳定的概率出现在各分段中,以下分段[-∞,-100],[-100,-40],[-40,-18],[-18,-9],[-9,-4],[-4,-1],[-1,-0.4],[-0.4,0],[0,+0.4],[+0.4,1],[1,4],[4,9],[9,18],[18,40],[40,100],[100,+∞],每个分段用若干比特表示;c)将GMM模型的均值向量映射为相应的比特,以上所述的分段,16分段用4bit表示,每一均值向量有20分量,20分量×4bit=80bit;若干个GMM声纹模型可以生成80×m比特长度的密钥;第三步,选定对称加密算法,用第二步中提取的密钥加密文档,生成中间文档,将第二步中的随机文本串与中间文档一起打包,生成一个新的文档;第四步,用用户记忆的密钥加密第三步中新生成的文档,形成加密文档。
地址 310018 浙江省杭州市江干区下沙高教园区2号大街