一種實(shí)現(xiàn)語音播報(bào)認(rèn)證的方法及其云認(rèn)證服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其涉及一種實(shí)現(xiàn)語音播報(bào)認(rèn)證的方法及其云認(rèn)證服務(wù)器。
【背景技術(shù)】
[0002]現(xiàn)有技術(shù)中,大部分終端應(yīng)用的登錄只采用用戶名和密碼的方式,如果密碼被竊取,應(yīng)用即被攻破,造成用戶的損失,除此之外,對(duì)于安全性要求較強(qiáng)的應(yīng)用登錄是采用用戶名、密碼和動(dòng)態(tài)口令的方式,動(dòng)態(tài)口令的獲取是通過銀行下發(fā)的口令令牌隨機(jī)生成的,增強(qiáng)了應(yīng)用的安全性,但是硬件上顯示的動(dòng)態(tài)口令容易被不法分子窺探而導(dǎo)致不安全。
【發(fā)明內(nèi)容】
[0003]為解決現(xiàn)有技術(shù)中提供的問題,本發(fā)明提供了一種實(shí)現(xiàn)語音播報(bào)認(rèn)證的方法及其云認(rèn)證服務(wù)器。
[0004]本發(fā)明采用的技術(shù)方案是:一種實(shí)現(xiàn)語音播報(bào)認(rèn)證的方法,包括:
[0005]當(dāng)云認(rèn)證服務(wù)器接收到來自應(yīng)用服務(wù)器的播報(bào)請(qǐng)求時(shí),執(zhí)行以下操作:
[0006]步驟Al:所述云認(rèn)證服務(wù)器根據(jù)所述播報(bào)請(qǐng)求中的用戶信息獲取對(duì)應(yīng)的種子密鑰和用戶終端標(biāo)識(shí)碼,對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令;
[0007]步驟A2:所述云認(rèn)證服務(wù)器根據(jù)所述用戶終端標(biāo)識(shí)碼將第一動(dòng)態(tài)口令發(fā)送至語音播報(bào)平臺(tái),通過語音播報(bào)平臺(tái)將所述第一動(dòng)態(tài)口令播報(bào)給用戶;
[0008]當(dāng)所述云認(rèn)證服務(wù)器接收到來自所述應(yīng)用服務(wù)器的認(rèn)證請(qǐng)求時(shí),執(zhí)行以下操作:
[0009]步驟B1:所述云認(rèn)證服務(wù)器從所述認(rèn)證請(qǐng)求中獲取用戶信息,根據(jù)所述用戶信息獲取對(duì)應(yīng)的種子密鑰,對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令;
[0010]步驟B2:所述云認(rèn)證服務(wù)器從所述認(rèn)證請(qǐng)求中獲取用戶輸入的動(dòng)態(tài)口令,判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令是否匹配,如果是,則向所述應(yīng)用服務(wù)器返回認(rèn)證成功響應(yīng),否則報(bào)錯(cuò),結(jié)束。
[0011]在所述云認(rèn)證服務(wù)器接收到來自應(yīng)用服務(wù)器的播報(bào)請(qǐng)求之前,還包括:終端接收用戶輸入的用戶信息,根據(jù)所述用戶信息生成播報(bào)請(qǐng)求,將所述播報(bào)請(qǐng)求發(fā)送至所述應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器將所述播報(bào)請(qǐng)求發(fā)送至所述云認(rèn)證服務(wù)器。
[0012]在所述將所述播報(bào)請(qǐng)求發(fā)送至所述應(yīng)用服務(wù)器和所述應(yīng)用服務(wù)器將所述播報(bào)請(qǐng)求發(fā)送至所述云認(rèn)證服務(wù)器之間,還包括:所述應(yīng)用服務(wù)器判斷接收到的所述播報(bào)請(qǐng)求中的用戶信息是否正確,如果是,則繼續(xù),否則報(bào)錯(cuò),結(jié)束。
[0013]在所述云認(rèn)證服務(wù)器接收到來自所述應(yīng)用服務(wù)器的認(rèn)證請(qǐng)求之前,還包括:終端接收用戶輸入的第一動(dòng)態(tài)口令,根據(jù)用戶信息和所述第一動(dòng)態(tài)口令,生成認(rèn)證請(qǐng)求,并發(fā)送至所述應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器將所述認(rèn)證請(qǐng)求發(fā)送至所述云認(rèn)證服務(wù)器。
[0014]所述步驟Al中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:所述云認(rèn)證服務(wù)器應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的時(shí)間因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令。
[0015]所述步驟BI中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:
[0016]步驟al:所述云認(rèn)證服務(wù)器獲取并根據(jù)當(dāng)前時(shí)間和當(dāng)前漂移值,得到當(dāng)前時(shí)間因子序列;
[0017]步驟a2:所述云認(rèn)證服務(wù)器應(yīng)用所述預(yù)設(shè)口令生成算法,根據(jù)所述當(dāng)前時(shí)間因子序列和所述種子密鑰,生成驗(yàn)證口令序列,將所述驗(yàn)證口令序列作為第二動(dòng)態(tài)口令;
[0018]所述步驟B2中,所述判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令是否匹配,具體為:判斷從所述第二動(dòng)態(tài)口令中是否能夠查找到一個(gè)驗(yàn)證口令與所述用戶輸入的動(dòng)態(tài)口令相同。
[0019]所述步驟Al中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:所述云認(rèn)證服務(wù)器應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的時(shí)間因子、內(nèi)置的事件因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令。
[0020]所述步驟BI中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:
[0021]步驟al:所述云認(rèn)證服務(wù)器獲取并根據(jù)當(dāng)前時(shí)間和當(dāng)前漂移值,得到時(shí)間因子序列;
[0022]步驟a2:所述云認(rèn)證服務(wù)器應(yīng)用所述預(yù)設(shè)口令生成算法,根據(jù)所述當(dāng)前時(shí)間因子序列、內(nèi)置的事件因子和所述種子密鑰,生成驗(yàn)證口令序列,將所述驗(yàn)證口令序列作為第二動(dòng)態(tài)口令;
[0023]所述步驟B2中,所述判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令是否匹配,具體為:判斷從所述第二動(dòng)態(tài)口令中是否能夠查找到一個(gè)驗(yàn)證口令與所述用戶輸入的動(dòng)態(tài)口令相同;
[0024]所述步驟B2中,判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令匹配時(shí),還包括:更新所述內(nèi)置的事件因子。
[0025]所述步驟Al中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的事件因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令。
[0026]所述步驟BI中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:應(yīng)用所述預(yù)設(shè)口令生成算法,根據(jù)內(nèi)置的事件因子和所述種子密鑰,生成一個(gè)驗(yàn)證口令,將所述驗(yàn)證口令作為第二動(dòng)態(tài)口令;
[0027]所述步驟B2中,所述判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令是否匹配,具體為:判斷所述第二動(dòng)態(tài)口令與用戶輸入的動(dòng)態(tài)口令是否相同;
[0028]所述步驟B2中,判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令匹配時(shí),還包括:更新所述內(nèi)置的事件因子。
[0029]所述步驟A2之前還包括:所述云認(rèn)證服務(wù)器根據(jù)預(yù)設(shè)語音應(yīng)用標(biāo)識(shí)和播報(bào)次數(shù),通過所述語音播報(bào)平臺(tái)設(shè)置本次播報(bào)的播報(bào)次數(shù)。
[0030]所述步驟A2具體為:所述云認(rèn)證服務(wù)器根據(jù)所述用戶終端標(biāo)識(shí)碼,通過語音播報(bào)平臺(tái)將所述第一動(dòng)態(tài)口令播報(bào)給用戶,播報(bào)所述第一動(dòng)態(tài)口令的次數(shù)為設(shè)置的所述播報(bào)次數(shù)。
[0031]所述步驟A2具體為:所述云認(rèn)證服務(wù)器根據(jù)所述用戶終端標(biāo)識(shí)碼,通過語音播報(bào)平臺(tái)向用戶播報(bào)預(yù)設(shè)次數(shù)的所述第一動(dòng)態(tài)口令。
[0032]所述步驟A2具體為:所述云認(rèn)證服務(wù)器將所述用戶終端標(biāo)識(shí)碼和所述第一動(dòng)態(tài)口令發(fā)送至語音播報(bào)平臺(tái),所述語音播報(bào)平臺(tái)將所述第一動(dòng)態(tài)口令填充至預(yù)設(shè)播報(bào)信息中,得到播報(bào)信息,根據(jù)所述用戶終端標(biāo)識(shí)碼將所述播報(bào)信息播報(bào)給用戶。
[0033]所述步驟Al中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成動(dòng)態(tài)口令,將所述動(dòng)態(tài)口令中預(yù)設(shè)位上的數(shù)據(jù)作為所述第一動(dòng)態(tài)口令;
[0034]所述步驟BI中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成驗(yàn)證口令序列,獲取驗(yàn)證口令序列中的每個(gè)驗(yàn)證口令的預(yù)設(shè)位上的數(shù)據(jù),將每個(gè)數(shù)據(jù)組合得到所述第二動(dòng)態(tài)口令。
[0035]所述步驟Al中,所述對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成動(dòng)態(tài)口令,對(duì)所述動(dòng)態(tài)口令進(jìn)行預(yù)設(shè)計(jì)算,得到所述第一動(dòng)態(tài)口令;
[0036]所述步驟BI中,所述云認(rèn)證服務(wù)器對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:所述云認(rèn)證服務(wù)器對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成驗(yàn)證口令序列,獲取驗(yàn)證口令序列中的每個(gè)驗(yàn)證口令進(jìn)行預(yù)設(shè)計(jì)算,將計(jì)算得到的數(shù)據(jù)組合得到所述第二動(dòng)態(tài)口令。
[0037]所述步驟Al中,所述云認(rèn)證服務(wù)器對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令,具體為:所述云認(rèn)證服務(wù)器對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一數(shù)據(jù)并保存,對(duì)所述種子密鑰、所述第一數(shù)據(jù)和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令;
[0038]所述步驟BI中,所述云認(rèn)證服務(wù)器對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令,具體為:所述云認(rèn)證服務(wù)器獲取保存的所述第一數(shù)據(jù),對(duì)所述種子密鑰、所述第一數(shù)據(jù)和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令。
[0039]—種云認(rèn)證服務(wù)器,包括:
[0040]接收模塊,用于接收來自應(yīng)用服務(wù)器的播報(bào)請(qǐng)求和認(rèn)證請(qǐng)求;
[0041]獲取模塊,用于當(dāng)所述接收模塊接收到所述播報(bào)請(qǐng)求時(shí),根據(jù)所述播報(bào)請(qǐng)求中的用戶信息獲取對(duì)應(yīng)的種子密鑰和用戶終端標(biāo)識(shí)碼;當(dāng)所述接收模塊接收到所述認(rèn)證請(qǐng)求時(shí),從所述認(rèn)證請(qǐng)求中獲取用戶信息和用戶輸入的動(dòng)態(tài)口令,根據(jù)所述用戶信息獲取對(duì)應(yīng)的種子密鑰;
[0042]計(jì)算模塊,用于當(dāng)所述獲取模塊根據(jù)所述播報(bào)請(qǐng)求獲取到種子密鑰時(shí),對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第一動(dòng)態(tài)口令;當(dāng)所述獲取模塊根據(jù)所述認(rèn)證請(qǐng)求獲取到種子密鑰時(shí),對(duì)所述種子密鑰和當(dāng)前動(dòng)態(tài)因子進(jìn)行計(jì)算,生成第二動(dòng)態(tài)口令;
[0043]播報(bào)模塊,用于當(dāng)所述獲取模塊獲取到所述用戶終端標(biāo)識(shí)碼時(shí),根據(jù)所述用戶終端標(biāo)識(shí)碼,通過語音播報(bào)平臺(tái)將所述第一動(dòng)態(tài)口令播報(bào)給用戶;
[0044]判斷模塊,用于當(dāng)所述獲取模塊從所述認(rèn)證請(qǐng)求中獲取到用戶輸入的動(dòng)態(tài)口令且當(dāng)所述計(jì)算模塊生成所述第二動(dòng)態(tài)口令時(shí),判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令是否匹配;
[0045]發(fā)送模塊,用于當(dāng)所述判斷模塊判斷所述用戶輸入的動(dòng)態(tài)口令與所述第二動(dòng)態(tài)口令匹配時(shí),向所述應(yīng)用服務(wù)器返回認(rèn)證成功響應(yīng);根據(jù)所述用戶終端標(biāo)識(shí)碼將第一動(dòng)態(tài)口令發(fā)送至語音播報(bào)平臺(tái)。
[0046]所述計(jì)算模塊,具體用于應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的時(shí)間因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令。
[0047]所述計(jì)算模塊,具體包括:第一處理單元和第一計(jì)算單元;
[0048]所述第一處理單元,用于獲取并根據(jù)當(dāng)前時(shí)間和當(dāng)前漂移值,得到時(shí)間因子序列;
[0049]所述第一計(jì)算單元,用于應(yīng)用所述預(yù)設(shè)口令生成算法,根據(jù)所述時(shí)間因子序列和所述種子密鑰,生成驗(yàn)證口令序列,將所述驗(yàn)證口令序列作為第二動(dòng)態(tài)口令;
[0050]所述判斷模塊,具體用于判斷從所述第二動(dòng)態(tài)口令中是否能夠查找到一個(gè)驗(yàn)證口令與所述用戶輸入的動(dòng)態(tài)口令相同。
[0051]所述計(jì)算模塊,具體用于應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的時(shí)間因子、內(nèi)置的事件因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令;
[0052]所述計(jì)算模塊,具體包括:第二處理單元和第二計(jì)算單元;
[0053]所述第二處理單元,用于獲取并根據(jù)當(dāng)前時(shí)間和當(dāng)前漂移值,得到時(shí)間因子序列;
[0054]所述第二計(jì)算單元,用于應(yīng)用所述預(yù)設(shè)口令生成算法,根據(jù)所述時(shí)間因子序列、內(nèi)置的事件因子和所述種子密鑰,生成驗(yàn)證口令序列,將所述驗(yàn)證口令序列作為所述第二動(dòng)態(tài)口令;
[0055]所述判斷模塊,具體用于判斷從所述第二動(dòng)態(tài)口令中是否能夠查找到一個(gè)驗(yàn)證口令與所述用戶輸入的動(dòng)態(tài)口令相同;
[0056]所述云認(rèn)證服務(wù)器還包括第一更新模塊,所述第一更新模塊,用于當(dāng)所述判斷模塊判斷從所述第二動(dòng)態(tài)口令中能夠查找到一個(gè)驗(yàn)證口令與所述用戶輸入的動(dòng)態(tài)口令相同時(shí),更新所述內(nèi)置的事件因子。
[0057]所述計(jì)算模塊,具體用于應(yīng)用預(yù)設(shè)口令生成算法,對(duì)內(nèi)置的事件因子和所述種子密鑰進(jìn)行計(jì)算,生成所述第一動(dòng)態(tài)口令。
[0058