專利名稱:射頻識別系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及計(jì)算機(jī)系統(tǒng),尤其涉及射頻識別系統(tǒng)和方法。
背景技術(shù):
偽造品對于產(chǎn)品制造商來說是極嚴(yán)重的問題。目前,在許多產(chǎn)業(yè)中都可看到偽造品,這些產(chǎn)業(yè)例如是酒、香煙、藥物、化妝品、CD、DVD、軟件、體育器材、兒童用品和珠寶等等。許多產(chǎn)業(yè)已經(jīng)與偽造者戰(zhàn)斗了幾十年。但是,伴隨著防偽努力的持續(xù)前進(jìn),偽造品卻在不論是東方還是西方的大多數(shù)國家里變得驚人的普遍。
偽造品給無辜的制造商帶來的不僅是利潤上的巨大損失,還有信用上的災(zāi)難。不幸購買了偽造品并且對偽造品的偽劣質(zhì)量不滿意的普通消費(fèi)者,在許多情況下都無法分辨?zhèn)卧炱泛驼嫫罚虼藢?fù)面但卻錯誤地評價(jià)真正的制造商的產(chǎn)品質(zhì)量。最后的悲哀故事是偽造者賺了錢,而無辜的制造商受到了懲罰。
產(chǎn)品制造商始終渴求獲得能幫助消費(fèi)者分辨真品和偽造品的產(chǎn)品認(rèn)證解決方案。如果這種解決方案使得消費(fèi)者能夠便利地認(rèn)證產(chǎn)品,則偽造品就易被驅(qū)逐出市場。
防偽是專利申請中的非常熱門的主題,在市場上已經(jīng)可以看到許多解決方案。在計(jì)算機(jī)通信網(wǎng)絡(luò)的廣泛采用之前,防偽解決方案大體上是基于物理手段的,例如特殊的印墨、紙張、質(zhì)地、激光標(biāo)簽。解決方案提供商宣稱這種物理手段能夠強(qiáng)有力地防偽。但是,過去幾十年來的歷史卻明顯與提供商所宣稱的不符。鈔票就是一個(gè)很好的例子。在鈔票中總能找到最高級的物理手段。但是,偽鈔卻從來沒有消失過。顯然,普通產(chǎn)品制造商無法承受應(yīng)用鈔票的高成本。因此,由普通產(chǎn)品制造商采用的防偽解決方案是非常脆弱的。
在過去的20年中,計(jì)算機(jī)通信網(wǎng)絡(luò)成功突圍進(jìn)了消費(fèi)者市場中。全球因特網(wǎng)訪問費(fèi)用和固定/移動電信費(fèi)用變得如此之低,以至于居住在這個(gè)星球上的大部分人都有能力消費(fèi)它們。因此,看到越來越多防偽解決方案嘗試將由產(chǎn)品承載的產(chǎn)品認(rèn)證信息發(fā)送到后端服務(wù)器并由服務(wù)器確定產(chǎn)品的真?zhèn)?,也就不令人驚奇了。例如,中國專利申請99126659和02111542就屬于此類技術(shù)的范圍。
射頻識別(Radio Frequency Identification,RFID)標(biāo)簽是抗擊偽造品領(lǐng)域的另一個(gè)后起之秀。RFID這個(gè)詞涵蓋了具有廣泛變化的計(jì)算功率量、讀取范圍和成本的無線電和處理器技術(shù)的一個(gè)家族。自從Walmart和美國國防部開始大規(guī)模嘗試以來,供應(yīng)鏈標(biāo)簽已經(jīng)變得很著名。工業(yè)團(tuán)體EPCglobal(www.epcglobalinc.org)定義了0類和1類RFID標(biāo)簽,這些標(biāo)簽具有極有限的計(jì)算、存儲和通信能力,并且不支持密碼技術(shù)和最小限度的額外特征。
對于任何RFID系統(tǒng),有三個(gè)元件是基本的RFID標(biāo)簽、RFID讀取器和數(shù)據(jù)處理子系統(tǒng)。RFID標(biāo)簽位于要標(biāo)識的對象上,并且是RFID系統(tǒng)中的數(shù)據(jù)攜帶者。RFID讀取器能夠從RFID標(biāo)簽中讀取數(shù)據(jù)和/或向RFID標(biāo)簽寫入數(shù)據(jù)。數(shù)據(jù)處理子系統(tǒng)以某種有用的方式利用由RFID讀取器獲得的數(shù)據(jù)。
典型的RFID標(biāo)簽包括存儲數(shù)據(jù)的微芯片以及耦合元件,例如線圈天線,用于經(jīng)由射頻通信來通信。RFID標(biāo)簽可以是有源的或無源的。有源RFID標(biāo)簽具有電源(例如電池),并且主動發(fā)送用于通信的RF信號,而無源RFID標(biāo)簽從RFID讀取器的詢問信號中獲得其全部能量,并且或者反射RFID標(biāo)簽的信號,或者對RFID標(biāo)簽的信號進(jìn)行負(fù)載調(diào)制,以進(jìn)行通信。大多數(shù)RFID標(biāo)簽,無論是有源的還是無源的,都只在被RFID讀取器詢問時(shí)才進(jìn)行通信。
典型的RFID讀取器包括射頻模塊、處理器和耦合元件,以經(jīng)由射頻通信詢問RFID標(biāo)簽。此外,許多RFID讀取器裝有接口,使得它們能夠?qū)⒔邮盏降臄?shù)據(jù)傳輸給數(shù)據(jù)處理子系統(tǒng),例如運(yùn)行在個(gè)人計(jì)算機(jī)上的存儲器。用射頻來與RFID標(biāo)簽通信使得即使在標(biāo)簽位于不友好的環(huán)境中并且模糊難辨的情況下,RFID讀取器也能在短距離到中等距離內(nèi)讀取無源RFID標(biāo)簽,在短距離到長距離內(nèi)讀取有源RFID標(biāo)簽。
可將利用RFID標(biāo)簽的防偽解決方案簡單劃分成在線和離線的兩種。對于在線防偽解決方案,計(jì)算機(jī)通信網(wǎng)絡(luò)也被使用,這種解決方案可能需要安全裝置,也可能不需要。例如,中國專利申請200410082611.1和200410024790.3屬于此類技術(shù)的范圍,而前者不涉及安全裝置,后者要求安全裝置。另一方面,對于離線解決方案,不使用計(jì)算機(jī)通信網(wǎng)絡(luò),即只利用RFID標(biāo)簽和讀取器來認(rèn)證產(chǎn)品。在這種情況下,必然需要安全裝置。例如,中國專利申請03111875.5和200410078160.4屬于此類技術(shù)的范圍。PCT專利申請WO 2005/024697 A2也涉及此類技術(shù)。
現(xiàn)有防偽解決方案具有成本、效率、可用性和安全性方面的問題。
首先,任何要求通信網(wǎng)絡(luò)支持的防偽解決方案要處理來自消費(fèi)者的大量產(chǎn)品認(rèn)證,其后端服務(wù)器的成本都會很大。此外,通信花費(fèi)會被加諸于消費(fèi)者或產(chǎn)品制造商。如果加諸于消費(fèi)者,則這種解決方案將會由于經(jīng)濟(jì)原因被大多數(shù)消費(fèi)者所放棄。另一方面,如果加諸于產(chǎn)品制造商,則來自消費(fèi)者的大量產(chǎn)品認(rèn)證查詢將會侵吞產(chǎn)品制造商的利潤。這還不是全部,在大多數(shù)情況下,消費(fèi)者和后端服務(wù)器之間為了產(chǎn)品認(rèn)證進(jìn)行的通信會花費(fèi)相當(dāng)多的時(shí)間。消費(fèi)者可能因?yàn)闀r(shí)間原因而放棄這種解決方案。
現(xiàn)有的離線的基于標(biāo)簽的防偽解決方案,即不需要通信網(wǎng)絡(luò)支持的解決方案,不僅遇到了成本問題,還遇到了安全問題。雖然在這種解決方案中已經(jīng)包括了安全裝置,但是大多數(shù)這種安全裝置都不起作用。這種解決方案一般依賴于以下假設(shè)標(biāo)簽包含某些秘密信息,并且是抗克隆的,即給出一個(gè)包含秘密信息的真正的標(biāo)簽,難以制造另一個(gè)包含相同信息的標(biāo)簽。如果這種假設(shè)是真的,則這些解決方案是可行的,因?yàn)榘踩b置保證存儲在標(biāo)簽中的秘密信息是不可偽造的,因此安全信息和標(biāo)簽被安全地綁定在一起。不幸的是,這一假設(shè)對于現(xiàn)有解決方案是完全錯誤的。現(xiàn)有解決方案利用了存儲在標(biāo)簽中的所有秘密信息來進(jìn)行產(chǎn)品認(rèn)證。正如我們所知的,對于離線解決方案,認(rèn)證標(biāo)簽并確定被附著了標(biāo)簽的產(chǎn)品的真實(shí)性的是讀取器。由于存儲在標(biāo)簽中的所有秘密信息都用于認(rèn)證中,如果任何一個(gè)讀取器被偽造者所占有,則偽造者就能了解存儲在讀取器中的秘密信息,并將這些秘密信息完全復(fù)制到偽造的標(biāo)簽上,從而破壞了該解決方案的安全性。制造一種防止偽造者攻克的安全讀取器是有可能的。但是,這種讀取器太昂貴了。同樣,很容易發(fā)現(xiàn)讀取器和標(biāo)簽之間的射頻通信是難以受安全裝置來保護(hù)的。如果讀取器和標(biāo)簽之間的射頻通信是安全的,則不僅需要昂貴的讀取器,還需要昂貴的標(biāo)簽,才能使得讀取器和標(biāo)簽?zāi)軌虮舜苏J(rèn)證。因此,只要通過竊聽讀取器和標(biāo)簽之間的開放無線電通信,就能截取包含在標(biāo)簽中的數(shù)據(jù)。結(jié)論就是,除非使用能夠認(rèn)證讀取器并且能被讀取器認(rèn)證的昂貴的標(biāo)簽,并且讀取器和標(biāo)簽之間的無線電信道被加密,否則RFID標(biāo)簽就很容易被克隆。
這里我們要強(qiáng)調(diào),廉價(jià)標(biāo)簽至少具有“功率非常有限的無源標(biāo)簽”的特征。在標(biāo)簽上是沒有諸如偽隨機(jī)數(shù)生成、雜散、加密這樣的基本安全要求的。對于這種廉價(jià)標(biāo)簽,數(shù)據(jù)克隆對所有產(chǎn)品認(rèn)證解決方案來說都是令人頭疼的。克隆的標(biāo)簽對于離線解決方案來說尤其致命。沒有網(wǎng)絡(luò)支持的讀取器無法分辨真標(biāo)簽和克隆的標(biāo)簽,這意味著偽造的標(biāo)簽肯定能通過由任何真讀取器進(jìn)行的產(chǎn)品認(rèn)證。因此,由于附著了克隆的標(biāo)簽的偽造品被讀取器認(rèn)證為真品,因而大規(guī)模偽造是無法避免的。
針對離線RFID標(biāo)簽的數(shù)據(jù)克隆問題,已提出了一些解決方案。例如,日本專利公開2005-130059中,提出了通過在附著在商品上的IC芯片的存儲領(lǐng)域中寫入多個(gè)密碼化的數(shù)據(jù),并且在進(jìn)行產(chǎn)品認(rèn)證時(shí),通過多次讀取芯片中的密碼化的數(shù)據(jù),而增加解讀密碼化數(shù)據(jù)的難度,從而在一定程度上增加了數(shù)據(jù)克隆的難度。但是,數(shù)據(jù)克隆仍然不是不可能的。偽造者通過足夠多次讀取一個(gè)真品芯片,就有可能獲取該芯片中存儲的所有密碼化數(shù)據(jù),并將這些數(shù)據(jù)克隆在偽造的芯片中,這樣偽造的芯片肯定能通過由任何真讀取器進(jìn)行的產(chǎn)品認(rèn)證。
因此,需要一種用于離線產(chǎn)品認(rèn)證的RFID系統(tǒng),其能夠防止對存儲在RFID標(biāo)簽中的數(shù)據(jù)進(jìn)行克隆,并且還具有廉價(jià)、高效等優(yōu)點(diǎn)。
發(fā)明內(nèi)容
為了解決上述問題,即用一種廉價(jià)、高效的方案來防止對存儲在射頻識別標(biāo)簽中的數(shù)據(jù)進(jìn)行克隆,提供了一種射頻識別系統(tǒng)、一種射頻識別標(biāo)簽和一種射頻識別方法。
根據(jù)本發(fā)明的第一方面,提供了一種射頻識別系統(tǒng),包括射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器,其向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
根據(jù)本發(fā)明的第二方面,提供了一種射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都都無法被讀取。
根據(jù)本發(fā)明的第三方面,提供了一種射頻識別方法,包括在射頻識別標(biāo)簽上存儲標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分,其中所述射頻識別標(biāo)簽在接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過所述鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
根據(jù)本發(fā)明的第四方面,提供了一種射頻識別系統(tǒng),包括射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器,其向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù),其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
根據(jù)本發(fā)明的第五方面,提供了一種射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù)的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
根據(jù)本發(fā)明的第六方面,提供了一種射頻識別方法,包括在射頻識別標(biāo)簽上存儲標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù),其中所述射頻識別標(biāo)簽在接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
根據(jù)本發(fā)明的實(shí)施例,向射頻識別標(biāo)簽中引入了鎖定功能。從而通過存儲在射頻識別標(biāo)簽中的多個(gè)數(shù)字簽名以及由射頻標(biāo)簽所執(zhí)行的鎖定功能,有效地禁止了對射頻標(biāo)簽中的數(shù)據(jù)的克隆,并且阻撓了大規(guī)模的偽造。
圖1示出根據(jù)本發(fā)明的第一實(shí)施例的RFID系統(tǒng)100,其包含RFID標(biāo)簽101和RFID讀取器102;圖2示出根據(jù)本發(fā)明的第一實(shí)施例的RFID標(biāo)簽101的內(nèi)部結(jié)構(gòu)示意圖;圖3示出根據(jù)本發(fā)明的第一實(shí)施例的RFID讀取器102的內(nèi)部結(jié)構(gòu)示意圖;圖4示出圖1所示的RFID標(biāo)簽101在接收到來自RFID讀取器102的讀取請求時(shí)的操作流程5示出圖1所示的RFID讀取器102向RFID標(biāo)簽101發(fā)送讀取請求,并根據(jù)讀取到的數(shù)字簽名對RFID標(biāo)簽101的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖;圖6示出根據(jù)本發(fā)明的第二實(shí)施例的RFID系統(tǒng)600,其包含RFID標(biāo)簽601和RFID讀取器602;圖7示出根據(jù)本發(fā)明的第二實(shí)施例的RFID標(biāo)簽601的內(nèi)部結(jié)構(gòu)示意圖;圖8示出根據(jù)本發(fā)明的第二實(shí)施例的RFID讀取器602的內(nèi)部結(jié)構(gòu)示意圖;圖9示出圖6所示的RFID標(biāo)簽601在接收到來自RFID讀取器602的讀取請求時(shí)的操作流程圖;圖10示出圖6所示的RFID讀取器602向RFID標(biāo)簽601發(fā)送讀取請求,并根據(jù)讀取到的數(shù)字簽名對RFID標(biāo)簽601的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖;圖11示出根據(jù)本發(fā)明的第三實(shí)施例的RFID系統(tǒng)1100,其包含RFID標(biāo)簽1101和RFID讀取器1102;圖12示出根據(jù)本發(fā)明的第三實(shí)施例的RFID標(biāo)簽1101的內(nèi)部結(jié)構(gòu)示意圖;圖13示出根據(jù)本發(fā)明的第三實(shí)施例的RFID讀取器1102的內(nèi)部結(jié)構(gòu)示意圖;圖14示出圖11所示的RFID標(biāo)簽1101在接收到來自RFID讀取器1102的讀取請求時(shí)的操作流程圖;圖15示出圖11所示的RFID讀取器1102向RFID標(biāo)簽1101發(fā)送讀取請求,并根據(jù)讀取到的數(shù)字簽名對RFID標(biāo)簽1101的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖;圖16示出根據(jù)本發(fā)明的第四實(shí)施例的RFID系統(tǒng)1600,其包含RFID標(biāo)簽1601和RFID讀取器1602;圖17示出根據(jù)本發(fā)明的第四實(shí)施例的RFID標(biāo)簽1601的內(nèi)部結(jié)構(gòu)示意圖;圖18示出根據(jù)本發(fā)明的第四實(shí)施例的RFID讀取器1602的內(nèi)部結(jié)構(gòu)示意圖;圖19示出圖16所示的RFID標(biāo)簽1601在接收到來自RFID讀取器1602的讀取請求時(shí)的操作流程圖;圖20示出圖16所示的RFID讀取器1602向RFID標(biāo)簽1601發(fā)送讀取請求,并根據(jù)讀取到的數(shù)字簽名對RFID標(biāo)簽1601的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖;以及圖21示出根據(jù)本發(fā)明的第五實(shí)施例的RFID標(biāo)簽的存儲器消耗的減少。
具體實(shí)施例方式
下面將說明本發(fā)明的具體實(shí)施例。
圖1是根據(jù)本發(fā)明的第一實(shí)施例的RFID系統(tǒng)100的簡化框圖。RFID系統(tǒng)100包括RFID標(biāo)簽101和RFID讀取器102,并且RFID標(biāo)簽101與RFID讀取器102之間通過射頻通信來通信。該RFID標(biāo)簽101是一個(gè)無源標(biāo)簽,它從來自RFID讀取器102的讀取請求信號中獲取其全部能量,并且通過反射來自RFID讀取器102的信號,或者對來自RFID讀取器102的信號進(jìn)行負(fù)載調(diào)制,來答復(fù)RFID讀取器102。RFID標(biāo)簽101的體積很小,可以附著在任何需要進(jìn)行認(rèn)證的產(chǎn)品之上。RFID讀取器102可向RFID標(biāo)簽101發(fā)送數(shù)據(jù),例如讀取請求,并且接收來自RFID標(biāo)簽101的答復(fù)數(shù)據(jù)。
圖2是圖1的RFID標(biāo)簽101的內(nèi)部結(jié)構(gòu)示意框圖。RFID標(biāo)簽101包括微芯片201和標(biāo)簽耦合元件202。微芯片201中包括標(biāo)識碼存儲區(qū)域203、輔助存儲區(qū)域204和控制裝置205。在標(biāo)識碼存儲區(qū)域中存儲了唯一標(biāo)識RFID標(biāo)簽101的某個(gè)屬性標(biāo)識碼,例如EPC碼。
EPC碼是由EPCglobal所定義的。EPC碼中的一部分將會唯一標(biāo)識被附著了RFID標(biāo)簽101的產(chǎn)品的制造商。EPC是存儲在射頻識別標(biāo)簽中的唯一信息,且已經(jīng)得到UCC和國際EAN兩個(gè)國際標(biāo)準(zhǔn)的主要監(jiān)督機(jī)構(gòu)的支持。EPC的目標(biāo)是提供對物理世界對象的唯一標(biāo)識。它通過計(jì)算機(jī)網(wǎng)絡(luò)來標(biāo)識和訪問單個(gè)物體,就如在互聯(lián)網(wǎng)中使用IP地址來標(biāo)識、組織和通信一樣。以下簡要說明EPC碼的結(jié)構(gòu)。EPC是一組數(shù)字,由頭標(biāo)和三部分?jǐn)?shù)據(jù)組成。頭標(biāo)表明EPC的版本號,已經(jīng)考慮到不同長度或未來的不同標(biāo)簽類型。第二部分,表明EPC的管理者,相當(dāng)于產(chǎn)品的制造商。第三部分,代表物品類別,表明了產(chǎn)品的確切類別。第四部分,是單個(gè)物品的序列號。例如,一個(gè)EPC碼01.115A1D7.28A1E6.421CBA30A,其中01表示EPC版本(8位),115A1D7表示產(chǎn)品制造商識別碼,一共28位(可以表示大于2.68億個(gè)產(chǎn)品制造商),28A1E6表示產(chǎn)品識別碼,一共24位(每家產(chǎn)品制造商可以表示大于1600萬個(gè)產(chǎn)品類別),而421CBA30A表示單品序列號,一共36位(每類產(chǎn)品可以表示大于680億件單品)。
在輔助存儲區(qū)域204中,存儲了可驗(yàn)證數(shù)據(jù),以及其他輔助信息,例如制造日期。存在多種生成可驗(yàn)證數(shù)據(jù)的方式,以下將描述其示例。
在本發(fā)明的優(yōu)選實(shí)施例中,可驗(yàn)證數(shù)據(jù)可以是數(shù)字簽名。如圖2所示,多個(gè)(例如n個(gè),n為正整數(shù)且n>1)數(shù)字簽名{SIG1,SIG2,...,SIGn}被存儲在輔助存儲區(qū)域204中。
假定每個(gè)產(chǎn)品制造商具有至少一個(gè)公鑰(public-key),數(shù)字簽名是關(guān)于EPC的內(nèi)容的數(shù)字簽名。這些簽名由制造商的公鑰所驗(yàn)證。例如,假設(shè)n=2,即存儲區(qū)域204中存儲了2個(gè)數(shù)字簽名SIG1和SIG2,產(chǎn)品制造商具有兩個(gè)RSA公鑰,PK1和PK2,每個(gè)公鑰為1024比特。則SIG1和SIG2可以是關(guān)于EPC和制造日期的數(shù)字簽名,這些數(shù)據(jù)簽名分別可由公鑰PK1和PK2所確認(rèn)。每個(gè)簽名消耗1024比特。最好用ECDSA(ANSI X9.62)同族機(jī)制來計(jì)算簽名,這樣一個(gè)制造商只需要一個(gè)公鑰即可。按照這種機(jī)制,每個(gè)簽名具有兩部分S和C,如果利用160比特橢圓曲線和SHA-1的話,則S部分和C部分各具有160比特。換句話說,一個(gè)數(shù)字簽名消耗320比特。但其安全強(qiáng)度可以與1024比特的RSA數(shù)字簽名方案的安全性相比擬。稍后將給出關(guān)于S部分和C部分的計(jì)算方法的示例。關(guān)于數(shù)字簽名方案的各種選擇和考慮對于本領(lǐng)域的技術(shù)人員來說是公知的。
除生成為數(shù)字簽名外,可驗(yàn)證數(shù)據(jù)生成方式例如也可以選用本領(lǐng)域內(nèi)公知的MAC(Message Authentication Code)方法。例如是,給定安全雜散函數(shù)和消息M(包括EPC碼E以及可能的附加信息),n個(gè)可驗(yàn)證數(shù)據(jù)可以計(jì)算為MACi=hash(M,key,i),i=1,2,...,n。將MAC1~MACn作為可驗(yàn)證數(shù)據(jù)存儲在標(biāo)簽中。當(dāng)讀取器讀取到任何一個(gè)可驗(yàn)證數(shù)據(jù)的時(shí)候,例如MACj,可以根據(jù)該MAC值的序號j,相關(guān)的消息M,以及讀取器自己存儲器中的密鑰key,驗(yàn)證讀取到的MACj是否等于hash(M,key,j)。如果相等,則這個(gè)MAC值是真實(shí)的。反之,這個(gè)MAC值是偽造的。MAC還可以用其他的方法生成,例如HMAC,安全雜散函數(shù)也有多種選擇,這些對于本領(lǐng)域的技術(shù)人員來說是公知的。
又例如,可驗(yàn)證數(shù)據(jù)生成方式可以選用本領(lǐng)域內(nèi)公知的對稱加密方法。具體是,給定對稱加密函數(shù)SEC和解密函數(shù)SDE,消息M(包括EPC碼E以及可能的附加信息),n個(gè)可驗(yàn)證數(shù)據(jù)可以計(jì)算為Di=SEC(M,key,i),i=1,2,...,n。將D1~Dn作為可驗(yàn)證數(shù)據(jù)存儲在標(biāo)簽中。當(dāng)讀取器讀取到任何一個(gè)可驗(yàn)證數(shù)據(jù)的時(shí)候,例如Dj,可以根據(jù)該數(shù)據(jù)的序號j,相關(guān)的消息M,以及讀取器自己存儲器中的密鑰key,驗(yàn)證SDE(Dj,key)是否能解密出M和j。如果能夠,則這個(gè)可驗(yàn)證數(shù)據(jù)是真實(shí)的。反之,這個(gè)可驗(yàn)證數(shù)據(jù)是偽造的。對稱加密算法有多種選擇,例如3DES,AES,這些對于本領(lǐng)域的技術(shù)人員來說是公知的。
上述不采用數(shù)字簽名的可驗(yàn)證數(shù)據(jù)生成方案,可以拓展到在讀取器中存儲多個(gè)密鑰,分別屬于不同的生產(chǎn)廠家,EPC中申明是某個(gè)廠家的標(biāo)簽所存儲的可驗(yàn)證數(shù)據(jù)可以用讀取器中存儲的該廠家的密鑰來驗(yàn)證。
上述不采用數(shù)字簽名的可驗(yàn)證數(shù)據(jù)生成方案的主要問題是,如果每個(gè)廠家有不同的密鑰,這樣的方案可擴(kuò)展性很差。設(shè)想一個(gè)讀取器存儲了成千上萬廠家的密鑰,讀取器將成為很大的安全隱患。同時(shí),向讀取器中安全的增加新的密鑰也是很困難的。另一方面,如果所有的廠家共享同一個(gè)密鑰,這樣的方案可擴(kuò)展性也很差。這是因?yàn)樵谶@種情況下只能由公認(rèn)可信的第三方來使用這個(gè)密鑰,這使得該第三方必須為所有廠家生產(chǎn)的所有產(chǎn)品生成可驗(yàn)證數(shù)據(jù),同樣是很困難的。
因此,采用數(shù)字簽名作為可驗(yàn)證數(shù)據(jù)是本發(fā)明的首選實(shí)施例。
控制裝置205用于在RFID標(biāo)簽101接收到RFID讀取器的讀取請求時(shí)根據(jù)情況執(zhí)行鎖定操作,使RFID標(biāo)簽的輔助存儲區(qū)域204中存儲的一部分?jǐn)?shù)字簽名以后不能被讀取??刂蒲b置205的操作將在以下結(jié)合圖4進(jìn)一步說明。
標(biāo)簽耦合元件202可以是線圈天線,用于通過射頻通信與RFID讀取器102通信。
圖3是圖1所示的RFID讀取器102的內(nèi)部結(jié)構(gòu)示意框圖。RFID讀取器102包括處理器301、射頻模塊302、讀取器耦合元件303和存儲器304。處理器301用于控制RFID讀取器102通過耦合元件303向RFID標(biāo)簽101發(fā)送讀取請求,處理器301中還包括認(rèn)證部分301-1,用于對從RFID標(biāo)簽101接收到的答復(fù)數(shù)據(jù)進(jìn)行分析,以對RFID標(biāo)簽101的真?zhèn)涡赃M(jìn)行認(rèn)證,從而可對附著了RFID標(biāo)簽101的產(chǎn)品的真?zhèn)涡赃M(jìn)行認(rèn)證。處理器301的操作將在下文結(jié)合圖5進(jìn)一步說明。射頻模塊302用于在處理器301的控制下生成射頻信號。讀取器耦合元件303用于通過發(fā)送/接收射頻信號來與RFID標(biāo)簽101通信。存儲器304用于存儲產(chǎn)品制造商的公鑰。在使用RSA算法計(jì)算數(shù)字簽名的情況下,相應(yīng)于存儲在RFID標(biāo)簽101的輔助存儲區(qū)域204中的n個(gè)數(shù)字簽名,存儲器304中存儲了n個(gè)公鑰{PK1,PK2,...,PKn}。但是,在使用ECDSA算法計(jì)算數(shù)字簽名的情況下,無論輔助存儲區(qū)域204中存儲了多少個(gè)數(shù)字簽名,對于一個(gè)制造商,存儲器304中只需存儲1個(gè)公鑰,用于驗(yàn)證該制造商的數(shù)字簽名。
圖4示出圖1所示的RFID標(biāo)簽101在接收到來自RFID讀取器102的讀取請求時(shí)的操作流程圖。在步驟401中,RFID標(biāo)簽101接收到來自RFID讀取器102的讀取請求,被要求讀取包含k個(gè)數(shù)字簽名的數(shù)字簽名子集{SIGa_1,SIGa_2,...,SIGa_k},其中k為正整數(shù)且l≤k≤n,并且{a_1,a_2,...,a_k}{1,2,...,n},即{SIGa_1,SIGa_2,...,SIGa_k}{SIG1,SIG2,...SIGn}。在步驟402中,控制裝置205判斷數(shù)字簽名集合{SIG1,SIG2,...,SIGn}以前是否已因被執(zhí)行鎖定操作而被鎖定到另一數(shù)字簽名子集{SIGb_1,SIGb_2,...,SIGb_k}。如果已被鎖定,則在步驟403中,RFID標(biāo)簽101向RFID讀取器102發(fā)送數(shù)字簽名子集{SIGb_1,SIGb_2,...,SIGb_k}。然后此次過程結(jié)束。如果未被鎖定,則在步驟404中,控制裝置205執(zhí)行鎖定操作,將RFID標(biāo)簽101中的數(shù)字簽名集合{SIG1,SIG2,...,SIGn}鎖定到數(shù)字簽名子集{SIGa_1,SIGa_2,...,SIGa_k}。這樣,以后再接到讀取請求時(shí),只有數(shù)字簽名子集{SIGa_1,SIGa_2,...,SIGa_k}可以被讀取,而數(shù)字簽名集合{SIG1,SIG2,...,SIGn}中的其他數(shù)字簽名不能再被讀取。接下來,在步驟405中,控制裝置205判斷RFID標(biāo)簽101是否已被鎖定。如果未被鎖定的話,則不執(zhí)行任何操作,本次過程結(jié)束。如果已被鎖定的話,則過程前進(jìn)到步驟406,在步驟406中,向RFID讀取器102發(fā)送數(shù)字簽名子集{SIGa_1,SIGa_2,...,SIGa_k}。然后此次過程結(jié)束。在本發(fā)明的第一實(shí)施例中,控制裝置205例如是按以下方式實(shí)現(xiàn)鎖定的為每個(gè)數(shù)字簽名SIGi設(shè)置一個(gè)相應(yīng)的標(biāo)記比特Fi,其初始值為0,在SIGi初次被讀取時(shí),將其相應(yīng)的標(biāo)記比特Fi置位為1,當(dāng)標(biāo)記比特為1的數(shù)字簽名的數(shù)目達(dá)到k時(shí),標(biāo)記比特不為1的數(shù)字簽名就不再能被讀取了。使數(shù)字簽名不能被讀取的方法例如是將其銷毀,例如清零。鎖定也可按另外的方式進(jìn)行,例如標(biāo)簽中不設(shè)顯式的標(biāo)記位,而是直接將所有不可被讀出的數(shù)字簽名數(shù)據(jù)銷毀,例如清零。全為零的數(shù)字簽名可以被標(biāo)簽判斷為無需發(fā)送給讀取器的數(shù)字簽名。也可以在被標(biāo)簽發(fā)送的情況下由讀取器判斷為被禁止讀取的數(shù)字簽名,其效果都是使其不能被讀取器所讀取。當(dāng)然,對于本領(lǐng)域的技術(shù)人員顯而易見的是,鎖定操作也可以通過其他方式在軟件、硬件或其結(jié)合中實(shí)現(xiàn)。本發(fā)明不限于這里作為例子舉出的特定鎖定方式。注意RFID標(biāo)簽101也可能接收到請求讀取其他數(shù)目的數(shù)字簽名的讀取請求,例如請求讀取k’個(gè)數(shù)字簽名的請求,但不論k’是否等于k,RFID標(biāo)簽101都最多只會讓k個(gè)數(shù)字簽名被讀取。
與圖4所示的RFID標(biāo)簽101操作流程對應(yīng),圖5示出圖1所示的RFID讀取器102向RFID標(biāo)簽101發(fā)送讀取請求,并根據(jù)從RFID標(biāo)簽101接收到的數(shù)據(jù)對RFID標(biāo)簽101的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖。這里假定RFID讀取器102已經(jīng)成功從RFID標(biāo)簽101中讀取到了標(biāo)識碼,例如EPC碼,從而確定了唯一標(biāo)識RFID標(biāo)簽101的某個(gè)屬性,因此確定了應(yīng)使用存儲器中存儲的哪個(gè)公鑰或哪個(gè)公鑰集合來驗(yàn)證讀取的數(shù)字簽名。在步驟501中,RFID讀取器102的處理器301從索引集合{1,2,...,n}中隨機(jī)選擇索引子集{a_1,a_2,...,a_k}。然后在步驟502中,處理器301控制RFID讀取器102通過讀取器耦合元件303向RFID標(biāo)簽101發(fā)送讀取請求,請求讀取數(shù)字簽名子集{SIGa_1,SIGa_2,...,SIGa_k},并開始等待來自RFID標(biāo)簽101的答復(fù)數(shù)據(jù)。在步驟503中,處理器301判斷是否多次超時(shí),如果多次超時(shí)的話,則過程前進(jìn)到步驟512,認(rèn)證部分301-1判斷RFID標(biāo)簽101為破損標(biāo)簽。這里在判斷為破損標(biāo)簽前容許的超時(shí)次數(shù)可根據(jù)需要選擇。選擇方法是本領(lǐng)域的技術(shù)人員所公知的。如果在步驟503中,在判斷為多次超時(shí)之前接收到來自RFID標(biāo)簽101發(fā)送來的數(shù)字簽名子集{SIGb_1,SIGb_2,...,SIGb_k}(步驟505),則在步驟506中,處理器301從存儲器304中取出對應(yīng)于制造商的公鑰。接下來在步驟507中,利用制造商公鑰驗(yàn)證數(shù)字簽名子集{SIGb_1,SIGb_2,...,SIGb_k}。在步驟508中,判斷數(shù)字簽名子集{SIGb_1,SIGb_2,...,SIGb_k}是否有效,如果無效的話,則認(rèn)證部分301-1判斷RFID標(biāo)簽101為偽造標(biāo)簽,從而可判斷附著了RFID標(biāo)簽101的產(chǎn)品為偽造品(步驟504)。如果有效的話,則在步驟509中,判斷索引子集{b_1,b_2,...,b_k}是否等于在步驟501中隨機(jī)選擇的索引子集{a_1,a_2,...,a_k}。如果等于的話,則認(rèn)證部分301-1判斷RFID標(biāo)簽101是真品標(biāo)簽(步驟510),如果不等于的話,則認(rèn)證部分301-1判斷RFID標(biāo)簽101以前被讀過(步驟511)。通過以上所述的過程,RFID讀取器102可對RFID標(biāo)簽101的真?zhèn)涡宰龀稣J(rèn)證。
從以上描述中可以看出,在標(biāo)簽中執(zhí)行“鎖定”的結(jié)果是防止了標(biāo)簽克隆。這里首先以k=1為例來計(jì)算偽造品檢測概率。偽造者只能獲得存儲在真品標(biāo)簽中的所有n個(gè)數(shù)字簽名中的一個(gè),其他n-1個(gè)將再也不能被讀取。因此,偽造的標(biāo)簽將會只包含一個(gè)有效數(shù)字簽名,從而不會再出現(xiàn)克隆的標(biāo)簽。當(dāng)這種偽造標(biāo)簽被真品讀取器認(rèn)證時(shí),由于讀取器將會從索引集合{1,2,...n}中隨機(jī)選取i,并且請求讀取SIGi,因此偽造標(biāo)簽被檢測到的概率為(n-1)/n。一般而言,p個(gè)偽造標(biāo)簽被檢測到的概率是1-(1/n)p。以n=2為例,一個(gè)偽造標(biāo)簽逃脫檢測的概率為50%,而十二個(gè)偽造標(biāo)簽逃脫檢測的概率將會低于0.025%?;蛘邠Q句話說,十二個(gè)偽造標(biāo)簽被檢測到的概率高于99.97%。顯然,如果1<k<n*0.5,則偽造標(biāo)簽被檢測到的概念將會更高。當(dāng)k=n*0.5時(shí),檢測概率最高。例如,n=12,即一個(gè)標(biāo)簽存儲12個(gè)數(shù)字簽名,如果k=6,即從12個(gè)數(shù)字簽名中隨機(jī)選擇6個(gè)來驗(yàn)證。由于1個(gè)偽造標(biāo)簽上最多有6個(gè)有效數(shù)字簽名,因此偽造標(biāo)簽被檢測到的概率為1-1/C126,即99.89%。此時(shí),兩個(gè)偽造標(biāo)簽逃脫檢測的概率將低于0.00012%?,F(xiàn)在可以合理地論斷,本發(fā)明所提出的利用包含帶鎖定功能的RFID標(biāo)簽的RFID系統(tǒng)進(jìn)行產(chǎn)品認(rèn)證可以有效地阻撓大規(guī)模偽造。
在本發(fā)明的第二實(shí)施例中,除簽名集合{SIG1,SIG2,...,SIGn}以外,RFID標(biāo)簽中還包含了另外m-1組數(shù)字簽名集合,其中m為正整數(shù)且m>1,并且每組數(shù)字簽名集合的構(gòu)成方式與簽名集合{SIG1,SIG2,...,SIGn}的構(gòu)成方式相同。圖6示出根據(jù)本發(fā)明的第二實(shí)施例的RFID系統(tǒng)600,其包含RFID標(biāo)簽601和RFID讀取器602。圖7示出根據(jù)本發(fā)明的第二實(shí)施例的RFID標(biāo)簽601的內(nèi)部結(jié)構(gòu)示意圖。圖8示出根據(jù)本發(fā)明的第二實(shí)施例的RFID讀取器602的內(nèi)部結(jié)構(gòu)示意圖。如圖7所示,RFID標(biāo)簽601包括微芯片701和標(biāo)簽耦合元件702。微芯片701中包括標(biāo)識碼存儲區(qū)域703、輔助存儲區(qū)域704和控制裝置705。RFID標(biāo)簽601的輔助存儲區(qū)域704中存儲了m組數(shù)字簽名集合,每組包含n個(gè)簽名,形成一個(gè)數(shù)字簽名矩陣{SIGi,j},1≤i≤m,1≤j≤n。如圖8所示,RFID讀取器602包括處理器801、射頻模塊802、讀取器耦合元件803和存儲器804。處理器801中還包括認(rèn)證部分801-1。
對于每組簽名,RFID標(biāo)簽601的操作與以上結(jié)合圖4所描述的RFID標(biāo)簽101操作相似,如圖9所示。圖9示出圖6所示的RFID標(biāo)簽601在接收到來自RFID讀取器602的讀取請求時(shí)的操作流程圖。在步驟901中,RFID標(biāo)簽601接收到來自RFID讀取器602的讀取請求,被要求讀取第i組的數(shù)字簽名子集{SIGi,a_1,SIGi,a_2,...,SIGi,a_k},其中1≤i≤m,1≤k≤n,并且{a_1,a_2,...,a_k}{1,2,...,n},即{SIGi,a_1,SIGi,a_2,...,SIGi,a_k}{SIGi,1,SIGi,2,...SIGi,n}。在步驟902中,控制裝置705判斷第i組數(shù)字簽名集合{SIGi,1,SIGi,2,...,SIGi,n}以前是否已因被執(zhí)行鎖定操作而被鎖定到另一數(shù)字簽名子集{SIGi,b_1,SIGi,b_2,...,SIGi,b_k}。如果已被鎖定,則在步驟903中,RFID標(biāo)簽601向RFID讀取器602發(fā)送數(shù)字簽名子集{SIGi,b_1,SIGi,b_2,...,SIGi,b_k}。然后此次過程結(jié)束。如果未被鎖定,則在步驟904中,控制裝置705執(zhí)行鎖定操作,將RFID標(biāo)簽601中的第i組數(shù)字簽名集合{SIGi,1,SIGi,2,...,SIGi,n}鎖定到數(shù)字簽名子集{SIGi,a_1,SIGi,a_2,...,SIGi,a_k}。這樣,以后再接到關(guān)于第i組數(shù)字簽名集合{SIGi,1,SIGi,2,...,SIGi,n}的讀取請求時(shí),只有數(shù)字簽名子集{SIGi,a_1,SIGi,a_2,...,SIGi,a_k}可以被讀取,而第i組數(shù)字簽名集合{SIGi,1,SIGi,2,...,SIGi,n}中的其他數(shù)字簽名不能再被讀取。接下來,在步驟905中,控制裝置705判斷RFID標(biāo)簽601的第i組數(shù)字簽名集合是否已被鎖定。如果未被鎖定的話,則不執(zhí)行任何操作,本次過程結(jié)束。如果已被鎖定的話,則過程前進(jìn)到步驟906,在步驟906中,向RFID讀取器602發(fā)送數(shù)字簽名子集{SIGi,a_1,SIGi,a_2,...,SIGi,a_k}。在本發(fā)明的第二實(shí)施例中,控制裝置705例如是按以下方式實(shí)現(xiàn)鎖定的為每個(gè)數(shù)字簽名SIGi,j設(shè)置一個(gè)相應(yīng)的標(biāo)記比特Fi,j,其初始值為0,在數(shù)字簽名SIGi,j初次被讀取時(shí),將其標(biāo)記比特Fi,j置位為1,當(dāng)?shù)趇組中相應(yīng)的標(biāo)記比特為1的數(shù)字簽名的數(shù)目達(dá)到k個(gè)后,第i組中相應(yīng)的標(biāo)記比特不為1的數(shù)字簽名就不能被讀取了。使數(shù)字簽名不能被讀取的方法例如是將其銷毀,例如清零。鎖定也可按另外的方式進(jìn)行,例如標(biāo)簽中不設(shè)顯式的標(biāo)記位,而是直接將所有不可被讀出的數(shù)字簽名數(shù)據(jù)銷毀,例如清零。全為零的數(shù)字簽名可以被標(biāo)簽判斷為無需發(fā)送給讀取器的數(shù)字簽名。也可以在被標(biāo)簽發(fā)送的情況下由讀取器判斷為被禁止讀取的數(shù)字簽名,其效果都是使其不能被讀取器所讀取。當(dāng)然,對于本領(lǐng)域的技術(shù)人員顯而易見的是,鎖定操作也可以通過其他方式在軟件、和硬件或其結(jié)合中實(shí)現(xiàn)。本發(fā)明不限于這里作為例子舉出的特定鎖定方式。注意RFID標(biāo)簽601也可能接收到請求讀取第i組中的其他數(shù)目個(gè)數(shù)字簽名的請求,例如請求讀取k’個(gè)數(shù)字簽名的請求,但不論k’是否等于k,RFID標(biāo)簽601都最多只會讓第i組的k個(gè)數(shù)字簽名被讀取。另外,RFID標(biāo)簽601也可能遇到被請求讀取第i>m組數(shù)字簽名集合的情況,在此情況下RFID標(biāo)簽601的控制裝置705會把該讀取請求判斷為錯誤的讀取請求,而不對其做任何響應(yīng)。
與圖9所示的RFID標(biāo)簽601操作流程對應(yīng),圖10示出圖6所示的RFID讀取器602向RFID標(biāo)簽601發(fā)送讀取請求,并根據(jù)從RFID標(biāo)簽601接收到的數(shù)據(jù)對RFID標(biāo)簽601的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖。這里假定RFID讀取器602已經(jīng)成功從RFID標(biāo)簽601中讀取到了標(biāo)識碼,例如EPC碼,從而確定了唯一標(biāo)識RFID標(biāo)簽601的某個(gè)屬性,因此確定了應(yīng)使用存儲器中存儲的哪個(gè)公鑰或哪些公鑰來驗(yàn)證讀取的數(shù)字簽名。在步驟1001中,RFID讀取器602的處理器801中的計(jì)數(shù)器(未示出)的值i被設(shè)為1。然后在步驟1002中,處理器801從索引集合{1,2,...,n}中隨機(jī)選擇索引子集{a_1,a_2,...,a_k}。接下來在步驟1003中,處理器801控制RFID讀取器602通過讀取器耦合元件803向RFID標(biāo)簽601發(fā)送讀取請求,該讀取請求中請求讀取第i組數(shù)字簽名集合的數(shù)字簽名子集{SIGi,a_1,SIGi,a_2,...,SIGi,a_k},并開始等待來自RFID標(biāo)簽601的答復(fù)數(shù)據(jù)。在步驟1004中,處理器801判斷是否多次超時(shí),如果多次超時(shí)的話,則在步驟1005中,過程前進(jìn)到步驟1015,認(rèn)證部分801-1判斷RFID標(biāo)簽601為破損標(biāo)簽。這里在判斷為破損標(biāo)簽前容許的超時(shí)次數(shù)可根據(jù)需要選擇。選擇方法是本領(lǐng)域的技術(shù)人員所公知的。如果在步驟1004中,在判斷為多次超時(shí)之前接收到來自RFID標(biāo)簽601發(fā)送來的數(shù)字簽名子集{SIGi,b_1,SIGi,b_2,...,SIGi,b_k}(步驟1006),則在步驟1007中,處理器801從存儲器804中取出對應(yīng)于制造商的公鑰。接下來在步驟1008中,利用制造商公鑰驗(yàn)證數(shù)字簽名子集{SIGi,b_1,SIGi,b_2,...,SIGi,b_k}。在步驟1009中,判斷數(shù)字簽名子集{SIGi,b_1,SIGi,b_2,...,SIGi,b_k}是否有效,如果無效的話,則認(rèn)證部分801-1判斷RFID標(biāo)簽601為偽造標(biāo)簽,從而判斷附著了RFID標(biāo)簽601的產(chǎn)品為偽造品(步驟1005)。如果有效的話,則在步驟1010中,判斷索引子集{b_1,b_2,...,b_k}是否等于在步驟1002中隨機(jī)選擇的索引子集{a_1,a_2,...,a_k}。如果等于的話,則認(rèn)證部分801-1判斷RFID標(biāo)簽601是真品標(biāo)簽(步驟1011),如果不等于的話,則在步驟1012中處理器801將計(jì)數(shù)器的值i遞增1,并在步驟1013中判斷i的值是否大于m。如果i>m,則認(rèn)證部分801-1判斷RFID標(biāo)簽601以前被讀過(步驟1014),否則返回步驟1002,以重復(fù)步驟1002及其以后的過程。通過以上所述的過程,RFID讀取器602可對RFID標(biāo)簽601的真?zhèn)涡宰龀稣J(rèn)證。
采用多組數(shù)字簽名集合的優(yōu)點(diǎn)是明顯的。有了m個(gè)組,就可以保證真正的產(chǎn)品能至少m次被讀取器認(rèn)證成真品。因?yàn)橛袝r(shí)候產(chǎn)品是作為禮物被購買的,并且在其被消耗之前可能經(jīng)過幾個(gè)人,所以采用多組數(shù)字簽名集合是有用的。在這種情況下,不僅購買者和最終消費(fèi)者,而且中間人也可能希望認(rèn)證產(chǎn)品。在RFID標(biāo)簽中存儲m組數(shù)字簽名集合后,至少m個(gè)人可以將產(chǎn)品認(rèn)證為真品。
作為以上第二實(shí)施例的一種替換方案,在認(rèn)證過程中,RFID讀取器602每次可以要求對RFID標(biāo)簽601中的多組數(shù)字簽名集合進(jìn)行讀取,并根據(jù)對這多組數(shù)字簽名集合讀取的結(jié)果來對標(biāo)簽的真?zhèn)巫鞒雠袛唷@?,RFID讀取器602可以要求讀取RFID標(biāo)簽601中的第1組數(shù)字簽名集合中的數(shù)字簽名子集{SIG1,a_1,SIG1,a_2,...,SIG1,a_k},隨后接收到標(biāo)簽返回來的數(shù)字簽名子集{SIG1,b_1,SIG1,b_2,...,SIG1,b_k},然后要求讀取RFID標(biāo)簽601中的第2組數(shù)字簽名集合中的數(shù)字簽名子集{SIG2,a_1,SIG2,a_2,...,SIG2,a_k},隨后接收到標(biāo)簽返回來的數(shù)字簽名子集{SIG2,b_1,SIG2,b_2,...,SIG2,b_k},以此類推,直到要求讀取RFID標(biāo)簽601中的第t組數(shù)字簽名集合中的數(shù)字簽名子集{SIGt,a_1,SIGt,a_2,...,SIGt,a_k},隨后接收到標(biāo)簽返回來的數(shù)字簽名子集{SIGt,b_1,SIGt,b_2,...,SIGt,b_k}。在接收到t組數(shù)字簽名子集之后,RFID讀取器602開始進(jìn)行判斷。如果這t組返回的數(shù)字簽名子集中有任何一個(gè)數(shù)字簽名無效,則說明RFID標(biāo)簽601已破損;如果數(shù)字簽名都有效,那么如果對于1≤i≤t中的任何一個(gè)i,索引子集{b_1,b_2,...,b_k}都等于索引子集{a_1,a_2,...,a_k},則說明標(biāo)簽是真品標(biāo)簽,否則,說明標(biāo)簽以前被讀過。
該替換方案的好處是檢測到偽造品的概率大大增加。仍以k=1為例來計(jì)算偽造品檢測概率。對于一個(gè)偽造標(biāo)簽,其所返回的t組的t個(gè)簽名完全匹配讀取器所要求讀取的t個(gè)簽名的概率為(1/n)t,因此該偽造的標(biāo)簽被檢測出來的概率是1-(1/n)t。仍以n=2為例,如果t=12,則一個(gè)偽造的標(biāo)簽被檢測到的概率將為99.97%。
當(dāng)然,檢測概率的增大是以標(biāo)簽?zāi)鼙徽J(rèn)證成真品的次數(shù)減少為代價(jià)的。例如如果一個(gè)標(biāo)簽里有m=24組數(shù)字簽名集合,每次認(rèn)證讀取器要求讀取一組數(shù)字簽名集合,標(biāo)簽?zāi)苤辽?4次被認(rèn)證成真品。如果每次認(rèn)證讀取器要讀取12組數(shù)字簽名集合,標(biāo)簽最少只能有2次被認(rèn)證成真品。
以下描述本發(fā)明的第三實(shí)施例。第三實(shí)施例與第一實(shí)施例的不同之處在于,當(dāng)RFID讀取器向RFID標(biāo)簽發(fā)送讀取請求時(shí),并非同時(shí)請求讀取多個(gè)數(shù)字簽名組成的數(shù)字簽名子集,而是一次請求讀取一個(gè)數(shù)字簽名。此實(shí)施例所實(shí)現(xiàn)的通過鎖定防止標(biāo)簽克隆的效果與第一實(shí)施例所實(shí)現(xiàn)的是等價(jià)的,并且還具有RFID標(biāo)簽的實(shí)現(xiàn)更為簡單的特征。以下參考圖11到圖15描述此實(shí)施例。
圖11示出根據(jù)第三實(shí)施例的RFID系統(tǒng)1100。與第一實(shí)施例中類似,該RFID系統(tǒng)1100包括RFID標(biāo)簽1101和RFID讀取器1102。
圖12是圖11的RFID標(biāo)簽1101的內(nèi)部結(jié)構(gòu)示意框圖。與第一實(shí)施例類似,RFID標(biāo)簽1101包括微芯片1201和標(biāo)簽耦合元件1202。微芯片1201中包括EPC碼存儲區(qū)域1203、輔助存儲區(qū)域1204和控制裝置1205。
圖13是圖11所示的RFID讀取器1102的內(nèi)部結(jié)構(gòu)示意框圖。與第一實(shí)施例類似,RFID讀取器1102包括處理器1301、射頻模塊1302、讀取器耦合元件1303和存儲器1304。處理器1301中還包括認(rèn)證部分1301-1。
圖14示出圖11所示的RFID標(biāo)簽1101在接收到來自RFID讀取器1102的對數(shù)字簽名SIGi的讀取請求時(shí)的操作流程圖。在此實(shí)施例中,如上所述,假定RFID標(biāo)簽1101中存儲了n(n>1)個(gè)數(shù)字簽名的集合{SIG1,SIG2,...,SIGn},并假定RFID讀取器1102在其存儲器1304中存儲了對應(yīng)于與RFID標(biāo)簽1101相關(guān)的產(chǎn)品的制造商的至少一個(gè)公鑰,在處理器1301的控制下向RFID標(biāo)簽1101發(fā)送讀取請求,并且在每次由認(rèn)證部分1301-1得出真?zhèn)涡越Y(jié)論之前要讀取k個(gè)簽名。在步驟1401中,RFID標(biāo)簽1101接收到來自RFID讀取器1102的讀取請求,即要求讀取SIGi。在步驟1402中,RFID標(biāo)簽1101的控制裝置1205確定已被鎖定的數(shù)字簽名數(shù)目x。然后在步驟1403中,控制裝置1205判斷x是否等于k。如果判斷結(jié)果為肯定的,即x=k,則在步驟1404中,RFID標(biāo)簽1101通過標(biāo)簽耦合元件1202向RFID讀取器1102發(fā)送標(biāo)記Tag_Is_Locked,表明標(biāo)簽已被鎖定。接下來在步驟1405中,RFID標(biāo)簽1101的控制裝置1205判斷SIGi是否被鎖定。如果是的話,則在步驟1406中,RFID標(biāo)簽1101通過標(biāo)簽耦合元件1202向RFID讀取器1102發(fā)送SIGi,此次過程結(jié)束,RFID標(biāo)簽1101返回等待狀態(tài),等待來自RFID讀取器1102的下一個(gè)讀取請求。如果在步驟1405中判斷SIGi未被鎖定,則不進(jìn)行任何操作,流程結(jié)束,RFID標(biāo)簽1101返回等待狀態(tài)。另一方面,如果在步驟1403中控制裝置1205的判斷結(jié)果為否定,即x不等于k,則在步驟1407中,控制裝置1205判斷x是否小于k。如果結(jié)果為否定,則不進(jìn)行任何操作,RFID標(biāo)簽1101返回等待狀態(tài)。如果結(jié)果為肯定,則在步驟1408中,RFID標(biāo)簽1101通過標(biāo)簽耦合元件1202向RFID讀取器1102發(fā)送標(biāo)記Tag_Not_Locked,表明標(biāo)簽尚未被鎖定。然后在步驟1409中,控制裝置1205鎖定SIGi。在第三實(shí)施例中,控制裝置1205例如是按以下方式實(shí)現(xiàn)鎖定的為每個(gè)數(shù)字簽名-SIGi設(shè)置一個(gè)相應(yīng)的標(biāo)記比特Fi,其初始值為0,在每個(gè)數(shù)字簽名初次被請求讀取時(shí),將其相應(yīng)的標(biāo)記比特置位為1,當(dāng)標(biāo)記比特為1的數(shù)字簽名的數(shù)目達(dá)到k時(shí),標(biāo)記比特不為1的數(shù)字簽名就不再能被讀取了。使數(shù)字簽名不能被讀取的方法例如是將其銷毀,例如清零。當(dāng)然,對于本領(lǐng)域的技術(shù)人員顯而易見的是,鎖定也可以通過其他方式在軟件、硬件或其結(jié)合中實(shí)現(xiàn)。本發(fā)明不限于這里作為例子舉出的特定鎖定方式。當(dāng)在步驟1409中鎖定SIGi之后,流程進(jìn)行到步驟1405,進(jìn)行以上提到的從步驟1405開始直到結(jié)束的流程。最后RFID標(biāo)簽1101返回等待狀態(tài),等待來自RFID讀取器1102的下一個(gè)讀取請求。注意RFID標(biāo)簽1101也可能接收到請求讀取其他數(shù)目個(gè)數(shù)字簽名的請求,例如請求讀取k’個(gè)數(shù)字簽名的請求,但不論k’是否等于k,RFID標(biāo)簽1101都最多只會讓k個(gè)數(shù)字簽名被讀取。
與圖14所示的RFID標(biāo)簽1101操作流程對應(yīng),圖15示出圖11所示的RFID讀取器1102向RFID標(biāo)簽1101發(fā)送讀取請求,并根據(jù)從RFID標(biāo)簽1101發(fā)送回來的數(shù)據(jù)對RFID標(biāo)簽1101的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖。這里假定RFID讀取器1102已經(jīng)成功從RFID標(biāo)簽1101中讀取到了標(biāo)識碼,例如EPC碼,從而確定了唯一標(biāo)識RFID標(biāo)簽1101的某個(gè)屬性,因此確定了應(yīng)使用存儲器中存儲的哪個(gè)公鑰或哪些公鑰來驗(yàn)證讀取的數(shù)字簽名。首先在步驟1501中,RFID讀取器1102的處理器1301隨機(jī)選擇k個(gè)索引組成的索引子集{a_1,a_2,...,a_k}。在步驟1502中,處理器1301將其中包含的計(jì)數(shù)器(未示出)的值i設(shè)為1,即令i=1,其中i的值指示索引子集下標(biāo)。然后在步驟1503中,處理器1301指示射頻模塊1302生成要求讀取第a_i個(gè)簽名SIGa_i的讀取請求,并通過讀取器耦合元件1303將該讀取請求發(fā)送到RFID標(biāo)簽1101。在步驟1504中,RFID讀取器1102接收到來自RFID標(biāo)簽1101的關(guān)于鎖定狀態(tài)的標(biāo)記。在步驟1505中,處理器1301判斷i是否等于1并且根據(jù)接收到的標(biāo)記判斷RFID標(biāo)簽1101是否被鎖定。如果i不等于1或者RFID標(biāo)簽1101未被鎖定的話,則在步驟1506中,處理器1301判斷是否接收到RFID標(biāo)簽1101發(fā)送來的SIGa_i,如果接收到的話,則在步驟1507中,處理器1301判斷SIGa_i是否有效。這里判斷有效與否的方式是處理器1301從存儲器1304中讀取預(yù)先已確定的與RFID標(biāo)簽1101相關(guān)的產(chǎn)品的制造商的一個(gè)或多個(gè)公鑰,利用該一個(gè)或多個(gè)公鑰來驗(yàn)證數(shù)字簽名。如果有效的話,則在步驟1508中,使i的值加1,然后在步驟1509中,處理器1301判斷i是否大于k。如果i>k,則前進(jìn)到步驟1510,處理器1301的認(rèn)證部分1301-1判定RFID標(biāo)簽1101是真品標(biāo)簽。如果在步驟1509中判斷結(jié)果是i不大于k,則返回步驟1503,流程循環(huán)。另一方面,如果在步驟1506或步驟1507中判斷結(jié)果為否定的,則在步驟1518中,處理器1301的認(rèn)證部分1301-1可判定RFID標(biāo)簽1101是偽造標(biāo)簽。另一方面,如果在步驟1505中,判斷結(jié)果為肯定的,即i=1且標(biāo)簽被鎖定,則在步驟1511中,處理器1301指示RFID讀取器1102通過讀取器耦合元件1303向RFID標(biāo)簽1101發(fā)送請求讀取第i個(gè)簽名SIGi的讀取請求。接下來在步驟1512中,判斷是否接收到RFID標(biāo)簽1101發(fā)送來的SIGi。如果接收到的話,則在步驟1513中,處理器1301判斷SIGi是否有效,判斷有效性的方式與上文提到的相同。如果無效的話,則流程前進(jìn)到步驟1518,認(rèn)證部分1301-1判定RFID標(biāo)簽1101為偽造標(biāo)簽。如果在步驟1513中判斷結(jié)果為SIGi有效的話,則在步驟1514中,處理器1301將i的值加1。另一方面,如果在步驟1512中未接收到SIGi的話,也前進(jìn)到步驟1514,處理器1301將i的值加1。然后在步驟1515中,處理器1301判斷i是否大于n。如果i不大于n,則返回步驟1511,在i值已加1的情況下,重復(fù)該步驟。如果i>n,則在步驟1516中,處理器1301判斷接收到的簽名數(shù)目是否等于k。如果是的話,則在步驟1517中,認(rèn)證部分1301-1判定RFID標(biāo)簽1101以前被讀過。如果否的話,則說明RFID標(biāo)簽1101是偽造標(biāo)簽,流程前進(jìn)到步驟1518。在步驟1510、步驟1518或步驟1517中,認(rèn)證部分1301-1對RFID標(biāo)簽1101的真?zhèn)涡宰龀雠袛嗪螅舜握J(rèn)證過程結(jié)束。
圖16示出根據(jù)第四實(shí)施例的RFID系統(tǒng)1600。與第二實(shí)施例中類似,該RFID系統(tǒng)1600包括RFID標(biāo)簽1601和RFID讀取器1602。
圖17是圖16的RFID標(biāo)簽1601的內(nèi)部結(jié)構(gòu)示意框圖。與第二實(shí)施例類似,RFID標(biāo)簽1601包括微芯片1701和標(biāo)簽耦合元件1702。微芯片1701中包括EPC碼存儲區(qū)域1703、輔助存儲區(qū)域1704和控制裝置1705。
圖18是圖16所示的RFID讀取器1602的內(nèi)部結(jié)構(gòu)示意框圖。與第二實(shí)施例類似,RFID讀取器1602包括處理器1801、射頻模塊1802、讀取器耦合元件1803和存儲器1804。處理器1801中還包括認(rèn)證部分1801-1。
圖19示出圖16所示的RFID標(biāo)簽1601在接收到來自RFID讀取器1602的對數(shù)字簽名SIGj,i的讀取請求時(shí)的操作流程圖。在此實(shí)施例中,如上所述,假定RFID標(biāo)簽1601中存儲了m組數(shù)字簽名集合,每組包含n個(gè)簽名,形成一個(gè)數(shù)字簽名矩陣{SIGj,i},1≤j≤m,1≤i≤n。在步驟1901中,RFID標(biāo)簽1601接收到來自RFID讀取器1602的讀取請求,即請求讀取SIGj,i。在步驟1902中,RFID標(biāo)簽1601的控制裝置1705判斷j是否小于m。如果判斷結(jié)果為否,則不執(zhí)行任何操作,RFID標(biāo)簽1601返回等待狀態(tài)。如果在步驟1902中判斷結(jié)果是肯定的,即j<m,則在步驟1903中,控制裝置1705確定第j組中已被鎖定的數(shù)字簽名數(shù)目x。然后在步驟1904中,控制裝置1705判斷x是否等于k。如果判斷結(jié)果為肯定的,即x=k,則在步驟1905中,RFID標(biāo)簽1601通過標(biāo)簽耦合元件1702向RFID讀取器1602發(fā)送標(biāo)記Group_Is_Locked,表明第j組已被鎖定。接下來在步驟1906中,RFID標(biāo)簽1601的控制裝置1705判斷SIGj,i是否被鎖定。如果是的話,則在步驟1907中,RFID標(biāo)簽1601通過標(biāo)簽耦合元件1702向RFID讀取器1602發(fā)送SIGj,i,此次流程結(jié)束,RFID標(biāo)簽1601返回等待狀態(tài),等待來自RFID讀取器1602的下一個(gè)讀取請求信號。如果在步驟1906中判斷SIGj,i未被鎖定,則不進(jìn)行任何操作,流程結(jié)束,RFID標(biāo)簽1601返回等待狀態(tài)。另一方面,如果在步驟1904中控制裝置1705的判斷結(jié)果為否定,即x不等于k,則在步驟1908中,控制裝置1705判斷x是否小于k。如果結(jié)果為否定,則不進(jìn)行任何操作,RFID標(biāo)簽1601返回等待狀態(tài)。如果結(jié)果為肯定,則在步驟1909中,RFID標(biāo)簽1601通過標(biāo)簽耦合元件1702向RFID讀取器1602發(fā)送標(biāo)記Group_Not_Locked,表明第j組尚未被鎖定。然后在步驟1910中,控制裝置1705鎖定SIGj,i。在本發(fā)明的一個(gè)實(shí)施例中,控制裝置1705例如是按以下方式實(shí)現(xiàn)鎖定的為每個(gè)數(shù)字簽名SIGj,i設(shè)置一個(gè)相應(yīng)的標(biāo)記比特Fj,i,其初始值為0,在每個(gè)數(shù)字簽名初次被請求讀取時(shí),將其相應(yīng)的標(biāo)記比特置位為1,當(dāng)某一組中標(biāo)記比特為1的數(shù)字簽名的數(shù)目達(dá)到k時(shí),該組中標(biāo)記比特不為1的數(shù)字簽名就不再能被讀取了。使數(shù)字簽名不能被讀取的方法例如是將其銷毀,例如清零。當(dāng)然,對于本領(lǐng)域的技術(shù)人員顯而易見的是,鎖定也可以通過其他方式在軟件、硬件或其結(jié)合中實(shí)現(xiàn)。本發(fā)明不限于這里作為例子舉出的特定鎖定方式。當(dāng)在步驟1910中鎖定SIGj,i之后,流程進(jìn)行到步驟1906,進(jìn)行以上提到的從步驟1906開始直到結(jié)束的流程。最后RFID標(biāo)簽1601返回等待狀態(tài),等待來自RFID讀取器1602的下一個(gè)讀取請求信號。注意RFID標(biāo)簽1601也可能接收到請求讀取第j組中的其他數(shù)目個(gè)數(shù)字簽名的請求,例如請求讀取k’個(gè)數(shù)字簽名的請求,但不論k’是否等于k,RFID標(biāo)簽1601都最多只會讓第j組的k個(gè)數(shù)字簽名被讀取。另外,RFID標(biāo)簽1601也可能遇到被請求讀取第j>m組數(shù)字簽名集合的情況,在此情況下RFID標(biāo)簽1601的控制裝置1705會把該讀取請求判斷為錯誤的讀取請求,而不對其做任何響應(yīng)。
與圖19所示的RFID標(biāo)簽1601操作流程對應(yīng),圖20示出圖6所示的RFID讀取器1602向RFID標(biāo)簽1601發(fā)送讀取請求,并根據(jù)返回的數(shù)據(jù)對RFID標(biāo)簽1601的真?zhèn)涡赃M(jìn)行認(rèn)證的操作流程圖。這里假定RFID讀取器1602已經(jīng)成功從RFID標(biāo)簽1601中讀取到了標(biāo)識碼,例如EPC碼,從而確定了唯一標(biāo)識RFID標(biāo)簽1601的某個(gè)屬性,因此確定了應(yīng)使用存儲器中存儲的哪個(gè)公鑰或哪些公鑰來驗(yàn)證讀取的數(shù)字簽名。在步驟2001中,RFID讀取器1602的處理器1801將其中包含的第一計(jì)數(shù)器(未示出)的值j設(shè)為1,即令j=1,其中j的值指示組下標(biāo)。接下來在步驟2002中,處理器1801隨機(jī)選擇k個(gè)索引組成的索引子集{a_1,a_2,...,a_k}。在步驟2003中,處理器1801將其中包含的第二計(jì)數(shù)器(未示出)的值i設(shè)為1,即令i=0,其中i的值指示索引子集下標(biāo)。然后在步驟2004中,處理器1801指示射頻模塊1802生成要求讀取第j組的第a_i個(gè)簽名SIGj,a_i的射頻信號,并通過讀取器耦合元件1803發(fā)送到RFID標(biāo)簽1601。在步驟2005中,RFID讀取器1602接收到來自RFID標(biāo)簽1601的關(guān)于第j組的鎖定狀態(tài)的標(biāo)記。在步驟2006中,處理器1801判斷i是否等于1并且根據(jù)接收到的標(biāo)記判斷RFID標(biāo)簽1601的第j組數(shù)字簽名是否被鎖定。如果i不等于1或者第j組未被鎖定的話,則在步驟2007中,處理器1801判斷是否接收到RFID標(biāo)簽1601發(fā)送來的SIGj,a_i,如果接收到的話,則在步驟2008中,處理器1801判斷SIGj,a_i是否有效。這里判斷有效與否的方式是處理器1801從存儲器1804中讀取預(yù)先已確定的與RFID標(biāo)簽1601相關(guān)的產(chǎn)品的制造商的一個(gè)或多個(gè)公鑰,利用該一個(gè)或多個(gè)公鑰來驗(yàn)證數(shù)字簽名。如果有效的話,則在步驟2009中,使第二計(jì)數(shù)器i的值加1,然后在步驟2010中,處理器1801判斷i是否大于k。如果i>k,則前進(jìn)到步驟2011,認(rèn)證部分1801-1判定RFID標(biāo)簽1601是真品標(biāo)簽。如果在步驟2010中判斷結(jié)果是i不大于k,則返回步驟2004,流程循環(huán)。另一方面,如果在步驟2007或步驟2008中判斷結(jié)果為否定的,則認(rèn)證部分1801-1可判定RFID標(biāo)簽1601是偽造標(biāo)簽(步驟2021)。另一方面,如果在步驟2006中,判斷結(jié)果為肯定的,即i=1且第j組被鎖定,則在步驟2012中,處理器1801指示RFID讀取器1602通過讀取器耦合元件1803向RFID標(biāo)簽1601發(fā)送希望讀取第j組的第i個(gè)簽名SIGj,i的讀取請求信號。接下來在步驟2013中,判斷是否接收到RFID標(biāo)簽1601發(fā)送來的SIGj,i。如果接收到的話,則在步驟2014中,處理器1801判斷SIGj,i是否有效,判斷有效性的方式與上文提到的相同。如果無效的話,則認(rèn)證部分1801-1判斷標(biāo)簽是偽造標(biāo)簽。如果在步驟2014中判斷結(jié)果為SIGj,i有效的話,則在步驟2015中,處理器1801將i的值加1。另一方面,如果在步驟2013中未接收到SIGj,i的話,也前進(jìn)到步驟2015,處理器1801將第二計(jì)數(shù)器i的值加1。然后在步驟2016中,處理器1801判斷i是否大于n。如果i不大于n,則返回步驟2012,在i值已加1的情況下,重復(fù)該步驟及其以后的步驟。如果i>n,則在步驟2017中,處理器1801判斷接收到的簽名數(shù)目是否等于k。如果否的話,則認(rèn)證部分1801-1判斷RFID標(biāo)簽1601是偽造標(biāo)簽(步驟2021)。如果是的話,即接收到的簽名的數(shù)目等于k的話,則在步驟2018中,處理器1801將第一計(jì)數(shù)器j的值加1,并且在步驟2019中,判斷j是否大于m。如果判斷j>m,則認(rèn)證部分1801-1判斷RFID標(biāo)簽1601以前被讀過(步驟2020)。如果否的話,則返回步驟2002,在j值已加1的情況下,重復(fù)步驟2002及其以后的步驟。在步驟2011、步驟2021或步驟2020中,認(rèn)證部分1801-1對RFID標(biāo)簽1601的真?zhèn)涡宰龀雠袛嗪?,此次認(rèn)證過程結(jié)束。
在以上實(shí)施例中,可驗(yàn)證數(shù)據(jù)是數(shù)字簽名。但是,對于本領(lǐng)域的技術(shù)人員顯而易見的是,對于其他形式的可驗(yàn)證數(shù)據(jù),通過采用本發(fā)明所提出的“鎖定”功能,也能達(dá)到既使真品標(biāo)簽通過認(rèn)證,又防止其被克隆的技術(shù)效果。本領(lǐng)域的技術(shù)人員在閱讀了本說明書以后,將會很容易用多種形式的可驗(yàn)證數(shù)據(jù)來實(shí)現(xiàn)本發(fā)明的方案。
以上描述了根據(jù)本發(fā)明的進(jìn)行產(chǎn)品認(rèn)證的RFID系統(tǒng)和利用RFID系統(tǒng)進(jìn)行產(chǎn)品認(rèn)證的實(shí)施例。正如已指出的,通過優(yōu)選的數(shù)字簽名方案,例如ECDSA和SHA-1,一個(gè)簽名占據(jù)RFID標(biāo)簽的輔助存儲區(qū)域的320比特。因此12個(gè)數(shù)字標(biāo)簽需要3840比特的輔助存儲區(qū)域存儲空間。如果能夠降低RFID標(biāo)簽的存儲器消耗,則RFID標(biāo)簽的成本也會相應(yīng)降低。大量產(chǎn)品需要大量RFID標(biāo)簽這一事實(shí)立即確證了將RFID標(biāo)簽的成本降低哪怕一分錢的重要性。
在本發(fā)明的第五實(shí)施例中,提供了一種方法,該方法可進(jìn)一步降低用于存儲數(shù)字簽名的RFID標(biāo)簽存儲器消耗。圖21是通過用改進(jìn)后的方法計(jì)算數(shù)字簽名而得到的RFID標(biāo)簽2100的內(nèi)部結(jié)構(gòu)圖,該RFID標(biāo)簽包括微芯片2101和標(biāo)簽耦合元件2102。微芯片2101中包括標(biāo)識碼存儲區(qū)域2103、輔助存儲區(qū)域2104和控制裝置2105。輔助存儲區(qū)域2104中存儲了包含n個(gè)數(shù)字簽名的數(shù)字簽名集合{SIG1,SIG2,....,SIGn},為簡明起見,圖中只示意性的示出2個(gè)數(shù)字簽名。數(shù)字簽名集合{SIG1,SIG2,....,SIGn}中的每個(gè)數(shù)字簽名SIGi采取(Si,C)的形式,包括Si部分和C部分,i=1,...,n,每個(gè)數(shù)字簽名是按如下方法計(jì)算和驗(yàn)證的選擇群(稍后將詳細(xì)描述)G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/ri-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gri,gri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gri)si*(gri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
或者選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/(r1*r2*...*ri)-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gr1*r2 *...*ri,gr1*r2*...*ri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gr1*r2*...*ri)si* (gr1*r2*...*ri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
在本發(fā)明的說明書及權(quán)利要求書中,除非另外指出,否則術(shù)語“群”是指如下定義的數(shù)學(xué)概念群(G,◇)是由集合G以及G上的二元操作◇構(gòu)成的,它滿足以下公理(1)群操作◇滿足結(jié)合律。即對于G的任何元素a、b、c,a◇(b◇c)=(a◇b)◇c;(2)存在G的單位元素e,使得對于G的任何元素a,a◇e=e◇a=a;以及(3)對于G的每個(gè)元素a,存在G的元素a-1,a-1被稱為a的逆,它使得a◇a-1=a-1◇a=e。
例如,帶加法操作的整數(shù)集Z形成群。其中單位元素是0,整數(shù)a的逆是整數(shù)-a。關(guān)于群的更多信息,請參考Handbook of AppliedCryptography,其可從http://www.cacr.math.uwaterloo.ca/hac/獲得。
注意有許多種安全雜散算法可選,例如MD5和SHA-1,并且在雜散中可包含額外的信息,還注意到用于計(jì)算Si其他方法也是可直接或間接獲得的,例如基于“Meta-ElGamal signature schemes,Proc.2ndACMConference on Computer and Communications security,pp.96~107,1994”中所公開的那樣。所有這些都是本領(lǐng)域的技術(shù)人員已知的。
本實(shí)施例的方法的優(yōu)點(diǎn)是明顯的。當(dāng)使用160比特橢圓曲線和SHA-1時(shí),由于相同的C被所有數(shù)字簽名共享,因此12個(gè)數(shù)字簽名只需要2080比特的RFID標(biāo)簽輔助存儲區(qū)域,而在應(yīng)用此方法之前需要3840比特。如果C的大小略減小到128比特—這并不損害安全水平—則2k比特的RFID標(biāo)簽輔助存儲區(qū)域正好足夠存儲12個(gè)數(shù)字簽名。
一般而言,存儲在RFID標(biāo)簽中的n>1個(gè)數(shù)字簽名可共享一個(gè)C。產(chǎn)品制造商需要n個(gè)公鑰。注意在優(yōu)選情況下,即x1=x2=...=xn=x的情況下,公鑰是按照申請人的另一個(gè)關(guān)于匿名公鑰的專利申請(中國專利申請200410090903.X)中所公開的原理來生成的。
不難驗(yàn)證,與先前不共享C的方法相比,RFID標(biāo)簽輔助存儲區(qū)域節(jié)省率為(n-1)/2n。例如,對于n=12,RFID標(biāo)簽輔助存儲區(qū)域消耗少了45.8%。
值得注意的是,當(dāng)利用多組數(shù)字簽名集合時(shí),所有的數(shù)字簽名可共享一個(gè)C,不論它們是否在相同的組中。這種分組實(shí)際上是邏輯上的劃分,而不是物理上的。
由以上描述可以看出,根據(jù)本發(fā)明的實(shí)施例,向RFID標(biāo)簽中引入了“鎖定”功能。從而通過存儲在RFID標(biāo)簽中的多個(gè)數(shù)字簽名以及由RFID標(biāo)簽所執(zhí)行的“鎖定”功能,禁止了對廉價(jià)的RFID標(biāo)簽中的數(shù)據(jù)的克隆,并且阻撓了大規(guī)模的偽造。
此外,多個(gè)數(shù)字簽名被分組并存儲在RFID標(biāo)簽中。通過使數(shù)字簽名分組,保持了真品標(biāo)簽?zāi)軌蛑辽賛次被確認(rèn)為真實(shí),其中m是數(shù)字簽名的組數(shù)。
此外,利用了共享C部分的公鑰和數(shù)字簽名生成方法,從而大大降低了多個(gè)數(shù)字簽名對RFID標(biāo)簽的存儲空間的消耗。
盡管本發(fā)明是參照其特定的優(yōu)選實(shí)施例來描述的,但本領(lǐng)域的技術(shù)人員應(yīng)該理解,在不脫離由所附權(quán)利要求限定的本發(fā)明的精神和范圍的情況下,可以對其進(jìn)行形式和細(xì)節(jié)的各種修改。
權(quán)利要求
1.一種射頻識別系統(tǒng),包括射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器,其向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
2.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述控制裝置在執(zhí)行所述鎖定操作之前,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被所述射頻識別讀取器讀取。
3.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述控制裝置在執(zhí)行所述鎖定操作之后,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被所述射頻識別讀取器讀取。
4.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述標(biāo)識碼唯一標(biāo)識所述射頻識別標(biāo)簽。
5.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述射頻識別標(biāo)簽被附著到待認(rèn)證的產(chǎn)品上,并且所述標(biāo)識碼包括EPC碼。
6.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)是通過對所述標(biāo)識碼加密獲得的。
7.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)是通過對所述標(biāo)識碼和其他信息加密獲得的。
8.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述可驗(yàn)證數(shù)據(jù)集的第一部分是從所述可驗(yàn)證數(shù)據(jù)集中隨機(jī)選出的。
9.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述可驗(yàn)證數(shù)據(jù)集的第二部分不包括所述可驗(yàn)證數(shù)據(jù)集的第一部分中的數(shù)據(jù)。
10.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述射頻識別讀取器還包括認(rèn)證裝置,用于根據(jù)從所述射頻識別標(biāo)簽讀取到的所述可驗(yàn)證數(shù)據(jù)集的一部分來認(rèn)證所述射頻識別標(biāo)簽。
11.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述可驗(yàn)證數(shù)據(jù)集包括n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn,所述可驗(yàn)證數(shù)據(jù)集的第一部分是所述n個(gè)數(shù)字簽名中的k個(gè),并且所述可驗(yàn)證數(shù)據(jù)集的第二部分是所述n個(gè)數(shù)字簽名中的q個(gè)。
12.如權(quán)利要求11所述的射頻識別系統(tǒng),其中如果n是偶數(shù),則k=n*0.5;如果n是奇數(shù),則k=n*0.5+0.5或k=n*0.5-0.5。
13.如權(quán)利要求11所述的射頻識別系統(tǒng),其中所述n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn中的每個(gè)數(shù)字簽名SIGi采取(Si,C)的形式,包括Si部分和C部分,i=1,...,n,并且所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的所有數(shù)字簽名共享一個(gè)公共的C部分。
14.如權(quán)利要求13所述的射頻識別系統(tǒng),其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名是按如下方法來計(jì)算和驗(yàn)證的選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=(r*(r1*r2*...*rn)/ri-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gri,gri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gri)si*(gri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
15.如權(quán)利要求13所述的射頻識別系統(tǒng),其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名是按如下方法來計(jì)算和驗(yàn)證的選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/(r1*r2*...*ri)-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gr1*r2*...*ri,gr1*r2r...*ri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gr1*r2*...*ri)si*(gr1*r2*...*ri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
16.如權(quán)利要求1所述的射頻識別系統(tǒng),其中所述射頻識別標(biāo)簽中還存儲了另外m個(gè)可驗(yàn)證數(shù)據(jù)集;所述射頻識別讀取器還向所述射頻識別標(biāo)簽發(fā)送另外至少一個(gè)讀取請求,分別請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的至少一個(gè)可驗(yàn)證數(shù)據(jù)集中的一部分?jǐn)?shù)據(jù);并且所述控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的所述另外至少一個(gè)讀取請求時(shí),在被請求的可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述被請求的可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述被請求的可驗(yàn)證數(shù)據(jù)集中的另一部分?jǐn)?shù)據(jù)無法被讀取。
17.一種射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
18.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述控制裝置在執(zhí)行所述鎖定操作之前,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被讀取。
19.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述控制裝置在執(zhí)行所述鎖定操作之后,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被讀取。
20.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述標(biāo)識碼唯一標(biāo)識所述射頻識別標(biāo)簽。
21.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述射頻識別標(biāo)簽被附著到待認(rèn)證的產(chǎn)品上,并且所述標(biāo)識碼包括EPC碼。
22.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)是通過對所述標(biāo)識碼加密獲得的。
23.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)是通過對所述標(biāo)識碼和其他信息加密獲得的。
24.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述可驗(yàn)證數(shù)據(jù)集的第二部分不包括所述可驗(yàn)證數(shù)據(jù)集的第一部分中的數(shù)據(jù)。
25.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述可驗(yàn)證數(shù)據(jù)集包括n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn,所述可驗(yàn)證數(shù)據(jù)集的第一部分是所述n個(gè)數(shù)字簽名中的k個(gè),并且所述可驗(yàn)證數(shù)據(jù)集的第二部分是所述n個(gè)數(shù)字簽名中的q個(gè)。
26.如權(quán)利要求25所述的射頻識別標(biāo)簽,其中如果n是偶數(shù),則k=n*0.5;如果n是奇數(shù),則k=n*0.5+0.5或k=n*0.5-0.5。
27.如權(quán)利要求25所述的射頻識別標(biāo)簽,其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名SIGi采取(Si,C)的形式,包括Si部分和C部分,i=1,...,n,并且所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的所有數(shù)字簽名共享一個(gè)公共的C部分。
28.如權(quán)利要求27所述的射頻識別標(biāo)簽,其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名SIGi是按如下方法來計(jì)算和驗(yàn)證的選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/ri-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gri,gri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gri)si*(gri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
29.如權(quán)利要求27所述的射頻識別標(biāo)簽,其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名SIGi是按如下方法來計(jì)算和驗(yàn)證的如權(quán)利要求25所述的射頻識別標(biāo)簽選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/(r1*r2*...*ri)-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gr1*r2*...*ri,gr1*r2*...*ri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gr1*r2*...*ri)si*(gr1*r2*...*ri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
30.如權(quán)利要求17所述的射頻識別標(biāo)簽,其中所述射頻識別標(biāo)簽中還存儲了另外m個(gè)可驗(yàn)證數(shù)據(jù)集,;所述控制裝置在所述射頻識別標(biāo)簽接收到另外至少一個(gè)請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的至少一個(gè)可驗(yàn)證數(shù)據(jù)集中的一部分?jǐn)?shù)據(jù)的讀取請求時(shí),在被請求的可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述被請求的可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述被請求的可驗(yàn)證數(shù)據(jù)集中的另一部分?jǐn)?shù)據(jù)無法被讀取。
31.一種射頻識別方法,包括在射頻識別標(biāo)簽上存儲標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分,其中所述射頻識別標(biāo)簽在接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
32.如權(quán)利要求31所述的射頻識別方法,還包括在執(zhí)行所述鎖定操作之前,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被所述射頻識別讀取器讀取。
33.如權(quán)利要求31所述的射頻識別方法,還包括在執(zhí)行所述鎖定操作之后,使所述可驗(yàn)證數(shù)據(jù)集的第一部分被所述射頻識別讀取器讀取。
34.如權(quán)利要求31所述的射頻識別方法,其中所述標(biāo)識碼唯一標(biāo)識所述射頻識別標(biāo)簽。
35.如權(quán)利要求31所述的射頻識別方法,其中所述射頻識別標(biāo)簽被附著到待認(rèn)證的產(chǎn)品上,并且所述標(biāo)識碼包括EPC碼。
36.如權(quán)利要求31所述的射頻識別方法,還包括對所述標(biāo)識碼加密以獲得所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)。
37.如權(quán)利要求31所述的射頻識別方法,還包括對所述標(biāo)識碼和其他信息加密以獲得所述可驗(yàn)證數(shù)據(jù)集中的數(shù)據(jù)。
38.如權(quán)利要求31所述的射頻識別方法,還包括從所述可驗(yàn)證數(shù)據(jù)集中隨機(jī)選取所述第一部分。
39.如權(quán)利要求31所述的射頻識別方法,其中所述可驗(yàn)證數(shù)據(jù)集的第二部分不包括所述可驗(yàn)證數(shù)據(jù)集的第一部分中的數(shù)據(jù)。
40.如權(quán)利要求31所述的射頻識別方法,還包括所述射頻識別讀取器根據(jù)從所述射頻識別標(biāo)簽讀取到的所述可驗(yàn)證數(shù)據(jù)的一部分來認(rèn)證所述射頻識別標(biāo)簽。
41.如權(quán)利要求31所述的射頻識別方法,其中所述可驗(yàn)證數(shù)據(jù)集包括n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn,所述可驗(yàn)證數(shù)據(jù)集的第一部分是所述n個(gè)數(shù)字簽名中的k個(gè),并且所述可驗(yàn)證數(shù)據(jù)集的第二部分是所述n個(gè)數(shù)字簽名中的q個(gè)。
42.如權(quán)利要求41所述的射頻識別方法,其中如果n是偶數(shù),則k=n*0.5;如果n是奇數(shù),則k=n*0.5+0.5或k=n*0.5-0.5。
43.如權(quán)利要求41所述的射頻識別方法,其中所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名SIGi采取(Si,C)的形式,包括Si部分和C部分,i=1,...,n,并且所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的所有數(shù)字簽名共享一個(gè)公共的C部分。
44.如權(quán)利要求43所述的射頻識別方法,還包括用以下步驟計(jì)算和驗(yàn)證所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/ri-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gri,gri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gri)si*(gri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
45.如權(quán)利要求43所述的射頻識別方法,還包括用以下步驟計(jì)算和驗(yàn)證所述n個(gè)數(shù)字簽名SIG1,SIG2,....,SIGn中的每個(gè)數(shù)字簽名選擇群G,其階數(shù)為v;選擇所述群G的一個(gè)子群,其階數(shù)是u,并且u≤v;基于所述階數(shù)u選擇n個(gè)私鑰x1,x2,....,xn,其中1<|xi|<u,i=1,...,n;選擇群G的元素g作為生成子;選擇所述階數(shù)u內(nèi)的n個(gè)整數(shù)r1,r2,...,rn作為指示符,其中0<|ri|<u,i=1,...,n;選擇所述階數(shù)u內(nèi)的整數(shù)r,0<|r|<u,并計(jì)算C=H(M,gr*r1*r2*...*rn),其中H是安全雜散函數(shù),M代表所述標(biāo)識碼和其他信息;計(jì)算Si=r*(r1*r2*...*rn)/(r1*r2*...*ri)-C*xi;將(S1,C),(S2,C),...,(Sn,C)作為相同消息M上的n個(gè)數(shù)字簽名SIG1,SIG2,...,SIGn發(fā)布;基于所述私鑰、生成子和指示符計(jì)算公鑰yi=(gr1*r2*...ri,gr1*r2...*ri*xi);并且基于公鑰yi,通過計(jì)算C’=H(M,(gr1*r2*...*ri)si*(gr1*r2*...*ri*xi)C)來驗(yàn)證簽名SIGi=(Si,C)是否是所述消息M上的有效簽名,如果C’=C則SIGi是所述消息M上的有效簽名,否則SIGi是無效的。
46.如權(quán)利要求31所述的射頻識別方法,還包括在射頻識別標(biāo)簽中存儲另外m個(gè)可驗(yàn)證數(shù)據(jù)集;所述射頻識別讀取器還向所述射頻識別標(biāo)簽發(fā)送另外至少一個(gè)讀取請求,分別請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中至少一個(gè)可驗(yàn)證數(shù)據(jù)集中的一部分?jǐn)?shù)據(jù);以及所述射頻識別標(biāo)簽在接收到來自所述射頻識別讀取器的所述另外至少一個(gè)讀取請求時(shí),在被請求的可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過所述鎖定操作的情況下,對所述被請求的可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述被請求的可驗(yàn)證數(shù)據(jù)集中的另一部分?jǐn)?shù)據(jù)無法被讀取。
47.一種射頻識別系統(tǒng),包括射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器,其向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù),其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
48.如權(quán)利要求47所述的射頻識別系統(tǒng),其中所述控制裝置在執(zhí)行所述鎖定操作之前,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被所述射頻識別讀取器讀取。
49.如權(quán)利要求47所述的射頻識別系統(tǒng),其中所述控制裝置在執(zhí)行所述鎖定操作之后,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被所述射頻識別讀取器讀取。
50.一種射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù)的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
51.如權(quán)利要求50所述的射頻識別標(biāo)簽,其中所述控制裝置在執(zhí)行所述鎖定操作之前,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被讀取
52.如權(quán)利要求50所述的射頻識別標(biāo)簽,其中所述控制裝置在執(zhí)行所述鎖定操作之后,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被讀取。
53.一種射頻識別方法,包括在射頻識別標(biāo)簽上存儲標(biāo)識碼以及m個(gè)可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述m個(gè)可驗(yàn)證數(shù)據(jù)集中的t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的一部分?jǐn)?shù)據(jù),其中所述射頻識別標(biāo)簽在接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述t個(gè)可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述t個(gè)可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的另一部分?jǐn)?shù)據(jù)無法被讀取。
54.如權(quán)利要求53所述的射頻識別方法,還包括在執(zhí)行所述鎖定操作之前,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被所述射頻識別讀取器讀取。
55.如權(quán)利要求53所述的射頻識別方法,還包括在執(zhí)行所述鎖定操作之后,使所述t個(gè)可驗(yàn)證數(shù)據(jù)集中的每個(gè)可驗(yàn)證數(shù)據(jù)集的被請求的部分被所述射頻識別讀取器讀取。
全文摘要
本發(fā)明公開了一種射頻識別系統(tǒng),包括射頻識別標(biāo)簽,其上存儲了標(biāo)識碼以及可驗(yàn)證數(shù)據(jù)集;以及射頻識別讀取器,其向所述射頻識別標(biāo)簽發(fā)送讀取請求,請求讀取所述可驗(yàn)證數(shù)據(jù)集中的第一部分,其中所述射頻識別標(biāo)簽還包括控制裝置,該控制裝置在所述射頻識別標(biāo)簽接收到來自所述射頻識別讀取器的讀取請求時(shí),在所述可驗(yàn)證數(shù)據(jù)集未被執(zhí)行過鎖定操作的情況下,對所述可驗(yàn)證數(shù)據(jù)集執(zhí)行所述鎖定操作,使得從此以后所述可驗(yàn)證數(shù)據(jù)集的第二部分中的任何數(shù)據(jù)都無法被讀取。
文檔編號G06K19/073GK1955984SQ20061012756
公開日2007年5月2日 申請日期2006年9月12日 優(yōu)先權(quán)日2005年9月13日
發(fā)明者曾柯, 藤田友之, 薛敏宇 申請人:日電(中國)有限公司