專利名稱::基于哈希函數(shù)的雙向認證方法及系統(tǒng)的制作方法
技術領域:
:本發(fā)明涉及一種在無線網絡領域中應用的雙向認證方法和系統(tǒng),尤其涉及一種基于哈希函數(shù)的雙向認證方法及系統(tǒng)。
背景技術:
:對于無線網絡來說,如無線局域網或無線城域網等,其安全問題遠比有線以太網嚴重的多。射頻識別標簽(RFID)同樣面臨安全問題,在進行安全通信之前,必須有效地解決RFID中讀寫器和電子標簽之間的安全認證及密鑰協(xié)商問題。電子標簽通常是一個低性能設備,處理能力較低;而讀寫器、數(shù)據庫服務器等設備性能一般較高,其處理能力不受限制,能夠滿足如PC機上的各種運算和操作。因此,在設計電子標簽應用系統(tǒng)時,電子標簽的性能就會成為一個瓶頸,需要根據電子標簽性能來確定所采用的設計方案。安全認證方案的設計也不例外。如果電子標簽的設備性能較高,可以采用現(xiàn)有的無線網絡的安全方案,如無線局域網IEEE802.11i、無線城域網IEEE802.16e等安全方案來實現(xiàn)電子標簽與讀寫器之間的雙向認證。如果電子標簽性能較低,需要設計一些特殊的安全方案,在性能和安全性方面達到一個折中。目前所采用的一些方案需要讀寫器和服務器互相可信,一般情況下由于它們不在同一地理位置,因此在實際運用中所釆用的該種技術方案是不可行的?;诠€系統(tǒng)的認證方案盡管靈活、擴展性好,但是其所需要的公鑰運算對低性能電子標簽來說是不合適的。與公鑰運算、對稱加密相比較而言,哈希函數(shù)所涉及的運算主要是移位和位運算,性能較高,能夠適合低性能設備,即使對于對稱加密算法來說,其運算復雜性也能高一、兩個數(shù)量級。
發(fā)明內容為了解決
背景技術:
中存在的上述技術問題,本發(fā)明提供了一種可實現(xiàn)數(shù)據庫和讀寫器之間無需安全鏈接、并能進行雙向認證、以及合理利用設備性能的基于哈希函數(shù)的雙向認證方法及系統(tǒng)。本發(fā)明的技術解決方案是本發(fā)明提供了一種基于哈希函數(shù)的雙向認證方法,其特殊之處在于該方法包括以下步驟1)認證激活由讀寫器READER發(fā)送認證激活分組給電子標簽TAG,本分組內容為空,主要完成讀寫器READER^電子標簽TAG提供能量;2)認證請求當電子標簽TAG收到認證激活分組后,電子標簽TAG構造并發(fā)送認證請求分組給讀寫器READER;3)密鑰請求當讀寫器READER收到認證請求分組后,構造并發(fā)送密鑰請求分組給電子標簽應用系統(tǒng)數(shù)據庫DB;4)證書鑒別請求當電子標簽應用系統(tǒng)數(shù)據庫DB收到密鑰請求分組后向認證服務器AS發(fā)送證書鑒別請求分組;5)證書鑒別響應當認證服務器AS收到證書鑒別請求分組后向電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送證書鑒別響應分組;6)密鑰響應當電子標簽應用系統(tǒng)數(shù)據庫DB收到證書鑒別響應分組后向讀寫器READER發(fā)送密鑰響應分組;7)認證響應當讀寫器READER收到密鑰響應分組后向電子標簽TAG發(fā)送認證響應分組;8)認證確認當電子標簽TAG收到認證響應分組后向讀寫器READER發(fā)送認證確認分組。上述步驟2)中認證請求分組內容包括PID字段、N1字段和MIC1字段,其中PID字段電子標簽TAG當前的偽身份標識;Nl字段電子標簽TAG選取的一次性隨機數(shù);MIC1字段電子標簽TAG利用SK對本字段之前所有字段計算的消息完整性校驗。上述步驟3)中密鑰請求分組內容包括PID字段、Nl字段、MIC1字段、N2字段、CERT一R字段和CN2字段,其中-PID字段其值與認證請求分組中的PID字段值相同;Nl字段其值與認證請求分組中的N1字段值相同;MIC1字段其值與認證請求分組中的MCl字段值相同;N2字段讀寫器READER選取的一次性隨機數(shù);CER乙R字段讀寫器READER的數(shù)字證書;CN2字段N2的密文,使用讀寫器READER的私鑰加密,即CN2-ES(N2;讀寫器READER)。上述步驟4)中電子標簽應用系統(tǒng)數(shù)據庫DB收到密鑰請求分組后,電子標簽應用系統(tǒng)數(shù)據庫DB利用PID對應的SK本地重新計算MIC1并與接收到的MIC1進行比較,如果不相等,進行錯誤處理并通知讀寫器READER;如果相等,利用讀寫器READER的公鑰解密CN2得到N2,并與接收到的N2值進行比較,如果不相等,則丟棄該分組,如果相等,構造并發(fā)送證書鑒別請求分組給認證服務器AS,該證書鑒別請求分組的內容包括N2字段、CERT—R字段、N3字段、CERT—D字段和SK^D字段,其中N2字段其值與密鑰請求分組中的N2字段值相同;CERT—R字段其值與密鑰請求分組中的CERT一R字段值相同;N3字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù);CER1^D字段電子標簽應用系統(tǒng)數(shù)據庫DB的數(shù)字證書;SK^D字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。上述步驟5)中當認證服務器AS收到證書鑒別請求分組后,認證服務器AS驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否正確?若不正確,則丟棄該分組;若正確,則驗證CER1LD和CER11R的有效性,并根據驗證結果構造并發(fā)送證書鑒別響應分組給電子標簽應用系統(tǒng)數(shù)據庫DB;該證書鑒別響應分組的內容包括N2字段、CERT1R字段、N3字段、CERT一D字段、虹8_11字段、虹8_0字段和SIG—A字段,其中N2字段其值與證書鑒別請求分組中的N2字段值相同;CERT—R字段其值與證書鑒別請求分組中的CERT—R字段值相同;N3字段其值與證書鑒別請求分組中的N3字段值相同;CERT—D字段其值與證書鑒別請求分組中的CERT一D字段值相同;虹8_&字段認證服務器AS對CERTLR的驗證結果;RES—D字段認證服務器AS對CERT一D的驗證結果;SIG一A字段認證服務器AS對本字段前所有字段的簽名。上述步驟6)中當電子標簽應用系統(tǒng)數(shù)據庫DB收到證書鑒別響應分組后,電子標簽應用系統(tǒng)數(shù)據庫DB驗證N3是否是自己選取的隨機數(shù)?若否,則丟棄該分組;若是,則驗證認證服務器AS的簽名是否有效?若無效,則丟棄該分組;若有效,則判斷通過RES一R字段得到讀寫器READER證書是否合法?若證書不合法,則進行錯誤處理并通知讀寫器READER;若合法,則構造并發(fā)送密鑰響應分組給讀寫器READER;該密鑰響應分組的內容包括:N2字段、N3字段、CERT^D字段、RES—R字段、犯8_0字段、SIG—A字段、CK字段、R字段和SK^D字段,其中N2字段其值與密鑰請求分組中的N2字段值相同;N3字段其值與證書鑒別響應分組中的N3字段值相同;CERT一D字段其值與證書鑒別響應分組中的CERT1D字段值相同;RES—R字段其值與證書鑒別響應分組中的RES一R字段值相同;RES一D字段其值與證書鑒別響應分組中的RES一D字段值相同;SIG—A字段其值與證書鑒別響應分組中的SIG—A字段值相同;CK字段電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送給讀寫器READER的密鑰密文,其計算方法為首先利用SK導出三個密鑰K1、K2和K3,然后,用讀寫器READER的公鑰加密得到CK,艮口CK-EP(K1||K2||K3;讀寫器READER);R字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù),用于PID和SK的更新,更新方法為PID-H(PID,R);SK=H(SK,R);SIG一D字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。上述步驟7)中當讀寫器READER收到密鑰響應分組后,由讀寫器READER驗證N2是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則驗證認證服務器AS的簽名是否有效?若否,則丟棄該分組;若是,則判斷根據RES—D字段得到電子標簽應用系統(tǒng)數(shù)據庫DB證書是否合法?若不合法,則丟棄該分組;若合法,則驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否有效?若無效,則丟棄10該分組;若有效,則利用私鑰解密求得密鑰K1、K2和K3;由讀寫器READER構造并發(fā)送認證響應分組給電子標簽TAG,該認證響應分組的內容包括Nl字段、R字段、VABC字段、N4字段、MIC2字段,其中-Nl字段其值與認證請求分組中的N1字段值相同;R字段其值與密鑰響應分組中的R字段值相同;VABC字段讀寫器READER生成的用于驗證電子標簽TAG身份的信息。其中VABC的計算如下首先VA-PIDeKieWl;VB=(PIDK2)+W2;VC=PID+K3+W2,令VABC-VAIIVBIIVC。這里W1和W2為讀寫器READER隨機選取的秘密隨機數(shù);N4字段讀寫器READER選取的一次性隨機數(shù);MIC2字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MC2=H(Nl;R;VABC;N4;Kl;K2;K3;Wl;W2)。上述步驟8)中當電子標簽TAG收到認證響應分組后,電子標簽TAG驗證N1是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則利用SK導出密鑰Kl、K2、K3,根據VABC得到VA、VB和VC,重新計算得到W1和W2;然后本地重新計算MC2與接收到的MIC2是否相等?若不相等,則丟棄該分組;若相等,構造并發(fā)送認證確認分組給讀寫器READER,同時,根據R更新PID和SK分別為PID=H(PID,R)和SK-H(SK,R);該認證確認分組的內容包括N4字段、VD字段和MIC3字段,其中N4字段其值與認證響應分組中的N1字段值相同;VD字段電子標簽TAG生成的用于再次確認讀寫器READER身份的信息。其中VD的計算為VD-(PID+ID)W1W2;MIC3字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MC=H(N4;VD;Kl;K2;K3;Wl;W2)。上述步驟8)中之后還包括步驟9)當讀寫器READER收到認證確認分組后,由讀寫器READER驗證N4是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則判斷本地重新計算MC3并與接收到的MIC3是否相等?若不相等,則丟棄該分組;若相等,則計算得到電子標簽TAG的真實身份標識ID。一種用于實現(xiàn)基于哈希函數(shù)的雙向認證方法的認證系統(tǒng),其特殊之處在于:所述系統(tǒng)包括電子標簽TAG、讀寫器READER、用于實現(xiàn)電子標簽TAG和讀寫器READER基于哈希函數(shù)的雙向認證的電子標簽應用系統(tǒng)數(shù)據庫DB以及認證服務器AS;所述電子標簽TAG和讀寫器READER連接;所述電子標簽應用系統(tǒng)數(shù)據庫DB分別和認證服務器AS以及讀寫器READER連接。本發(fā)明的優(yōu)點是1、數(shù)據庫和讀寫器之間無需安全鏈接。本發(fā)明所提供的電子標簽和數(shù)據庫之間的雙向認證方法,主要是在無線通信網絡之間進行,對于數(shù)據庫和讀寫器之間無需安全鏈接。2、本發(fā)明可實現(xiàn)電子標簽和數(shù)據庫、以及數(shù)據庫和讀寫器之間的雙向認證。3、能夠合理利用設備性能。本發(fā)明將復雜運算放在讀寫器和數(shù)據庫執(zhí)行,而電子標簽的最復雜運算為哈希運算,能夠合理利用設備性能。圖1為本發(fā)明認證方法的流程示意圖。具體實施例方式參見圖l,本發(fā)明提供了一種基于哈希函數(shù)的雙向認證方法,該方法包括以下步驟1)認證激活該認證激活分組由讀寫器READER發(fā)送給電子標簽TAG。本分組內容為空,主要完成讀寫器READER^電子標簽TAG提供能量。收到認證激活分組后,電子標簽TAG構造并發(fā)送認證請求分組給讀寫器READER。2)認證請求該認證請求分組由電子標簽TAG發(fā)送給讀寫器READER。認證請求分組內容包括<table>tableseeoriginaldocumentpage12</column></row><table>其中PID字段電子標簽TAG當前的偽身份標識;Nl字段電子標簽TAG選取的一次性隨機數(shù);MC1字段電子標簽TAG利用SK對本字段之前所有字段計算的消息完整性校驗。收到認證請求分組后,讀寫器READER構造并發(fā)送密鑰請求分組給電子標簽應用系統(tǒng)數(shù)據庫DB。3)密鑰請求該密鑰請求分組由讀寫器READER發(fā)送給電子標簽應用系統(tǒng)數(shù)據庫DB。密鑰請求分組內容包括PIDNlMIC1N2CERTRCN2其中PID字段其值與認證請求分組中的PID字段值相同;Nl字段其值與認證請求分組中的N1字段值相同;MC1字段其值與認證請求分組中的MIC1字段值相同;N2字段讀寫器READER選取的一次性隨機數(shù);CERT一R字段讀寫器READER的數(shù)字證書;CN2字段N2的密文,使用讀寫器READER的私鑰加密,即CN2:ES(N2;READER)o收到密鑰請求分組后,電子標簽應用系統(tǒng)數(shù)據庫DB利用PID對應的SK本地重新計算MIC1并與接收到的MIC1進行比較,如果不相等,進行錯誤處理并通知讀寫器READER;如果相等,則利用讀寫器READER的公鑰解密CN2得到N2,并與接收到的N2值進行比較。如果不相等,則丟棄該分組,如果相等,貝鵬造并發(fā)送證書鑒別請求分組給認證服務器AS。4)證書鑒別請求該證書鑒別請求分組由電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送給認證服務器AS。證書鑒別請求分組內容包括N2CERTRN3CERTDSIGD其中N2字段其值與密鑰請求分組中的N2字段值相同;CERI^R字段其值與密鑰請求分組中的CERT—R字段值相同;N3字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù);CERT—D字段電子標簽應用系統(tǒng)數(shù)據庫DB的數(shù)字證書;SK^D字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。收到證書鑒別請求分組后,認證服務器AS驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否正確,如果不正確,則丟棄該分組;如果正確,則驗證CERT一D和CERT^R的有效性,并根據驗證結果構造并發(fā)送證書分組鑒別響應給電子標簽應用系統(tǒng)數(shù)據庫DB。5)證書鑒別響應該證書鑒別響應分組由認證服務器AS發(fā)送給電子標簽應用系統(tǒng)數(shù)據庫DB。證書鑒別響應分組內容包括N2CERTRN3CERTDRESRRESDSIGA其中N2字段其值與證書鑒別請求分組中的N2字段值相同;CERT—R字段其值與證書鑒別請求分組中的CERT一R字段值相同;N3字段其值與證書鑒別請求分組中的N3字段值相同;CERT—D字段其值與證書鑒別請求分組中的CERT—D字段值相同;RES—R字段認證服務器AS對CERT^R的驗證結果;肌8_0字段認證服務器AS對CERT一D的驗證結果;SIG一A字段認證服務器AS對本字段前所有字段的簽名。收到證書鑒別響應分組后,電子標簽應用系統(tǒng)數(shù)據庫DB驗證N3是否是自己選取的隨機數(shù),如果不是,則丟棄該分組,如果是,則驗證認證服務器AS的簽名是否有效。如果無效,則丟棄該分組;如果有效,則通過虹8_仗字段得到讀寫器READER證書的合法性。如果讀寫器READER證書不合法,則進行錯誤處理并通知讀寫器READER,如果讀寫器READER證書合法,則構造并發(fā)送密鑰響應分組給讀寫器READER。6)密鑰響應該密鑰響應分組由電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送給讀寫器READER。密鑰響應分組內容包括N2N3CERTDRESRRESDSIGACKRSIGD其中-N2字段其值與密鑰請求分組中的N2字段值相同;N3字段其值與證書鑒別響應分組中的N3字段值相同;CERT^D字段其值與證書鑒別響應分組中的CERI1D字段值相同;RES一R字段其值與證書鑒別響應分組中的11£3_11字段值相同;RESD字段其值與證書鑒別響應分組中的RESD字段值相同;14SK^A字段其值與證書鑒別響應分組中的SK^A字段值相同;CK字段電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送給讀寫器READER的密鑰密文,其計算方法為首先利用SK導出三個密鑰K1、K2和K3,然后,用讀寫器READER的公鑰加密得到CK,即CK-EP(K1||K2||K3;READER);R字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù),用于PID和SK的更新。更新方法為PID-H(PID,R);SK-H(SK,R);810_0字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。收到密鑰響應分組后,讀寫器READER驗證N2是否是自己選取的隨機數(shù),如果不是,則丟棄該分組,否則,驗證認證服務器AS的簽名是否有效。如果不是,則丟棄該分組,如果是,則根據RES一D字段得到電子標簽應用系統(tǒng)數(shù)據庫DB證書的合法性。如果不合法,則丟棄該分組,如果合法,則驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否有效。如果無效,則丟棄該分組,如果有效,則利用私鑰解密求得密鑰K1、K2和K3。最后,構造并發(fā)送認證響應分組給電子標簽TAG。7)認證響應該認證響應分組由讀寫器READER發(fā)送給電子標簽TAG。認證響應分組內容包括<table>tableseeoriginaldocumentpage15</column></row><table>其中-Nl字段其值與認證請求分組中的N1字段值相同;R字段其值與密鑰響應分組中的R字段值相同;VABC字段讀寫器READER生成的用于驗證電子標簽TAG身份的信息。其中VABC的計算如下首先VA-PIDeKleWl;VB=(PIDK2)+W2;VC=PID+K3+W2,令VABC-VAIIVBIIVC。這里W1和W2為讀寫器READER隨機選取的秘密隨機數(shù);N4字段讀寫器READERi^取的一次性隨機數(shù);MIC2字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MIC2=H(Nl;R;VABC;N4;Kl;K2;K3;Wl;W2)。收到認證響應分組后,電子標簽TAG驗證N1是否是自己選取的隨機數(shù),如果不是,則丟棄該分組,如果是,則利用SK導出密鑰K1、K2、K3,根據VABC得到VA、VB和VC,重新計算得到W1和W2。然后,本地重新計算MIC2并與接收到的MC2進行比較,如果不相等,則丟棄該分組,如果相等,則構造并發(fā)送認證確認分組給讀寫器READER,同時,根據R更新PID和SK分別為PID-H(PID,R)和SK-H(SK,R)。電子標簽TAG完成對讀寫器READER的身份認證。8)認證確認該認證確認分組由電子標簽TAG發(fā)送給讀寫器READER。認證確認分組內容包括<formula>formulaseeoriginaldocumentpage16</formula>其中N4字段其值與認證響應分組中的N1字段值相同;VD字段電子標簽TAG生成的用于再次確認讀寫器READER身份的信息。其中VD的計算為VD-(PID+ID)W1W2;MIC3字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MIC=H(N4;VD;Kl;K2;K3;Wl;W2)。收到認證確認分組后,讀寫器READER驗證N4是否是自己選取的隨機數(shù),如果不是,則丟棄該分組,如果是,則本地重新計算MIC3并與接收到的MIC3進行比較。如果不相等,則丟棄該分組,如果相等,則計算得到電子標簽TAG的真實身份標識ID。讀寫器READER完成對電子標簽TAG的身份認證。通過上述協(xié)議,電子標簽TAG和讀寫器READER實現(xiàn)了雙向認證,讀寫器READER獲得電子標簽TAG的真實身份標識ID;同時,電子標簽TAG和電子標簽應用系統(tǒng)數(shù)據庫DB實現(xiàn)了對PID和SK的同步更新,用于下次認證;且在電子標簽TAG和讀寫器READER之間共享了密鑰K1、K2、K3、W1及W2,這些密鑰可以被用來加密消息或進行消息完整性運算。另外,需要說明的是密鑰請求和密鑰響應分組應成對出現(xiàn),并且是可選的,僅當讀寫器READER上沒有密鑰SK時才會使用這兩個分組請求從電子標簽應用系統(tǒng)數(shù)據庫DB獲取密鑰SK;同時,證書鑒別請求和證書鑒別響應分組應成對出現(xiàn),并且是可選的,僅當電子標簽應用系統(tǒng)數(shù)據庫DB需要進行證書有效性驗證時才會使用這兩個分組。這里給出一個基于哈希函數(shù)的雙向認證方案,假設電子標簽、讀寫器及數(shù)據庫之間事先沒有任何安全關聯(lián),通過設計簡單的操作實現(xiàn)電子標簽和數(shù)據庫之間的雙向認證,其中電子標簽端設備最復雜的運算是哈希運算。本發(fā)明在提供了一種基于哈希函數(shù)的雙向認證方法的同時,還提供了一種用于實現(xiàn)該雙向認證方法的認證系統(tǒng),該系統(tǒng)包括電子標簽TAG、讀寫器READER、用于實現(xiàn)電子標簽TAG和讀寫器READER基于哈希函數(shù)的雙向認證的電子標簽應用系統(tǒng)數(shù)據庫DB以及認證服務器AS;電子標簽TAG和讀寫器READER連接;電子標簽應用系統(tǒng)數(shù)據庫DB分別和認證服務器AS以及讀寫器READER連接。其中,電子標簽TAG尤指無源電子標簽;ID是電子標簽TAG的身份標識;PID是電子標簽TAG的偽身份標識;SK是電子標簽TAG存儲的預共享密鑰,同時,數(shù)據對〈PID,SIO安全存儲在DB上;CERT—R是讀寫器READER的數(shù)字證書;CERT_D是電子標簽應用系統(tǒng)數(shù)據庫DB的數(shù)字證書;CERT1A是認證服務器AS的數(shù)字證書;MIC是消息完整性校驗;EP(m;X)是使用實體X的公鑰對消息m加密;ES(m;X)是使用實體X的私鑰對消息m加密;H(ml;m2;;m3)是使用哈希函數(shù)H對ml,m2,,m3求雜湊值;SIG—D是電子標簽應用系統(tǒng)數(shù)據庫DB的簽名;SIG—A是認證服務器AS的簽名;RES一R是認證服務器AS對CERT一R的驗證結果;RES一D是認證服務器AS對CERT一D的驗證結果;》是逐位異或運算;0是逐位或運算;+是模加法運算;||是消息的鏈接操作。本發(fā)明屬電子標簽系統(tǒng)中基于預共享密鑰的認證方法(Shared-keybasedRFIDAuthenticationProtocol,SRAP)之一。權利要求1、一種基于哈希函數(shù)的雙向認證方法,其特征在于該方法包括以下步驟1)認證激活由讀寫器READER發(fā)送認證激活分組給電子標簽TAG,本分組內容為空,主要完成讀寫器READER對電子標簽TAG提供能量;2)認證請求當電子標簽TAG收到認證激活分組后,電子標簽TAG構造并發(fā)送認證請求分組給讀寫器READER;3)密鑰請求當讀寫器READER收到認證請求分組后,構造并發(fā)送密鑰請求分組給電子標簽應用系統(tǒng)數(shù)據庫DB;4)證書鑒別請求當電子標簽應用系統(tǒng)數(shù)據庫DB收到密鑰請求分組后向認證服務器AS發(fā)送證書鑒別請求分組;5)證書鑒別響應當認證服務器AS收到證書鑒別請求分組后向電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送證書鑒別響應分組;6)密鑰響應當電子標簽應用系統(tǒng)數(shù)據庫DB收到證書鑒別響應分組后向讀寫器READER發(fā)送密鑰響應分組;7)認證響應當讀寫器READER收到密鑰響應分組后向電子標簽TAG發(fā)送認證響應分組;8)認證確認當電子標簽TAG收到認證響應分組后向讀寫器READER發(fā)送認證確認分組。2、根據權利要求l所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟2)中認證請求分組內容包括PID字段、N1字段和MIC1字段,其中PID字段電子標簽TAG當前的偽身份標識;Nl字段電子標簽TAG選取的一次性隨機數(shù);MC1字段電子標簽TAG利用SK對本字段之前所有字段計算的消息完整性校驗。3、根據權利要求2所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟3)中密鑰請求分組內容包括PID字段、Nl字段、MC1字段、N2字段、CERT—R字段和CN2字段,其中PID字段其值與認證請求分組中的PID字段值相同;Nl字段其值與認證請求分組中的N1字段值相同;MIC1字段其值與認證請求分組中的MIC1字段值相同;N2字段讀寫器READER選取的一次性隨機數(shù);CERT—R字段讀寫器READER的數(shù)字證書;CN2字段N2的密文,使用讀寫器READER的私鑰加密,即CN2:ES(N2;讀寫器READER)。4、根據權利要求3所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟4)中電子標簽應用系統(tǒng)數(shù)據庫DB收到密鑰請求分組后,電子標簽應用系統(tǒng)數(shù)據庫DB利用PID對應的SK本地重新計算MIC1并與接收到的MIC1進行比較,如果不相等,進行錯誤處理并通知讀寫器READER;如果相等,利用讀寫器READER的公鑰解密CN2得到N2,并與接收到的N2值進行比較,如果不相等,則丟棄該分組,如果相等,構造并發(fā)送證書鑒別請求分組給認證服務器AS,該證書鑒別請求分組的內容包括N2字段、CERT—R字段、N3字段、CERT—D字段和SK^D字段,其中N2字段其值與密鑰請求分組中的N2字段值相同;CERT1R字段其值與密鑰請求分組中的CERT—R字段值相同;N3字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù);CERT^D字段電子標簽應用系統(tǒng)數(shù)據庫DB的數(shù)字證書;SK^D字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。5、根據權利要求4所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟5)中當認證服務器AS收到證書鑒別請求分組后,認證服務器AS驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否正確?若不正確,則丟棄該分組;若正確,則驗證CERT—D和CERT—R的有效性,并根據驗證結果構造并發(fā)送證書鑒別響應分組給電子標簽應用系統(tǒng)數(shù)據庫DB;該證書鑒別響應分組的內容包括N2字段、CERT一R字段、N3字段、CERT—D字段、RES一R字段、RES一D字段和SK^A字段,其中N2字段其值與證書鑒別請求分組中的N2字段值相同;CERT—R字段其值與證書鑒別請求分組中的CERT^R字段值相同;N3字段其值與證書鑒別請求分組中的N3字段值相同;CERT—D字段其值與證書鑒別請求分組中的CERT—D字段值相同;虹8_11字段認證服務器AS對CERT一R的驗證結果;RES一D字段認證服務器AS對CERT—D的驗證結果;SK^A字段認證服務器AS對本字段前所有字段的簽名。6、根據權利要求5所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟6)中當電子標簽應用系統(tǒng)數(shù)據庫DB收到證書鑒別響應分組后,電子標簽應用系統(tǒng)數(shù)據庫DB驗證N3是否是自己選取的隨機數(shù)?若否,則丟棄該分組;若是,則驗證認證服務器AS的簽名是否有效?若無效,則丟棄該分組;若有效,則判斷通過RES一R字段得到讀寫器READER證書是否合法?若證書不合法,則進行錯誤處理并通知讀寫器READER;若合法,則構造并發(fā)送密鑰響應分組給讀寫器READER;該密鑰響應分組的內容包括N2字段、N3字段、CERT—D字段、RES一R字段、RES一D字段、SK^A字段、CK字段、R字段和SIG一D字段,其中N2字段其值與密鑰請求分組中的N2字段值相同;N3字段其值與證書鑒別響應分組中的N3字段值相同;CERT1D字段其值與證書鑒別響應分組中的CERT一D字段值相同;虹8_1^字段其值與證書鑒別響應分組中的RES一R字段值相同;RES—D字段其值與證書鑒別響應分組中的RES一D字段值相同;SK^A字段其值與證書鑒別響應分組中的SIG一A字段值相同;CK字段電子標簽應用系統(tǒng)數(shù)據庫DB發(fā)送給讀寫器READER的密鑰密文,其計算方法為首先利用SK導出三個密鑰K1、K2和K3,然后,用讀寫器READER的公鑰加密得到CK,艮卩CK-EP(K1||K2||K3;讀寫器READER);R字段電子標簽應用系統(tǒng)數(shù)據庫DB選取的一次性隨機數(shù),用于PID和SK的更新,更新方法為PID-H(PID,R);SK=H(SK,R);SIG—D字段電子標簽應用系統(tǒng)數(shù)據庫DB對本字段前所有字段的簽名。7、根據權要求6所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟7)中當讀寫器READER收到密鑰響應分組后,由讀寫器READER驗證N2是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則驗證認證服務器AS的簽名是否有效?若否,則丟棄該分組;若是,則判斷根據RES—D字段得到電子標簽應用系統(tǒng)數(shù)據庫DB證書是否合法?若不合法,則丟棄該分組;若合法,則驗證電子標簽應用系統(tǒng)數(shù)據庫DB的簽名是否有效?若無效,則丟棄該分組;若有效,則利用私鑰解密求得密鑰K1、K2和K3;由讀寫器READER構造并發(fā)送認證響應分組給電子標簽TAG,該認證響應分組的內容包括Nl字段、R字段、VABC字段、N4字段、MIC2字段,其中Nl字段其值與認證請求分組中的N1字段值相同;R字段其值與密鑰響應分組中的R字段值相同;VABC字段讀寫器READER生成的用于驗證電子標簽TAG身份的信息。其中VABC的計算如下首先VA-PID串KlWl;VB=(PIDK2)+W2;VC=PID+K3+W2,令VABC-VAIIVBIIVC。這里W1和W2為讀寫器READER隨機選取的秘密隨機數(shù);N4字段讀寫器READER選取的一次性隨機數(shù);MC2字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MC2=H(Nl;R;VABC;N4;Kl;K2;K3;Wl;W2)。8、根據權利要求7所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟8)中當電子標簽TAG收到認證響應分組后,電子標簽TAG驗證N1是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則利用SK導出密鑰K1、K2、K3,根據VABC得到VA、VB和VC,重新計算得到W1和W2;然后本地重新計算MC2與接收到的MIC2是否相等?若不相等,則丟棄該分組;若相等,構造并發(fā)送認證確認分組給讀寫器READER,同時,根據R更新PID和SK分別為PID-H(PID,R)和SK-H(SK,R);該認證確認分組的內容包括N4字段、VD字段和MC3字段,其中-N4字段其值與認證響應分組中的N1字段值相同;VD字段電子標簽TAG生成的用于再次確認讀寫器READER身份的信息。其中VD的計算為VD-(PID+ID)W1W2;MIC3字段讀寫器READER對本字段前所有字段計算的完整性校驗,即MIC=H(N4;VD;Kl;K2;K3;Wl;W2)。9、根據權利要求8所述的基于哈希函數(shù)的雙向認證方法,其特征在于所述步驟8)中之后還包括步驟9)當讀寫器READER收到認證確認分組后,由讀寫器READER驗證N4是否是自己選取的隨機數(shù)?若不是,則丟棄該分組;若是,則判斷本地重新計算MIC3并與接收到的MIC3是否相等?若不相等,則丟棄該分組;若相等,則計算得到電子標簽TAG的真實身份標識ID。10、一種基于哈希函數(shù)的雙向認證系統(tǒng),其特征在于所述系統(tǒng)包括電子標簽TAG、讀寫器READER、用于實現(xiàn)電子標簽TAG和讀寫器READER基于哈希函數(shù)的雙向認證的電子標簽應用系統(tǒng)數(shù)據庫DB以及認證服務器AS;所述電子標簽TAG和讀寫器READER連接;所述電子標簽應用系統(tǒng)數(shù)據庫DB分別和認證服務器AS以及讀寫器READER連接。全文摘要本發(fā)明涉及一種基于哈希函數(shù)的雙向認證方法及系統(tǒng),該方法包括1)由讀寫器READER發(fā)送認證激活分組給電子標簽TAG;2)TAG構造并發(fā)送認證請求分組給READER;3)構造并發(fā)送密鑰請求分組給電子標簽應用系統(tǒng)數(shù)據庫DB;4)向認證服務器AS發(fā)送證書鑒別請求分組;5)向DB發(fā)送證書鑒別響應分組;6)向READER發(fā)送密鑰響應分組;7)向TAG發(fā)送認證響應分組;8)向READER發(fā)送認證確認分組。本發(fā)明提供了一種可實現(xiàn)數(shù)據庫和讀寫器之間無需安全鏈接、并能進行雙向認證、以及合理利用設備性能的基于哈希函數(shù)的雙向認證方法及系統(tǒng)。文檔編號H04L9/32GK101662366SQ200910168758公開日2010年3月3日申請日期2009年9月2日優(yōu)先權日2009年5月27日發(fā)明者龐遼軍,軍曹,鐵滿霞,黃振海申請人:西安西電捷通無線網絡通信有限公司