一種手機(jī)離線認(rèn)證的方法
【技術(shù)領(lǐng)域】:
[0001] 本發(fā)明設(shè)及無線網(wǎng)絡(luò)通信安全領(lǐng)域。
【背景技術(shù)】:
[0002] 目前,國內(nèi)外基于手機(jī)之間的身份認(rèn)證,都采用PKI技術(shù)的安全架構(gòu),PKI技術(shù)是 通過建立CA認(rèn)證中屯、來完成用戶手機(jī)的在線身份認(rèn)證,不能實(shí)現(xiàn)用戶手機(jī)之間的離線認(rèn) 證,CA認(rèn)證中屯、的建設(shè)成本較高,PKI技術(shù)采用公鑰體制,運(yùn)行速度相對(duì)較慢,另外,存儲(chǔ)在 CA認(rèn)證中屯、證書數(shù)據(jù)庫的用戶證書若W明文形式存儲(chǔ),容易受到黑客的攻擊,安全性較低, 若用戶證書W密文形式存儲(chǔ),則會(huì)進(jìn)一步降低CA認(rèn)證中屯、的運(yùn)行效率,導(dǎo)致CA認(rèn)證中屯、成 倍的增加設(shè)備投入,總之,現(xiàn)有用戶手機(jī)之間相互身份認(rèn)證的技術(shù)產(chǎn)品不能滿足市場的需 求。
【發(fā)明內(nèi)容】
:
[0003] 一種手機(jī)離線認(rèn)證的方法是采用巧片硬件設(shè)備、對(duì)稱密碼算法和組合對(duì)稱密鑰生 成算法,建立用戶手機(jī)之間的身份認(rèn)證系統(tǒng),當(dāng)用戶手機(jī)處于在線認(rèn)證環(huán)境下,需要建立認(rèn) 證中屯、,在用戶的手機(jī)端插入SD卡硬件設(shè)備,在SD卡巧片里建立手機(jī)端加密系統(tǒng),并寫入 對(duì)稱密碼算法、摘要算法、組合對(duì)稱密鑰生成算法、"密鑰種子維矩陣元素、身份認(rèn)證協(xié) 議,在認(rèn)證中屯、端服務(wù)器PCI槽里插入加密卡硬件設(shè)備,在加密卡的巧片里建立認(rèn)證中屯、 端的加密系統(tǒng),寫入對(duì)稱密碼算法、摘要算法、一組生成存儲(chǔ)密鑰KCi的"密鑰種子維矩 陣元素、組合對(duì)稱密鑰生成算法、身份認(rèn)證協(xié)議,在認(rèn)證中屯、的"密鑰種子"數(shù)據(jù)庫里,存儲(chǔ) 全體用戶的"密鑰種子維矩陣元素密文,其中:全體用戶的"密鑰種子維矩陣元素, 事先分別被一次一變的存儲(chǔ)密鑰KCi加密成密文,i= 1~n,n為全體手機(jī)用戶的總和;
[0004] 當(dāng)用戶A與用戶B之間進(jìn)行身份認(rèn)證時(shí),用戶A的手機(jī)端加密系統(tǒng),在SD卡里產(chǎn) 生一組隨機(jī)數(shù),用摘要算法對(duì)用戶A的手機(jī)卡號(hào)和隨機(jī)數(shù),進(jìn)行摘要得到"摘要"信息L1即: 驗(yàn)證碼,將L1組成矩陣G,用矩陣G的元素對(duì)用戶A手機(jī)端SD卡巧片里的"密鑰種子"= 維矩陣化的元素進(jìn)行映射,得到簽名密鑰LKal,用LKal加密L1得到簽名碼L1'目P;數(shù)字 簽名,將用戶A的手機(jī)卡號(hào)、用戶B的手機(jī)卡號(hào)、驗(yàn)證碼L1和簽名碼L1',一并發(fā)送給認(rèn)證 中屯、,認(rèn)證中屯、端的加密系統(tǒng),取出對(duì)應(yīng)用戶A手機(jī)卡號(hào)的"密鑰種子"S維矩陣化元素密 文,使用存儲(chǔ)密鑰KCa來解密Ta元素密文,根據(jù)組合對(duì)稱密鑰生成算法,由矩陣G和Ta產(chǎn) 生簽名密鑰LKa2,用LKa2將簽名碼L1'解密,得到認(rèn)證中屯、端的驗(yàn)證碼L2,若L1聲L2,貝。 用戶A的身份為假,若L1 = 12,取出對(duì)應(yīng)用戶B的"密鑰種子"立維矩陣化元素密文,用存 儲(chǔ)密鑰KCb來解密化元素密文,再根據(jù)組合對(duì)稱密鑰生成算法,由矩陣G和化產(chǎn)生簽名密 鑰L肺1,用L肺1將驗(yàn)證碼L1加密,得到認(rèn)證中屯、端的簽名碼L3',將用戶B的手機(jī)卡號(hào)、 用戶A的手機(jī)卡號(hào)、驗(yàn)證碼L1和簽名碼L3 ',一并發(fā)送給用戶B的手機(jī)里,用戶B的手機(jī)端 加密系統(tǒng)在SD卡里,由驗(yàn)證碼L1組成矩陣G,與矩陣化產(chǎn)生簽名密鑰L肺2,來解密簽名碼 L3',得到用戶B端的驗(yàn)證碼L3,通過對(duì)比L1和L3是否相同?來判別認(rèn)證中屯、端轉(zhuǎn)發(fā)來的 手機(jī)用戶A的身份是否可信,從而,實(shí)現(xiàn)手機(jī)用戶A與手機(jī)用戶B之間的在線身份認(rèn)證;
[0005] 本發(fā)明是針對(duì)用戶手機(jī)離線認(rèn)證的環(huán)境下,不需要建立認(rèn)證中屯、,在用戶手機(jī)端 的SD卡巧片里建立加密系統(tǒng),用戶之間通過手機(jī)端的SD卡進(jìn)行離線認(rèn)證,其方法的技術(shù)特 征在于:
[0006] 在用戶Ai的手機(jī)端插入SD卡硬件設(shè)備,在SD卡巧片里建立手機(jī)端加密系統(tǒng),并 寫入對(duì)稱密碼算法、摘要算法、組合對(duì)稱密鑰生成算法、一套"密鑰種子維矩陣Ti元素、 身份認(rèn)證協(xié)議,文件加密傳輸協(xié)議;另外,在用戶Ai的手機(jī)里,還將用戶Ai"朋友圈"用戶 手機(jī)卡號(hào)和對(duì)應(yīng)的"密鑰種子維矩陣元素的密文,存儲(chǔ)在用戶M"朋友圈"用戶身份信 息數(shù)據(jù)庫中,其中:用戶M"朋友圈"用戶共計(jì);ci個(gè),加密用戶Ai"朋友圈"ci個(gè)用戶的 "密鑰種子維矩陣元素,是根據(jù)組合對(duì)稱密鑰生成算法,由矩陣Ti產(chǎn)生ci個(gè)對(duì)稱密鑰: SKil、SKi2、……、SKi過,分別將用戶Ai"朋友圈"ci個(gè)用戶的"密鑰種子維矩陣元 素加密成密文,ci是用戶Ai"朋友圈"用戶數(shù)量總和,ci<n,i= 1~n,n是全體手機(jī)用 戶的總和;
[0007] 在用戶身份信息中屯、端的服務(wù)器PCI槽里插入加密卡硬件設(shè)備,在加密卡的巧片 里,建立用戶身份信息中屯、端的加密系統(tǒng),并寫入對(duì)稱密碼算法、摘要算法、組合對(duì)稱密鑰 生成算法、一套"密鑰種子維矩陣TT元素,在用戶身份信息中屯、端用戶身份信息數(shù)據(jù)庫 里,存儲(chǔ)全體用戶的身份信息,包括:用戶Ai的手機(jī)卡號(hào)Bi和"密鑰種子維矩陣Ti元 素密文,其中:加密矩陣Ti元素的存儲(chǔ)密鑰KKi,是根據(jù)組合對(duì)稱密鑰生成算法,由矩陣TT 產(chǎn)生,一次一變,i= 1~n,n為全體手機(jī)用戶的總和;
[0008] 每個(gè)用戶"朋友圈"用戶的身份信息,事先要從用戶身份信息中屯、端下載,當(dāng)用戶 Ai登錄用戶身份信息中屯、后,用戶身份信息中屯、端的加密系統(tǒng),將用戶Ai和用戶Ai"朋友 圈"用戶對(duì)應(yīng)的"密鑰種子維矩陣元素密文,分別解密成明文后,再由用戶Ai對(duì)應(yīng)的"密 鑰種子維矩陣Ti元素,產(chǎn)生一次一變的對(duì)稱密鑰共ci個(gè),用該ci個(gè)對(duì)稱密鑰,分別將 用戶Ai"朋友圈"用戶對(duì)應(yīng)的"密鑰種子"立維矩陣元素加密成密文,再與用戶Ai"朋友圈" 用戶對(duì)應(yīng)的的手機(jī)卡號(hào),一起傳輸給用戶Ai的手機(jī)端,并存儲(chǔ)在用戶Ai"朋友圈"用戶身 份信息數(shù)據(jù)庫里,其中;ci<n,i= 1~n,n為全體手機(jī)用戶的總和;
[0009] 當(dāng)用戶A和用戶B之間進(jìn)行手機(jī)離線身份認(rèn)證時(shí),用戶A的手機(jī)端加密系統(tǒng),在SD 卡里產(chǎn)生一組隨機(jī)數(shù)S,調(diào)用摘要算法對(duì)用戶A的手機(jī)卡號(hào)和隨機(jī)數(shù)進(jìn)行摘要,生成摘要信 息即;驗(yàn)證碼L1,根據(jù)組合對(duì)稱密鑰生成算法,由驗(yàn)證碼L1組成矩陣G,與矩陣化生成簽名 密鑰LK1,用LK1加密驗(yàn)證碼L1得到簽名碼L1',將驗(yàn)證碼L1和簽名碼L1',與用戶A的 手機(jī)卡號(hào)一并發(fā)送到用戶B的手機(jī)里,用戶B手機(jī)端加密系統(tǒng),在SD卡里解密用戶A的"密 鑰種子"S維矩陣化元素密文得到明文,根據(jù)組合對(duì)稱密鑰生成算法,再由驗(yàn)證碼L1組成 矩陣G,與用戶B手機(jī)端的矩陣化產(chǎn)生簽名密鑰LK2,來解密簽名碼L1',得到驗(yàn)證碼L2, 通過對(duì)比兩端的驗(yàn)證碼L1和L2是否相同?來實(shí)現(xiàn)用戶A和用戶B之間的手機(jī)離線認(rèn)證;
[0010] 當(dāng)用戶A發(fā)送文件給用戶B時(shí),用戶A手機(jī)端加密系統(tǒng),在SD卡里將用戶B的"密 鑰種子"S維矩陣化元素密文解密,由矩陣化生成對(duì)稱密鑰JK1,用摘要算法將用戶A擬 發(fā)送的文件1進(jìn)行摘要,得到文件1的摘要信息,再用對(duì)稱密鑰JK1將文件1和文件1的摘 要信息進(jìn)行加密,得到文件1的密文和文件1的數(shù)字簽名,將用戶A的手機(jī)卡號(hào)、文件1的 密文、文件1的摘要信息和文件1的數(shù)字簽名,一并發(fā)送給用戶B的手機(jī)里,用戶B手機(jī)端 加密系統(tǒng),由SD卡里的矩陣化,生成對(duì)稱密鑰JK2,對(duì)文件1數(shù)據(jù)的密文進(jìn)行解密,并對(duì)文 件1的數(shù)字簽名進(jìn)行簽驗(yàn),實(shí)現(xiàn)用戶A與用戶B之間的文件加密傳輸和完整性驗(yàn)證,從而, 建立一種用戶手機(jī)之間離線認(rèn)證系統(tǒng),且用軟件和硬件結(jié)合方式實(shí)現(xiàn),具體方法如下:
[0011] 1、在用戶手機(jī)端插入SD卡硬件設(shè)備,在SD卡巧片里,建立手機(jī)端加