日韩成人黄色,透逼一级毛片,狠狠躁天天躁中文字幕,久久久久久亚洲精品不卡,在线看国产美女毛片2019,黄片www.www,一级黄色毛a视频直播

一種身份認(rèn)證方法、裝置及服務(wù)器的制造方法

文檔序號(hào):10473501閱讀:396來(lái)源:國(guó)知局
一種身份認(rèn)證方法、裝置及服務(wù)器的制造方法
【專(zhuān)利摘要】本發(fā)明提供了一種身份認(rèn)證方法、裝置及服務(wù)器,該方法包括:獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰;將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比;對(duì)比一致時(shí),生成操作指令。本發(fā)明的方案,采用單用戶(hù)認(rèn)證和多用戶(hù)認(rèn)證結(jié)合的方法,只有少數(shù)敏感數(shù)據(jù)的訪(fǎng)問(wèn)和操作才需要多用戶(hù)共同認(rèn)證,一般的操作僅需單用戶(hù)認(rèn)證便可,不會(huì)影響到日常的工作效率,同時(shí)又保證了敏感數(shù)據(jù)和操作的安全性。
【專(zhuān)利說(shuō)明】
-種身份認(rèn)證方法、裝置及服務(wù)器
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及通信安全及加密領(lǐng)域,尤其設(shè)及一種身份認(rèn)證方法、裝置及服務(wù)器。
【背景技術(shù)】
[0002] 目前對(duì)于賬號(hào)的敏感操作采用金庫(kù)認(rèn)證的方法,用戶(hù)在進(jìn)行敏感操作時(shí)觸發(fā)金庫(kù) 認(rèn)證,需得到相關(guān)人員認(rèn)可,并獲取短信驗(yàn)證后方可繼續(xù)進(jìn)行操作。但單憑金庫(kù)認(rèn)證,難W 保證對(duì)核屯、數(shù)據(jù)敏感操作的監(jiān)控和有效管理,短信驗(yàn)證的方式也難W保證數(shù)據(jù)的安全性和 操作的可監(jiān)督性。
[0003] 因此,現(xiàn)有技術(shù)對(duì)于敏感數(shù)據(jù)和操作的保護(hù)和監(jiān)控方面,存在W下薄弱環(huán)節(jié):
[0004] 1、目前缺乏對(duì)賬戶(hù)及敏感操作的多人共管技術(shù),4A(Account、Authentication、 Authorization、Audit,簡(jiǎn)稱(chēng)4A)賬戶(hù)均由單個(gè)用戶(hù)的數(shù)字證書(shū)認(rèn)證便可通過(guò),部分權(quán)限較 大的賬戶(hù)在進(jìn)行敏感數(shù)據(jù)操作時(shí),缺乏監(jiān)督,容易因?yàn)閭€(gè)人有屯、或無(wú)意的操作對(duì)系統(tǒng)或用 戶(hù)造成損失。 陽(yáng)〇化]2、目前對(duì)于敏感操作觸發(fā)的金庫(kù)認(rèn)證,觸發(fā)認(rèn)證后有且僅有一人通過(guò)審批后便 可,存在一定的風(fēng)險(xiǎn),若此人處于疏忽,而操作者在操作時(shí)又無(wú)人監(jiān)督,因此無(wú)法保證敏感 數(shù)據(jù)和操作的安全性。

【發(fā)明內(nèi)容】

[0006] 本發(fā)明要解決的技術(shù)問(wèn)題是提供一種身份認(rèn)證方法、裝置及服務(wù)器,采用單用戶(hù) 認(rèn)證和多用戶(hù)認(rèn)證結(jié)合的方法,只有少數(shù)敏感數(shù)據(jù)的訪(fǎng)問(wèn)和操作才需要多用戶(hù)共同認(rèn)證, 一般的操作僅需單用戶(hù)認(rèn)證便可,不會(huì)影響到日常的工作效率,同時(shí)又保證了敏感數(shù)據(jù)和 操作的安全性。
[0007] 為了解決上述技術(shù)問(wèn)題,本發(fā)明采用如下技術(shù)方案:
[000引依據(jù)本發(fā)明的一個(gè)方面,提供了一種身份認(rèn)證的方法,包括:
[0009] 獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰;
[0010] 將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì) 應(yīng)的電子密鑰進(jìn)行對(duì)比;
[0011] 對(duì)比一致時(shí),生成操作指令。
[0012] 其中,所述賬戶(hù)信息包括:賬戶(hù)號(hào)碼、用戶(hù)名、賬戶(hù)密碼、密鑰密碼及賬戶(hù)申請(qǐng)時(shí) 間。
[0013] 其中,所述對(duì)應(yīng)的電子密鑰是依據(jù)所述賬戶(hù)密碼和密鑰密碼生成的。
[0014] 其中,依據(jù)所述賬戶(hù)密碼和密鑰密碼生成對(duì)應(yīng)的電子密鑰的步驟包括:
[0015] 根據(jù)所述賬戶(hù)信息獲取一隨機(jī)數(shù),并將所述隨機(jī)數(shù)作為數(shù)字矩陣的編碼;
[0016] 根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣構(gòu)造方法生成規(guī)模為2"巧"的第一 數(shù)字矩陣,其中n為整數(shù);
[0017] 依據(jù)所述賬戶(hù)密碼構(gòu)造一規(guī)模為2"巧"的賬戶(hù)布爾矩陣,并依據(jù)所述賬戶(hù)布爾矩 陣和第一數(shù)字矩陣生成規(guī)模為2"巧"的數(shù)字矩陣片段;
[0018] 依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣;
[0019] 利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成電子密鑰。
[0020] 其中,根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣構(gòu)造方法生成規(guī)模為2"巧"的 第一數(shù)字矩陣的步驟包括:
[OOW 將1~4"的正整數(shù)序列順序劃分為長(zhǎng)度為2 "的子序列,第i個(gè)序列記為A 1;
[0022] 根據(jù)雙偶數(shù)數(shù)字矩陣填寫(xiě)規(guī)則,將Ai填入一矩陣A的第i行,獲得各列元素之和 及對(duì)角線(xiàn)元素之和均相等的矩陣B ;
[0023] 根據(jù)雙偶數(shù)列調(diào)整規(guī)則,在前2" 1行的每一行中,選取2 " 1個(gè)元素,并將所述元素 對(duì)應(yīng)行的同列元素進(jìn)行交換,獲得各行元素之和、各列元素之和W及對(duì)角線(xiàn)元素之和均相 等的矩陣C ;
[0024] 將所述矩陣C作為第一數(shù)字矩陣保存。
[00巧]其中,依據(jù)所述賬戶(hù)布爾矩陣和第一數(shù)字矩陣生成規(guī)模為2。巧n的數(shù)字矩陣片段 的步驟包括:
[00%] 從所述賬戶(hù)布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述第一數(shù)字矩陣中相同位置的數(shù),存放在預(yù)先構(gòu) 造的2。巧n數(shù)字矩陣中的相同位置處.
[0027] 將所述2。巧n數(shù)字矩陣中空置的位置填充同一隨機(jī)數(shù),并將所述2 n巧n數(shù)字矩陣作 為數(shù)字矩陣片段保存。
[0028] 其中,依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣的步驟包括:
[0029] 選取2"個(gè)散列函數(shù),并依據(jù)所述散列函數(shù)將所述密鑰密碼散列為2"個(gè)不同的數(shù)X, 其中,X為大于等于0且小于等于- 1的整數(shù);
[0030] 將2"個(gè)不同的數(shù)X分別轉(zhuǎn)換為2 "位二進(jìn)制布爾序列;
[0031] 將獲取的2"個(gè)2 "位的二進(jìn)制布爾序列順序填寫(xiě)到一規(guī)模為2 的矩陣中,獲取 密鑰布爾矩陣。
[0032] 其中,利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成電子密鑰的步 驟包括:
[0033] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中.
[0034] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中.
[0035] 將所述2。巧n數(shù)組作為電子密鑰進(jìn)行保存。
[0036] 其中,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信息 及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比的步驟包括:
[0037] 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括一個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),接收終端 依據(jù)所述待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送的散列運(yùn)算結(jié)果,并保存于數(shù)據(jù)庫(kù) 中;
[0038] 將所述散列運(yùn)算結(jié)果與生成的對(duì)應(yīng)用戶(hù)的賬戶(hù)布爾矩陣進(jìn)行對(duì)比;
[0039] 若所述散列運(yùn)算結(jié)果與賬戶(hù)布爾矩陣的對(duì)應(yīng)值相匹配,生成普通級(jí)別的數(shù)據(jù)操作 指令。
[0040] 其中,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信息 及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比的步驟包括:
[0041] 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括多個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),將所有用 戶(hù)的數(shù)字矩陣片段相同位置上的數(shù)字相加,得到規(guī)模為的第二數(shù)字矩陣,并從所述第 二數(shù)字矩陣的第一行第一列開(kāi)始,從左至右自上而下依次對(duì)每一位進(jìn)行模運(yùn)算;
[0042] 利用所述第一數(shù)字矩陣減去所述模運(yùn)算后的第二數(shù)字矩陣,獲得補(bǔ)數(shù)字矩陣,并 刪除所述第一數(shù)字矩陣,保存補(bǔ)數(shù)字矩陣;
[0043] 接收終端發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名,對(duì)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后 發(fā)送的散列結(jié)果,及根據(jù)待訪(fǎng)問(wèn)用戶(hù)的密鑰密碼構(gòu)造密鑰布爾矩陣,并利用所述密鑰布爾 矩陣對(duì)所述電子密鑰解密后發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段;
[0044] 將接收到的所述待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名和賬戶(hù)密碼的散列運(yùn)算結(jié)果與數(shù)據(jù)庫(kù)中保 存的用戶(hù)名和賬戶(hù)布爾矩陣進(jìn)行比對(duì);
[0045] 若每一位待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼的散列運(yùn)算結(jié)果與所述賬戶(hù)布爾矩陣中對(duì)應(yīng)值 相匹配,將所有待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段逐位相加得到規(guī)模為2"巧"的第=數(shù)字矩陣;
[0046] 對(duì)所述第=數(shù)字矩陣逐位進(jìn)行模4"運(yùn)算,并將所述第=數(shù)字矩陣與所述補(bǔ)數(shù)字矩 陣逐位相加,獲得2"巧"的第四數(shù)字矩陣,并對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證;
[0047] 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和均相等,生成敏感 數(shù)據(jù)操作指令。
[0048] 其中,利用所述密鑰布爾矩陣對(duì)所述電子密鑰解密的步驟包括:
[0049] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"巧" 數(shù)組中與密鑰布爾矩陣中值為1的元素相同的位置處;
[0050] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則順序提取所述電子密鑰中相同位置的數(shù),存放在預(yù)先構(gòu) 造的2"巧"數(shù)組中與密鑰布爾矩陣中值為0的元素相同的位置處;
[0051] 將所述2"巧"數(shù)組作為待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段進(jìn)行保存。
[0052] 其中,對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證后,所述方法還包括:
[0053] 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和存在不相等的情 況,檢查每一個(gè)待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段;
[0054] 鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名并向所有待訪(fǎng)問(wèn)用戶(hù)顯示,并向每一位待訪(fǎng) 問(wèn)用戶(hù)提示此次操作失敗。 陽(yáng)化5] 其中,鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名的步驟包括:
[0056] 從數(shù)據(jù)庫(kù)中獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)布爾矩陣,并從所述賬戶(hù)布爾矩陣的第一行第 一列元素開(kāi)始,從左至右,自上而下逐位判斷;
[0057] 若所述賬戶(hù)布爾矩陣中任一位的元素值為0,將待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段中該 位置的元素置為0,獲得過(guò)濾后的數(shù)字矩陣片段;
[0058] 從過(guò)濾后的數(shù)字矩陣片段的第一行第一列開(kāi)始判斷,若存在任一位置上的非零元 素的值不合法,判定所述賬戶(hù)布爾矩陣對(duì)應(yīng)的用戶(hù)為輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)。
[0059] 依據(jù)本發(fā)明的另一個(gè)方面,提供了一種身份認(rèn)證裝置,包括:
[0060] 獲取模塊,用于獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰;
[0061] 對(duì)比模塊,用于將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的 賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比;
[0062] 操作模塊,用于對(duì)比一致時(shí),生成操作指令。
[0063] 依據(jù)本發(fā)明的另一個(gè)方面,還提供了一種服務(wù)器,包括數(shù)據(jù)庫(kù),還包括上述所述的 身份認(rèn)證裝置。
[0064] 本發(fā)明的有益效果是: 陽(yáng)0化]本發(fā)明實(shí)施例的身份認(rèn)證方法,采用基于數(shù)字矩陣的金庫(kù)認(rèn)證方式,將單用戶(hù)認(rèn) 證和多用戶(hù)認(rèn)證相結(jié)合。當(dāng)只是設(shè)及到普通的賬戶(hù)操作時(shí),單用戶(hù)通過(guò)認(rèn)證即可操作;當(dāng)設(shè) 及到賬戶(hù)的核屯、數(shù)據(jù)和敏感操作時(shí),則需要所有共管人員提供電子證書(shū)和個(gè)人密碼W及密 鑰密碼進(jìn)行組合金庫(kù)認(rèn)證,如果認(rèn)證通過(guò)才能進(jìn)行操作。所W,本發(fā)明的方案,既不會(huì)影響 到日常的工作效率,又能保證敏感數(shù)據(jù)和操作的安全性。
[0066] 此外,本發(fā)明的方案可根據(jù)數(shù)據(jù)和操作的安全級(jí)別的不同設(shè)定不同的金庫(kù)協(xié)同認(rèn) 證人員,靈活地對(duì)不同數(shù)據(jù)進(jìn)行不同級(jí)別地保護(hù),并可W在現(xiàn)有的賬戶(hù)登陸和金庫(kù)認(rèn)證的 基礎(chǔ)上直接進(jìn)行改造,不需要增添新的設(shè)備,只需要少量的代碼改造,易于實(shí)現(xiàn)。
【附圖說(shuō)明】
[0067] 圖1表示本發(fā)明實(shí)施例的身份認(rèn)證方法的流程示意圖;
[0068] 圖2表示本發(fā)明實(shí)施例的身份認(rèn)證裝置的結(jié)構(gòu)框圖;
[0069] 圖3表示電子密鑰生成模塊的結(jié)構(gòu)框圖;
[0070] 圖4表示對(duì)比模塊的結(jié)構(gòu)框圖;
[0071] 圖5表示構(gòu)造數(shù)字矩陣片段的原理示意圖;
[0072] 圖6表示依據(jù)賬戶(hù)密碼構(gòu)造賬戶(hù)布爾矩陣的原理示意圖; 陽(yáng)073] 圖7表示加密原理示意圖;
[0074] 圖8表示解密原理示意圖。
【具體實(shí)施方式】
[00巧]下面將參照附圖更詳細(xì)地描述本公開(kāi)的示例性實(shí)施例。雖然附圖中顯示了本公開(kāi) 的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可W W各種形式實(shí)現(xiàn)本公開(kāi)而不應(yīng)被運(yùn)里闡述的實(shí)施例 所限制。相反,提供運(yùn)些實(shí)施例是為了能夠更透徹地理解本公開(kāi),并且能夠?qū)⒈竟_(kāi)的范圍 完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。 W76] 實(shí)施例一
[0077] 依據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種身份認(rèn)證方法,該方法,首先,獲取待 訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰;接著,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的 電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比;最后,對(duì)比一致時(shí),生成操作 指令。
[0078] 如圖I所示,該方法包括:
[0079] 步驟S11、獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰。
[0080] 其中,賬戶(hù)信息包括:賬戶(hù)號(hào)碼、用戶(hù)名、賬戶(hù)密碼、密鑰密碼及賬戶(hù)申請(qǐng)時(shí)間。當(dāng) 然,可W理解的是,本發(fā)明實(shí)施例的身份認(rèn)證方法中,并不具體限定賬戶(hù)信息所包括的具體 內(nèi)容,還可依據(jù)需要添加其他相關(guān)內(nèi)容。
[0081] 此外,與賬戶(hù)信息對(duì)應(yīng)的電子密鑰是依據(jù)賬戶(hù)密碼和密鑰密碼生成的。本發(fā)明實(shí) 施例的身份認(rèn)證方法中,在用戶(hù)需要進(jìn)行身份認(rèn)證之前,服務(wù)器會(huì)依據(jù)每一個(gè)用戶(hù)的賬戶(hù) 密碼和密鑰密碼生成對(duì)應(yīng)的電子密鑰,并保存在服務(wù)器的數(shù)據(jù)庫(kù)中。
[0082] 可選地,依據(jù)所述賬戶(hù)密碼和密鑰密碼生成對(duì)應(yīng)的電子密鑰的步驟包括:
[0083] 根據(jù)所述賬戶(hù)信息獲取一隨機(jī)數(shù),并將所述隨機(jī)數(shù)作為數(shù)字矩陣的編碼;
[0084] 根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣構(gòu)造方法生成規(guī)模為2"巧"的第一 數(shù)字矩陣,其中n為整數(shù);
[00化]依據(jù)所述賬戶(hù)密碼構(gòu)造一規(guī)模為2。巧n的賬戶(hù)布爾矩陣,并依據(jù)所述賬戶(hù)布爾矩 陣和第一數(shù)字矩陣生成規(guī)模為2"巧"的數(shù)字矩陣片段;
[0086] 依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣;
[0087] 利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成電子密鑰。
[0088] 可選地,根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣構(gòu)造方法生成規(guī)模為2。巧" 的第一數(shù)字矩陣的步驟包括:
[0089] 將1~4"的正整數(shù)序列順序劃分為長(zhǎng)度為2 "的子序列,第i個(gè)序列記為A 1;
[0090] 根據(jù)雙偶數(shù)數(shù)字矩陣填寫(xiě)規(guī)則,將Ai填入一矩陣A的第i行,獲得各列元素之和 及對(duì)角線(xiàn)元素之和均相等的矩陣B ;
[0091] 根據(jù)雙偶數(shù)列調(diào)整規(guī)則,在前2" 1行的每一行中,選取2 " 1個(gè)元素,并將所述元素 對(duì)應(yīng)行的同列元素進(jìn)行交換,獲得各行元素之和、各列元素之和W及對(duì)角線(xiàn)元素之和均相 等的矩陣C ;
[0092] 將所述矩陣C作為第一數(shù)字矩陣保存。
[0093] 可選地,依據(jù)所述賬戶(hù)布爾矩陣和第一數(shù)字矩陣生成規(guī)模為2"巧"的數(shù)字矩陣片 段的步驟包括:
[0094] 從所述賬戶(hù)布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述第一數(shù)字矩陣中相同位置的數(shù),存放在預(yù)先構(gòu) 造的2。巧n數(shù)字矩陣中的相同位置處.
[0095] 將所述2。巧n數(shù)字矩陣中空置的位置填充同一隨機(jī)數(shù),并將所述2 n巧n數(shù)字矩陣作 為數(shù)字矩陣片段保存。
[0096] 具體地,為了便于說(shuō)明,W 8*8矩陣舉例而言,如圖5所示,如賬戶(hù)布爾矩陣的第一 行自左向右的第=、四、屯、八個(gè)元素為1,則提取第一數(shù)字矩陣中相同位置上的數(shù)字59、4、 7及64,存放在8*8矩陣中的相同位置處。依次遍歷賬戶(hù)布爾矩陣的所有為1的元素,遍歷 完成之后,在該8*8矩陣中的空置位置處填入同一隨機(jī)數(shù),如5,最終獲得數(shù)字矩陣片段。
[0097] 其中,通過(guò)賬戶(hù)密碼構(gòu)造賬戶(hù)布爾矩陣的方法比較多,只要能將賬戶(hù)密碼散列成 矩陣即可。為了便于說(shuō)明將賬戶(hù)密碼散列成矩陣的方法,舉例說(shuō)明8位數(shù)字散列為6*4的矩 陣的過(guò)程。如圖6所示,8位數(shù)字29151400,從左向右每?jī)晌粍澐譃橐粋€(gè)數(shù)字,即nun[0]對(duì) 應(yīng)數(shù)字29, nun [1]對(duì)應(yīng)數(shù)字15, nun [2]對(duì)應(yīng)數(shù)字14, nun [3]對(duì)應(yīng)數(shù)字0,對(duì)于劃分的四個(gè) 數(shù)字,分別通過(guò)散列函數(shù)散列為對(duì)應(yīng)的六位二進(jìn)制數(shù),每一個(gè)二進(jìn)制數(shù)的元素作為6*4矩 陣的一行,則最終生成了所需的6*4矩陣。
[0098] 其中,依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣的步驟包括:
[0099] 選取2"個(gè)散列函數(shù),并依據(jù)所述散列函數(shù)將所述密鑰密碼散列為2"個(gè)不同的數(shù)X, 其中,X為大于等于0且小于等3 22" -1的整數(shù);
[0100] 將2"個(gè)不同的數(shù)X分別轉(zhuǎn)換為2 "位二進(jìn)制布爾序列; 陽(yáng)101] 將獲取的2"個(gè)2 "位的二進(jìn)制布爾序列順序填寫(xiě)到一規(guī)模為2 的矩陣中,獲取 密鑰布爾矩陣。 陽(yáng)102] 具體地,當(dāng)密鑰密碼為六位時(shí),n = 4。目P,當(dāng)密鑰密碼為六位時(shí),需要選取16個(gè)散 列函數(shù),來(lái)將六位密鑰密碼散列成16個(gè)不同的數(shù),且運(yùn)些數(shù)的取值介于0到21S-1之間。接 著將每一個(gè)數(shù)字轉(zhuǎn)換成為16位二進(jìn)制的布爾序列,并順序填寫(xiě)到一個(gè)規(guī)模為16*16的矩陣 中,從而獲得一個(gè)規(guī)模為16*16的密鑰布爾矩陣。 陽(yáng)103] 當(dāng)然,本發(fā)明實(shí)施例的身份認(rèn)證方法中,并不限于密鑰密碼為六位,還可依據(jù)需要 設(shè)為八位,則依據(jù)密鑰密碼生成的密鑰布爾矩陣的規(guī)模也會(huì)相應(yīng)改變。
[0104] 其中,利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成電子密鑰的步 驟包括:
[01化]從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中. 陽(yáng)106] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中.
[0107] 將所述2。巧n數(shù)組作為電子密鑰進(jìn)行保存。
[0108] 具體地,如圖7所示,為了便于說(shuō)明具體的加密過(guò)程,采用了 8*8的矩陣,首先從密 鑰布爾矩陣的第一行第一列元素開(kāi)始,自從左到右自上而下依次判斷每一個(gè)元素的值,如 果是1,則提取數(shù)字矩陣片段中相同位置的數(shù),順序存放在新數(shù)組中,如果為0,則不提??; 如密鑰布爾矩陣中的第一行自左向右的第一、=、四、屯個(gè)元素均為1,則提取數(shù)字矩陣片段 中的相應(yīng)位置上的數(shù)字5、4、5、7,順序放入預(yù)先構(gòu)造的8*8的數(shù)組中。依次依據(jù)1提取后, 再次自從左到右自上而下依次判斷每一個(gè)元素的值,如果是0,則提取數(shù)字矩陣片段中相同 位置的數(shù),順序存放在新數(shù)組中,如果為1,則不提取。其中,為了使得加密效果更佳,最終獲 得的電子密鑰不易被破解,在加密過(guò)程中可多次重復(fù)上述操作步驟,完成加密。 陽(yáng)109] 步驟S13、將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù) 信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比。
[0110] 步驟S15、對(duì)比一致時(shí),生成操作指令。 陽(yáng)111] 可選地,步驟S13包括:
[0112] 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括一個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),接收終端 依據(jù)所述待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送的散列運(yùn)算結(jié)果,并保存于數(shù)據(jù)庫(kù) 中;
[0113] 將所述散列運(yùn)算結(jié)果與生成的對(duì)應(yīng)用戶(hù)的賬戶(hù)布爾矩陣進(jìn)行對(duì)比;
[0114] 若所述散列運(yùn)算結(jié)果與賬戶(hù)布爾矩陣的對(duì)應(yīng)值相匹配,生成普通級(jí)別的數(shù)據(jù)操作 指令。
[0115] 本發(fā)明實(shí)施例的身份認(rèn)證方法中,在單一用戶(hù)進(jìn)行賬戶(hù)的相關(guān)訪(fǎng)問(wèn)時(shí),該用戶(hù)在 終端側(cè)輸入相關(guān)的賬戶(hù)信息,如賬戶(hù)號(hào)碼,用戶(hù)名及賬戶(hù)密碼。在該用戶(hù)的終端上,對(duì)賬戶(hù) 密碼進(jìn)行散列運(yùn)算得到散列運(yùn)算結(jié)果,并將該散列運(yùn)算結(jié)果通過(guò)網(wǎng)絡(luò)傳送到服務(wù)器。服務(wù) 器則將接收的散列運(yùn)算結(jié)果與數(shù)據(jù)庫(kù)中保存的賬戶(hù)布爾矩陣進(jìn)行對(duì)比,如果用戶(hù)的賬戶(hù)密 碼的散列運(yùn)算結(jié)果與賬戶(hù)布爾矩陣的對(duì)應(yīng)值相匹配,則用戶(hù)可W查看該賬戶(hù)的一般信息并 進(jìn)行普通級(jí)別的數(shù)據(jù)操作;否則,用戶(hù)不能查看該賬戶(hù)的信息或進(jìn)行任何操作。
[0116] 由此可知,本發(fā)明實(shí)施例的身份認(rèn)證方法,支持單用戶(hù)的身份證,但是單用戶(hù)通過(guò) 身份認(rèn)證后,只能進(jìn)行普通級(jí)別的操作,如進(jìn)行賬單查詢(xún),但對(duì)于詳單查詢(xún)則無(wú)法進(jìn)行訪(fǎng) 問(wèn)。
[0117] 可選地,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信 息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比的步驟包括:
[0118] 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括多個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),將所有用 戶(hù)的數(shù)字矩陣片段相同位置上的數(shù)字相加,得到規(guī)模為2"巧"的第二數(shù)字矩陣,并從所述第 二數(shù)字矩陣的第一行第一列開(kāi)始,從左至右自上而下依次對(duì)每一位進(jìn)行模運(yùn)算;
[0119] 利用所述第一數(shù)字矩陣減去所述模運(yùn)算后的第二數(shù)字矩陣,獲得補(bǔ)數(shù)字矩陣,并 刪除所述第一數(shù)字矩陣,保存補(bǔ)數(shù)字矩陣;
[0120] 接收終端發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名,對(duì)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后 發(fā)送的散列結(jié)果,及根據(jù)待訪(fǎng)問(wèn)用戶(hù)的密鑰密碼構(gòu)造密鑰布爾矩陣,并利用所述密鑰布爾 矩陣對(duì)所述電子密鑰解密后發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 陽(yáng)121] 將接收到的所述待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名和賬戶(hù)密碼的散列運(yùn)算結(jié)果與數(shù)據(jù)庫(kù)中保 存的用戶(hù)名和賬戶(hù)布爾矩陣進(jìn)行比對(duì);
[0122] 若每一位待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼的散列運(yùn)算結(jié)果與所述賬戶(hù)布爾矩陣中對(duì)應(yīng)值 相匹配,將所有待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段逐位相加得到規(guī)模為2"巧"的第=數(shù)字矩陣; 陽(yáng)123]對(duì)所述第=數(shù)字矩陣逐位進(jìn)行模4"運(yùn)算,并將所述第=數(shù)字矩陣與所述補(bǔ)數(shù)字矩 陣逐位相加,獲得2"巧"的第四數(shù)字矩陣,并對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證;
[0124] 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和均相等,生成敏感 數(shù)據(jù)操作指令。
[01巧]可選地,對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證后,所述方法還包括:
[01%] 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和存在不相等的情 況,檢查每一個(gè)待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 陽(yáng)127] 鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名并向所有待訪(fǎng)問(wèn)用戶(hù)顯示,并向每一位待訪(fǎng) 問(wèn)用戶(hù)提示此次操作失敗。
[0128] 當(dāng)設(shè)及到賬戶(hù)的核屯、數(shù)據(jù)和敏感操作時(shí),本發(fā)明實(shí)施例的身份認(rèn)證中,需要多個(gè) 用戶(hù)共同通過(guò)認(rèn)證才可進(jìn)行訪(fǎng)問(wèn)。
[0129] 具體地,在每一次需要對(duì)賬戶(hù)進(jìn)行核屯、數(shù)據(jù)的讀取或敏感操作時(shí),由對(duì)該賬號(hào)有 共管權(quán)限的所有用戶(hù)協(xié)商好數(shù)據(jù)查看和操作的具體細(xì)節(jié)及詳細(xì)腳本,然后所有用戶(hù)在終端 上輸入自己的賬戶(hù)密碼,密鑰密碼和電子密鑰。
[0130] 由于在多用戶(hù)的身份認(rèn)證過(guò)程中,需要用到補(bǔ)數(shù)字矩陣,所W服務(wù)器會(huì)依據(jù)所有 用戶(hù)的賬戶(hù)信息,如賬戶(hù)號(hào)碼、用戶(hù)名、賬戶(hù)密碼及申請(qǐng)賬號(hào)的時(shí)間來(lái)構(gòu)造一補(bǔ)數(shù)字矩陣進(jìn) 行保存。 陽(yáng)131] 當(dāng)多個(gè)用戶(hù)在終端側(cè)輸入賬戶(hù)號(hào)碼、各自的用戶(hù)名、賬號(hào)密碼及電子密碼后,終端 會(huì)依次對(duì)每一位用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算,獲得每一位用戶(hù)的散列運(yùn)算結(jié)果,并將所 有散列運(yùn)算結(jié)果及對(duì)應(yīng)的用戶(hù)名發(fā)送到服務(wù)器端。在服務(wù)器側(cè),將每一個(gè)用戶(hù)的散列運(yùn)算 結(jié)果與數(shù)據(jù)庫(kù)中保存的用戶(hù)名和賬戶(hù)布爾矩陣進(jìn)行對(duì)比,當(dāng)每位用戶(hù)的賬戶(hù)密碼的散列運(yùn) 算結(jié)果與賬戶(hù)布爾矩陣中對(duì)應(yīng)值相匹配時(shí),才可進(jìn)行后續(xù)的多人共同認(rèn)證。否則,多人身份 驗(yàn)證失敗,且此時(shí)還可向所有用戶(hù)提示輸入賬號(hào)密碼錯(cuò)誤的用戶(hù)名,并且提示身份認(rèn)證失 敗。
[0132] 在進(jìn)行多人共同認(rèn)證之前,終端側(cè)需要利用每一個(gè)用戶(hù)的密鑰密碼構(gòu)造一密鑰布 爾矩陣,并利用該密鑰布爾矩陣對(duì)電子密鑰解密,生成對(duì)應(yīng)的數(shù)字矩陣片段。從而,可W進(jìn) 行多人共同認(rèn)證。
[0133] 具體地,例如將所有用戶(hù)的數(shù)字矩陣片段逐位相加得到一個(gè)規(guī)模為16*16的矩 陣,則對(duì)矩陣逐位進(jìn)行模16 2運(yùn)算,然后將矩陣與服務(wù)器保存的補(bǔ)數(shù)字矩陣逐位相加,對(duì)相 加后的矩陣進(jìn)行驗(yàn)證,如果各行、各列及兩個(gè)對(duì)角線(xiàn)元素之和均相等,則執(zhí)行修改或支取操 作,執(zhí)行完成后提示所有用戶(hù)操作成功;否則,不執(zhí)行修改或支取操作,檢查每一個(gè)用戶(hù)的 數(shù)字矩陣片段,鎖定輸入錯(cuò)誤的用戶(hù)并向所有用戶(hù)顯示,向每一位用戶(hù)提示此次操作失敗。
[0134] 可選地,利用所述密鑰布爾矩陣對(duì)所述電子密鑰解密的步驟包括:
[0135] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"巧" 數(shù)組中與密鑰布爾矩陣中值為1的元素相同的位置處;
[0136] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"巧" 數(shù)組中與密鑰布爾矩陣中值為0的元素相同的位置處; 陽(yáng)137] 將所述2"巧"數(shù)組作為待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段進(jìn)行保存。
[013引為了便于說(shuō)明解密過(guò)程,W 8*8的矩陣來(lái)舉例說(shuō)明。具體地,如圖8所示,比如,密 鑰布爾矩陣的第一行自左向右,第一、=、四、屯個(gè)元素為1,則順序提取電子密鑰的前四個(gè) 元素,5、4、5、7,依次放入預(yù)先構(gòu)造的8*8數(shù)組中,與密鑰布爾矩陣的相同位置處。其中,在 本發(fā)明實(shí)施的身份認(rèn)證方法中,生成電子密鑰的加密過(guò)程及多用戶(hù)認(rèn)證時(shí)對(duì)電子密鑰的解 密過(guò)程是相逆的,且解密的次數(shù)要和加密的次數(shù)相等,才能恢復(fù)得到加密之前的數(shù)字矩陣 片段,實(shí)現(xiàn)電子密鑰的解密。
[0139] 可選地,鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名的步驟包括:
[0140] 從數(shù)據(jù)庫(kù)中獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)布爾矩陣,并從所述賬戶(hù)布爾矩陣的第一行第 一列元素開(kāi)始,從左至右,自上而下逐位判斷; 陽(yáng)141] 若所述賬戶(hù)布爾矩陣中任一位的元素值為0,將待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段中該 位置的元素置為0,獲得過(guò)濾后的數(shù)字矩陣片段; 陽(yáng)142] 從過(guò)濾后的數(shù)字矩陣片段的第一行第一列開(kāi)始判斷,若存在任一位置上的非零元 素的值不合法,判定所述賬戶(hù)布爾矩陣對(duì)應(yīng)的用戶(hù)為輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)。 陽(yáng)143] 其中,不合法指的是,該非零元素既不是填充到該位置上的數(shù)字,也不是交換的到 該位置上的數(shù)字。 陽(yáng)144] 實(shí)施例二
[0145] 依據(jù)本發(fā)明實(shí)施例的另一個(gè)方面,還提供了一種身份認(rèn)證裝置,如圖2所示,該裝 置200包括: 陽(yáng)146] 獲取模塊203,用于獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰; 陽(yáng)147] 對(duì)比模塊205,用于將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保 存的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比;
[0148] 操作模塊207,用于對(duì)比一致時(shí),生成操作指令。
[0149] 可選地,所述賬戶(hù)信息包括:賬戶(hù)號(hào)碼、用戶(hù)名、賬戶(hù)密碼、密鑰密碼及賬戶(hù)申請(qǐng)時(shí) 間。
[0150] 可選地,所述對(duì)應(yīng)的電子密鑰是依據(jù)所述賬戶(hù)密碼和密鑰密碼生成的。 陽(yáng)151] 可選地,所述裝置200還包括: 陽(yáng)152] 電子密鑰生成模塊201,如圖3所示,所述電子密鑰生成模塊201包括: 陽(yáng)153] 獲取單元2011,用于根據(jù)所述多個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息獲取一隨機(jī)數(shù),并將所 述隨機(jī)數(shù)作為數(shù)字矩陣的編碼;
[0154] 第一數(shù)字矩陣生成單元2012,用于根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣 構(gòu)造方法生成規(guī)模為2"巧"的第一數(shù)字矩陣,其中n為整數(shù); 陽(yáng)155] 第一生成單元2013,用于依據(jù)所述賬戶(hù)密碼構(gòu)造一規(guī)模為2。巧n的賬戶(hù)布爾矩陣, 并依據(jù)所述賬戶(hù)布爾矩陣和第一數(shù)字矩陣生成規(guī)模為的數(shù)字矩陣片段; 陽(yáng)156] 第二生成單元2014,用于依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣; 陽(yáng)157] 加密單元2015,用于利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成 電子密鑰。
[0158] 可選地,所述第一數(shù)字矩陣生成單元2012進(jìn)一步用于: 陽(yáng)159] 將1~42"的正整數(shù)序列順序劃分為長(zhǎng)度為2 "的子序列,第i個(gè)序列記為A 1; 陽(yáng)160] 根據(jù)雙偶數(shù)數(shù)字矩陣填寫(xiě)規(guī)則,將Ai填入一矩陣A的第i行,獲得各列元素之和 及對(duì)角線(xiàn)元素之和均相等的矩陣B ; 陽(yáng)161] 根據(jù)雙偶數(shù)列調(diào)整規(guī)則,在前2" 1行的每一行中,選取2 " 1個(gè)元素,并將所述元素 對(duì)應(yīng)行的同列元素進(jìn)行交換,獲得各行元素之和、各列元素之和W及對(duì)角線(xiàn)元素之和均相 等的矩陣C ;
[0162] 將所述矩陣C作為第一數(shù)字矩陣保存。
[0163] 可選地,第一生成單元2013在依據(jù)所述賬戶(hù)布爾矩陣和第一數(shù)字矩陣生成規(guī)模 為2。巧n的數(shù)字矩陣片段時(shí),進(jìn)一步用于:
[0164] 從所述賬戶(hù)布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述第一數(shù)字矩陣中相同位置的數(shù),存放在預(yù)先構(gòu) 造的2。巧n數(shù)字矩陣中的相同位置處.
[0165] 將所述2。巧n數(shù)字矩陣中空置的位置填充同一隨機(jī)數(shù),并將所述2 n巧n數(shù)字矩陣作 為數(shù)字矩陣片段保存。 陽(yáng)166] 可選地,所述第二生成單元2014進(jìn)一步用于: 陽(yáng)167] 選取2"個(gè)散列函數(shù),并依據(jù)所述散列函數(shù)將所述密鑰密碼散列為2"個(gè)不同的數(shù)X, 其中,X為大于等于0且小于等于22" - 1的整數(shù);
[0168] 將2"個(gè)不同的數(shù)X分別轉(zhuǎn)換為2 "位二進(jìn)制布爾序列;
[0169] 將獲取的2"個(gè)2 "位的二進(jìn)制布爾序列順序填寫(xiě)到一規(guī)模為2 的矩陣中,獲取 密鑰布爾矩陣。
[0170] 可選地,所述加密單元2013進(jìn)一步用于: 陽(yáng)171] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中.
[0172] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù) 先構(gòu)造的2。巧n數(shù)組中.
[0173] 將所述2。巧n數(shù)組作為電子密鑰進(jìn)行保存。
[0174] 可選地,如圖4所示,所述對(duì)比模塊205包括:
[01巧]第一接收單元2051,用于當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括一個(gè)待訪(fǎng)問(wèn)用戶(hù) 的賬戶(hù)信息時(shí),接收終端依據(jù)所述待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送的散列運(yùn)算 結(jié)果,并保存于數(shù)據(jù)庫(kù)中; 陽(yáng)176] 第一對(duì)比單元2052,用于將所述散列運(yùn)算結(jié)果與生成的對(duì)應(yīng)用戶(hù)的賬戶(hù)布爾矩陣 進(jìn)行對(duì)比;
[0177] 第一操作單元2053,用于若所述散列運(yùn)算結(jié)果與賬戶(hù)布爾矩陣的對(duì)應(yīng)值相匹配, 生成普通級(jí)別的數(shù)據(jù)操作指令。 陽(yáng)17引可選地,如圖4所示,所述對(duì)比模塊205還包括:
[0179] 第二數(shù)字矩陣生成單元2054,用于當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括多個(gè)待 訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),將所有用戶(hù)的數(shù)字矩陣片段相同位置上的數(shù)字相加,得到規(guī)模為 2"*2"的第二數(shù)字矩陣,并從所述第二數(shù)字矩陣的第一行第一列開(kāi)始,從左至右自上而下依 次對(duì)每一位進(jìn)行模運(yùn)算; 陽(yáng)180] 補(bǔ)數(shù)字矩陣生成單元2055,用于利用所述第一數(shù)字矩陣減去所述模運(yùn)算后的第二 數(shù)字矩陣,獲得補(bǔ)數(shù)字矩陣,并刪除所述第一數(shù)字矩陣,保存補(bǔ)數(shù)字矩陣; 陽(yáng)181] 第二接收單元2056,用于接收終端發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名,對(duì)待訪(fǎng)問(wèn)用戶(hù)的 賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送的散列結(jié)果,及根據(jù)待訪(fǎng)問(wèn)用戶(hù)的密鑰密碼構(gòu)造密鑰布爾矩 陣,并利用所述密鑰布爾矩陣對(duì)所述電子密鑰解密后發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 陽(yáng)182] 第二對(duì)比單元2057,用于將接收到的所述待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名和賬戶(hù)密碼的散列 運(yùn)算結(jié)果與數(shù)據(jù)庫(kù)中保存的用戶(hù)名和賬戶(hù)布爾矩陣進(jìn)行比對(duì); 陽(yáng)183] 第=數(shù)字矩陣生成單元2058,用于若每一位待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼的散列運(yùn)算結(jié) 果與所述賬戶(hù)布爾矩陣中對(duì)應(yīng)值相匹配,將所有待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段逐位相加得到 規(guī)模為2。巧n的第=數(shù)字矩陣.
[0184] 驗(yàn)證單元2059,用于對(duì)所述第S數(shù)字矩陣逐位進(jìn)行模少運(yùn)算,并將所述第S數(shù)字 矩陣與所述補(bǔ)數(shù)字矩陣逐位相加,獲得2"巧"的第四數(shù)字矩陣,并對(duì)所述第四數(shù)字矩陣進(jìn)行 驗(yàn)證; 陽(yáng)185] 第二操作單元20510,用于若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元 素之和均相等,生成敏感數(shù)據(jù)操作指令。 陽(yáng)186] 可選地,利用所述密鑰布爾矩陣對(duì)所述電子密鑰解密的步驟包括: 陽(yáng)187] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為1,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"巧" 數(shù)組中與密鑰布爾矩陣中值為1的元素相同的位置處;
[0188] 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一 個(gè)元素的值,若任一元素值為0,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"巧" 數(shù)組中與密鑰布爾矩陣中值為0的元素相同的位置處; 陽(yáng)189] 將所述2"巧"數(shù)組作為待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段進(jìn)行保存。 陽(yáng)190] 可選地,如圖4所示,所述對(duì)比模塊205還包括: 陽(yáng)191] 檢驗(yàn)單元20511,用于若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之 和存在不相等的情況,檢查每一個(gè)待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 陽(yáng)192] 鎖定單元20512,用于鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名并向所有待訪(fǎng)問(wèn)用戶(hù) 顯示,并向每一位待訪(fǎng)問(wèn)用戶(hù)提示此次操作失敗。 陽(yáng)193] 可選地,所述鎖定單元20512進(jìn)一步用于:
[0194] 從數(shù)據(jù)庫(kù)中獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)布爾矩陣,并從所述賬戶(hù)布爾矩陣的第一行第 一列元素開(kāi)始,從左至右,自上而下逐位判斷;
[0195] 若所述賬戶(hù)布爾矩陣中任一位的元素值為0,將待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段中該 位置的元素置為0,獲得過(guò)濾后的數(shù)字矩陣片段; 陽(yáng)196] 從過(guò)濾后的數(shù)字矩陣片段的第一行第一列開(kāi)始判斷,若存在任一位置上的非零元 素的值不合法,判定所述賬戶(hù)布爾矩陣對(duì)應(yīng)的用戶(hù)為輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)。 陽(yáng)197] 實(shí)施例S
[0198] 依據(jù)本發(fā)明實(shí)施例的另一個(gè)方面,還提供了一種服務(wù)器,包括數(shù)據(jù)庫(kù),還包括上述 所述的身份認(rèn)證裝置。
[0199] W上所述的是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出對(duì)于本技術(shù)領(lǐng)域的普通人員來(lái) 說(shuō),在不脫離本發(fā)明所述的原理前提下還可W作出若干改進(jìn)和潤(rùn)飾,運(yùn)些改進(jìn)和潤(rùn)飾也在 本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項(xiàng)】
1. 一種身份認(rèn)證方法,其特征在于,包括: 獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰; 將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì)應(yīng)的 電子密鑰進(jìn)行對(duì)比; 對(duì)比一致時(shí),生成操作指令。2. 如權(quán)利要求1所述的方法,其特征在于,所述賬戶(hù)信息包括:賬戶(hù)號(hào)碼、用戶(hù)名、賬戶(hù) 密碼、密鑰密碼及賬戶(hù)申請(qǐng)時(shí)間。3. 如權(quán)利要求2所述的方法,其特征在于,所述對(duì)應(yīng)的電子密鑰是依據(jù)所述賬戶(hù)密碼 和密鑰密碼生成的。4. 如權(quán)利要求3所述的方法,其特征在于,依據(jù)所述賬戶(hù)密碼和密鑰密碼生成對(duì)應(yīng)的 電子密鑰的步驟包括: 根據(jù)所述賬戶(hù)信息獲取一隨機(jī)數(shù),并將所述隨機(jī)數(shù)作為數(shù)字矩陣的編碼; 根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩陣構(gòu)造方法生成規(guī)模為2n*2n的第一數(shù)字 矩陣,其中η為整數(shù); 依據(jù)所述賬戶(hù)密碼構(gòu)造一規(guī)模為2"*2"的賬戶(hù)布爾矩陣,并依據(jù)所述賬戶(hù)布爾矩陣和 第一數(shù)字矩陣生成規(guī)模為2η*2η的數(shù)字矩陣片段; 依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣; 利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片段進(jìn)行加密,生成電子密鑰。5. 如權(quán)利要求4所述的方法,其特征在于,根據(jù)所述數(shù)字矩陣編碼,利用雙偶數(shù)數(shù)字矩 陣構(gòu)造方法生成規(guī)模為2η*2 η的第一數(shù)字矩陣的步驟包括: 將1~4η的正整數(shù)序列順序劃分為長(zhǎng)度為2 "的子序列,第i個(gè)序列記為Α 1; 根據(jù)雙偶數(shù)數(shù)字矩陣填寫(xiě)規(guī)則,將4填入一矩陣A的第i行,獲得各列元素之和及對(duì) 角線(xiàn)元素之和均相等的矩陣B ; 根據(jù)雙偶數(shù)列調(diào)整規(guī)則,在前2n 1行的每一行中,選取2 n 1個(gè)元素,并將所述元素對(duì)應(yīng) 行的同列元素進(jìn)行交換,獲得各行元素之和、各列元素之和以及對(duì)角線(xiàn)元素之和均相等的 矩陣C ; 將所述矩陣C作為第一數(shù)字矩陣保存。6. 如權(quán)利要求4所述的方法,其特征在于,依據(jù)所述賬戶(hù)布爾矩陣和第一數(shù)字矩陣生 成規(guī)模為2n*2n的數(shù)字矩陣片段的步驟包括: 從所述賬戶(hù)布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一個(gè)元 素的值,若任一元素值為1,則提取所述第一數(shù)字矩陣中相同位置的數(shù),存放在預(yù)先構(gòu)造的 2n*2n數(shù)字矩陣中的相同位置處; 將所述2n*2n數(shù)字矩陣中空置的位置填充同一隨機(jī)數(shù),并將所述2 "*2"數(shù)字矩陣作為數(shù) 字矩陣片段保存。7. 如權(quán)利要求4所述的方法,其特征在于,依據(jù)所述密鑰密碼構(gòu)造一密鑰布爾矩陣的 步驟包括: 選取2n個(gè)散列函數(shù),并依據(jù)所述散列函數(shù)將所述密鑰密碼散列為2 n個(gè)不同的數(shù)X,其 中,X為大于等于〇且小于等于2# - 1的整數(shù); 將2n個(gè)不同的數(shù)X分別轉(zhuǎn)換為2 n位二進(jìn)制布爾序列; 將獲取的2"個(gè)2 n位的二進(jìn)制布爾序列順序填寫(xiě)到一規(guī)模為2 "*2"的矩陣中,獲取密鑰 布爾矩陣。8. 如權(quán)利要求4所述的方法,其特征在于,利用所述密鑰布爾矩陣對(duì)所述數(shù)字矩陣片 段進(jìn)行加密,生成電子密鑰的步驟包括: 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一個(gè)元 素的值,若任一元素值為1,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù)先構(gòu) 造的2>21女組中; 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一個(gè)元 素的值,若任一元素值為〇,則提取所述數(shù)字矩陣片段中相同位置的數(shù),順序存放在預(yù)先構(gòu) 造的2>21女組中; 將所述2"*2"數(shù)組作為電子密鑰進(jìn)行保存。9. 如權(quán)利要求4所述的方法,其特征在于,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的 電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比的步驟包括: 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括一個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),接收終端依據(jù) 所述待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送的散列運(yùn)算結(jié)果,并保存于數(shù)據(jù)庫(kù)中; 將所述散列運(yùn)算結(jié)果與生成的對(duì)應(yīng)用戶(hù)的賬戶(hù)布爾矩陣進(jìn)行對(duì)比; 若所述散列運(yùn)算結(jié)果與賬戶(hù)布爾矩陣的對(duì)應(yīng)值相匹配,生成普通級(jí)別的數(shù)據(jù)操作指 令。10. 如權(quán)利要求4所述的方法,其特征在于,將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的 電子密鑰與預(yù)先保存的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比的步驟包括: 當(dāng)獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息中包括多個(gè)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息時(shí),將所有用戶(hù)的 數(shù)字矩陣片段相同位置上的數(shù)字相加,得到規(guī)模為2"*2"的第二數(shù)字矩陣,并從所述第二數(shù) 字矩陣的第一行第一列開(kāi)始,從左至右自上而下依次對(duì)每一位進(jìn)行模運(yùn)算; 利用所述第一數(shù)字矩陣減去所述模運(yùn)算后的第二數(shù)字矩陣,獲得補(bǔ)數(shù)字矩陣,并刪除 所述第一數(shù)字矩陣,保存補(bǔ)數(shù)字矩陣; 接收終端發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名,對(duì)待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼進(jìn)行散列運(yùn)算后發(fā)送 的散列結(jié)果,及根據(jù)待訪(fǎng)問(wèn)用戶(hù)的密鑰密碼構(gòu)造密鑰布爾矩陣,并利用所述密鑰布爾矩陣 對(duì)所述電子密鑰解密后發(fā)送的待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 將接收到的所述待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名和賬戶(hù)密碼的散列運(yùn)算結(jié)果與數(shù)據(jù)庫(kù)中保存的 用戶(hù)名和賬戶(hù)布爾矩陣進(jìn)行比對(duì); 若每一位待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)密碼的散列運(yùn)算結(jié)果與所述賬戶(hù)布爾矩陣中對(duì)應(yīng)值相匹 配,將所有待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段逐位相加得到規(guī)模為2n*2n的第三數(shù)字矩陣; 對(duì)所述第三數(shù)字矩陣逐位進(jìn)行模4n運(yùn)算,并將所述第三數(shù)字矩陣與所述補(bǔ)數(shù)字矩陣逐 位相加,獲得2"*2"的第四數(shù)字矩陣,并對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證; 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和均相等,生成敏感數(shù)據(jù) 操作指令。11. 如權(quán)利要求10所述的方法,其特征在于,利用所述密鑰布爾矩陣對(duì)所述電子密鑰 解密的步驟包括: 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一個(gè)元 素的值,若任一元素值為1,則順序提取所述電子密鑰中的數(shù),存放在預(yù)先構(gòu)造的2"*2"數(shù)組 中與密鑰布爾矩陣中值為1的元素相同的位置處; 從所述密鑰布爾矩陣的第一行第一列元素開(kāi)始,從左到右自上而下依次判斷每一個(gè)元 素的值,若任一元素值為〇,則順序提取所述電子密鑰中相同位置的數(shù),存放在預(yù)先構(gòu)造的 2"*2"數(shù)組中與密鑰布爾矩陣中值為0的元素相同的位置處; 將所述2n*2n數(shù)組作為待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段進(jìn)行保存。12. 如權(quán)利要求10所述的方法,其特征在于,對(duì)所述第四數(shù)字矩陣進(jìn)行驗(yàn)證后,所述方 法還包括: 若所述第四數(shù)字矩陣的任一行、任一列及兩個(gè)對(duì)角線(xiàn)元素之和存在不相等的情況,檢 查每一個(gè)待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段; 鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名并向所有待訪(fǎng)問(wèn)用戶(hù)顯示,并向每一位待訪(fǎng)問(wèn)用 戶(hù)提示此次操作失敗。13. 如權(quán)利要求12所述的方法,其特征在于,鎖定輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)的用戶(hù)名的 步驟包括: 從數(shù)據(jù)庫(kù)中獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)布爾矩陣,并從所述賬戶(hù)布爾矩陣的第一行第一列 元素開(kāi)始,從左至右,自上而下逐位判斷; 若所述賬戶(hù)布爾矩陣中任一位的元素值為〇,將待訪(fǎng)問(wèn)用戶(hù)的數(shù)字矩陣片段中該位置 的元素置為〇,獲得過(guò)濾后的數(shù)字矩陣片段; 從過(guò)濾后的數(shù)字矩陣片段的第一行第一列開(kāi)始判斷,若存在任一位置上的非零元素的 值不合法,判定所述賬戶(hù)布爾矩陣對(duì)應(yīng)的用戶(hù)為輸入錯(cuò)誤的待訪(fǎng)問(wèn)用戶(hù)。14. 一種身份認(rèn)證裝置,其特征在于,包括: 獲取模塊,用于獲取待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰; 對(duì)比模塊,用于將獲取的待訪(fǎng)問(wèn)用戶(hù)的賬戶(hù)信息及對(duì)應(yīng)的電子密鑰與預(yù)先保存的賬戶(hù) 信息及對(duì)應(yīng)的電子密鑰進(jìn)行對(duì)比; 操作模塊,用于對(duì)比一致時(shí),生成操作指令。15. -種服務(wù)器,包括數(shù)據(jù)庫(kù),其特征在于,還包括如權(quán)利要求14所述的身份認(rèn)證裝 置。
【文檔編號(hào)】G06F21/62GK105827404SQ201510002861
【公開(kāi)日】2016年8月3日
【申請(qǐng)日】2015年1月5日
【發(fā)明人】韓萌, 姚知力, 高芳, 馮瑞, 曾強(qiáng)
【申請(qǐng)人】中國(guó)移動(dòng)通信集團(tuán)陜西有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1