一種人類聲紋生物密鑰生成方法
【專利摘要】本發(fā)明提出了一種聲紋生物密鑰生成方法。本發(fā)明將聲紋特征序列向高維空間中投影,在高維空間中將特征序列穩(wěn)定到可接受的波動(dòng)范圍內(nèi),再對穩(wěn)定后的特征序列編碼,從編碼中提取生物密鑰。整個(gè)方法在待認(rèn)證用戶端、認(rèn)證服務(wù)器端均無需記錄用戶聲紋模板,用戶通過采集自身的語音在本地生成(用戶名、密鑰)對,通過(用戶名、密鑰)對衍生的各種認(rèn)證方法進(jìn)行網(wǎng)絡(luò)身份認(rèn)證。聲紋生物密鑰不僅可以用于網(wǎng)絡(luò)身份認(rèn)證,更可以用于加密各種用戶私有數(shù)據(jù),安全方便。用戶無需記憶冗長的密碼,同時(shí)又能獲得足夠長度的密鑰序列。本發(fā)明提取正常人類聲紋生物密鑰的密鑰長度可大于256bit。
【專利說明】一種人類聲紋生物密鑰生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于信息安全【技術(shù)領(lǐng)域】,具體涉及一種從人類聲紋中經(jīng)由高維空間轉(zhuǎn)換直接提取穩(wěn)定生物密鑰的方法,其能夠?yàn)榫W(wǎng)絡(luò)身份認(rèn)證提供一種新的認(rèn)證方法和思路。
【背景技術(shù)】
[0002]聲紋識(shí)別技術(shù)是現(xiàn)今比較成熟的生物特征識(shí)別技術(shù),在低噪音環(huán)境中聲紋識(shí)別準(zhǔn)確率可達(dá)到95%以上?;诼暭y的網(wǎng)絡(luò)身份認(rèn)證技術(shù),其基本方法為:1)采集用戶語音信號(hào),經(jīng)語音信號(hào)處理提取用戶聲紋特征,生成聲紋特征模板,存儲(chǔ)在遠(yuǎn)端網(wǎng)絡(luò)認(rèn)證服務(wù)器中;2)當(dāng)某用戶需要進(jìn)行身份認(rèn)證時(shí),再次采集用戶語音信號(hào),提取用戶聲紋特征;3)將用戶聲紋特征與認(rèn)證服務(wù)器中的相應(yīng)用戶聲紋特征模板進(jìn)行比對,一致則認(rèn)證通過,不一致則認(rèn)證失敗。
[0003]這一經(jīng)典的網(wǎng)絡(luò)身份認(rèn)證模型需要在認(rèn)證服務(wù)器端存儲(chǔ)用戶語音,或者用戶聲紋特征模板。采集用戶語音存儲(chǔ)在認(rèn)證服務(wù)器中,不方便并且會(huì)消耗比較大的服務(wù)器資源。月艮務(wù)器需要開辟語音通道接收用戶的語音流,這增加了整套認(rèn)證系統(tǒng)的復(fù)雜性。也阻礙了聲紋認(rèn)證在網(wǎng)絡(luò)認(rèn)證服務(wù)中的運(yùn)用。
[0004]曾經(jīng)有科研工作者嘗試過直接從聲紋中提取生物密鑰。如中國發(fā)明專利ZL201110003202.8基于聲紋的文檔加密及解密方法,提出了一個(gè)從聲紋信息中提取穩(wěn)定密鑰序列的方案。但是該方案僅用棋盤法穩(wěn)定聲紋特征值,穩(wěn)定效果有限。并且棋盤法事實(shí)是通過縮小編碼空間來穩(wěn)定特征值,如1024的值空間映射為16的值空間,這使得密鑰序列的長度縮短,降低了安全性。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提出了一種聲紋生物密鑰生成方法。方法將聲紋特征序列向高維空間中投影,在高維空間中將特征序列穩(wěn)定到可接受的波動(dòng)范圍內(nèi),再對穩(wěn)定后的特征序列編碼,從編碼中提取生物密鑰。整個(gè)方法在待認(rèn)證用戶端、認(rèn)證服務(wù)器端均無需記錄用戶聲紋模板,用戶通過采集自身的語音在本地生成(用戶名、密鑰)對,通過(用戶名、密鑰)對衍生的各種認(rèn)證方法進(jìn)行網(wǎng)絡(luò)身份認(rèn)證。聲紋生物密鑰不僅可以用于網(wǎng)絡(luò)身份認(rèn)證,更可以用于加密各種用戶私有數(shù)據(jù),安全方便。用戶無需記憶冗長的密碼,同時(shí)又能獲得足夠長度的密鑰序列。本發(fā)明提取正常人類聲紋生物密鑰的密鑰長度可大于256bit。
[0006]聲紋生物密鑰提取分兩部分,第一部分為聲紋生物密鑰訓(xùn)練部分,第二部分為聲紋生物密鑰提取部分。
[0007]聲紋生物密鑰訓(xùn)練部分具體步驟為:
[0008]第一步,用戶錄取自身語音,10秒以上。
[0009]第二步,從錄取語音中提取MFCC系數(shù)(Mel頻率倒譜系數(shù));用MFCC系數(shù)訓(xùn)練用戶GMM高斯混合模型,取混合數(shù)為8?32階,階數(shù)可由用戶根據(jù)經(jīng)驗(yàn)選定,記為N。
[0010]第三步,混合數(shù)為N的高斯混合模型由N個(gè)高維高斯分布組成,取每一個(gè)高斯分布的均值向量,組成NX 20維的矩陣,20為MFCC系數(shù)個(gè)數(shù)。高斯混合模型對應(yīng)每一個(gè)高維高斯分布有一個(gè)權(quán)值,組合在一起為I XN維的權(quán)值向量,記為λ,在用戶端存儲(chǔ)λ。
[0011]第四步,將ΝΧ20維矩陣擴(kuò)展為2個(gè)矩陣,LXL維的隨機(jī)誤差方陣EX,LXL維的標(biāo)準(zhǔn)值方陣EY,L>N and L>20。
[0012]第五步,求解EX的廣義逆矩陣,記為IEX,將IEX左乘矩陣EY得到高維空間投影矩陣ΡΕΧ=ΙΕΧΧΕΥ,在用戶端存儲(chǔ)投影矩陣ΡΕΧ。
[0013]第六步,選取標(biāo)準(zhǔn)值方陣EY的前NXD個(gè)分量組成矩陣T,1〈D〈20。對T的每一個(gè)分量進(jìn)行一次棋盤法運(yùn)算、正整數(shù)轉(zhuǎn)化,得結(jié)果矩陣Tl。
[0014]第七步,設(shè)定一個(gè)η階的多項(xiàng)式函數(shù),形如
[0015]f (X) =a0+a1*x+a2>l<x2+a3*x3+.* * +an*xn,
[0016]η為階數(shù),a0~an e正整數(shù),其值域范圍為O~224,即每個(gè)系數(shù)有24bit ;將矩陣Tl的每一個(gè)分量代入f (X),計(jì)算后得結(jié)果矩陣T2,T2為正整數(shù)矩陣。在用戶端存儲(chǔ)T2及η值。
[0017]聲紋生物密鑰訓(xùn)練完成。
[0018]聲紋生物密鑰提取部分具體步驟為:
[0019]第一步,用戶錄取自身語音,3秒左右。
[0020]第二步,從錄取語音中提取MFCC系數(shù)(Mel頻率倒譜系數(shù));依據(jù)聲紋生物密鑰訓(xùn)練時(shí)存儲(chǔ)的λ,訓(xùn)練用戶GMM高斯混合模型,取混合數(shù)階數(shù)與聲紋生物密鑰訓(xùn)練時(shí)一致,記為N。
[0021]第三步,取每一個(gè)高斯分布的均值向量,組成ΝΧ20維的矩陣。
[0022]第四步,將ΝΧ20維矩陣擴(kuò)展為NXL維矩陣,記為EC,擴(kuò)展方法與聲紋生物密鑰訓(xùn)練階段擴(kuò)展方法保持一致。
[0023]第五步,將EC左乘ΡΕΧ,得NX L維矩陣,取矩陣前NXD個(gè)分量組成矩陣;對矩陣的每一個(gè)分量進(jìn)行一次棋盤法運(yùn)算及正整數(shù)轉(zhuǎn)化,方法與聲紋生物密鑰訓(xùn)練時(shí)一致,得矩陣ED。
[0024]第六步,從矩陣ED中選取η+2個(gè)分量值,排序;從存儲(chǔ)的Τ2矩陣中選取η+2個(gè)分
量值,排序。
[0025]將兩組排序結(jié)果依次配對,組成(ζ,f (Z))的形式,z為ED中選取的值,f (Z)為T2中選取的值。
[0026]將η+2 個(gè)(z, f(z))對,代入函數(shù) f (z) =a0+a1^z+a2^z2+ao^z3+'"' +an*zn,生成 η+2 個(gè)線性方程,其中,a0~8?為n+1個(gè)未知數(shù),a0~an e正整數(shù)。
[0027]如方程組有唯一解,則解得的(?,?,?,?, <_,an)組成的數(shù)字序列即為提取的聲紋生物密鑰;如方程組沒有唯一解,則從矩陣ED、T2中重新選取η+2個(gè)分量,組成(z,f (z))對,再次嘗試解方程組;遍歷ED、T2的所有η+2個(gè)分量的排列組合,解得聲紋生物密鑰。密鑰序列長度為24X(n+l)bit。
[0028]本發(fā)明的有 益效果:本發(fā)明提出了一種聲紋生物密鑰生成方法??梢愿淖儌鹘y(tǒng)的網(wǎng)絡(luò)生物特征身份認(rèn)證模式,認(rèn)證服務(wù)器無需存儲(chǔ)用戶的任何語音信息,只對用戶提供的密鑰進(jìn)行認(rèn)證,而密鑰是由用戶聲紋信息唯一生成的。該方法可以使網(wǎng)絡(luò)身份認(rèn)證更靈活,也可以幫助用戶免去記憶冗長密鑰的記憶負(fù)擔(dān)?!緦@綀D】
【附圖說明】
[0029]圖1為Mel頻率倒譜系數(shù)計(jì)算流程圖。
[0030]圖2為GMM聞斯混合I旲型不意圖。
[0031]圖3為矩陣前NXD個(gè)分量選取示意圖。
[0032]圖4為聲紋生物密鑰提取流程圖。
【具體實(shí)施方式】
[0033]下面結(jié)合附圖對本發(fā)明作進(jìn)一步說明。
[0034]雖然在低噪音環(huán)境中聲紋識(shí)別準(zhǔn)確率可達(dá)到95%以上,但是直接從聲紋中提取生物密鑰依然存在諸多困難。聲紋生物特征是依概率進(jìn)行識(shí)別的,從語音信號(hào)中提取的聲紋特征存在很大的波動(dòng)性。如果不作處理,直接比較兩組聲紋特征數(shù)字序列,99%的概率沒有一個(gè)數(shù)字是相同的?,F(xiàn)有的穩(wěn)定聲紋特征數(shù)字序列的方法主要是棋盤法,但其穩(wěn)定效果有限,提取聲紋生物密鑰的成功率偏低。本發(fā)明提出了在高維空間中穩(wěn)定聲紋特征數(shù)字序列的技術(shù),并進(jìn)一步提出了對穩(wěn)定后的聲紋特征數(shù)字序列容錯(cuò)提取的技術(shù)。兩者結(jié)合,可使聲紋生物密鑰提取成功率達(dá)到80%以上。
[0035]本發(fā)明分二部分,聲紋生物密鑰訓(xùn)練部分與聲紋生物密鑰提取部分。
[0036]聲紋生物密鑰訓(xùn)練部分的具體實(shí)施步驟為:
[0037]第一步,用戶錄取自身語音,10秒以上。
[0038]第二步,從錄取語音中提取MFCC系數(shù)(Mel頻率倒譜系數(shù)),如圖1所示。具體方法為:
[0039]I)預(yù)增強(qiáng)(Pre-Emphasis)
[0040]以Sl(n) (η:0..Ν-1)表示語音時(shí)域信號(hào),預(yù)增強(qiáng)公式為:
[0041]S (n) =Sl (η) - a*Sl (η_1) (0.9〈a〈l.0)
[0042]2)音框化(Framing)
[0043]音框化即對語音信號(hào)分中貞。
[0044]3)漢明窗(Hamming Windowing)處理
[0045]假設(shè)音框化后的信號(hào)為S(η), n=0,1,..., N-10那么乘上漢明窗后為:
【權(quán)利要求】
1.一種人類聲紋生物密鑰生成方法,其特征在于該方法包括以下步驟:聲紋生物密鑰訓(xùn)練部分和聲紋生物密鑰提取部分; 聲紋生物密鑰訓(xùn)練部分具體步驟為: 第一步,用戶錄取自身語音,10秒以上; 第二步,從錄取語音中提取MFCC系數(shù);用MFCC系數(shù)訓(xùn)練用戶GMM高斯混合模型,取混合數(shù)為8~32階,階數(shù)可由用戶根據(jù)經(jīng)驗(yàn)選定,記為N ; 第三步,混合數(shù)為N的高斯混合模型由N個(gè)高維高斯分布組成,取每一個(gè)高斯分布的均值向量,組成NX 20維的矩陣,20為MFCC系數(shù)個(gè)數(shù);高斯混合模型對應(yīng)每一個(gè)高維高斯分布有一個(gè)權(quán)值,組合在一起為I XN維的權(quán)值向量,記為λ,在用戶端存儲(chǔ)λ ; 第四步,將ΝΧ20維矩陣擴(kuò)展為2個(gè)矩陣,LXL維的隨機(jī)誤差方陣EX,LXL維的標(biāo)準(zhǔn)值方陣EY, L>N且L>20 ; 第五步,求解EX的廣義逆矩陣,記為IEX,將IEX左乘矩陣EY得到高維空間投影矩陣PEX=IEXX EY,在用戶端存儲(chǔ)投影矩陣PEX ; 第六步,選取標(biāo)準(zhǔn)值方陣EY的前NXD個(gè)分量組成矩陣T,1〈D〈20 ;對T的每一個(gè)分量進(jìn)行一次棋盤法運(yùn)算、正整數(shù)轉(zhuǎn)化,得結(jié)果矩陣Tl ; 第七步,設(shè)定一個(gè)η階的多項(xiàng)式函數(shù),形如:
f (X) =a0+a1*x+a2>l<x2+a3*x3+.* * +an*xn, 其中η為階數(shù),Btl~a? e正`整數(shù),其值域范圍為O~224,即每個(gè)系數(shù)有24bit ;將矩陣Tl的每一個(gè)分量代入f (X),計(jì)算后得結(jié)果矩陣T2,T2為正整數(shù)矩陣;在用戶端存儲(chǔ)T2及η值;聲紋生物密鑰訓(xùn)練完成; 聲紋生物密鑰提取部分具體步驟為: 第一步,用戶錄取自身語音,3秒左右; 第二步,從錄取語音中提取MFCC系數(shù);依據(jù)聲紋生物密鑰訓(xùn)練時(shí)存儲(chǔ)的λ,訓(xùn)練用戶GMM高斯混合模型,取混合數(shù)階數(shù)與聲紋生物密鑰訓(xùn)練時(shí)一致,記為N ; 第三步,取每一個(gè)高斯分布的均值向量,組成NX20維的矩陣; 第四步,將NX 20維矩陣擴(kuò)展為NX L維矩陣,記為EC,擴(kuò)展方法與聲紋生物密鑰訓(xùn)練階段擴(kuò)展方法保持一致; 第五步,將EC左乘ΡΕΧ,得NX L維矩陣,取矩陣前NXD個(gè)分量組成矩陣;對矩陣的每一個(gè)分量進(jìn)行一次棋盤法運(yùn)算及正整數(shù)轉(zhuǎn)化,方法與聲紋生物密鑰訓(xùn)練時(shí)一致,得矩陣ED ; 第六步,從矩陣ED中選取η+2個(gè)分量值,排序;從存儲(chǔ)的Τ2矩陣中選取η+2個(gè)分量值,排序; 將兩組排序結(jié)果依次配對,組成(Z,f (Z))的形式,Z為ED中選取的值,f (Z)為T2中選取的值; 將 η+2 個(gè)(z, f(z))對,代入函數(shù) f (z)+an*zn,生成 η+2 個(gè)線性方程,其中,a0~8?為n+1個(gè)未知數(shù),a0~an e正整數(shù); 如方程組有唯一解,則解得的(?,?,?,?, ; ; ;,an)組成的數(shù)字序列即為提取的聲紋生物密鑰;如方程組沒有唯一解,則從矩陣ED、T2中重新選取η+2個(gè)分量,組成(z,f (z))對,再次嘗試解方程組;遍歷ED、T2的所有η+2個(gè)分量的排列組合,解得聲紋生物密鑰;密鑰序列長度為24X(n+l)bit。
【文檔編號(hào)】H04L9/32GK103873254SQ201410074511
【公開日】2014年6月18日 申請日期:2014年3月3日 優(yōu)先權(quán)日:2014年3月3日
【發(fā)明者】吳震東 申請人:杭州電子科技大學(xué)