漆璇,謝偉,吳建成,孫俊
(國網(wǎng)上海市電力公司青浦供電公司,上海 201799)
智能供應(yīng)鏈物聯(lián)網(wǎng)以互聯(lián)網(wǎng)為依托,延伸到產(chǎn)業(yè)鏈各環(huán)節(jié)中,實現(xiàn)物品實體和管理信息通信系統(tǒng)有效連接。智能供應(yīng)鏈物聯(lián)網(wǎng)與互聯(lián)網(wǎng)、無線傳感器,以及移動通信網(wǎng)絡(luò)等實現(xiàn)對接,形成以客戶體驗為核心的智能供應(yīng)鏈物聯(lián)網(wǎng)時代。依托物聯(lián)網(wǎng)智能供應(yīng)鏈,實現(xiàn)商品從原材料采購、生產(chǎn)流通、分發(fā)銷售,以及到消費者手中各業(yè)務(wù)及環(huán)節(jié)有效連接。當(dāng)前,大力發(fā)展供應(yīng)鏈中的智能化信息技術(shù),不僅能夠有機(jī)結(jié)合各環(huán)節(jié)之間的數(shù)據(jù)資源,可快速完成整個供應(yīng)鏈的流程。在智能供應(yīng)鏈物聯(lián)網(wǎng)中,引入電子標(biāo)簽,極大地提高供應(yīng)鏈條件下各環(huán)節(jié)業(yè)務(wù)數(shù)據(jù)管理效率。智能供應(yīng)鏈物聯(lián)網(wǎng)的電子標(biāo)簽,通過RFID系統(tǒng),以無線射頻信號的快速讀取,識別電子標(biāo)簽中信息非接觸方式,記錄商品各項商業(yè)信息[1]。與以往人工記錄、普通二維碼掃描技術(shù)相比,基于物聯(lián)網(wǎng)的電子標(biāo)簽,具有讀取范圍廣、傳輸速度快,以及數(shù)據(jù)精準(zhǔn)等特性,成為智能供應(yīng)鏈中的關(guān)鍵組成部分[2]。為此,相關(guān)研究人員對此進(jìn)行了很多研究。
文獻(xiàn)[3]提出設(shè)計一種基于物理不可克隆函數(shù)的加密通信系統(tǒng)。該系統(tǒng)借助物理不可克隆函數(shù)生成加密密鑰,然后通過對稱算法對物聯(lián)網(wǎng)中數(shù)據(jù)進(jìn)行加密,實現(xiàn)物聯(lián)網(wǎng)設(shè)備中數(shù)據(jù)的加密研究。該系統(tǒng)可提升物聯(lián)網(wǎng)通信數(shù)據(jù)安全性,但并未過多考慮網(wǎng)絡(luò)中電子標(biāo)簽問題,存在運營效率較低的問題。文獻(xiàn)[4]提出設(shè)計了一種基于Netty 和Kafka 的物聯(lián)網(wǎng)數(shù)據(jù)接入系統(tǒng),完成物聯(lián)網(wǎng)電子標(biāo)簽通信。該系統(tǒng)通過Netty網(wǎng)絡(luò)通信設(shè)計一種收集端以及通信協(xié)議端,將物聯(lián)網(wǎng)電子標(biāo)簽通信網(wǎng)絡(luò)中能耗進(jìn)行降低,由Kafka消費者負(fù)責(zé)后續(xù)數(shù)據(jù)持久化,保證系統(tǒng)通信的響應(yīng)速度。該系統(tǒng)可提升通信效率,但通信質(zhì)量無法得到有效保證?;谏鲜鱿到y(tǒng)中存在的不足,本文提出一種智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)。通過RFID系統(tǒng)感知和接收目標(biāo)商品的信息數(shù)據(jù),形成電子標(biāo)簽并存儲。RFID系統(tǒng)作為感知層數(shù)據(jù)傳輸接口,通過與通信系統(tǒng)交互作用,發(fā)射無線信號,并在智能信號半徑范圍內(nèi)查找、讀取RFID 信息數(shù)據(jù),實現(xiàn)對供應(yīng)鏈商品有效識別。智能供應(yīng)鏈物聯(lián)網(wǎng)中電子標(biāo)簽,一般是由視頻發(fā)射器、模擬端口、EEPROM存儲單元,以及微控制器等組成,并利用電感耦合原理,在智能供應(yīng)鏈物聯(lián)網(wǎng)中電子標(biāo)簽進(jìn)入閱讀器的閱讀范圍內(nèi),在天線兩端形成電勢差。當(dāng)通信系統(tǒng)內(nèi)電流達(dá)到既定參數(shù)值時,可進(jìn)行讀、寫操作。
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)以硬件為基礎(chǔ),將Linux系統(tǒng)轉(zhuǎn)移到物聯(lián)網(wǎng)網(wǎng)關(guān)中,實現(xiàn)物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)開發(fā)。整個電子標(biāo)簽通信系統(tǒng)被劃分為多個小模塊[5-6]。在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中,終端設(shè)備常用于較為偏僻位置,或放置后不經(jīng)常查看。因此,智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)具有工作時間久、效率高,以及低功耗等特性;進(jìn)而選擇具有專用超低漏電流工藝技術(shù)的STM8L_151G芯片[7-8]。與此同時,STM8L_151G芯片在停機(jī)狀態(tài)下,電流僅為400nA,其最低功耗為0.35uA,在動態(tài)運行模式下為180uA/MHz。
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中包括ZigBee模塊、Modbus 模塊、串口模塊、TCP/IP 模塊,以及MATT 模塊這五部分內(nèi)容[9]。因此,在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中,ZigBee 終端主要將電子標(biāo)簽數(shù)據(jù)信息傳遞到ZigBee 協(xié)調(diào)器;當(dāng)Modbus 接收到通信系統(tǒng)主機(jī)命令時,會將電子標(biāo)簽的數(shù)據(jù)傳輸?shù)街鳈C(jī)。其中,ZigBee 終端協(xié)調(diào)器與Modbus主機(jī)通過串口與網(wǎng)關(guān)進(jìn)行連接。使用TCP/IP技術(shù)不僅需要接收本地PC的命令,還要將電子標(biāo)簽的商品數(shù)據(jù)傳輸?shù)奖镜豍C。在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中,通過MATT技術(shù)發(fā)布sensor主題,并將物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)通信到遠(yuǎn)程服務(wù)器。
在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)內(nèi),通信控制接口主要是包括:通信接口、電子標(biāo)簽數(shù)據(jù)處理模塊、測試模塊,以及外部信號觸發(fā)模塊[10]。智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)選擇SPI總線協(xié)議;電子標(biāo)簽數(shù)據(jù)處理模塊主要用于數(shù)據(jù)幀格式;測試模塊用來檢測物聯(lián)網(wǎng)電子標(biāo)簽通信接口各項功能,并預(yù)留電子標(biāo)簽商品信息數(shù)據(jù)實現(xiàn)接口直通;外部信號觸發(fā)模塊用于喚醒外部信號,以及MCU發(fā)送測試信號。
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)采用SPI 總線協(xié)議的通信接口,MCU通過通信接口對物聯(lián)網(wǎng)電子標(biāo)簽進(jìn)行讀寫、接收,以及發(fā)送。一般情況下,智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信接口使用6 個內(nèi)部信號,以及6 個外部管腳。與此同時,智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)接口,一般預(yù)留62個寄存器、1個接收FIFO,以及1個發(fā)送FIFO。
寄存器不僅可以用于芯片功能配置,還能夠成為MCU控制芯片主要手段,從而設(shè)計寄存器地址從0x00 遞增至0x3D。為滿足智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)對電子標(biāo)簽數(shù)據(jù)的接收與發(fā)送需求,設(shè)計預(yù)留128 位的接收FIFO和發(fā)送FIFO。
表1 通信系統(tǒng)接口定義
圖1 電子標(biāo)簽通信接口架構(gòu)
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信接口SPI總線協(xié)議,需要區(qū)分物聯(lián)網(wǎng)電子標(biāo)簽主機(jī)與從機(jī)。物聯(lián)網(wǎng)電子標(biāo)簽通信時序為MCU,在時鐘上升沿讀取數(shù)據(jù),在下降沿寫入電子標(biāo)簽的數(shù)據(jù)。基于物聯(lián)網(wǎng)電子標(biāo)簽通信中,傳輸方式定位低位在前、高位在后,其電子標(biāo)簽的數(shù)據(jù)長度為8位,設(shè)計使用最高速率為8Mbps。
物聯(lián)網(wǎng)電子標(biāo)簽的通信過程中,每次讀寫操作可以傳輸N(N-1)個字節(jié)內(nèi)容,而且第一個讀寫字節(jié)為命令字節(jié),其他均為數(shù)據(jù)字節(jié)。根據(jù)不同電子標(biāo)簽通信指令,允許MCU通過SPI接口有讀寫寄存器,以及收發(fā)FIFO等操作。
AES算法解密速度快,而RSA算法安全性更高。因此,采用AES 算法對物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)進(jìn)行實時加密,并使用RSA公鑰對AES密鑰進(jìn)行加密。
AES為對稱加密算法,通過對智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)實際情況考慮,選擇密鑰長度為128 位的AES-128,加密輪數(shù)為10 輪,前9 輪加密為:字節(jié)代換、行位移、列混合,以及輪密鑰加,而第10 輪加密為:字節(jié)代換、行位移,以及輪密鑰加。
選擇兩個不相同的質(zhì)數(shù)p 和q,而且n可以分解為p 和q的乘積,得到歐拉函數(shù)φ(n)。將(n,e)作為公鑰,而(n,d)作為私鑰,RSA公鑰加密公式:
其中,m為明文數(shù)據(jù);c為密文數(shù)據(jù);(n,e)為RSA公鑰。此外,RSA私鑰加密公式:
其中,c為密文數(shù)據(jù);m為明文數(shù)據(jù);(n,d)為RSA私鑰。
發(fā)送方和接收方協(xié)商確定物聯(lián)網(wǎng)電子標(biāo)簽通信的AES密鑰,自動生成RSA公私密鑰,雙方互相公開公鑰。將AES和RSA 混合算法作為電子標(biāo)簽通信加密的方式,實現(xiàn)智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)的快速傳輸。
在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中,軟件設(shè)計包括通信接口、數(shù)據(jù)處理模塊,以及輔助功能模塊設(shè)計,如表2所示。
表2 電子標(biāo)簽通信系統(tǒng)軟件設(shè)計
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽前向隱私性,電子標(biāo)簽后所有者無法獲取、推導(dǎo)與智能供應(yīng)鏈下物聯(lián)網(wǎng)電子標(biāo)簽之前所有者的私密數(shù)據(jù)。電子標(biāo)簽通過通信系統(tǒng)完成電子標(biāo)簽的流通,一般由后一個所有者充當(dāng)攻擊者,不僅無法獲得串空間,還無法通過已有知識推理之前的私密信息,表示為:
其中,∑為串空間;P為后一個所有者攻擊的串空間;L為物聯(lián)網(wǎng)電子標(biāo)簽的轉(zhuǎn)讓協(xié)議;A為任意攻擊者;U為攻擊者掌握的電子標(biāo)簽通信系統(tǒng)知識;kf為共享密鑰;Kp為攻擊者密鑰集合。
智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽的后向隱私性,電子標(biāo)簽一旦流通到后一個環(huán)節(jié),之前電子標(biāo)簽所有者無法繼續(xù)跟進(jìn),只有后一個所有者能夠完全控制電子標(biāo)簽的信息數(shù)據(jù),并進(jìn)行身份識別、信息交互。表示為:
其中,kb表示共享密鑰,以及智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽的交易信息。
根據(jù)物聯(lián)網(wǎng)電子標(biāo)簽無線通信前端的數(shù)據(jù)傳輸模式,通過使用嵌入式通信系統(tǒng),實現(xiàn)通信系統(tǒng)接口數(shù)據(jù)傳輸與直通模式下特殊信號的讀寫。
為驗證智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)的性能,實驗中準(zhǔn)備一臺PC、SPI 總協(xié)議接口、導(dǎo)線若干、串口透傳接口、網(wǎng)口、ZigBee模塊終端、ZigBee模塊協(xié)調(diào)器,以及溫濕度傳感器。智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信接口,需要串口接收ZigBee 協(xié)調(diào)器,以及Modbus 主機(jī)電子標(biāo)簽數(shù)據(jù),并將電子標(biāo)簽數(shù)據(jù)傳輸給PC端,判斷物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)是否傳輸成功。所進(jìn)行實驗的原始數(shù)據(jù)如表3所示。
表3 實驗原始數(shù)據(jù)
基于表3所示的原始數(shù)據(jù),進(jìn)行數(shù)據(jù)處理,以驗證智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)的應(yīng)用性能。
在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)中,數(shù)據(jù)處理模塊主要是對電子標(biāo)簽商品數(shù)據(jù)進(jìn)行封裝、解幀,以及模擬通信系統(tǒng)控制接口中外部輸入的數(shù)據(jù)信號。將FPGA 芯片作為電子標(biāo)簽數(shù)據(jù)發(fā)送端,通過控制接口的實驗?zāi)K輸入信號,并且使用MCU 實現(xiàn)FIFO 內(nèi)的電子標(biāo)簽數(shù)據(jù)比對。通過FPGA發(fā)送1萬個不同的數(shù)據(jù)幀,方便62個寄存器的算法讀寫,同時逐層增加寫入數(shù)據(jù)的數(shù)量。圖2顯示了機(jī)器識別電子標(biāo)簽的界面,圖3顯示了出現(xiàn)錯誤的實驗界面。
圖2 機(jī)器正在識別電子標(biāo)簽
圖3 數(shù)據(jù)出現(xiàn)錯誤
表4為數(shù)據(jù)處理模塊進(jìn)行數(shù)據(jù)處理的結(jié)果。
表4 數(shù)據(jù)處理模塊試驗結(jié)果
通過MCU配置寄存器,將管腳配置為電子標(biāo)簽通信系統(tǒng)控制接口的輸入與輸出數(shù)據(jù)信號。此外,使用上位機(jī)軟件初始化通信系統(tǒng)前端,配置實驗?zāi)K寄存器;通過示波器觀察物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)變化,發(fā)送數(shù)據(jù)并讀取、接收FIFO內(nèi)容。
在智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)模擬中,取兩組通信系統(tǒng),一方作為接收方,另一方作為發(fā)送方,通信系統(tǒng)模擬如圖4所示。
圖4 通信系統(tǒng)模擬設(shè)計
嵌入式通信系統(tǒng)中物聯(lián)網(wǎng)電子標(biāo)簽的處理與通信系統(tǒng)控制接口測試模塊可以形成電子標(biāo)簽數(shù)據(jù)直通模式。MCU使用電子標(biāo)簽通信接口進(jìn)行寄存器配置,并對智能供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)進(jìn)行收發(fā)、操作,本次模擬測試,在數(shù)據(jù)長度為128Byte的實驗條件下,MCU分別選取3種收發(fā)方式,并進(jìn)行同種速率下收發(fā)測試。
表5 實驗測試結(jié)果
根據(jù)實驗結(jié)果可知,I/O 模擬方式受到MCU 主頻的影響,不管在哪種速率下,收到數(shù)據(jù)會出現(xiàn)錯誤。通過使用通信接口為SPI或UART的通信系統(tǒng),其物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)都能夠正常收發(fā)。但SPI接口傳輸速率最高達(dá)8Mbps,而且具有時鐘信號穩(wěn)定性,提高了物聯(lián)網(wǎng)電子標(biāo)簽數(shù)據(jù)收發(fā)的效率。
智能供應(yīng)鏈各業(yè)務(wù)環(huán)節(jié)的集成,以及物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)的搭建,為企業(yè)智能供應(yīng)鏈的發(fā)展提供了有力支撐。物聯(lián)網(wǎng)電子標(biāo)簽通信系統(tǒng)便顯得尤為重要。因此,本系統(tǒng)根據(jù)供應(yīng)鏈電子標(biāo)簽協(xié)議的更新,對TCP/IP協(xié)議下的通信接口數(shù)據(jù)進(jìn)行改進(jìn),增加更多供應(yīng)鏈物聯(lián)網(wǎng)電子標(biāo)簽可選數(shù)據(jù)幀格式。