本發(fā)明涉及NFC應(yīng)用技術(shù)領(lǐng)域,尤其涉及的是一種利用NFC查偽溯源的方法及系統(tǒng)。
背景技術(shù):
現(xiàn)有對(duì)物品查偽或溯源的方法大多是通過(guò)二維碼,將物品的信息保存在二維碼中,通過(guò)掃描二維碼獲取對(duì)應(yīng)商品的信息,但其過(guò)程較為復(fù)雜,需要單獨(dú)的二維碼。目前移動(dòng)終端通常設(shè)有NFC功能,NFC是Near Field Communication縮寫,即近距離無(wú)線通訊技術(shù)。NFC移動(dòng)終端是指帶有NFC模塊的移動(dòng)終端,帶有NFC模塊的移動(dòng)終端可以做很多相應(yīng)的應(yīng)用,但現(xiàn)有NFC功能過(guò)于單一,無(wú)法充分發(fā)揮NFC的價(jià)值。
因而現(xiàn)有技術(shù)還有待改進(jìn)和提高。
技術(shù)實(shí)現(xiàn)要素:
鑒于現(xiàn)有技術(shù)的不足,本發(fā)明目的在于提供一種利用查偽溯源的方法及系統(tǒng),以解決現(xiàn)有技術(shù)中通過(guò)二維碼查偽溯源較復(fù)雜的技術(shù)問(wèn)題。
本發(fā)明的技術(shù)方案如下:
一種利用NFC查偽溯源的方法,其中,包括:
A、移動(dòng)終端讀取NFC標(biāo)簽的公鑰,根據(jù)所述公鑰在區(qū)塊鏈中獲取對(duì)應(yīng)的物品基本信息;
B、移動(dòng)終端判斷NFC標(biāo)簽的有效性,且在NFC標(biāo)簽有效時(shí)從區(qū)塊鏈中獲取對(duì)應(yīng)的物品源頭信息。
所述利用NFC查偽溯源的方法,其中,所述步驟A具體包括:
A1、具有NFC功能的移動(dòng)終端讀取NFC標(biāo)簽中的公鑰;
A2、根據(jù)獲取的公鑰在區(qū)塊鏈中查找對(duì)應(yīng)的物品基本信息;
A3、當(dāng)在區(qū)塊鏈中查找到所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則將對(duì)應(yīng)的物品基本信息發(fā)送給移動(dòng)終端;當(dāng)在區(qū)塊鏈中不存在所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則結(jié)束。
所述利用NFC查偽溯源的方法,其中,所述步驟B具體包括:
B1、當(dāng)移動(dòng)終端接收到物品基本信息時(shí),產(chǎn)生第一隨機(jī)數(shù)保存在移動(dòng)終端并發(fā)送給NFC標(biāo)簽;
B2、NFC標(biāo)簽對(duì)第一隨機(jī)數(shù)加密后反饋給移動(dòng)終端解密,獲得第二隨機(jī)數(shù);
B3、判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同,并根據(jù)判斷結(jié)果反饋對(duì)應(yīng)的物品源頭信息給移動(dòng)終端。
所述利用NFC查偽溯源的方法,其中,所述步驟B2具體包括:
B21、NFC標(biāo)簽根據(jù)其私鑰對(duì)第一隨機(jī)數(shù)加密生成密鑰并發(fā)送給移動(dòng)終端;
B22、移動(dòng)終端根據(jù)讀取的公鑰對(duì)所述密鑰解密獲得第二隨機(jī)數(shù)。
所述利用NFC查偽溯源的方法,其中,所述步驟B3具體包括:
B31、判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同;
B32、當(dāng)相同時(shí),則將公鑰發(fā)送給區(qū)塊鏈,區(qū)塊鏈將與所述公鑰對(duì)應(yīng)的物品源頭信息發(fā)送給移動(dòng)終端;
B33、當(dāng)不同時(shí),則結(jié)束。
一種利用NFC查偽溯源的系統(tǒng),其中,包括:
基本信息獲取模塊,用于移動(dòng)終端讀取NFC標(biāo)簽的公鑰,根據(jù)所述公鑰在區(qū)塊鏈中獲取對(duì)應(yīng)的物品基本信息;
查偽溯源模塊,用于移動(dòng)終端判斷NFC標(biāo)簽的有效性,且在NFC標(biāo)簽有效時(shí)從區(qū)塊鏈中獲取對(duì)應(yīng)的物品源頭信息。
所述利用NFC查偽溯源的系統(tǒng),其中,所述基本信息獲取模塊具體包括:
公鑰獲取單元,用于具有NFC功能的移動(dòng)終端讀取NFC標(biāo)簽中的公鑰;
信息查找單元,用于根據(jù)獲取的公鑰在區(qū)塊鏈中查找對(duì)應(yīng)的物品基本信息;
信息反饋單元,用于當(dāng)在區(qū)塊鏈中查找到所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則將對(duì)應(yīng)的物品基本信息發(fā)送給移動(dòng)終端;當(dāng)在區(qū)塊鏈中不存在所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則結(jié)束。
所述利用NFC查偽溯源的系統(tǒng),其中,所述查偽溯源模塊具體包括:
第一隨機(jī)數(shù)單元,用于當(dāng)移動(dòng)終端接收到物品基本信息時(shí),產(chǎn)生第一隨機(jī)數(shù)保存在移動(dòng)終端并發(fā)送給NFC標(biāo)簽;
第二隨機(jī)數(shù)單元,用于NFC標(biāo)簽對(duì)第一隨機(jī)數(shù)加密后反饋給移動(dòng)終端解密,獲得第二隨機(jī)數(shù);
判斷單元,用于判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同,并根據(jù)判斷結(jié)果反饋對(duì)應(yīng)的物品源頭信息給移動(dòng)終端。
所述利用NFC查偽溯源的系統(tǒng),其中,所述第二隨機(jī)數(shù)單元具體包括:
加密單元,用于NFC標(biāo)簽根據(jù)其私鑰對(duì)第一隨機(jī)數(shù)加密生成密鑰并發(fā)送給移動(dòng)終端;
解密單元,用于移動(dòng)終端根據(jù)讀取的公鑰對(duì)所述密鑰解密獲得第二隨機(jī)數(shù)。
所述利用NFC查偽溯源的系統(tǒng),其中,所述判斷單元具體包括:
比對(duì)單元,用于判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同;
第一反饋單元,用于當(dāng)相同時(shí),則將公鑰發(fā)送給區(qū)塊鏈,區(qū)塊鏈將與所述公鑰對(duì)應(yīng)的物品源頭信息發(fā)送給移動(dòng)終端;
第二反饋單元,用于當(dāng)不同時(shí),則結(jié)束。
有益效果:本發(fā)明提出了一種利用NFC查偽溯源的方法及系統(tǒng),隨機(jī)數(shù)通過(guò)私鑰加密并通過(guò)公鑰解密,根據(jù)加密前與解密后隨機(jī)數(shù)的比較來(lái)確定該NFC標(biāo)簽物品是否為假冒偽劣商品,能夠進(jìn)行物品真?zhèn)蔚膮^(qū)分;當(dāng)確認(rèn)NFC標(biāo)簽為真時(shí),將物品源頭信息發(fā)送給移動(dòng)終端,這樣可以方便的查到商品的不宜全部公開的信息,且能保證物品信息的安全性;且NFC讀取數(shù)據(jù)時(shí),只需移動(dòng)終端靠近NFC標(biāo)簽即可,減少了設(shè)備關(guān)聯(lián)所需的步驟,并最大限度地減少了用戶交互操作。
附圖說(shuō)明
圖1為本發(fā)明提供的利用NFC查偽溯源的方法的流程圖。
圖2為本發(fā)明提供的利用NFC查偽溯源的系統(tǒng)的結(jié)構(gòu)框圖。
具體實(shí)施方式
本發(fā)明提供了一種利用NFC查偽溯源的方法及系統(tǒng),為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明通過(guò)私鑰加密、公鑰解密的方式,查看加密前的隨機(jī)數(shù)和解密后的隨機(jī)數(shù)是否相同,進(jìn)行NFC標(biāo)簽真?zhèn)蔚谋鎰e;當(dāng)為真的NFC標(biāo)簽后,進(jìn)行物品的溯源,將該物品源頭信息發(fā)送給移動(dòng)終端,使得用戶獲取物品源頭信息。如圖1所示,為本發(fā)明的一種利用NFC查偽溯源的方法的流程圖,包括:
S1、移動(dòng)終端讀取NFC標(biāo)簽的公鑰,根據(jù)所述公鑰在區(qū)塊鏈中獲取對(duì)應(yīng)的物品基本信息;
S2、移動(dòng)終端判斷NFC標(biāo)簽的有效性,且在NFC標(biāo)簽有效時(shí)從區(qū)塊鏈中獲取對(duì)應(yīng)的物品源頭信息。
本實(shí)施例中移動(dòng)終端讀取NFC標(biāo)簽的公鑰后才進(jìn)行后續(xù)的步驟,因此在步驟S1之前還包括S0:設(shè)置一個(gè)區(qū)塊鏈。所述區(qū)塊鏈為一數(shù)據(jù)節(jié)點(diǎn),可為任一計(jì)算機(jī),其內(nèi)部存儲(chǔ)有公鑰及其對(duì)應(yīng)的物品信息。物品信息包括物品基本信息和物品源頭信息。物品基本信息包括物品名稱、生產(chǎn)廠家、型號(hào)及生產(chǎn)日期;物品源頭信息包括物品的生產(chǎn)過(guò)程、供應(yīng)商等不宜全部公開的信息。
NFC(Near Field Communication)是一種短距高頻的無(wú)線電技術(shù),在單一芯片上結(jié)合感應(yīng)式讀卡器、感應(yīng)式卡片和點(diǎn)對(duì)點(diǎn)的功能,能在短距離內(nèi)與兼容設(shè)備進(jìn)行識(shí)別和數(shù)據(jù)交換,則所述步驟S1具體包括:
步驟11、具有NFC功能的移動(dòng)終端讀取NFC標(biāo)簽中的公鑰。
將具有NFC功能的移動(dòng)終端靠近NFC標(biāo)簽,移動(dòng)終端讀取NFC標(biāo)簽中的公鑰。NFC標(biāo)簽中包括一對(duì)公鑰和私鑰,一對(duì)公鑰與私鑰對(duì)應(yīng)一種物品信息。所述物品信息包括物品基本信息和物品源頭信息。公鑰私鑰是非對(duì)稱加密算法,私鑰負(fù)責(zé)加密,公鑰負(fù)責(zé)解密。
步驟12、根據(jù)獲取的公鑰在區(qū)塊鏈中查找對(duì)應(yīng)的物品基本信息。
公鑰與物品信息是一一對(duì)應(yīng)的存儲(chǔ)在區(qū)塊鏈中,通過(guò)讀取的公鑰可查找到對(duì)應(yīng)的物品基本信息。
步驟13、當(dāng)在區(qū)塊鏈中查找到所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則將對(duì)應(yīng)的物品基本信息發(fā)送給移動(dòng)終端;當(dāng)在區(qū)塊鏈中不存在所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則結(jié)束。
區(qū)塊鏈中只存儲(chǔ)了為防偽標(biāo)簽的物品信息及其對(duì)應(yīng)的公鑰。如果物品為假冒偽劣商品,則區(qū)塊鏈中沒有對(duì)應(yīng)公鑰的物品信息,通過(guò)NFC標(biāo)簽讀取的公鑰在區(qū)塊鏈中不能查找到對(duì)應(yīng)的物品信息。如果讀取的公鑰能查找到物品基本信息,則需要將物品信息發(fā)送給移動(dòng)終端進(jìn)行進(jìn)一步的查偽。提供兩步查偽的過(guò)程,使得查偽過(guò)程更加可靠,避免假的NFC標(biāo)簽中包含有真的公鑰時(shí),不能很好的進(jìn)行辨認(rèn)出來(lái)而將物品信息進(jìn)行公開。如果查找不到對(duì)應(yīng)的物品信息,則可以判定給NFC標(biāo)簽為假,直接結(jié)束查偽溯源過(guò)程。
在對(duì)NFC標(biāo)簽進(jìn)行進(jìn)一步查偽時(shí),需要將第一隨機(jī)數(shù)與第二隨機(jī)數(shù)進(jìn)行比較判斷,步驟S2即是對(duì)第一隨機(jī)數(shù)和第二隨機(jī)數(shù)的產(chǎn)生,及兩者間的比較進(jìn)行詳細(xì)描述,所述步驟S2具體包括:
步驟21、當(dāng)移動(dòng)終端接收到物品基本信息時(shí),產(chǎn)生第一隨機(jī)數(shù)保存在移動(dòng)終端并發(fā)送給NFC標(biāo)簽。
當(dāng)移動(dòng)終端接收到物品基本信息時(shí),實(shí)際是一個(gè)觸發(fā)移動(dòng)終端產(chǎn)生隨機(jī)數(shù)的信號(hào)。當(dāng)產(chǎn)生第一隨機(jī)數(shù)信號(hào)后,首先應(yīng)將該第一隨機(jī)數(shù)進(jìn)行保存,該保存的第一隨機(jī)數(shù)與解密后產(chǎn)生的第二隨機(jī)數(shù)進(jìn)行比較。第一隨機(jī)數(shù)還將發(fā)送給NFC標(biāo)簽,該發(fā)送的第一隨機(jī)數(shù)是進(jìn)行查偽的初始值。隨機(jī)數(shù)的產(chǎn)生是完全隨機(jī)的,可以通過(guò)一些算法實(shí)現(xiàn)隨機(jī)數(shù)的產(chǎn)生,例如,橢圓曲線加密算法、RSA算法等。
步驟22、NFC標(biāo)簽對(duì)第一隨機(jī)數(shù)加密后反饋給移動(dòng)終端解密,獲得第二隨機(jī)數(shù)。
第一隨機(jī)數(shù)發(fā)送給NFC標(biāo)簽后,NFC標(biāo)簽根據(jù)其私鑰對(duì)第一隨機(jī)數(shù)加密生成密鑰并發(fā)送給移動(dòng)終端;移動(dòng)終端根據(jù)讀取的公鑰對(duì)所述密鑰解密獲得第二隨機(jī)數(shù)。
步驟23、判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同,并根據(jù)判斷結(jié)果反饋對(duì)應(yīng)的物品源頭信息給移動(dòng)終端。
在第一隨機(jī)數(shù)的基礎(chǔ)上產(chǎn)生的第二隨機(jī)數(shù),必須要與第一隨機(jī)數(shù)進(jìn)行比較才能進(jìn)行真?zhèn)蔚呐袛?,進(jìn)行判斷的步驟23具體包括:
步驟231、判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同;
如上所述,產(chǎn)生的第一隨機(jī)數(shù)和第二隨機(jī)數(shù)都是數(shù)值,在比較時(shí),可以通過(guò)減法或者除法,或者其他可以比較數(shù)值間是否相同的方法。當(dāng)采用減法進(jìn)行比較時(shí),隨機(jī)數(shù)差值=第二隨機(jī)數(shù)-第一隨機(jī)數(shù)。當(dāng)隨機(jī)數(shù)差值等于零時(shí),兩者相同;當(dāng)隨機(jī)數(shù)差值不等于零時(shí),兩者不相同。當(dāng)采用除法進(jìn)行比較時(shí),隨機(jī)數(shù)比值=第二隨機(jī)數(shù)/第一隨機(jī)數(shù)。當(dāng)隨機(jī)數(shù)比值等于1時(shí),兩者相同;當(dāng)隨機(jī)數(shù)比值不等于1時(shí),兩者不同。
步驟232、當(dāng)相同時(shí),則將公鑰發(fā)送給區(qū)塊鏈,區(qū)塊鏈將與所述公鑰對(duì)應(yīng)的物品源頭信息發(fā)送給移動(dòng)終端。
當(dāng)?shù)诙S機(jī)數(shù)與第一隨機(jī)數(shù)相同時(shí),該NFC標(biāo)簽為真,此時(shí),可以將可靠的物品源頭信息發(fā)給移動(dòng)終端,即是對(duì)物品信息的溯源功能,便于用戶查看物品源頭信息。第一隨機(jī)數(shù)與第二隨機(jī)數(shù)相同,將解密成功的公鑰發(fā)送給區(qū)塊鏈,通過(guò)所述公鑰可以在區(qū)塊鏈中查找到對(duì)應(yīng)的物品基本信息,同時(shí)也能查找出對(duì)應(yīng)的物品源頭信息。將查找到的物品源頭信息發(fā)送給移動(dòng)終端,也可以將包括物品基本信息和物品源頭信息的所有物品信息都發(fā)送到移動(dòng)終端。用戶通過(guò)查看這些物品信息對(duì)物品進(jìn)行溯源。
步驟233、當(dāng)不同時(shí),則結(jié)束。
當(dāng)?shù)诙S機(jī)數(shù)與第一隨機(jī)數(shù)不同時(shí),該NFC標(biāo)簽為假,則結(jié)束物品查偽溯源過(guò)程,不進(jìn)行物品源頭信息的讀取。
基于上述實(shí)施例中提供的一種利用NFC查偽溯源的方法,本發(fā)明還提供一種利用NFC查偽溯源的系統(tǒng),如圖2所示,所述系統(tǒng)包括:
基本信息獲取模塊100,用于移動(dòng)終端讀取NFC標(biāo)簽的公鑰,根據(jù)所述公鑰在區(qū)塊鏈中獲取對(duì)應(yīng)的物品基本信息;
查偽溯源模塊200,用于移動(dòng)終端判斷NFC標(biāo)簽的有效性,在NFC標(biāo)簽有效時(shí)從區(qū)塊鏈中獲取對(duì)應(yīng)的物品源頭信息。
所述基本信息獲取模塊100具體包括:
公鑰獲取單元101,用于具有NFC功能的移動(dòng)終端讀取NFC標(biāo)簽中的公鑰;
信息查找單元102,用于根據(jù)獲取的公鑰在區(qū)塊鏈中查找對(duì)應(yīng)的物品基本信息;
信息反饋單元103,用于當(dāng)在區(qū)塊鏈中查找到所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則將對(duì)應(yīng)的物品基本信息發(fā)送給移動(dòng)終端;當(dāng)在區(qū)塊鏈中不存在所述公鑰對(duì)應(yīng)的物品基本信息時(shí),則結(jié)束。
所述查偽溯源模塊200具體包括:
第一隨機(jī)數(shù)單元201,用于當(dāng)移動(dòng)終端接收到物品基本信息時(shí),產(chǎn)生第一隨機(jī)數(shù)保存在移動(dòng)終端并發(fā)送給NFC標(biāo)簽;
第二隨機(jī)數(shù)單元202,用于NFC標(biāo)簽對(duì)第一隨機(jī)數(shù)加密后反饋給移動(dòng)終端解密,獲得第二隨機(jī)數(shù);
判斷單元203,用于判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同,并根據(jù)判斷結(jié)果反饋對(duì)應(yīng)的信息給移動(dòng)終端。
所述第二隨機(jī)數(shù)單元202具體包括:
加密單元,用于根據(jù)NFC標(biāo)簽的私鑰對(duì)第一隨機(jī)數(shù)加密生成密鑰并發(fā)送給移動(dòng)終端;
解密單元,用于移動(dòng)終端根據(jù)讀取的公鑰對(duì)所述密鑰解密獲得第二隨機(jī)數(shù)。
所述判斷單元203具體包括:
比對(duì)單元,用于判斷第一隨機(jī)數(shù)與第二隨機(jī)數(shù)是否相同;
第一反饋單元,用于當(dāng)相同時(shí),則將解密成功的公鑰發(fā)送給區(qū)塊鏈,區(qū)塊鏈將與所述公鑰對(duì)應(yīng)的物品源頭信息發(fā)送給移動(dòng)終端;
第二反饋單元,用于當(dāng)不同時(shí),則結(jié)束。
綜上所述,本發(fā)明公開的一種利用NFC查偽溯源的方法及系統(tǒng), 隨機(jī)數(shù)通過(guò)私鑰加密并通過(guò)公鑰解密,根據(jù)加密前與解密后隨機(jī)數(shù)的比較來(lái)確定該NFC標(biāo)簽物品是否為假冒偽劣商品,能夠進(jìn)行物品真?zhèn)蔚膮^(qū)分;當(dāng)確認(rèn)NFC標(biāo)簽為真時(shí),將物品源頭信息發(fā)送給移動(dòng)終端,這樣可以方便的查到商品的不宜全部公開的信息,且能保證物品信息的安全性。且NFC讀取數(shù)據(jù)時(shí),只需移動(dòng)終端靠近NFC標(biāo)簽即可,減少了設(shè)備關(guān)聯(lián)所需的步驟,并最大限度地減少了用戶交互操作。
上述功能模塊的劃分僅用以舉例說(shuō)明,在實(shí)際應(yīng)用中,可以根據(jù)需要將上述功能分配由不同的功能模塊來(lái)完成,即劃分成不同的功能模塊,來(lái)完成上述描述的全部或部分功能。
本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)(移動(dòng)終端)程序來(lái)指令相關(guān)的硬件完成,所述的計(jì)算機(jī)(移動(dòng)終端)程序可存儲(chǔ)于一計(jì)算機(jī)(移動(dòng)終端)可讀取存儲(chǔ)介質(zhì)中,程序在執(zhí)行時(shí),可包括上述各方法的實(shí)施例的流程。其中的存儲(chǔ)介質(zhì)可以為磁碟、光盤、只讀存儲(chǔ)記憶體(ROM)或隨機(jī)存儲(chǔ)記憶體(RAM)等。
應(yīng)當(dāng)理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對(duì)本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),可以根據(jù)上述說(shuō)明加以改進(jìn)或變換,所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。