因特網(wǎng)的飛速發(fā)展,帶動了傳統(tǒng)甚至新興行業(yè)的不斷更新,因特網(wǎng)上的電子商務(wù)已經(jīng)是一個眾所周知的名詞。EDI(電子數(shù)據(jù)交換)作為電子商務(wù)的一部分,也逐漸從基于增值網(wǎng)的模式(VAN EDI)發(fā)展到了因特網(wǎng)上。VAN EDI的核心是EDI中心,通常由一臺功能較強的計算機充當中心機,完成大部分復(fù)雜的EDI功能。一個EDI中心可通過網(wǎng)絡(luò)與其他的EDI中心互聯(lián)。EDIVAN 支持大量的通信協(xié)議,速率較低,費用較高。EDIVAN 最重要的一點是充當了一個可信的第3 方,保證通過VAN 的EDI交換不受安全威脅。EDIVAN 確保EDI交換的完整性,對貿(mào)易伙伴進行鑒別,并提供若干確認信息,用于跟蹤在VAN 上傳輸?shù)腅DI交換。EDI的完整性確保EDI交換從發(fā)送方到接收方的傳送過程中沒有經(jīng)過任何修改;對貿(mào)易伙伴的鑒別保證只有經(jīng)過確認的貿(mào)易伙伴才能提供發(fā)送和接收服務(wù)。貿(mào)易伙伴使用各自合法的標識(ID)和口令字登錄到系統(tǒng),系統(tǒng)對其進行檢查并驗證其有效性。VAN 還提供不同級別的服務(wù),以便讓用戶跟蹤其EDI交換過程。因特網(wǎng)為EDI技術(shù)的應(yīng)用提供了一個通信基礎(chǔ),與基于VAN 的EDI系統(tǒng)相比,在因特網(wǎng)從事EDI活動有很多好處,其中廉價、便捷以及可縮放性是其主要的優(yōu)點,因而利用因特網(wǎng)實現(xiàn)EDI一開始就受到中小型用戶的歡迎。但由于因特網(wǎng)的開放性,以及沒有提供任何安全保證,也帶來了一個十分重要的問題:如何確保在其上傳輸EDI報文的安全性。一般說來,系統(tǒng)的開放程度越高,安全問題就越突出。因此運行于因特網(wǎng)上的EDI系統(tǒng)的安全性便成為衡量該系統(tǒng)是否可行的一個重要因素。
1 因特網(wǎng)EDI安全概述
VAN EDI基于EDI交換中心,提供了封閉、安全的系統(tǒng),其可靠性高。因特網(wǎng)EDI的解決方案則基于開放、廉價和高適應(yīng)性的系統(tǒng),沒有交換中心的概念,因此所有由VAN EDI交換中心完成的工作必須由貿(mào)易伙伴的端系統(tǒng)承擔。端系統(tǒng)不僅要完成對用戶EDI單證的處理,更重要的是要解決EDI報文在因特網(wǎng)上的傳輸安全問題。由于EDI交換涉及到貿(mào)易雙方的經(jīng)濟利益,而且利用因特網(wǎng)從事EDI的用戶地理位置上分布更為廣泛,貿(mào)易雙方之間的制約因素很少甚至沒有,所以實現(xiàn)因特網(wǎng)EDI,一是要解決安全性問題,二是要選擇與安全策略相配套的傳輸協(xié)議。
1.1 安全問題
1.1.1 有效性
EDI作為貿(mào)易的一種形式,其信息的有效性將直接關(guān)系到個人、企業(yè)或國家的經(jīng)濟利益和聲譽。
因此,針對因特網(wǎng)的開放性的特點,要考慮對網(wǎng)絡(luò)故障、操作錯誤、應(yīng)用程序錯誤、硬件故障、系統(tǒng)軟件錯誤及計算機病毒所產(chǎn)生的潛在威脅并加以控制和預(yù)防,以保證貿(mào)易數(shù)據(jù)在確定的時刻、確定的地點是有效的。
1.1.2 機密性
EDI作為貿(mào)易的一種手段,其信息直接代表著個人、企業(yè)或國家的商業(yè)機密。傳統(tǒng)的紙面貿(mào)易都是通過郵寄封裝的信件或通過可靠的通信渠道發(fā)送商業(yè)報文來達到保守機密的目的。建立在因特網(wǎng)開放的網(wǎng)絡(luò)環(huán)境上的EDI,尤其要預(yù)防非法的信息存取和信息在傳輸過程中被非法竊取。維護商業(yè)機密是EDI全面推廣應(yīng)用的重要保障。
1.1.3 完整性
EDI簡化了貿(mào)易過程,減少了人為的干預(yù),同時也帶來維護貿(mào)易各方商業(yè)信息的完整、統(tǒng)一的問題。由于數(shù)據(jù)輸入時的意外差錯或欺詐行為,可能導(dǎo)致貿(mào)易各方信息的差異。此外,數(shù)據(jù)傳輸過程中信息的丟失、信息重復(fù)或信息傳送的次序差異也會導(dǎo)致貿(mào)易各方信息的不同。貿(mào)易各方信息的完整性將影響到貿(mào)易各方的交易和經(jīng)營策略,保持貿(mào)易各方信息的完整性是EDI應(yīng)用的基礎(chǔ)。因此,要預(yù)防對信息的隨意生成、修改和刪除,同時要防止數(shù)據(jù)傳送過程中信息的丟失和重復(fù)并保證信息傳送次序的統(tǒng)一,這一點在利用因特網(wǎng)作為傳輸媒體時更為重要。
1.1.4 可靠性/ 無否認性/ 認證
EDI可能直接關(guān)系到貿(mào)易雙方的商業(yè)交易,如何確定要進行交易的貿(mào)易方正是進行交易所期望的貿(mào)易方,這一問題則是保證EDI順利進行的關(guān)鍵。在傳統(tǒng)的紙面貿(mào)易中,貿(mào)易雙方通過在交易合同、契約或貿(mào)易單據(jù)等書面文件上手寫簽名或印章來鑒別貿(mào)易伙伴,確定合同、契約、單據(jù)的可靠性并預(yù)防抵賴行為的發(fā)生,這也就是人們常說的“白紙黑字”。在基于因特網(wǎng)的EDI方式下,通過手寫簽名和印章進行貿(mào)易方的鑒別已是不可能的。因此,要在交易信息的傳輸過程中為參與交易的個人、企業(yè)或國家提供可靠的標識。
1.1.5 審計能力
根據(jù)機密性和完整性的要求,應(yīng)對數(shù)據(jù)審計的結(jié)果進行記錄,以便為以后貿(mào)易雙方可能的紛爭提供有效的法律依據(jù)。
1.2 安全算法選擇
安全性的實現(xiàn)需要具體的安全算法來實現(xiàn)。根據(jù)因特網(wǎng)的特點,在因特網(wǎng)中實現(xiàn)EDI的安全性,需要考慮下列因素:
1)算法的安全性。根據(jù)EDI系統(tǒng)的安全級別要求,所選的算法是否可以滿足當前和今后一段時期的要求。安全算法應(yīng)該沒有陷門,算法的安全性只由密鑰長度決定。一般選用國際上公開的安全算法,最好自行設(shè)計。
2)算法實現(xiàn)的速度。速度是效率的前提,應(yīng)該保證算法軟件實現(xiàn)的簡潔和高效。
3)算法在國際、國內(nèi)的通用性。通用算法通常是被證明沒有陷門和高效的
。
4)是否具有支持此算法的API 接口和工具。
5)在已有的系統(tǒng)中,該算法使用的頻度。
1.2.1 加密
常見的密碼算法體制分為對稱密碼算法體制和非對稱密碼算法體制。對稱加密方式的算法主要有:DES,3DES,RC2,RC5 和IDEA 等,其中IDEA(international data encryption aIgorithm)算法在形式上與DES 類似,但使用l28 位的密鑰,強度高于DES。加密和解密密鑰都可從同一個主密鑰派生出來。IDEA 的設(shè)計傾向于軟件實現(xiàn)。到目前為止,從公開發(fā)表的文獻看,對IDEA 尚未找到破譯方法。公開密鑰加密算法主要為RSA 算法。該算法已經(jīng)成為事實上的公開密鑰密碼算法標準,得到了廣泛使用。
1.2.2 密鑰管理
密鑰管理是加密技術(shù)的重要一環(huán),密鑰管理的重點是確保密鑰的安全性(真實性和有效性)。長實效的對稱加密是基于共同保守秘密來實現(xiàn)的,但實用中常通過公開密鑰加密技術(shù)來簡化對稱密鑰的管理,同時也可解決純對稱密鑰模式中存在的可靠性和鑒別問題。貿(mào)易方可以為每次交換的信息(如每次的EDI交換)生成一次性的會話密鑰。
公開密鑰密碼體制密鑰管理主要解決2 個問題:秘密密鑰的保護和公開密鑰及其所有者身份的確認。
秘密密鑰由用戶內(nèi)部所采取的安全策略加以保護,一般用口令或存取權(quán)限等訪問控制策略進行保護。其安全性依賴于操作系統(tǒng)的安全性以及實際系統(tǒng)的管理和維護。
公開密鑰及其所有者身份的確認,目前一般根據(jù)X.509建議,由貿(mào)易雙方信賴的簽證機構(gòu)(certification authorities,CA)來完成。CA 為每一個用戶頒發(fā)其簽發(fā)的數(shù)字證書(certificate)。數(shù)字證書通常包含有惟一標識證書所有者(即貿(mào)易方)的名稱、惟一標識證書發(fā)布者的名稱、證書所有者的公開密鑰、證書發(fā)布者的數(shù)字簽名、證書的有效期及證書的序列號等。數(shù)字證書能夠起到標識貿(mào)易方的作用,是目前電子商務(wù)廣泛采用的技術(shù)之一。
1.2.3 報文內(nèi)容完整性
報文內(nèi)容完整性檢查(MIC)用以確保報文內(nèi)容的完整性,報文完整性檢查通過給發(fā)送的報文附加一個報文完整性檢查值(亦稱為MIC)來實現(xiàn)。通常該完整性檢查值可通過對報文進行摘錄或散列得到。對報文進行摘錄或散列的算法叫做單向散列函數(shù)。從單向散列函數(shù)得到的報文完整性檢查值一般為112~160 bit,該完整性檢查值(MIC)位數(shù)越多,則該算法越安全。SHA-1(安全散列算法)是美國國家安全局開發(fā)的單向散列函數(shù),其散列值長為160 bit,使用窮盡法攻擊是不可行的。MD5(文摘算法),是另一個單向散列函數(shù),其散列值長為128bit,目前在因特網(wǎng)電子郵件系統(tǒng)安全服務(wù)中有著廣泛應(yīng)用。
1.2.4 數(shù)字簽名
數(shù)字簽名技術(shù)廣泛應(yīng)用于EDI應(yīng)用系統(tǒng)中的源鑒別和發(fā)方不可否認服務(wù)中,收方不可否認服務(wù)也需結(jié)合數(shù)字簽名技術(shù)予以實現(xiàn)。數(shù)字簽名的基礎(chǔ)是密碼技術(shù),目前較多使用公開密鑰密碼體制實現(xiàn)數(shù)字簽名。用于數(shù)字簽名的公開密鑰密碼算法一般選用RSA 算法。
1.2.5 序列號
序列號可用來向收方提供檢測報文丟失或重放攻擊的手段。報文序列號本身必須應(yīng)用數(shù)字簽名或內(nèi)容完整性檢查技術(shù)進行保護。有時也可用時間戳(timestamp)代替序列號,只是時間戳本身不能用以識別報文的丟失,而且要對發(fā)方和收方進行時間同步校驗,以確保時間戳的有效性。
1.2.6 簽收或收方無否認
簽名收據(jù)是由貿(mào)易雙方中的收方發(fā)給發(fā)送方的確認信息。在實施因特網(wǎng)EDI時,簽收用來實現(xiàn)如下目的:提供報文投遞通知;提供報文拾取通知;提供報文認證功能;可檢測出EDI交換在何處被有意刪除或沒有被傳輸系統(tǒng)所投遞。
發(fā)送方收到簽名收據(jù),即意味著本次報文已成功投遞,同時也明確地確認了這個交換已被取走——拾取通知。通過收方簽收的收據(jù),可以證實真正的接收者已收到了EDI交換,并且真正的接收者已驗證了本次交換的完整性和發(fā)送方的身份。通過在簽名收據(jù)中返回源報文的標識和收到內(nèi)容的一次性Hash 值(信息摘錄),發(fā)送者可確認其與發(fā)送內(nèi)容的一致性。
1.3 因特網(wǎng)傳輸協(xié)議選擇
因特網(wǎng)為信息傳輸提供了眾多的方式,這些方式配上相應(yīng)的安全措施可用于傳輸各種信息,甚至一些重要的敏感的信息。因特網(wǎng)EDI的實現(xiàn)基于應(yīng)用層,EDI報文通常包含非文本信息,所以可采用IETF(因特網(wǎng)工程任務(wù)組)制定的一系列Internet/MIME(多用途Internet 郵件擴展)協(xié)議。這些Internet /MIME 系列標準,對標準的電子郵件報文頭域進行了擴展,并擴充了電子郵件可以攜帶的信息類型(報文類型),還向用戶提供作進一步擴充的方法。在這個MIME V1.0 版中,定義了7 種報文類型,同時對每一“報文類型”又定義了“子類型”,并規(guī)定在頭域中采用“類型/ 子類型”格式予以表示。“類型”用來說明報文體的一般類型,“子類型”則說明這種類型的報文采用的具體格式。接收方在接收到采用“類型/ 子類型”說明的報文時,應(yīng)調(diào)用相應(yīng)的解釋程序?qū)笪捏w進行處理。
為了支持EDI單證的封裝,IETF 提出了RFC1767,在Application 類型中擴充定義了3 種新的子類型:application/EDIFACT,application/EDI-X12 和application/EDI-consent,分別表示報文體部封裝的EDI單證符合EDIFACT,ANSI X12 或者EDI用戶雙方共同商定的標準。封裝了EDI單證的Internet/MIME 郵件稱為Internet/MIME EDI報文。RFC1767規(guī)定。1 份Internet/MIME EDI報文中只能封裝1 個EDI交換(interchange),1 個EDI交換中至少含有1個EDI單證。當采用EDIFACT 標準時,1 個EDI交換用交換頭UNB 和交換尾UNZ 限定。用Internet/MIME 電子郵件封裝EDI交換時,并不改變其語法和語義,只是負責EDI交換的傳輸。
1.4 因特網(wǎng)EDI安全協(xié)議
要實現(xiàn)因特網(wǎng)EDI報文的安全傳輸,可利用因特網(wǎng)現(xiàn)有的標準,如Internet/MIME 安全框架、Internet/MIME 安全協(xié)議(如S/MIME或PGP/MIME)來實現(xiàn)。
Internet/MIME 安全框架定義了實施安全處理后的Internet/MIME 的報文結(jié)構(gòu),并在MIME Muitipart類型中增加了2 種新的安全子類型signed 和encrypted。子類型signed 表示對Internet//MIME 報文實施數(shù)字簽名技術(shù),提供鑒別、完整性檢查和發(fā)方不可否認等安全服務(wù)。子類型encryptd 表示對Internet//MIME 報文實施加密技術(shù),提供密文傳輸服務(wù)。根據(jù)安全框架的定義,這2 種安全子類型報文都由2 個體部組成,一個體部存放被保護的數(shù)據(jù),另一個體部提供控制信息,包括使用的安全算法、完整性檢查信息和證書等,用于收方對實施了保護的Internet//MIME 報文進行處理(如解密等)。
因特網(wǎng)/MIME 安全協(xié)議S/MIME 和PGP/MIME 均建立在Internet//MIME 安全框架之上,但兩者在格式上有很大差異。
值得一提的是S/MIME 不是IETF 的標準。它使用RSA 進行密鑰交換,使用弱密碼系統(tǒng)(40 位密鑰)。目前,S/MIME v3 正在制定之中,并有望成為IETF 的標準。
PGP/MIME 使用RSA 進行密鑰交換,并利用IDEA 進行加密,這2 個算法原先均受到專利保護,因而限制了PGP/MIME 成為IETF 標準。為此,IETF OpenPGP 工作組重新制定了OpenPGP 協(xié)議,并力爭成為IETF 標準。S/MIME 和PGP/MIME 的比較如表1 所示。
表1 S/MIME和PGP/MIME實現(xiàn)比較
2 安全性的實現(xiàn)
2.1 PGP/MIME 安全協(xié)議及其工作方式
作為江蘇省“九五”科技攻關(guān)項目之一的“基于因特網(wǎng)的EDI系統(tǒng)研究”,在經(jīng)過充分論證的基礎(chǔ)上,作者在實現(xiàn)其原型系統(tǒng)時選用了PGP/MIME 安全協(xié)議。在實現(xiàn)PGP 算法時,參考了PGP 國際版5.5.3i 的源代碼,并在此基礎(chǔ)上添加了封裝和拆封模塊和郵件傳輸模塊。PGP5.5.3i 中使用的安全算法主要有:DSS,RSA,IDEA,SHA-1 和MD5,PEM(privacy enhancement for internet eiectronic maii)。PGP 實現(xiàn)了DSS 和RSA 密鑰對的自動生成,并可對外公布公開密鑰。PGP 還提供了數(shù)據(jù)壓縮功能,使用的壓縮算法是ZIP。為適合郵件傳輸,PGP 還允許用戶對信息進行7 bit 封裝,使用的算法是PEM。
2.2 PGP/MIME 的總體結(jié)構(gòu)和主要模塊
PGP/MIME 的總體結(jié)構(gòu)如圖1 所示。
圖1 PGP/MIME功能模塊
2.3 密鑰管理與認證
2.3.1 私有密鑰管理
私有密鑰具有難以記憶的特點,為此本系統(tǒng)采用下述方法:將用戶的私有密鑰保存在特定的文件中,保密的辦法是由用戶為隨機生成的RSA 私有密鑰指定一個口令字(pass phase)。只有通過給出口令才能將私有密鑰釋放出來使用。
2.3.2 認證
考慮到現(xiàn)實世界中還缺少廣泛使用的認證機構(gòu);X.509 證書還需要作補充描述;證書的申請、廢除、交換和作廢證書列表均有待于進一步標準化。
由于在EDI貿(mào)易伙伴間已存在一種信任關(guān)系,作為一種短期行為,貿(mào)易伙伴間可相互認證。相互認證意指將互換公鑰和對公鑰的認證作為建立貿(mào)易伙伴關(guān)系的一部分來處理。在實際操作過程中,貿(mào)易雙方在履行了完備的貿(mào)易手續(xù)和一定的法律規(guī)范約束之下,可以保證交易的合法性和可審計性。
本系統(tǒng)采用了相互認證的方法,具體做法是為每個公鑰生成各自的標識(keyID),keyID 是1 個8位16 進制數(shù),2 個密鑰具有相同keyID 的可能性是幾十億分之一,而且PGP 還提供了一種更可靠的標識密鑰的方法:“密鑰指紋”(key's fingERPrint)。每個密鑰對應(yīng)一串數(shù)字(16 個8 位16 進制數(shù)),這個數(shù)字重復(fù)的可能就更微乎其微了。而且任何人無法指定生成一個具有某個指紋的密鑰,密鑰是隨機生成的,從指紋也無法反推出密鑰來。這樣當A 拿到某人的公鑰(通過信函或者電子郵件)后就可以和他在電話上核對這個指紋,從而認證他的公鑰。如果A 無法和B 通電話,那么他可以煌C 通電話認證B 的公鑰,從而通過C 認證了B 的公鑰,這就是直接認證和間接介紹的結(jié)合。
3 基于PGP/MIME的因特網(wǎng)EDI系統(tǒng)
因特網(wǎng)安全系統(tǒng)實現(xiàn)的整體框架結(jié)構(gòu)如圖2所示。用戶首先要進行身份鑒別,然后進入系統(tǒng),此時用戶可執(zhí)行EDI單證生成、標準裁剪、報文翻譯等操作。EDI報文生成后,按圖2 中的流程進行安全處理,最后生成安全的單證進行傳輸。
圖2 安全傳輸子系統(tǒng)工作流程(加密過程)
4 結(jié)語
因特網(wǎng)EDI的實現(xiàn)的關(guān)鍵就是安全性。作者在分析了EDI報文有可能受到安全威脅的基礎(chǔ)上,實現(xiàn)了基于貿(mào)易雙方相互認證的安全系統(tǒng),該系統(tǒng)目前已經(jīng)通過江蘇省科委的鑒定。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標題:因特網(wǎng)EDI(電子數(shù)據(jù)交換)的安全研究及實現(xiàn)
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/1083955101.html