基于混沌流加密體制的電子海圖數據文件加密方法

電子海圖系統(tǒng)作為導航信息的綜合顯示平臺已被廣泛應用于現(xiàn)代航海過程中,電子海圖系統(tǒng)的信息安全直接影響船舶航行的安全,在研究軍用矢量數字海圖格式(軍用矢量數字海圖格式)的基礎上,提出一種基于混沌流加密體制的電子海圖數據加密方法。

一、軍用矢量海圖格式數據的特點和組織形式

電子海圖系統(tǒng)信息安全問題核心是解決系統(tǒng)中的數據保護。目前,我國出版發(fā)行的數字海圖采用的是軍用矢量數據格式,通常情況下,電子海圖數據文件主要包括3部分:空間數據、屬性數據和符號庫,空間數據是指所研究對象空間坐標,以矢量形式存儲。屬性數據表示研究對象及其周圍環(huán)境固有的數量、質量、分布特征、聯(lián)系和內在規(guī)律的描述。符號庫定義了研究對象的畫法,從而把它直觀地顯示到屏幕上。

軍用矢量海圖格式是一種只存儲海圖地理要素位置坐標和屬性信息,而不存儲其拓撲關系信息的地理數據格式,它具有以下特點:

(1)軍用矢量數字海圖格式是一種簡單無拓撲關系的地理數據模型,支持快速繪圖(顯示)和數據編輯能力。

(2)數據結構簡潔,占用磁盤空間較小。

(3)支持索引文件,標準的軍用矢量數字海圖格式提供數據記錄索引文件,同時支持用戶建立空間索引文件、專題索引等。

(4)直接存?。娪檬噶繑底趾D格式允許軟件直接從存貯介質讀取數據。

(5)支持點、線、面要素和文字注記操作,因而支持全要素海圖數據交換。

(6)屬性支持。軍用矢量數字海圖格式支持屬性操作,要素的屬性存貯在dBase格式文件中,每個屬性記錄與要素記錄一一對應。

(7)數據字典。軍用矢量數字海圖格式參考一個自定義的數據字典,方便用戶理解要素和它的屬性。

軍用矢量數字海圖格式文件以圖幅為單位組織,采用目錄結構,目錄名即為數字海圖的編號,由標識符加圖號組成。

軍用矢量數字海圖格式文件由元數據文件、圖形文件、索引文件和屬性文件等4種文件組成(參見圖1)。

基于混沌流加密體制的電子海圖數據加密方法

圖形文件為直接存取的可變長記錄文件,記錄了海圖要素的坐標位置數據:索引文件記錄描述了對應的圖形文件記錄相對于圖形文件開始點的偏移量;屬性文件為dBase表文件結構,記錄了海圖要素的屬性。圖形文件記錄與屬性文件記錄通過記錄號一一對應,注記文件不具有獨立的文件類型,由一組圖形文件、索引文件、屬性文件組成。

以圖形文件的組織結構具體說明軍用矢量數字海圖格式數據的特性,對于任何一幅數字海圖,每類要素都有一個圖形數據文件,存儲要素為非拓撲幾何信息,要素的幾何信息被存儲為一系列矢量坐標,圖形文件支持數據編輯功能,可被編輯的圖形要素包括點、線、面,面要素被表示為封閉的多邊形,各個要素的圖形文件數據記錄與索引文件數據記錄、屬性文件數據記錄呈一一對應關系,圖形文件由一個定長的文件頭和一系列變長記錄組成,每一個變長記錄又由一個定長的記錄頭和變長的記錄內容組成。

圖形文件的組成如圖2所示。

基于混沌流加密體制的電子海圖數據加密方法

圖形文件的文件頭長為100 bits,它包含了文件代碼、版本、文件長度等信息,圖形文件中每一個記錄里的記錄頭存儲記錄號和內容長度。圖形文件的記錄內容包括圖形幾何要素類型和緊隨其后的圖形幾何數據2部分,記錄內容的長度取決于圖形的頂點、坐標對數。

二、非線性組合混沌流密碼設計

由于電子海圖數據是有限長度信息,并且文件長度不定,考慮到電子海圖數據存儲結構的特點,采用非線性組合混沌流密碼體制對其進行加密,其原理結構如圖3所示。

基于混沌流加密體制的電子海圖數據加密方法

選擇隨機序列發(fā)生器X,U作為并聯(lián)Logistic映射函數的驅動器,隨機形成符合要求的N個Logistic混沌序列產生器P1 P2 ...Pn;再按照提取算法g的要求產生二元序列,由N個變量構成的非線性隨機組合器F對N個驅動序列Y1Y2…YN進行非線性組合,其輸出序列對2取模,產生滿足密碼學特性的密鑰流。這里混沌序列產生器PI P2…PJiv的結構參數和初值是隨機產生的,可按照一定的更新條件而改變,初值選擇范圍定義在0. 00001 ~0. 999 99的隨機數,參數選擇范圍定義在3. 56994 ~3. 99999的隨機數。

由于Logistic映射生成器的研究比較充分,因此重點給出非線性組合生成器的設計方法,很容易用“窮舉法”得到同時滿足一定密碼學條件的布爾函數,但是用“窮舉法”獲得高次密碼函數是不現(xiàn)實的.所以可以選擇用“窮舉法”得到n =5時滿足條件的若干個布爾函數,采用一定的構造方法來得到新的高次密碼函數,文中選擇形如函數f(y,x)=y.p(x)+r(x)的構造方法可以實現(xiàn)高代數次數的平衡后階相關免疫函數,并且結構相對簡單,易于實現(xiàn),具有較強的抵抗線性攻擊和相關攻擊的能力。

令m和n為正整數(n<m),r(x)和Pα(x),(α=1.2,…,n)為G(2脅^)上的任意布爾函數,令x=(x1,x2,...,xn),y=(y1,y2,...ym-n),Imn={I0...0,I0...1,I1...1},Imn中包含2m-n個函數,設:

基于混沌流加密體制的電子海圖數據加密方法

由式(1)定義的函數f是G(2m)上的平衡k階相關免疫函數,其中k是滿足下述條件的整數:

基于混沌流加密體制的電子海圖數據加密方法

式中:α=2m-n,α的二進制表示為(α1,α2,…,αm-n);p(x)={P1(x),P2(x)...pα(x)},w(p(x))表示p(x)的漢明重量;y*pα(x)表示y與Pα(x)的點積。

三、軍用矢量數字海圖格式數據文件加密方法

根據上述對軍用矢量數字海圖格式數據格式的研究,可知這是一個沒有拓撲關系的數據存儲結構,空間信息按照一定的格式逐條存入記錄,因此進行數據文件加密時不必考慮數據之間的拓撲關系。

對于空間地理信息的數據,最重要的是空間位置信息,因此只要對空間位置進行加密,就使得數據入侵者即便知道數據的交換格式,也不能得到正確的空間位置信息,即要素的位置與屬性對應關系已經被打亂,變成無用的信息,另外,根據要素的特點,可以分為點狀、線狀、多邊形,等.但是無論哪種要素,都是用特殊點來表示的,因此加密時只要把特殊點的位置信息讀取出來,然后用前述的序列加密算法產生的密鑰進行逐位異或處理,從而實現(xiàn)數字海圖文件加密,由于每個圖形文件的長度不同,而且存儲的要素信息不同,加密之前要計算需要加密的明文的長度,以便產生相同長度的密鑰。

基于混沌流加密體制的電子海圖數據加密方法

由于海圖文件是按圖層分別存儲的,所以加密時應該分別處理,加密流程如圖4所示,根據文中方法,可以獲得加密的海圖文件,加密后文件中的海圖空間位置信息已經被打亂,如圖5所示。

基于混沌流加密體制的電子海圖數據加密方法

這里只對存儲水深這一層信息文件soudptp. shp進行加密處理,雖然可以打開海圖文件,但是水深要素的信息已經無法找到正確的位置顯示,因此就失去了地理信息的物理意義,達到了海圖文件加密的效果。

四、電子海圖系統(tǒng)信息安全解決方案

1、數據保護方案的用戶關系

解決電子海圖系統(tǒng)的安全問題,不僅需要考慮技術層面的數據文件加密問題,而且必須充分考慮不同用戶之間的角色。只有構建一個合理的管理流程,采用安全的信息技術,才能有效地保障數據的安全性和可靠性。文中提出的數據保護方案的用戶關系如下:

(1)數據保護方案管理者

數據保護方案管理者( data protection schemeadministrator)只負責數據的維護和協(xié)調,數據保護方案管理者一職應該由數字海圖數據的最高管理者擔任。

數據保護方案管理者負責控制加入保護方案的會員資格并確保所有的參與者都按照既定的規(guī)程操作,維護用于實施整個數據保護方案的頂級密鑰,并且是唯一可以給其他該保護方案的參與者頒發(fā)認證書的機構。數據保護方案管理者還是與該保護方案有關的所有文檔的管理者。

(2)數據服務端

數據服務端按照在數據保護方案中規(guī)定的規(guī)程和方法進行加密和簽署電子海圖數據信息。海軍海圖出版社就是數據服務端的例子,它具有數字海圖生產與發(fā)行的職能。

(3)數據客戶端

數據客戶端是電子海圖( electrontc navigationchart,ENC)信息的使用者并從數據服務端接收到受保護的信息.數據客戶端按照數據保護方案規(guī)定的規(guī)程要負責ENC數字簽名的鑒定和ENC信息的解密。鑒定和解密過程由數據客戶端的應用軟件來實現(xiàn)。擁有電子海圈系統(tǒng)使用權的航海人員就是數據客戶端的例子,數據保護方案并沒有妨礙電子海圖發(fā)行部門向他們的客戶提供數據服務。

(4)應用系統(tǒng)開發(fā)商

數據保護方案管理者給系統(tǒng)開發(fā)商提供唯一的開發(fā)商密鑰和標識(OEM_KEY和OEM_ID),應用系統(tǒng)開發(fā)商也應該向每一個可唯一識別的最終用戶安裝能夠提供可靠安全機制的軟件系統(tǒng)。該數據保護方案要求每一個安裝都要有唯一的硬件標識( HW_ID)。

2、ENC數據管理操作流程

文中提出的保護方案只加密軍用矢量數字海圖格式交換集中的ENC數據文件,這些文件包含個體圖形單元文件和更新文件,每幅單獨的ENC單元圖形文件使用一個單元密鑰種子產生的密鑰加密。該密鑰也用于加密所有的由該ENC文件產生的更新文件。單元密鑰種子以單元許可的形式傳送給數據客戶端。

從圖6給出的操作流程可知,應用系統(tǒng)開發(fā)商在為用戶安裝電子海圖系統(tǒng)時,必須指定唯一的硬件標識HW_ID,同時向數據保護方案管理者登記該標識,應用系統(tǒng)開發(fā)商還必須使用自己的開發(fā)商密鑰OEM_KEY和標識OEM_ID。根據HW_ID標識生成用戶許可,用戶通過該許可向數據服務端申請電子海圖數據,數據服務端有權判別用戶許可的真實性,如果用戶身份屬實,提供加密的ENC數據,電子海圖系統(tǒng)應用軟件應該具有鑒別數據有效性的能力,如果數據來源有效,解密單元許可文件,獲得密鑰種子,根據選擇的序列密碼算法生成解密密鑰,解密ENC數據,然后進行格式轉換,顯示電子海圖信息。

基于混沌流加密體制的電子海圖數據加密方法

小知識之電子海圖

“電子海圖” 是一個很模糊的概念,一般把各種數字式海圖及其應用系統(tǒng)統(tǒng)稱為電子海圖。電子海圖顯示與信息系統(tǒng)(ECDIS)被認為是繼雷達/ARPA之后在船舶導航方面又一項偉大的技術革命。從最初紙海圖的簡單電子復制品到過渡性的電子海圖系統(tǒng)(ENS),ECDIS已發(fā)展成為一種新型的船舶導航系統(tǒng)和輔助決策系統(tǒng),它不僅能連續(xù)給出船位,還能提供和綜合與航海有關的各種信息,有效地防范各種險情。