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