本發(fā)明屬于信息技術(shù)領(lǐng)域,更進(jìn)一步涉及信息技術(shù)技術(shù)領(lǐng)域中的一種基于環(huán)境聲音的雙因素快速認(rèn)證方法。本發(fā)明可在不同網(wǎng)絡(luò)環(huán)境下,應(yīng)用于公共環(huán)境中登錄認(rèn)證過程。
背景技術(shù):
為了在網(wǎng)絡(luò)環(huán)境中提高用戶個人信息的保密性和安全性,一般會采用雙因素認(rèn)證,即采用兩種或者兩種以上驗(yàn)證方式來保證用戶身份。雙因素認(rèn)證能夠極大提高登錄的安全性,即使當(dāng)我們的密碼丟失,第二個認(rèn)證方式也會讓用戶避免進(jìn)一步的經(jīng)濟(jì)損失。
Kashyap Merchant,Jack Cai,Sanjiv Maurya在其共同申請的專利文件“System and method for authenticating a smart card using an authentication token transmitted to a smart card reader”(申請?zhí)朥S8522326B2,申請日期2008.9.24,公開日期2013.8.27)中提出了使用身份認(rèn)證智能卡的系統(tǒng)和方法。該方法使用了一種用于認(rèn)證的系統(tǒng)包括移動單元和智能卡閱讀器。該移動單元包括一個防止訪問存儲在其上的功能和數(shù)據(jù)的安全應(yīng)用程序,和包括一個安全存儲認(rèn)證令牌的身份驗(yàn)證應(yīng)用程序。智能卡閱讀器可以連接到一個智能卡進(jìn)行通信,智能卡包含身份驗(yàn)證數(shù)據(jù)。身份驗(yàn)證應(yīng)用程序?qū)⒄J(rèn)證令牌發(fā)送給智能卡閱讀器來驗(yàn)證智能卡。當(dāng)驗(yàn)證成功時,身份驗(yàn)證應(yīng)用程序與安全應(yīng)用程序共享身份驗(yàn)證令牌,認(rèn)證令牌指示安全應(yīng)用程序以授予對功能和數(shù)據(jù)的訪問權(quán)限。該方法的不足之處是:每次驗(yàn)證都要隨身攜帶硬件設(shè)備,而這些硬件設(shè)備也給技術(shù)的廣泛開展帶來成本問題;要求用戶進(jìn)行繁瑣的認(rèn)證操作過程。
Chi Wah Lo在其申請的專利文件“System and method for secure pairing of bluetooth devices”(申請?zhí)朥S9344185B2,申請日期2014.3.24,公開日期2016.5.17)中公開了一種安全地配對的藍(lán)牙設(shè)備的系統(tǒng)和方法,該系統(tǒng)包括主機(jī)設(shè)備和外圍設(shè)備。其中每個設(shè)備包括音頻接口和藍(lán)牙收發(fā)器。在其實(shí)現(xiàn)方法中,主機(jī)裝置和外圍設(shè)備通過它們的相應(yīng)的音頻接口連接,通過建立一個帶外的音頻通信信道通過連接的音頻接口。主機(jī)設(shè)備和外圍設(shè)備交換藍(lán)牙認(rèn)證數(shù)據(jù)通過帶音頻通信信道,然后安全地互相配對和啟動,再初始化相應(yīng)的藍(lán)牙收發(fā)器與相應(yīng)的藍(lán)牙認(rèn)證數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)交換。該方法存在的不足之處是:藍(lán)牙通信信道容易被控制和監(jiān)控,難以保證認(rèn)證過程中的安全性。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于針對上述已有技術(shù)的不足,提出一種基于環(huán)境聲音的雙因素快速認(rèn)證方法,以實(shí)現(xiàn)對常用設(shè)備的安全登錄認(rèn)證。
實(shí)現(xiàn)本發(fā)明目的的思路是,在雙因素認(rèn)證的基礎(chǔ)上,同時兼顧便捷性、可開展性和安全性,提出了本發(fā)明,本發(fā)明稱為基于環(huán)境聲音的雙因素快速認(rèn)證方法。本發(fā)明采用的驗(yàn)證方式不需要攜帶硬件設(shè)備或者安裝額外的手機(jī)軟件、瀏覽器插件,而是直接通過使用手機(jī)和電腦上所具有的麥克風(fēng)設(shè)備,錄制環(huán)境聲音,并分析兩段聲音信號的相關(guān)性,以此來確認(rèn)兩臺設(shè)備的距離,距離越近則相關(guān)性越高,相關(guān)性高于一定的閾值即認(rèn)為第二因素認(rèn)證通過。在第一因素認(rèn)證中,本發(fā)明創(chuàng)造性地提出新的思路,因?yàn)榇蠖鄶?shù)手機(jī)應(yīng)用程序有手機(jī)密碼記憶功能,即使關(guān)閉了應(yīng)用程序,它也會在手機(jī)后臺繼續(xù)運(yùn)行,利用這一特點(diǎn),可以省去傳統(tǒng)的密碼輸入這個步驟。
實(shí)現(xiàn)本發(fā)明目的的具體步驟如下:
(1)用戶注冊:
用戶在服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶、密碼;
(2)手機(jī)端登錄:
(2a)用戶通過移動蜂窩網(wǎng)絡(luò)或WiFi,在手機(jī)端登錄服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶、密碼;
(2b)用戶將登錄后的帳戶、密碼信息存儲在手機(jī)端;
(3)電腦端登錄認(rèn)證:
(3a)用戶在電腦端通過Internet,使用第一認(rèn)證因素向服務(wù)器端發(fā)送登錄請求;用戶在服務(wù)器指定的登錄界面上,輸入服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶進(jìn)行第一因素認(rèn)證;
(3b)服務(wù)器接收到用戶的登錄請求后,通過經(jīng)移動蜂窩網(wǎng)絡(luò)或WiFi向手機(jī)端發(fā)送開啟麥克風(fēng)的請求;
(3c)用戶在手機(jī)端接收到服務(wù)器開啟麥克風(fēng)的請求后,在手機(jī)端開啟麥克風(fēng)使用環(huán)境聲音相似度計(jì)算方法,進(jìn)行第二因素認(rèn)證;
(3d)手機(jī)端和電腦端分別與服務(wù)器進(jìn)行時間同步,手機(jī)端的麥克風(fēng)和電腦端的麥克風(fēng)同時錄制環(huán)境聲音4秒;
(3e)在手機(jī)端的麥克風(fēng)和電腦端的麥克風(fēng)各自錄制的聲音信號上,添加各自的時間戳,且用服務(wù)器的公鑰進(jìn)行加密,得到加密后的兩段聲音信號;
(3f)手機(jī)端將加密后的兩段聲音信號,經(jīng)移動蜂窩網(wǎng)絡(luò)或WiFi發(fā)送給服務(wù)器;
(4)服務(wù)器解密和分析聲音信號:
(4a)服務(wù)器對加密后的兩段聲音信號用服務(wù)器的私鑰進(jìn)行解密,得到解密后的兩段聲音信號;
(4b)根據(jù)用戶所要求的安全性和便捷性,在1%到100%的相似度值之間任意選取一個值,作為相似度的閾值Sm;
(4c)服務(wù)器對解密后的兩段聲音信號,根據(jù)其各自的時間戳,使用環(huán)境聲音相似度計(jì)算方法,進(jìn)行聲音相似度分析;
(5)判斷解密后的兩段聲音信號的聲音相似度值是否高于閾值Sm,若是,則執(zhí)行步驟(6);否則,執(zhí)行步驟(7);
(6)服務(wù)器授予電腦端用戶登錄權(quán)限;
(7)服務(wù)器拒絕授予電腦端用戶登錄權(quán)限。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn):
第一、本發(fā)明以手機(jī)為載體將用戶的賬戶作為第一認(rèn)證因素,克服了現(xiàn)有技術(shù)要求用戶進(jìn)行繁瑣的認(rèn)證操作問題,使得本發(fā)明的認(rèn)證過程讓用戶省去密碼輸入的操作,使本發(fā)明具有便捷性。
第二、由于本發(fā)明在第二因素認(rèn)證中使用了手機(jī)端和電腦端的麥克風(fēng),克服了現(xiàn)有技術(shù)每次驗(yàn)證都要隨身攜帶硬件設(shè)備,并且這些硬件設(shè)備給技術(shù)的廣泛開展帶來額外成本問題,使得本發(fā)明的具有開展性和開展成本低的優(yōu)點(diǎn)。
第三、本發(fā)明使用了環(huán)境聲音相似度計(jì)算方法,對本發(fā)明中的第二認(rèn)證因素進(jìn)行認(rèn)證,克服了現(xiàn)有技術(shù)的通信信道容易被控制和監(jiān)控,難以保證認(rèn)證過程中的安全性的問題,使得本發(fā)明的認(rèn)證過程能抵抗重放攻擊和遠(yuǎn)程攻擊的安全性優(yōu)點(diǎn)。
附圖說明
圖1是本發(fā)明的流程圖。
圖2是在T=4s時,不同的距離L和聲源個數(shù)N采用本發(fā)明的方法,得到的平均環(huán)境聲音相似度值S。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明做進(jìn)一步描述。
參照圖1,本發(fā)明的具體步驟包括如下。
步驟1,用戶注冊。
用戶在服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶、密碼。
步驟2,手機(jī)端登錄。
用戶通過移動蜂窩網(wǎng)絡(luò)或WiFi,在手機(jī)端登錄服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶、密碼。
用戶將登錄后的帳戶、密碼信息存儲在手機(jī)端。
步驟3,電腦端登錄認(rèn)證。
用戶在電腦端通過Internet,使用第一認(rèn)證因素向服務(wù)器端發(fā)送登錄請求;用戶在服務(wù)器指定的登錄界面上,輸入服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶進(jìn)行第一因素認(rèn)證。
所述的第一認(rèn)證因素是指已經(jīng)在服務(wù)器上注冊認(rèn)證登錄憑證中的賬戶。
服務(wù)器接收到用戶的登錄請求后,通過經(jīng)移動蜂窩網(wǎng)絡(luò)或WiFi向手機(jī)端發(fā)送開啟麥克風(fēng)的請求。
用戶在手機(jī)端接收到服務(wù)器開啟麥克風(fēng)的請求后,在手機(jī)端開啟麥克風(fēng)使用環(huán)境聲音相似度計(jì)算方法,進(jìn)行第二因素認(rèn)證。
所述的環(huán)境聲音相似度計(jì)算方法的具體步驟如下:
第一步,收集手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號;
第二步,將手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號的總能量標(biāo)準(zhǔn)化為1。
第三步,按照下式,計(jì)算手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號的時域互相關(guān)性值:
Sc(Xi,Xj)=Cross-Corr(Xi,Xj)
Dc(Xi,Xj)=1-Sc(Xi,Xj)
其中,Sc(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的時域互相關(guān)性值;Cross-Corr(·)表示互相關(guān)函數(shù);Xi和Xj分別表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號;Dc(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的時域差異性值。
第四步,按照下式,利用傅立葉變換公式,計(jì)算手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號的頻域系數(shù):#
其中Fi(ω)和Fj(ω)分別表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的頻域系數(shù);表示積分操作;Xi(t)和Xj(t)分別表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj在時域上的函數(shù)。
第五步,按照下式,計(jì)算手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的頻域系數(shù)的歐氏范數(shù)距離值:
Dd(Xi,Xj)=||Xi-Xj||
其中,Dd(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的頻域系數(shù)的歐氏范數(shù)距離值,||·||表示歐氏范數(shù)函數(shù)。
第六步,按照下式,計(jì)算二維空間上手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的時‐頻相似度值:
S(Xi,Xj)=1-D(Xi,Xj)
其中,D(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的聲音差異值;表示開根號操作;Dc(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的時域差異值;Dd(Xi,Xj)表示手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的頻域系數(shù)的歐氏范數(shù)距離值;S(Xi,Xj)表示二維空間上手機(jī)端麥克風(fēng)和電腦端麥克風(fēng)錄制的任意兩段聲音信號Xi和Xj的時‐頻相似度值。所述的第二認(rèn)證因素是指,用戶在電腦端登錄時手機(jī)端到電腦端的距離。
手機(jī)端和電腦端各自與服務(wù)器進(jìn)行時間同步后,手機(jī)端的麥克風(fēng)和電腦端的麥克風(fēng)同時錄制環(huán)境聲音4秒。
在手機(jī)端的麥克風(fēng)和電腦端的麥克風(fēng)各自錄制的聲音信號上,添加各自的時間戳且用服務(wù)器的公鑰進(jìn)行加密。
手機(jī)端將加密后的兩段聲音信號,經(jīng)移動蜂窩網(wǎng)絡(luò)或WiFi發(fā)送給服務(wù)器。
步驟4,服務(wù)器解密和分析聲音信號。
服務(wù)器對加密后的兩段聲音信號用服務(wù)器的私鑰進(jìn)行解密,得到解密后的兩段聲音信號。
根據(jù)用戶所要求的安全性和便捷性,在1%到100%的相似度值之間任意選取一個值,作為相似度的閾值Sm。
服務(wù)器對解密后的兩段聲音信號,根據(jù)其各自的時間戳,使用環(huán)境聲音相似度計(jì)算方法,進(jìn)行聲音相似度分析。
步驟5,判斷解密后的兩段聲音信號的聲音相似度值是否高于閾值Sm,若是,則執(zhí)行步驟6;否則,執(zhí)行步驟7。
步驟6,服務(wù)器授予電腦端用戶登錄權(quán)限。
步驟7,服務(wù)器拒絕授予電腦端用戶登錄權(quán)限。
下面結(jié)合仿真實(shí)驗(yàn)對本發(fā)明的效果做進(jìn)一步的說明。
1.仿真實(shí)驗(yàn)條件:
條件1,在Intel(R)Celeron(R)G540處理器,Windows 7 Ultimate操作系統(tǒng)的臺式計(jì)算機(jī)上測試仿真實(shí)驗(yàn)的結(jié)果。
條件2,在電腦上,用Mozilla Firefox瀏覽器(版本號47.0.1.6018)在應(yīng)用編程接口上通過實(shí)現(xiàn)Navigator.getUserMedia()功能,啟動麥克風(fēng)獲取音頻文件,當(dāng)用戶需用麥克風(fēng)進(jìn)行第二因素認(rèn)證時,這個功能將被激活。
2.仿真實(shí)驗(yàn)內(nèi)容與結(jié)果分析:
本發(fā)明的仿真實(shí)驗(yàn)是在安靜的室內(nèi)環(huán)境和吵鬧的室外環(huán)境分別做登錄測試。
在室內(nèi)的環(huán)境,本發(fā)明的仿真實(shí)驗(yàn)通過設(shè)置聲源個數(shù)N=1,聲源為音樂播放器,以此來模擬室內(nèi)的環(huán)境。
在室外的環(huán)境下,本發(fā)明的仿真實(shí)驗(yàn)通過設(shè)置聲源個數(shù)N(N>1),聲源為音樂播放器,以此來模擬室外環(huán)境。
實(shí)驗(yàn)中,將手機(jī)端和電腦端麥克風(fēng)的距離設(shè)置為Lm,將錄音時間設(shè)置為Ts,將環(huán)境聲音相似度閾值設(shè)置為Sm。
室內(nèi)環(huán)境下,將聲源個數(shù)N設(shè)置為1,為得到不同的距離Lm和錄音時間Ts與平均聲音相似度值S之間的關(guān)系,本發(fā)明的仿真實(shí)驗(yàn)進(jìn)行了427次登錄操作。
利用收集到的環(huán)境聲音數(shù)據(jù),使用環(huán)境聲音相似度計(jì)算方法,計(jì)算每一對聲音數(shù)據(jù)的環(huán)境聲音相似度值,對得到的環(huán)境聲音相似度值求平均值,得到表1。表1中L表示手機(jī)端麥克風(fēng)到電腦端麥克風(fēng)的距離,單位:米(m);T表示錄制環(huán)境聲音的時間,單位:秒(s)。
表1:平均環(huán)境聲音相似度一覽表單位:%
從表1,可以發(fā)現(xiàn)以下規(guī)律:錄音時間T越長,平均聲音相似度值S越大。手機(jī)端麥克風(fēng)到電腦端麥克風(fēng)的距離L越遠(yuǎn),平均環(huán)境聲音相似度值S越小。錄音時間越長,手機(jī)端麥克風(fēng)到電腦端麥克風(fēng)的距離L對平均聲音相似度值S的影響越小。
為提高基于環(huán)境聲音的雙因素快速認(rèn)證方法的認(rèn)證過程的便捷性,本發(fā)明的仿真實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)錄音時間T=4s時,能夠滿足便捷性要求且具有理想的平均相似度值S,此時手機(jī)端麥克風(fēng)到電腦端麥克風(fēng)的距離L對平均相似度值S的影響也比較小,于是在下面的仿真實(shí)驗(yàn)中均將錄音時間T設(shè)置為4s。
室外環(huán)境下,本發(fā)明的仿真實(shí)驗(yàn)將聲源個數(shù)設(shè)置為N(N>1),將錄音時間T設(shè)置為4s,本實(shí)驗(yàn)進(jìn)行了3246次登錄操作。
利用收集到的環(huán)境聲音數(shù)據(jù),使用環(huán)境聲音相似度計(jì)算方法得到其各自的環(huán)境聲音相似度值。
取聲源個數(shù)N=1,3,6,9時的實(shí)驗(yàn)數(shù)據(jù)進(jìn)行整理,得到圖2。圖2中橫坐標(biāo)表示手機(jī)端到電腦端的距離L,單位:米。圖2中的縱坐標(biāo)表示平均環(huán)境聲音相似度值S。圖2中以菱形標(biāo)示的曲線表示聲源個數(shù)N=1時得到平均環(huán)境聲音相似度曲線;圖2中以正方形標(biāo)示的曲線表示聲源個數(shù)N=3時得到平均環(huán)境聲音相似度曲線;圖2中以三角形標(biāo)示的曲線表示聲源個數(shù)N=6時得到平均環(huán)境聲音相似度曲線;圖2中以叉形標(biāo)示的曲線表示聲源個數(shù)N=9時得到平均環(huán)境聲音相似度曲線。
從圖2發(fā)現(xiàn),各曲線的平均環(huán)境聲音相似度值S在距離5m以內(nèi)緩慢減少。聲源個數(shù)N越多,平均環(huán)境聲音相似度值S在距離5米以外減少越快。
為提高基于環(huán)境聲音的雙因素快速認(rèn)證方法的認(rèn)證過程的安全性,以抵抗遠(yuǎn)程攻擊,將環(huán)境聲音相似度閥值Sm設(shè)置為95%,既能夠保證用戶登錄認(rèn)證的成功率,也能夠保證用戶登錄過程的安全性。