资源描述
非同步傳送模式(ATM)網路安全協定之研究
陳彥文
中央警察大學資訊管理學系
壹、 前言
ATM技術的興起,利用ATM做為下一代網際網路傳送骨幹已為技術發展之趨勢[1, 2, 3]。但由於在現有的網際網路上,大都是在上層通信(Upper Layer)協定中考慮資料安全性的問題,例如,SSL、及IP Security等。這是因為網際網路技術的發展已有相當時日,很難在既有的架構上,大幅修改以提供安全通訊的服務。理論上,依網路通信層堆疊的架構而言,若能在越下層考慮安全問題,則越能得到安全保障。更何況ATM網路只是一個傳送骨幹基礎網路,網際網路只是其中的一種應用,ATM網路上還可提供諸如現有語音、或視訊方面的服務。正由於現在的存在認證和金匙分配(key distribution)的設計,大部分都針對在應用層(application layer) 來使用,在下層通信協定所考慮的安全機制都偏向所謂的”輕薄短小” (light-weight)的認證(authentication)和金匙分配,提供一個較有彈性且可適用再不同網路下的一個機制[4]。因此,當ATM網路為下一代網際網路的底層時,在ATM網路中考慮安全協定,對未來網路發展而言,是非常重要的。
事實上,ATM Forum早已成立一ATM網路安全技術規範的專門制定小組,ATM Security Group,進行相關技術研發與標準討論的工作,並於1999年提出版本1.0的規格[5, 6]。ATM網路除通信層有實體層、ATM層、及AAL層三規約外,依所傳送資料的性質又可分成控制面(Control Plane)、使用者面(User Plane)、及管理面(Management Plane)三個縱切面。其中Control Plane主要提供網路控制訊息的傳遞;User Plane提供使用者資料的傳送;而網路管理訊息則經由Management Plane處理。目前的版本1.0中已對使用者面及控制面之部份功能有做規範,如圖1所示,其中有陰影部份即代表在目前規範中有包括。
圖1 ATM Security標準現況(1999年Version 1.0)
從圖中可看出目前使用者面部份制定的較為完整。
本文之主要重點除介紹目前剛通過的ATM安全協定,並對其中資料傳送安全頗為重要的會議金匙更新與管理做較詳盡的探討外,也將對IPOA (IP over ATM)架構下,ATM安全協定之應用做一簡單之討論。
貳、 安全協定之主要內容
一、 基本功能需求
1. 認證(Authentication) – 主要功能為對呼叫者和被呼叫者的身分是否合法進行確認的工作。在網路應用上,使用認證是達到存取控制最基本的方法,經由認證才可以確保通信雙方的真實身分。認證的服務被定義在兩點之間(中間節點或末端端點),認證服務可以是雙向(ex.電子交易)也可以是單向的(ex.銀行提款)。
2. 私密性(Confidentiality) – 主要目的在提供一個加密的機制來保護使用者資料,以防止非法的接收者發現明文。在ATM通信協定參考模式中,一般認為ATM的安全加密應在ATM層完成,其主要理由為,ATM cell的大小固定,對ATM cell payload進行加/解密很適合以硬體方式達成,可提升效能。
3. 完整性(Integrity) – 主要功能為確定資訊在傳送的過程中,避免被更改、複製、或刪除。這項服務依目前標準的建議,主要是在端點的AAL Service Data Unit level來完成,所以在ATM網路中,資料的完整性是定義在虛擬連線(VP或VC)的層次。而在做法上,提供兩種選擇(圖2):
l 沒有複製/重送保護架構:
主要做法:在傳輸之前,再AAL-SDU尾端加一個簽章,這簽章是由AAL- SDU所計算出來,這種選擇對上層通信協定(high layer protocol)已有資料序碼(Sequence number)或日期、時間欄位者較為適用,因為它們擁有自己的封包序碼,不易被複製。在接收端,Security Agents需確認送端的簽章,假如不正確丟棄。
l 有複製/重送保護架構:
主要做法:這種保護可以避免複製,再重送的攻擊,首先在發送端的安全機制先產生一序碼,附加在每一個AAL -SDU的尾端,然後再利用AAL-SDU和所產生的序碼計算出簽章,接收端則需先確定簽章的正確性看資料是否無誤,再確認序碼來確定AAL-SDU是否有經第三者複製下來再重送。
圖2 AAL-SDU Level Data Integrity
4. 接取控制(Access control) – 由於網路是提供資源供多人共同使用,因此,在網路層次,需具備一安全的程序來檢查使用者是否有權使用網路上的資源。在ATM網路安全規範中,此部份被定義為ATM層面需考慮的功能,包括終端設備對交換網路(endpoint-to-switch),及交換網路之間 (switch-to-switch)。
二、安全協定之訊息交換架構與協定
1. 安全代理者架構
安全訊息的溝通是由送收兩端的安全代理者(Security agents)所進行,而安全代理者在ATM網路架構中可以有幾種組態及應用方式,以下針對這幾個參考模式加以說明:第一種組態為如圖3所示,安全代理者對應在一條虛擬電路(virtual circuit) 的兩端,相互協調以提供安全服務。圖中末端系統經由UNI到ATM網路,安全代理者存在於一條已建立虛擬通道之末端系統之間。在此圖中,安全服務的協調和應用,都經由對等的安全代理者間之安全通道(security associations)達成。
圖3 兩端安全代理者依附於ATM虛擬通道中
第二種組態方式為一方之安全代理者與ATM交換機結合,而另一端則維持依附於特定應用服務之虛擬通道,如下圖4所示。
圖4 一端之安全代理者與ATM交換機結合
在此架構中,在交換機裡的安全代理者,可當作代理器(proxy),處理一個或多個末端系統提供服務,也就是說末端系統有可能是ATM的用戶/設備,也有可能是非ATM用戶/設備,例如,Ethernet/Fast Ethernet port等,所以在交換機端的安全代理者可視為末端系統proxy a virtual SA。
第三種組態為層次化之安全代理者,其中第一階層的安全代理者與ATM交換機相結合,而第二層之代理者則依附於各自之特定應用服務,如下圖9-5所示。此架構中,可收容超過一個以上之安全代理者,且有超過一條之安全通道提供點對點的認證,也就是說不同的安全服務可以在網路的不同部份同時存在,這也可叫做具有拓樸的安全通道(Topology security association)。意思就是說不同的安全通道,被允許重疊在同一條虛擬電路的路徑上。例如,圖5中,”SA2、SA3”被包含在”SA1、SA4”,但另一種在Association之間,亦可以是沒有重疊的,例如,”SA1、SA3”及”SA3、SA4”間即屬於此類。
圖5 層次化之安全代理者
2. 安全訊息交換協定
為了完成上述的安全基本功能,邏輯上,考慮在ATM網路中的收送兩端有所謂的Security Agents進行訊息交換(message exchange)以交換一些安全參數,而訊息交換的方式有兩種:
l 附加於信號協定頻道中(message exchange in UNI 4.0 singaling)
l 附加於使用者頻道中(in-band message exchange) ,即security agents與控制層分離。
安全訊息交換有兩種基本方式,一種為三步驟安全訊息交換協定(Three-way security message exchange protocol),另一種為兩步驟安全訊息交換協定(Two-way security message exchange protocol)。其中,三步驟安全訊息交換協定較常被用於點對點(Point to point)連線或是點對多點(Point to multi-point)的第一個連線使用,因為此協定中,提供了協調安全參數的功能;而兩步驟安全訊息交換協定不提供協調安全參數的功能,一般使用於點對多點通信的第二個連線(含)以上建立時使用,因為第二個連線所需之安全參數,均依循第一個連線已選用的參數,因此並不需要再協調。而點對點連線,若毋需協調安全相關之參數,亦可採用兩步驟安全訊息交換協定,以減低複雜度。有關三步驟及兩步驟協定之詳細說明,由於牽涉到相當多的安全參數定義,若想做深入的瞭解,建議直接參考[6]之說明。在此安全訊息交換階段,不論是三步驟或兩步驟方式,其目的除協調雙方所用的加/解密方法外,最重要的是讓雙方能擁有對方的第一把會議金匙(Session key)及萬用金匙(Master key),會議金匙係做為資料加密使用;而萬用金匙則是在通信過程中,當要更改會議金匙時,用來傳遞新的會議金匙使用。值得一提的是在ATM安全協定中,並未對資料加/解密的方式提出新的演算法,而是採用既有的對稱(Symmetric)及非對稱(Asymmetric)的加/解密機制,加以應用,並融入通信協定的流程中。因此,目前所提出之ATM安全協定流程中,均可依需要選擇對稱或非對稱加/解密演算法,而且若有新的加/解密演算法提出,也可很容易的被應用於ATM安全協定中。有關會議金匙的更新流程,將在下一章節中做進一步說明。
參、 會議金匙更新
在ATM網路中,可依據不同的服務類別及使用上的需要而建立不同的連線,而資料則可因不同需要使用不同的會議金匙來保護,會議金匙是直接在使用者面中對所傳送的使用者資訊做加密。為了安全起見,在資料傳送過程中,此會議金匙可以定期或不定期地更新,所有的會議金匙因更新而需傳送時,則需以萬用金匙加以保護,其中萬用金匙是由之前安全訊息交換中所得到的,而且為了避免的重複使用所以這會議金匙的週期性要很大。
在一連結完成安全訊息交換之後,雙方都擁有萬用金匙,及第一把會議金匙。萬用金匙最大的長度是256bits。對於全雙工和單工的呼叫都只需單一把萬用金匙。萬用金匙也會因為對稱式或非對稱式而稍有不同,在點對點連線中,若使用對稱式,則產生的萬用金匙由啟始端(initiator)和回應端(responder)共同決定,啟始端決定高位元,而回應端決定低位元,若在點對多點連線架構中,則啟始端與回應端還是用同一萬用金匙,只是加密過程,使用回應端的公用金匙(Public key)。
會議金匙是為了直接提供使用者的資料私密與完整性服務所需要加密演算法的私密。對點對多點連線而言,只需要單一方向的會議金匙,這是因為在點對多點連線中,只有單一方向產生資料流,因此,只由啟始端(即root)來提供安全維護,所以只需要單一方向的點對多點連線,雖然在安全訊息交換協定參數中, “ConfPar” token雖然有雙向,但只有單一方向被採用,另一方則捨棄。對於全雙工,則各個方向皆有各自的會議金匙。為了保護高資料量傳輸的安全,所以會議金匙必須週期性的改變且這週期需要很大,避免金匙的重複使用。當任一方要更新會議金匙時,則會在ATM資料流中送出key update OAM cells來交換新的會議金匙。
在ATM層中,OAM流為F4、F5,分別對應於VP級和VC級。F4 OAM流是雙向的,F4細胞與用戶細胞具有相同的VPI值,但其VCI值是預定的,在端點到端點通訊時,VCI值為”0004H”;當通訊限制在同一網路營運者控制下的VP鏈路中時,稱為段F4流(Segment F4 Flow)(把這些VP鏈路串接起來,形成VPC段),VCI值為”0003H”。F4 OAM流只能在VPC端點終接,或在VPC段的連接點終接。F5 OAM流也是雙向的,用特定的PT標識。用於端點到端點F5流時,F5細胞頭部的PT值為”101”,用於段(Segment)F5流時,F5細胞頭部的PT值為”100”。
會議層金匙更新包含兩種程序:會議金匙交換(session key exchange, SKE)和會議金匙變更完成(session key changeover, SKC),分別代表在啟始端和回應端之間交換新的會議金匙、將舊的會議金匙更換成新的會議金匙的不同階段,為了可以快速的更換,並維持金匙的同步,可先將會議金匙考慮成兩種:
l 現用金匙(current-key)
l 待用金匙(next-key)
待用金匙被包含於發送端傳給接收端的ATM OAM的SKE cell中,在接收端則會將此待用金匙儲存在記憶體中直到需要時再取出,在SKE cell中有 Bank ID及key number以區別識別待用金匙與現用金匙,而實際的changeover是發生在SKC cell被接收時。金匙更新對於每一方向的資料流是獨立運作的,若是全雙工的連結,則是發送端需負責本身傳送方向上的金匙更新;在點對多點連線時,有一啟始端和多個接收端且是單向傳輸,所以只需要root提出進行會議層金匙更新,且其他的leaf也和root使用相同的會議金匙。有關上述SKE與SKC的運作說明如下:
(1) SKE階段:
SKE OAM cell被用來傳送從發送端到各接收端的待用金匙,每一次金匙更新會使用”key number”來作同步,為了讓發送端和接收端可以確認目前是否是使用同一金匙,”key number”的長度共有32bits,即可有232-1個不同排列(若每一小時更新一次,則要等到2500年才會發生重覆),所以發送端將待用金匙使用master key加密在放入SKE cell,再由接收端用相同的master key解密,然後儲存下來。由於SKE cell並無重送的保護,所以在協定設計上至少會送三次以上,而由於SKE只是通知性質,因此,相鄰的SKE OAM cell間仍可夾雜User cells。
(2) SKC階段:
當SKE程序完成之後,發送端要開始使用待用金匙時,會先向接收端作交換完成(changeover)的指示,此時,由發送端送出SKC OAM cell來告知接收要開始使用新的會議金匙,其中SKC OAM cell中會包括所要使用新會議金匙的”key number”,確定準備要使用的key是同步的,同樣地,SKC cell也要多送幾次(規範上建議為至少三次)以免遺失(因為在ATM網路中並無重送的機制),所以當接收端收到SKC cell,下一個所接收到的User cell則使用新會議金匙,因為ATM網路是連結式網路,所以後送的絕對不會先到。為兼顧避免SKC cell遺失(所以多送幾次),及讓相鄰SKC cell間能傳送User cells以增進資料傳送效率起見,SKC 可採計數模式(Counter mode),其主要觀念即是利用SKC cell中之狀態向量(State vector),讓接收端瞭解所收到之User cell是否已使用新的會議金匙。但是若ATM網路的細胞漏失率高的狀況下,使用計數模式,則不但對效率沒有提升,反而會大幅衰減系統效能。
肆、 IP over ATM架構之應用
在IPOA中,若採ATM Forum之MPOA或LANE模式,則控制面與使用者面之安全機制均需用到,因為不管是LANE中之ARP Server、Configuration Server、Broadcast and Unknown Server、或MPOA Server與Client端間均需建立連結,以交換Network Address (ATM與IP Address)相關資訊,採用安全性之信號方式,對路由資料之安全與Server之確認,可做到一定的安全保障,達到保護網路的需求。若採IETF的MPLS,則因其未使用ATM之控制面訊息,故只使用到使用者面之安全機制,但MPLS中有關標籤分配協定(Label Distribution Protocol),採用控制面或使用者面之安全機制應該都能做到。
值得一提的是,會議層金匙更新在IPOA網路中僅是整個網路中屬於傳送層安全的機制,在ATM網路的概念中,它可被視為是建立一條安全ATM連線的基礎,因此,在IPOA架構中,若是屬於LANE及MPOA方式,則由於需透過建立連線後再傳送資料,因此,需考慮此問題;若是採用IETF所建議之IP Switch方式,則每個IP Switch之Controller可考慮金匙管理與分配之問題,若是MPLS方式時,則在Label Distribution protocol (或是Cisco公司之Tag distribution protocol)中需考慮如何使每一資訊流(Flow)之加/解密金匙能妥善的讓Ingress router及Egress router知道並管理,因為在Ingress router及Egress router間使用者資訊都是以Mini packet(或是ATM cell)方式透通傳送。
當在IPOA網路上傳送大量資料時,在前面章節有提及為確保資料傳送的安全,在ATM網路上可以進行會議層金匙更新的程序,但從前面的說明可瞭解,目前ATM Forum所建議之SKE及SKC具有方向性獨立,與單向決定(沒有完善之重送Handshaking機制)的特性,因此,在整個金匙更新的過程中,將有可能因金匙交換的缺失,而影響系統疏通率。
另外,以在ATM傳送層加密對IP層的影響來看,由於ATM之加密是針對ATM Cell中的48-byte Payload整個加密,一個IP Packet中不管是IP Header或IP Payload均被視為ATM Cell之Payload,因此,在ATM網路傳送過程中,包括IP Address在內的IP Header是被保護的。在整個網路架構中,在一條已建立之ATM連線上,可收容多條IP-to-IP的虛擬通路(例如校園網路與校園網路間),而其安全代理者之處理方式可運用圖9-5中層次化之做法這些通道的訊息(包括IP Header)均受加密保護。有關IPOA進一步之安全效能、網路管理及對使用者的影響仍有待進一步之探討。
伍、 結論
ATM網路安全方面之相關問題,是目前ATM Forum之研究重點。ATM網路安全協定的重點主要在善用既有的一些資訊安全機制或演算法,將其融入通信協定中,以確保ATM網路傳送的安全性。由於ATM網路已被應用於許多種應用服務中,例如,IPOA、VTOA(Voice Telephony over ATM)等,因此,若能在傳送層考慮一些通信安全的保障,提供一安全傳送平台,當有助於上層各種應用服務的推動。本文除針對目前ATM網路安全協定之內容做一介紹外,也探討在各種IPOA架構中,ATM安全協定的應用。
雖然,ATM Forum歷經多年的討論,終於讓ATM安全協定版本1.0能在本(1999年)定案,但由其規範內容可瞭解,有許多議題仍尚待研究。例如,會議金匙更新的週期與資料量與網路品質的關係、會議金匙維運細胞(SKE/SKC OAM cells)漏失時之影響與恢復、安全信號協定的修訂、金匙管理及其與網管系統間之配合等,這些議題都有待進一步的研究與討論,方能使ATM網路提供更安全且更有效率之服務。
參考文獻:
[1] P. Newman, G. Minshall, and T. L. Lyon, “IP switching – ATM under IP”, IEEE/ACM Trans. on Networking, vol. 6, no. 2, April, 1998, pp. 117-129.
[2] “LAN emulation over ATM –LUNI specification, version 2.0”, The ATM Forum, July, 1997.
[3] M. Laubach, “Classical IP and ARP over ATM”, IETF RFC 1577, Jan., 1994.
[4] Bird, et. al., “The KrypoKnight Family of Light-Weight Protocols for Authentication and Key Distribution,” IEEE/ACM Trans. on Networking, vol. 3, No. 1, pp.31-41, Feb., 1995.
[5] “ATM Security Framework Version 1.0”, af-sec-0096.000, Feb., 1998.
[6] “ATM Security Specification Version 1.0”, af-sec-0100.000, Feb., 1999.
[作者簡介]
陳彥文
大同工學院電機工程學系畢業,國立中央大學資訊工程碩士,國立臺灣科技大學電子工程博士,民國72年至87年7月任職於交通部電信研究所(已改制為中華電信研究所);民國87年8月起任教於中央警察大學資訊管理學系。在中華電信公司電信研究所服務時,擔任寬頻ATM網路發展及寬頻網際網路計畫總計畫主持人。陳博士目前主要研究方向為寬頻網際網路架構、網路效果與品質保證、網路管理與安全等。
展开阅读全文