一種電力資產管理主站系統與rfid終端之間的通訊方法
【專利摘要】本發明的電力資產管理主站系統與移動終端之間的通訊方法,通過為RFID終端和管理主站系統提供雙向認證,對隱私數據的加密,用數字簽名來保證客戶端身份的合法性;終端層主要由RFID移動終端和RFID讀寫模塊組成,主要實現電網設備標簽的現場安裝、貼標信息查詢和設備清查等工作。本發明目可保證電力資產管理主站系統、RFID終端雙方之間的通訊安全,通訊雙方持有密鑰證書,并且只有授權通過后才能建立安全傳輸通道進行數據傳輸。
【專利說明】一種電力資產管理主站系統與RFID終端之間的通訊方法
【技術領域】
[0001]本發明涉及一種安全通訊方法,特別是一種電力資產管理主站系統與RFID終端之間的通訊方法。
[0002]
【背景技術】
[0003]電力資產作為電力企業資產構成的最重要組成之一,是完成電力生產經營任務的重要保障,同時對企業財務狀況及生產運行起著重大的影響作用,其中移動應用作為電力行業信息化下一步的建設重點之一。由于惡意軟件、隱私竊取等移動安全問題日益凸顯,信息安全顯得尤為重要,國家電網公司信息通信部門對移動應用的數據傳輸安全問題一直非常關注,先后發布了相關文件用于規范移動數據傳輸。移動應用相對于目前的信息化建設屬于新生模式,其數據傳輸安全有待驗收和考評,如何保證電力資產在移動應用建設中的信息安全是一個急需解決的問題。
[0004]隨著網絡化、信息化的不斷深入和發展,傳統的信息管理系統很多安全隱患:如授權侵犯、假冒、旁路控制等等,雖然人們早已認識到通信服務系統中的安全問題,采取了各種各樣的安全措施,如防火墻,入侵檢測系統、網絡軟件加密狗等。但是這些都是基于整個系統或網站層次上的安全措施,無法對系統中的個人用戶進行保護。當攻擊者繞過系統直接攻擊個人用戶時,這些安全措施就形同虛設,因此傳統的單一的認證手段己不適應應用需求。
[0005]一般電力資產管理主站系統和RFID終端的通訊過程大都采用單向認證來保證其安全性,即雙方只需要一方被另一方鑒別身份,客戶端利用服務器傳過來的信息驗證服務器的合法性,其工作原理是服務器端驗證客戶證書的過程去掉,以及在協商對稱密碼方案,對稱通話密鑰時,服務器發送給客戶的是沒有加過密的密碼方案。由于單向認證沒有驗證RFID終端的合法性,使得RFID終端很容易被冒充偽造,接入主站后竊取設備臺帳等關鍵生產數據,可能造成的后果不堪設想。
[0006]以上問題的存在,究其原因主要是沒有可靠的技術手段支持通信雙方身份合法性和數據的機密性,電力資產信息安全面臨著很多困難和挑戰,為妥善解決這些問題,提出一種雙向認證的安全認證機制,這種新的技術手段成為電力企業資產安全管理創新發展的必然選擇。
【發明內容】
[0007]本發明的目的在于克服現有技術的不足之處,而提供一種能保證電力資產管理主站系統與RFID終端之間的通訊安全方法,即雙向認證方法,服務器端和客戶端都需要對雙方的證書進行認證,只有授權通過后才能建立安全傳輸通道,安全性較高。
[0008]一種電力資產管理主站系統與RFID終端之間的通訊方法,(I)由RFID終端管理人員把RFID終端設備信息錄入到主站系統,RFID終端狀態初始為“未注冊”狀態,(2)主站系統發布servlet用于RFID終端的入網注冊,主要提供的服務有:接收RFID終端請求,自動調用腳本生成包含RFID終端信息client, cer,RFID終端信任庫clientTrust.bks,修改RFID終端狀態為“已注冊”,最后將這兩個文件流輸出到RFID終端,(3)RFID終端初次使用時由RFID終端保管人員輸入用戶名、密碼、Android ID、主站系統隨機生成驗證碼等信息,最后調用主站系統發布的servlet,保存證書和信任庫文件,至此RFID終端入網注冊成功,RFID終端和主站系統可進行雙向認證通訊,(4)
RFID 終端通過 SSLContext 取得 KeyManagerFactory 和 TrustManagerFactory 的 X509密鑰管理器實例,在獲得BKS密庫實例后加載RFID終端證書和私鑰,通過讀取資源文件的方式讀取密鑰和信任證書,最后生成SSLSocket,向主站系統發起https請求,(5)主站系統前置服務由MINA框架實現,通過SslContextFactory建立SslFilter加密過濾器,并指定 RFID 終端請求處理工廠 ClientTrustManagerFactory,通過 N1SocketAcceptor 實現SSL Socket端口監聽,在收到RFID終端請求后,ClientTrustManagerFactory工廠中的checkClientTrusted用于RFID終端SSL身份驗證,通調用X509Certificate類型參數的getSubjectDN方法獲得主體名Android ID,根據該ID調用業務邏輯層代碼判斷此RFID終端是否已注冊,(6)對于通過SSL身份認證的RFID終端則進行相關業務數據交互,主站系統對于未通過認證的RFID終端則拒絕接入,并返回相關異常信息。
[0009]本發明的一種電力資產管理主站系統與RFID終端之間的通訊方法,使用通過國網安全認證平臺認證的3G上網卡接入到電力內網,向前置服務發出HTTP請求以獲得證書文件,請求的數據包含設備唯一碼(UUDI)明文;前置服務通過發布HTPPServlet接收、處理請求,通過調用JAVA KEYT00L動態生成android平臺的授權證書,包含RFID終端的私鑰(KeyStore)和保存服務端的授權證書密鑰庫(Trust KeyStore)。
[0010]Android終端上使用的是BC證書,而Java的key too I本身不提供BKS格式,需要通過BouncyCastleProvider把cert格式轉換為BKS證書,RFID終端證書生成代碼如下:
keytool -1mportcert -keystore test, bks -file test, cert -storetype BKS -providerorg.bouncycastle.jce.provider.BouncyCastleProvider。
[0011 ] MINA設置SSL過濾器關鍵代碼:
Il設置加密過濾器
SslFilter sslFilter = new SslFilter (SsIContextFactory.getlnstance (true));
Il設置客戶連接時需要驗證RFID終端證書
sslFilter.SetNeedClientAuth(true);
chain.addLast(〃sslFilter〃,sslFilter);
認證過程中的關鍵類:
SSLContextFactory -創建和配置 SSLContext 實例
ClientTrustManagerFactory -繼承 TrustManagerFactory,信任管理器的工廠此工廠實現兩個接口方法,分別用于RFID終端和服務端的SSL身份驗證:checkServerTrusted(X509Certificate[] chain, StringauthType)檢查簽名、信任鏈中證書的有效日期和CRLs
checkClientTrusted(X509Certificate[] chain, StringauthType)獲取到 RFID 終端的X.509證書,由于RFID終端證書為動態生成,MINA服務啟動后,已加載服務端的信任庫文件到內存中,如果在之后將生成RFID終端公鑰證書加入到此文件中,在重啟前置服務前不會立即生效,所以需要改變RFID終端證書的認證策略,在獲取到RFID終端證書后,通過調用getSubjectDN方法獲得主體名即生成證書時設置的終端設備唯一編號,然后根據編號調用業務邏輯層代碼判斷此終端是否已注冊,返回相應的true或false作為身份驗證結果O
[0012]本發明通過為RFID終端和主站系統提供雙向認證,對隱私數據的加密,用數字簽名來保證RFID終端身份的合法性;終端層主要由RFID終端和RFID讀寫模塊組成,主要實現電網設備標簽的現場安裝、貼標信息查詢和設備清查等工作自動調用腳本生成包含終端信息(如Android ID、證書有效期)client, cer、
綜上所述的,本發明相比現有技術如下優點:
本發明的電力資產管理主站系統與RFID終端之間的通訊方法,應用在基于RFID的電力資產管理系統中,該RFID的電力資產管理系統部署在電力內網,主要實現變電站電力資產設備的日常管理和盤點清查工作。整個RFID的電力資產管理系統由展現層、應用層、數據層、接口層、終端采集層、設備層組成,其中主站系統采用模塊化設計,能夠對資產臺帳數據進行自動同步,實現資產設備貼標率、設備管理人員任務完成情況的統計,對RFID標簽、RFID終端進行有效的控制和管理,通過多種傳輸方式(3G無線、串口、USB)實現和RFID終端數據的雙向同步,主站系統和RFID終端之間的數據傳輸采用JSON協議實現,數據采用DES對稱加密算法,具有較高的安全性,接口層采用Apache Mina Server的網絡通信應用框架,是實現雙向認證的載體,是主站系統和RFID終端數據傳輸的橋梁,通過非阻塞方式的異步傳輸和回調方式實現主站系統和RFID終端的數據傳輸功能,并建立HTTPS安全通道和雙向認證技術保證了數據交互過程的安全性,主站系統和RFID終端各自擁有自簽名的私有密鑰證書,并且互相交換公鑰,通過對方公鑰互相信認對方證書,只有通信雙方互相確認對方的身份以后才能通過加密等手段建立安全信道。極大程度上保證了電力資產數據傳輸的安全性,保證通訊雙方身份的合法性。
[0013]RFID終端主要由RFID終端應用平臺和RFID讀寫模塊組成,電子標簽按照相關規范貼在現場資產設備上,再由RFID終端調用RFID讀寫模塊將對應的資產信息寫入到標簽中,建立標簽和資產設備的關聯關系,手持RFID終端應用主要提供入網注冊、數據同步、任務管理、資產查詢等業務功能,實現對變電站設備的資產貼標、資產信息查詢、更新標簽中的業務屬性信息、快速盤點、標簽更換、報廢等現場作業;通過調用應用層的內部接口服務進行數據下載或上傳,將現場作業結果數據回傳給管理主站系統或者向管理主站系統請求相關數據。
[0014]通過本方法的應用,在應用RFID技術進行電力資產管理過程中,RFID終端和電力資產管理主站系統通過雙向認證之后進行數據同步,從而有效保證了臺帳信息等關鍵生產數據的安全性。
[0015]主站系統對授權用戶的身份認證借鑒SSL的雙向認證模式,有效地保證了通信雙方身份的真實性和通信的不可抵賴性。攻擊者無法假冒發送方發送數據,同時也無法假冒接受方接收數據。本方法實現了對通信雙方的身份認證。
[0016]【專利附圖】
【附圖說明】
[0017]圖1為本發明的電力資產管理主站系統與RFID終端之間的通訊方法握手示意圖。
[0018]圖2是本發明的電力資產管理主站系統與RFID終端之間的通訊流程圖。
【具體實施方式】
[0019]下面結合實施例對本發明進行更詳細的描述。
[0020]實施例1
一種電力資產管理主站系統與RFID終端之間的通訊方法,(I)由RFID終端管理人員把RFID終端設備信息錄入到主站系統,RFID終端狀態初始為“未注冊”狀態,(2)主站系統發布servlet用于RFID終端的入網注冊,主要提供的服務有:接收RFID終端請求,自動調用腳本生成包含RFID終端信息client, cer、RFID終端信任庫clientTrust.bks,修改RFID終端狀態為“已注冊”,最后將這兩個文件流輸出到RFID終端,(3) RFID終端初次使用時由RFID終端保管人員輸入用戶名、密碼、Android ID-Android設備的唯一識別碼、主站系統隨機生成驗證碼等信息,最后調用主站系統發布的servlet,保存證書和信任庫文件,至此RFID終端入網注冊成功,RFID終端和主站系統可進行雙向認證通訊,(4)
RFID 終端通 過 SSLContext 取得 KeyManagerFactory 和 TrustManagerFactory 的 X509密鑰管理器實例,在獲得BKS密庫實例后加移動端載證書和私鑰,通過讀取資源文件的方式讀取密鑰和信任證書,最后生成SSLSocket,向主站系統發起https請求,(5)主站系統前置服務由MINA框架實現,通過SslContextFactory建立SslFilter加密過濾器,并指定 RFID 終端請求處理工廠 ClientTrustManagerFactory,通過 N1SocketAcceptor 實現SSL Socket端口監聽,在收到RFID終端請求后,ClientTrustManagerFactory工廠中的checkClientTrusted用于移動端SSL身份驗證,通調用X509Certificate類型參數的getSubjectDN方法獲得主體名Android ID,根據該ID調用業務邏輯層代碼判斷此RFID終端是否已注冊,(6)對于通過SSL身份認證的RFID終端則進行相關業務數據交互,主站系統對于未通過認證的RFID終端則拒絕接入,并返回相關異常信息。
[0021 ] 本實施例未述部分與現有技術相同。
【權利要求】
1.一種電力資產管理主站系統與RFID終端之間的通訊方法,其特征在于:(I)由RFID終端管理人員把RFID終端設備信息錄入到主站系統,RFID終端狀態初始為“未注冊”狀態,(2)主站系統發布servlet用于RFID終端的入網注冊,主要提供的服務有:接收RFID終端請求,自動調用腳本生成包含RFID終端信息client, cer、RFID終端信任庫clientTrust.bks,修改RFID終端狀態為“已注冊”,最后將這兩個文件輸出到RFID終端,(3)RFID終端初次使用時由RFID終端保管人員輸入用戶名、密碼、Android ID、主站系統隨機生成驗證碼等信息,最后調用主站系統發布的servlet,保存證書和信任庫文件,至此RFID終端入網注冊成功,RFID終端和主站系統可進行雙向認證通訊,(4)
RFID 終端通過 SSLContext 取得 KeyManagerFactory 和 TrustManagerFactory 的 X509密鑰管理器實例,在獲得BKS密庫實例后加移動端載證書和私鑰,通過讀取資源文件的方式讀取密鑰和信任證書,最后生成SSLSocket,向主站系統發起https請求,(5)主站系統前置服務由MINA框架實現,通過SslContextFactory建立SslFilter加密過濾器,并指定 RFID 終端請求處理工廠 ClientTrustManagerFactory,通過 N1SocketAcceptor 實現SSL Socket端口監聽,在收到RFID終端請求后,ClientTrustManagerFactory工廠中的checkClientTrusted用于RFID終端SSL身份驗證,通調用X509Certificate類型參數的getSubjectDN方法獲得主體名Android ID,根據該ID調用業務邏輯層代碼判斷此RFID終端是否已注冊,(6)對于通過SSL身份認證的RFID終端則進行相關業務數據交互,主站系統對于未通過認證 的RFID終端則拒絕接入,并返回相關異常信息。
【文檔編號】H04L29/06GK104038481SQ201410218663
【公開日】2014年9月10日 申請日期:2014年5月22日 優先權日:2014年5月22日
【發明者】陳景暉, 吳飛, 陳亞猛, 黃曉云, 王宏偉, 謝石木林, 顏巧玲, 黃長貴, 劉溪土, 雷文鋒 申請人:國家電網公司, 國網福建省電力有限公司, 國網福建省電力有限公司泉州供電公司, 國網信通億力科技有限責任公司