陳顯毅
[摘要]首先給出VPN的分類,接著討論了VPN的隧道、加解密、身份認證等關鍵性技術,最后指出VPN的典型應用。
[關鍵詞]VPN Internet 隧道
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0510122-01
一、引言
虛擬專用網(Virtual Private Network,VPN),是近年來發展起來的一種新技術,用以實現在公用網絡上構建專用網絡。VPN有別于傳統網絡,它并不實際存在,而是利用現有公共網絡,通過資源配置而成的虛擬網絡,是一種邏輯上的網絡。VPN只為特定的企業或用戶群體所專用,從VPN用戶角度來看,使用VPN與傳統專網沒有區別。
隨著Internet應用的不斷擴展,越來越多要求安全和保密的業務需要通過Internet實現,而Internet是一個開放的網絡環境,沒有任何安全措施。因此,VPN技術得到廣泛關注,各個國際組織、團體都在研究和開發與VPN相關的理論、技術、協議、標準等。
二、VPN的分類
(一)按組網模型劃分
1.擬專用撥號網絡(VPDN)
VPDN(Virtual Private Dial Network)是指利用公共網絡(如ISDN和PSTN)的撥號功能及接入網來實現虛擬專用網,從而為企業、小型ISP、移動辦公人員提供接入服務。
2.擬專用LAN網段(VPLS)業務
VPLS(Virtual Private LAN Segment)借助IP公共網絡實現LAN之間通過虛擬專用網段互連,是局域網在IP公共網絡上的延伸。
3.擬專用路由網(VPRN)業務
VPRN(Virtual Private Routing Network)借助IP公共網絡實現總部、分支機構和遠端辦公室之間通過網絡管理虛擬路由器進行互連。
(二)按實現層次劃分
(1)3VPN:包括BGP/MPLS VPN、IPSec VPN、GRE VPN、DVPN等。
(2)2VPN:包括Martini方式的MPLS L2VPN、Kompalla方式的MPLS L2VPN、SVC方式MPLS L2VPN、VPLS。
(3)PDN:包括L2TP、PPTP等。
三、VPN的關鍵技術
(一)隧道技術
隧道技術是一種通過使用互聯網基礎設施在網絡之間傳遞數據的方式。隧道協議將其它協議的數據包重新封裝在新的包頭中發送,新的包頭提供了可路由信息,從而能夠通過互聯網傳遞。隧道協議分為第二層隧道協議和第三層隧道協議。
1.第二層隧道協議。第二層隧道協議是將整個PPP幀封裝在內部隧道中。第二層隧道協議主要的有:
PPTP(Point-to-Point Tunneling Protocol):點到點隧道協議,該協議支持點到點PPP協議在IP網絡上的隧道封裝,PPTP作為一個呼叫控制和管理協議,使用一種增強的GRE技術為傳輸的PPP報文提供流控和擁塞控制的封裝服務。
L2F(Layer 2 Forwarding):二層轉發協議,該協議支持對更高級協議鏈路層的隧道封裝,實現了撥號服務器和撥號協議連接在物理位置上的分離。
L2TP(Layer 2 Tunneling Protocol):二層隧道協議,該協議結合了上述兩個協議的優點,已經成為標準RFC。L2TP既可用于實現撥號VPN業務,也可用于實現專線VPN業務。
2.第三層隧道協議。第三層隧道協議的起點與終點均在ISP內,PPP會話終止在NAS處,隧道內只攜帶第三層報文。第三層隧道協議主要有:
GRE(Generic Routing Encapsulation)協議:這是通用路由封裝協議,用于實現任意一種網絡層協議在另一種網絡層協議上的封裝。
IPSec(IP Security)協議:IPSec是一個協議簇,包括AH(Authent
ication Header)、ESP(Encapsulating Security Payload)、IKE(Int
Ernet Key Exchange)等協議。
(二)加解密技術
1.DES(Data Encryption Standard)。DES算法使用56位密鑰和密碼塊的方法,明文被分成64位大小的數據塊,對每個塊進行19次變換,其中16次變換由56位的密鑰進行加密,最后產生64位的密文塊。
2.3DES(Triple DES)。3DES是DES加密算法的一種模式,是DES的一個更安全的變形。它以DES為基本模塊,使用3個64位的密鑰對數據進行三次加密。若三個密鑰互不相同,本質上就相當于用一個長為168位的密鑰進行加密。若數據對安全性要求不那么高,兩個密鑰可以相同,此時密鑰的有效長度為112位。
3.IDEA(International Data Encryption Algorithm)。IDEA算法使用128位的密鑰,把明文分成64位的數據塊,每個數據塊又被分成4個16位的子分組,這4個子分組成為算法的每一輪輸入,總共經過8輪迭代加密。在每一輪中,4個子分組、6個子密鑰之間需要進行異或、相加、相乘操作。
4.RSA(Rivest, Shamir, and Adleman)。RSA是一種公鑰加密算法,它的安全性是依賴于大數的因子分解,但并沒有從理論上證明破譯RSA的難度與大數分解難度等價。RSA的缺點主要有:產生密鑰很麻煩,難以做到一次一密;分組長度太大,為保證安全性,大數至少要600 bits以上,使得運算代價很高,加密速度慢,比對稱密碼算法慢幾個數量級。因此,RSA適用于加密少量數據的場合。
(三)身份認證技術
1.MD5(Message Digest Algorithm 5)。MD5以512位分組來處理輸入的信息,且每一分組又被劃分為16個32位子分組,經過了一系列的處理后,算法的輸出由四個32位分組組成,將這四個32位分組級聯后將生成一個128位散列值。
2.SHA(Secure Hash Algorithm)。SHA算法對長度不超過264二進制位的消息,產生160位的消息摘要輸出。由于SHA的報文摘要比MD5的長,因此其安全性較高,但速度較慢。
3.HMAC(Hashed Message Authentication Code)。HMAC是一種利用對稱密鑰生成報文認證碼的散列算法,可以提供數據完整性和數據源身份認證。HMAC使用現有的散列函數,如MD5或SHA-1。
(四)密鑰管理技術
密鑰管理是信息安全的核心技術之一,IATF定義的密鑰管理技術主要包括:適用于封閉網的KMI機制;適用于開放網的PKI機制;適用于專用網的SPK技術。
四、VPN典型應用
(一)Intranet VPN(企業內部虛擬專網)
Intranet VPN通過公用網絡進行企業內部各個LAN的安全互聯。傳統的LAN互聯采用專線方式,但實現費用昂貴。現在可以在Internet上組建全球范圍內的Intranet VPN,一方面利用Internet資源保證網絡的互通,另一方面利用隧道、加密和認證等技術保證信息的安全傳輸。
Intranet VPN典型應用于公司總部與各分支機構之間的互聯;政府各部委與對應下屬機構間的互聯;學校各個校區間的互聯等等。
(二)Extranet VPN(擴展的企業內部虛擬專網)
Extranet VPN是指利用VPN將企業網延伸至供應商、合作伙伴與客戶處,使不同企業間通過公網來構筑VPN。Extranet VPN可以方便地提供接入控制和身份認證,動態地提供企業業務和數據的訪問權限。
Extranet VPN典型應用于企業B2B之間的安全訪問服務;企業與供應商、客戶、相關團體之間的互聯。
(三)Access VPN(遠程訪問虛擬專網)
Access VPN向出差流動員工、遠程辦公人員和遠程辦公提供了通過公用網絡與企業的Intranet和Extranet建立專有的網絡連接。Access VPN的結構有兩種類型,一種是用戶發起的VPN連接,另一種是接入服務器發起的VPN連接。Access VPN典型應用于企業提供B2C的安全訪問服務;企業內部人員有移動或遠程辦公的需求。
五、結束語
VPN利用公共網絡進行信息通訊,使企業以更低的成本連接遠地辦事機構、出差人員和業務伙伴,極大地提高了網絡的資源利用率。同時,VPN可以在遠端用戶、駐外機構、合作伙伴、供應商與公司總部之間建立可靠的安全連接,保證數據傳輸的安全性,這對于實現電子商務或金融網絡與通訊網絡的融合具有特別重要的意義。