陳國發(fā) 陳致遠
摘 要:文章根據(jù)實際需求,對電子關鎖目前的工作狀態(tài)和可能的合作方式從施封到解封全過程進行安全性技術(shù)分析,給出其相應的優(yōu)缺點和存在的風險,從而找出一種行之有效的模式識別、通信協(xié)議、編碼格式、數(shù)據(jù)加密、解碼原理等技術(shù)方法和實現(xiàn)過程。
關鍵詞:電子標簽;射頻識別技術(shù);編碼與解碼;電子關鎖
在海關物流監(jiān)控系統(tǒng)中,由閘口監(jiān)控、運輸車輛的GPS監(jiān)控、EDI數(shù)據(jù)平臺,集裝箱電子鉛封,組成一個完整的封閉系統(tǒng)。在信息識別和通信方面,對電子鉛封系統(tǒng)的基本技術(shù)要求是:(1)在用開封器開電子鉛封時要能判斷該鉛封是否被非法打開過。(2)電子鉛封能防偽及數(shù)據(jù)加密。(3)開封器要受控制中心的控制。(4)開封器與控制中心能無線通信。
1 無源無線防偽電子鉛封
1.1 無源無線防偽電子鉛封系統(tǒng)組成
海關集裝箱無源無線電子鉛封系統(tǒng)如圖1所示,由以下5部分組成。
(1)電子鉛封:電子鉛封沿襲傳統(tǒng)鉛封模式,可封裝在傳統(tǒng)鉛封中,插在集裝箱門上,封住集裝箱門。鉛封內(nèi)嵌集成電路模塊,無須電源。電子鉛封不與GPS車載臺或其他設備連接。電子鉛封內(nèi)保存有全球唯一且不可更改的ID號。鉛封中還有一定數(shù)量的內(nèi)存,可以保存集裝箱號碼、運載車輛車牌號、運輸起始海關和終點海關。鉛封的使用具備一次性,即鉛封打開后集成電路模塊就被破壞,加上全球唯一的ID號,無法再復原鉛封。
(2)加封器、開封器:實際上是一個電子鉛封的讀寫器。該設備通過無線射頻,讀取或?qū)懭脬U封中保存的數(shù)據(jù)。該設備無須和電子鉛封連線,通過無線方式可讀取、寫入鉛封中保存的信息。
(3)無線收發(fā)機:無線收發(fā)機通過RS232接口協(xié)議分別與開封器和場站計算機相連。兩臺無線收發(fā)機可在1 000 m的范圍內(nèi)通過無線方式使開封器與場站計算機通信,傳送鉛封號、集裝箱號碼等。
(4)場站計算機:負責場站現(xiàn)場數(shù)據(jù)與海關監(jiān)控中心之間的數(shù)據(jù)傳輸。
(5)海關物流監(jiān)控中心:負責鉛封的發(fā)放、注銷、核對等管理工作,通過網(wǎng)絡與場站計算機進行數(shù)據(jù)通信[1]。
1.2 電子關鎖要實現(xiàn)的功能
(1)檢測鎖銷的狀態(tài)。(2)進行無線讀寫數(shù)據(jù)。(3)規(guī)定的數(shù)據(jù)傳輸格式(這個在實際使用中可能會做調(diào)整)。(4)有自己的數(shù)據(jù)加密算法,采用CRC校驗。(5)存儲信息和記錄鎖開關次數(shù)。(6)讀寫速度快(在整個通道行進的過程中要至少完成一次讀?。ㄅc電子車牌讀寫速度同));讀寫距離遠(覆蓋整個通道15 m以上)。
圖1 無源無線電子鉛封方案
1.3 無源無線電子鉛封系統(tǒng)工作過程
海關集裝箱無源無線電子鉛封系統(tǒng)的工作過程分加封、開封、問題處理3部分。
(1)加封:集裝箱出場站之前,在集裝箱門上加一把電子鉛封,封住集裝箱門。具體過程如下:挑選一把電子鉛封;將集裝箱號、運載車輛號碼、起點海關、終點海關輸入場站計算機;將電子鉛封放在加封器上;場站計算機通過加封器讀出電子鉛封ID號;場站計算機將集裝箱號和電子鉛封號傳到監(jiān)控中心;監(jiān)控中心按加密程序返回密碼;場站計算機通過加封器將密碼、集裝箱號碼、起點、終點海關等信息寫入電子鉛封;用電子鉛封封住集裝箱門。
(2)開封:集裝箱進場站后,對集裝箱門上完好無損的電子鉛封開封的具體過程如下:將手持式開封器接近電子鉛封;開封器讀取鉛封中的ID號、集裝箱號、車牌號、起始海關、終點海關;開封器向場站計算機發(fā)送鉛封信息。場站計算機將集裝箱號、鉛封ID號、密碼和開封請求傳到監(jiān)控中心;監(jiān)控中心按解密程序檢查電子鉛封的真?zhèn)?,并相應地返回真?zhèn)谓Y(jié)果;并在數(shù)據(jù)庫中記錄信息;場站計算機通過無線頻道向開封器發(fā)送驗證信息;若驗證通過,則從集裝箱門上取下電子鉛封,本鉛封打開后即被當場銷毀;如果為拒絕命令,屬問題處理。
(3)問題處理:集裝箱上的鉛封被毀、控制中心發(fā)現(xiàn)無效鉛封拒絕開封、電子鉛封內(nèi)嵌芯片失靈等情況都屬于本系統(tǒng)的問題,需要提出處理問題辦法[2]。
1.4 電子鎖目前的狀態(tài)
(1)采用輪巡的方式傳輸采集數(shù)據(jù)。
(2)傳輸速率為19.2 K(433 M),1 M(2.4 G)。
(3)433 M采用MCU和傳輸芯片相結(jié)合的方式,2.4 G采用單一芯片,此芯片包含一個51單片和一個快速傳輸芯片。
1.5 可能的合作方式
(1)直接采用amtech的合適芯片實現(xiàn)現(xiàn)在所有的功能。
(2)采用amtech的芯片和mcu相結(jié)合,由amtech芯片一直處于接收狀態(tài),在接收到正確數(shù)據(jù)后喚醒mcu,由mcu進行控制進行數(shù)據(jù)的交互。
(3)采用amtech的芯片作為喚醒芯片,在mcu喚醒以后就讓amtech芯片關閉,用其他的傳輸芯片進行數(shù)據(jù)的無線傳輸(此種狀態(tài)是針對amtech芯片無法完成數(shù)據(jù)傳輸?shù)那闆r下)[3]。
以上3種合作方式的優(yōu)勢和風險闡述如下。
針對(1):優(yōu)勢為無需進行別的配合,開發(fā)周期短。
風險為沒有合適的芯片實現(xiàn)以上的5個基本功能,尤其是算法的實現(xiàn)和檢測電路的實現(xiàn)。
針對(2):這種是最好的方式。
工作讀出模式:amtech芯片一直處于低功耗的接收狀態(tài)(功耗應在10 μA以內(nèi)),在進入RF輻射區(qū)后,接收到正確數(shù)據(jù)包頭后用中斷等方式將MCU喚醒,與MCU進行數(shù)據(jù)交換,調(diào)用已加完密的數(shù)據(jù)向外發(fā)射后等待,直到amtech芯片離開RF輻射區(qū),芯片重新進入低功耗接收狀態(tài),同時給MCU一個可休眠信號。MCU進入休眠狀態(tài)。
寫入模式:amtech芯片一直處于低功耗的接收狀態(tài)(功耗應在10 μA以內(nèi)),在進入RF輻射區(qū)后,接收到正確數(shù)據(jù)包頭后用中斷等方式將MCU喚醒,與MCU進行數(shù)據(jù)交換,繼續(xù)向讀寫器要數(shù)據(jù)包,得到正確的數(shù)據(jù)包后,MCU對此數(shù)據(jù)進行加密算法,直到amtech芯片離開RF輻射區(qū),芯片重新進入低功耗接收狀態(tài),同時給MCU一個可休眠信號。MCU進入休眠狀態(tài)。
鎖銷檢測:MCU進行相應檢測。優(yōu)勢:功耗低,通信方便快捷。劣勢:是否這樣就無法實現(xiàn)用手持機對其進行讀寫了?
需要弄明白的問題:
①讀寫器的數(shù)據(jù)交換協(xié)議如何制定?是我們制定完成后,RF將其進行調(diào)制,采用的CRC校驗可以杜絕黑匣子部分不能解決可能性。
②是否工作模式中提到的中斷和數(shù)據(jù)交換解決方案,采用和普通串口形式一致嗎?
針對(3):這個方案應該說最不好實現(xiàn),因為勢必有兩種RF相互干擾的情況。
風險:無法采用單一POS機進行數(shù)據(jù)的讀寫,因為必須提供兩種RF方式才能激活并讀寫。
2 識別原理
2.1 通信串口設置
電子關封讀寫器通過RS232串口與PC機通信,串口參數(shù)為:波特率9 600,校驗位NONE,數(shù)據(jù)位8,停止位1。命令格式:0xaa+控制命令字+0x00+0x00[+數(shù)據(jù)內(nèi)容]+0xab。
2.2 標簽信息編碼格式
電子標簽數(shù)據(jù)由128個比特組成。標簽被激活后,對數(shù)據(jù)進行編碼,加同步幀頭,形成數(shù)據(jù)幀信號,采用反向散射原理(ASK調(diào)制信號)將數(shù)據(jù)發(fā)送給讀寫器。標簽的數(shù)據(jù)編碼形式如圖2a和b所示。同步幀頭形式如圖2c所示。標簽返回數(shù)據(jù)速率為10 kbps;返回整個數(shù)據(jù)幀,包括幀頭,需13 ms。
引導字節(jié)共5個字節(jié),數(shù)據(jù)包包頭共16個字節(jié),數(shù)據(jù)包共54個字節(jié),合計75個字節(jié)。
2.3 數(shù)據(jù)加密
包含ENCRYPT.H,將ENCRYPT.LIB加入PROJECT。ENCRYPT.DLL接口說明如下。
2.3.1 加密函數(shù)
unsigned int EnCode(unsigned char * SourceBuf,
unsigned int CodeLength,
unsigned char * DestBuf)
SourceBuf:存放未加密數(shù)據(jù)的緩沖區(qū)首地址;CodeLength:數(shù)據(jù)字節(jié)數(shù);DestBuf:存放加密后數(shù)據(jù)的緩沖區(qū)首地址;
加密成功,返回1;失敗返回0。
2.3.2 解密函數(shù)
unsigned int UnCode(unsigned char * SourceBuf,
unsigned int CodeLength,
unsigned char * DestBuf)
SourceBuf:存放加密數(shù)據(jù)的緩沖區(qū)首地址;CodeLength:數(shù)據(jù)字節(jié)數(shù);DestBuf:存放解密后數(shù)據(jù)的緩沖區(qū)首地址;
解密成功,返回1;失敗返回0。
讀關封返回各數(shù)據(jù)包的第(9—232)和(233—256)兩個數(shù)據(jù)塊需分別進行解密;
快速讀關封返回數(shù)據(jù)包的第9—32共24個字節(jié)需進行解密;
注意:第1—8字節(jié)不能進行解密,寫關封前需對各數(shù)據(jù)包的第1—224共224個字節(jié)進行加密。
2.4 數(shù)據(jù)校驗
包含AVRCRC.H,加入AVRCRC.LIB;AVRCRC.DLL接口:
BOOL CreateCRC(const char * pDataBuf, //數(shù)據(jù)區(qū)首址
int iDataLength, //數(shù)據(jù)字節(jié)長度,必須為偶數(shù)
WORD &crccode;) //生成的兩字節(jié)校驗碼
對要寫的(前數(shù)據(jù)包,后數(shù)據(jù)包)或(數(shù)據(jù)包)作整體運算,將生成的兩字節(jié)校驗碼放入(校驗碼低字節(jié)),(校驗碼高字節(jié))。成功返回TRUE;失敗返回FALSE。
2.5 自動模式工作時序
如圖3所示,探頭被擋住為觸發(fā),未被擋住為釋放。
探頭的共同狀態(tài)指探頭1和探頭2的狀態(tài)相同時探頭的狀態(tài)。
集裝箱卡車沿箭頭方向前進。
箱型可能為單長箱、單短箱、雙短箱。
探頭狀態(tài)變化如表1所示。
由表1可得出:(1)當探頭的共同狀態(tài)由釋放變?yōu)橛|發(fā)時,標志前箱到來:讀寫器自動開始讀關封,完成后,若讀取成功則將數(shù)據(jù)保存,若不成功則保存失敗信息;PC記錄探頭狀態(tài)的變化。
(2)當探頭的共同狀態(tài)由觸發(fā)變?yōu)獒尫艜r,標志后箱正在離去:讀寫器自動開始讀關封,完成后,如果已收到PC發(fā)來的索取數(shù)據(jù)命令,則將兩個關封的數(shù)據(jù)返回;如果尚未收到PC發(fā)來的索取數(shù)據(jù)命令,若讀取成功則將數(shù)據(jù)保存,若不成功則保存失敗信息,等到收到PC發(fā)來的索取數(shù)據(jù)命令后,再將兩個關封的數(shù)據(jù)返回;PC延時100 ms后,向讀寫器發(fā)索取數(shù)據(jù)命令。
(3)在讀取數(shù)據(jù)的過程中,檢測到探頭的共同狀態(tài)的變化:如讀寫器已讀到數(shù)據(jù),則將數(shù)據(jù)保存,如未讀到數(shù)據(jù),則中止本次讀取,保存失敗信息,如已收到索取數(shù)據(jù)命令,將兩個關封的數(shù)據(jù)返回,然后進入下一次讀取流程;PC如果在后箱離去后在等待返回數(shù)據(jù)過程中檢測到,則再等待200 ms,等待讀寫器返回數(shù)據(jù),作相應處理,然后進入下一流程。
(4)在上述自動模式下,若時限已到而未讀取成功,讀寫器會自動停止,PC不要向讀寫器發(fā)送取消命令[4]。
以上流程時序圖如圖4所示。
3 結(jié)語
(1)整個電子鉛封系統(tǒng)從加封到開封形成一個大閉環(huán),處在監(jiān)控中心的監(jiān)控之下。安全、可靠,一旦加封,任何換鉛封的可能性都不存在。
(2)由于電子鉛封內(nèi)沒有電源,價格便宜,一次性使用,電子鉛封幾乎不需要維護工作。
(3)開封器、加封器接口軟件的開發(fā):該軟件至少包含從電子鉛封內(nèi)讀數(shù)據(jù)、向電子鉛封內(nèi)寫數(shù)據(jù)、向計算機發(fā)數(shù)據(jù)、接受計算機數(shù)據(jù)等功能。
(4)電子鉛封系統(tǒng)管理軟件的開發(fā):該軟件控制整個電子鉛封系統(tǒng)的流程,與業(yè)務系統(tǒng)緊密結(jié)合。應用與開封器、加封器數(shù)據(jù)交換、網(wǎng)絡數(shù)據(jù)傳送、數(shù)據(jù)加密與解密、電子鉛封發(fā)放報廢管理、問題處理記錄與統(tǒng)計等功能。
(5)開封器與場站計算機無線連接,便于使用。
[參考文獻]
[1]杜思深.無線數(shù)據(jù)通信技術(shù)[M].北京:電子工業(yè)出版社,2011.
[2]EPCglobal.EPCTM radio-frequency identity protocols class-1 generation-2 UHF RFID protocol for communication at 860~960 MHz[M].Heidelberg:Springer Berlin Heidelberg,2005.
[3]錢游,陳國發(fā).單片機實用技術(shù)[M].西安:西安電子科技大學出版社,2017.
[4]陳國發(fā).基于單片機和RFID的智能電子關封設計[J].電子測試,2018(3):38-47.