VPN 軟體在你的裝置和你選擇的遠端伺服器之間建立一個加密的虛擬隧道。這創造了一個安全的連接,隱藏你的IP 地址,掩飾你的地理位置,並保護你的網路活動不被外界監視。
虛擬私人網路( VPN)服務透過加密你的網路連接,並將你的資料重新路由到遠端VPN 伺服器,使其成為保護你的網路隱私、安全和自由的有力工具。
在本指南中,我們將詳細解釋VPN 軟體是如何運作的,以隱藏你的公共IP 地址並加密你的網路連線。
以下是你使用VPN 時,網路流量發生的過程:
- 你在電腦、智慧型手機或電視上下載、安裝並開啟VPN 應用程式。
- 在VPN 應用程式中,你選擇一個你喜歡的地點並連接到VPN 伺服器。
- 當你造訪一個網站或使用其他應用程式時,裝置上的VPN 軟體會使用加密演算法來加密連線請求。這使得任何觀察連接的人都無法理解其位置和內容。
- 加密的資料會被傳送到你選擇的VPN 伺服器,在那裡解密。
- VPN 伺服器代表你連接到網站,並發送你的連線請求。網站然後將請求的資訊傳回給VPN 伺服器。
- 這些資訊由VPN 伺服器加密並轉回你的裝置。
- 你的VPN 應用程式解密這些訊息,網站或服務就會回應你的請求。
透過上述過程, VPN 軟體可以掩蓋你造訪網站時的IP 地址並隱藏你的線上活動,使其不被你的ISP(網路服務供應商)、 WiFi管理員或任何其他監控你連線的人看到。
雖然所有VPN 軟體都大同小異,但以上流程主要適用於個人或「消費者」 VPN 服務。
若想了解遠端訪問和站點到站點VPN 的運行原理,請查看我們的VPN 類型指南。如果你更感興趣的是VPN 的用途,請閱讀我們的VPN 使用指南。
VPN 如何隱藏你的IP 地址?
總結:VPN 服務作為你的裝置和網路之間的中介。當你使用VPN 瀏覽網路時,造訪的網站看到的是你連接的VPN 伺服器的IP 地址,而不是你原來的公共IP 地址。
沒有VPN 時,你的連線會直接從你的裝置傳輸到你想造訪的網站或服務的伺服器。
為了將相關內容回傳給你,網頁伺服器需要知道你的IP 地址。
你的IP 地址就像是你在網路上的護照。它是一個獨特的標識符,告訴其他電腦如果想讓資訊到達你,該發送到哪裡。
你的IP 地址包含大量個人資訊。它暴露了你的地理位置,並可以用來創建你線上活動的整體畫像。
因此,許多人使用VPN 來隱藏他們的IP 地址。
當你使用VPN 瀏覽網路時,你的連線總是先到達遠端VPN 伺服器,然後再到達託管你所需網站或服務的網路伺服器。
當網頁伺服器將訊息傳回給你時,它會傳送到VPN 伺服器,VPN 伺服器再將訊息轉發給你。這意味著你造訪的網站永遠不會接觸到你的真實IP 地址。
你造訪的網站只看到來自VPN 伺服器的連線請求,然後將資訊傳送給該VPN 伺服器。
專家建議:優質的VPN 服務在許多地方都有伺服器。你可以透過連接到其他國家的VPN 伺服器,欺騙網站以為你位於不同的國家。這就是人們如何使用VPN 更改Netflix 和其他串流服務的地區。
VPN 如何加密和保護你的資料?
總結:VPN 服務使用加密演算法和連線協定將你的網路流量轉換為無法解讀的程式碼。這可以防止你的ISP、政府和其他第三方查看你瀏覽活動的內容。安全的VPN 不應使用低於AES-256 的加密演算法來加密你的資料。
加密是將普通明文資料轉換為只有知道如何解密的人才能理解的秘密代碼的過程。
加密的目的是阻止不需要的人讀取你的資訊。
VPN 使用加密來隱藏你瀏覽活動的細節,在它從你的裝置傳輸到VPN 伺服器的過程中。
使用VPN 可以防止ISP、政府、 WiFi管理員、駭客和任何監視你的連線的第三方窺探你的活動。
但它是如何運作的呢? VPN 如何加密和保護你的資料?
在本節的其餘部分,我們將深入了解構成VPN 加密的不同元件和流程,首先從VPN 隧道開始。
什麼是VPN 隧道?
‘ VPN 隧道’ 是描述設定VPN 連線時發生的事情的常用方式。簡單來說,它是你的設備和VPN 伺服器之間的加密通訊。
這種通訊被稱為隧道,因為你的原始流量被加密並包裝在一層未加密的流量中。
就像把一封寫好的信放進一個信封裡,然後再把信封放進一個新的信封裡,寫上新的地址。你的實際訊息完全被外界隱藏起來,彷彿在一個隧道裡。
這個過程被稱為封裝,由專門的隧道協定執行。
加密演算法
為了將你的線上活動轉換為無法解讀的程式碼, VPN 需要使用加密演算法。
加密演算法只是一個演算法(即一組規則),用於加密和解密資料。
例子:一個非常簡單的加密演算法可能使用這樣的規則來加密你的資料’用前一個字母替換訊息中的每個字母’。所以, privacy
就會變成oqhuzbx
。
加密演算法通常與特定的密鑰長度配對。通常,金鑰長度越長,加密就越安全。例如, AES- 256被認為比AES- 128更安全。
VPN 服務中最常使用的加密演算法是:
高級加密標準(AES)
高級加密標準( AES)是最安全的加密演算法之一。它是線上加密協定的黃金標準,在VPN 行業中廣泛使用。
AES 是由美國國家標準與技術研究所(NIST)於2001 年建立的,有時也被稱為Rijndael 演算法。由於其增加的區塊大小,它比其他加密演算法(如Blowfish)能夠處理更大的檔案。
AES 通常以128 位元和256 位元金鑰長度提供。雖然AES-128 仍然被認為是安全的,但我們知道像NSA 這樣的組織總是試圖破壞加密標準。因此,AES-256 被認為提供了更大的保護。
當你在VPN 服務的網站上看到’軍事級‘或’銀行級‘加密時,它通常指的是使用AES-256。美國政府使用AES-256 加密來保護其敏感數據,這是我們在測試和審查VPN 時尋找的東西。
Blowfish
Blowfish 是由美國密碼學家Bruce Schneier 於1993 年設計的加密演算法。它曾經是大多數VPN 連線中使用的預設演算法,但現在已基本被AES-256 取代。
你通常會看到Blowfish 使用128 位元金鑰長度,雖然它可以從32 位元到448 位元不等。
Blowfish 存在一些弱點。最著名的是它對一種被稱為’生日攻擊’的密碼攻擊的脆弱性。基於這個原因,Blowfish 只能作為AES-256 的替代品。
ChaCha20
ChaCha20 是由Daniel Bernstein 於2008 年發布的一種相對較新的VPN 加密演算法。儘管如此,由於它是唯一與流行的WireGuard協定相容的加密演算法,它正變得越來越受歡迎。
像AES 一樣,ChaCha20 使用256 位元金鑰長度,被認為非常安全。報告還表明,ChaCha20 比AES 快三倍。
目前沒有已知的ChaCha20 漏洞,它提供了一個歡迎的替代方案,因為加密技術正在應對不遠的未來量子計算的挑戰。
Camellia
Camellia 是一種加密演算法,在安全性和速度方面與AES 非常相似。即使用較小的密鑰長度(128 位元),根據現有技術,透過暴力破解攻擊打破它也是不可行的。沒有已知的成功攻擊能有效削弱Camellia 演算法。
Camellia 和AES 之間的主要區別在於它沒有通過NIST(創建AES 的美國組織)的認證。
雖然有使用與美國政府無關的加密演算法的理由,但Camellia 在VPN 軟體中很少見,也沒有像AES 那樣經過徹底測試。
VPN 協議
VPN 協定是你的裝置為了與VPN 伺服器建立安全連線而遵循的規則和流程。
換句話說, VPN 協定決定VPN 隧道是如何形成的,而加密演算法則用於加密通過該隧道的資料。
根據使用的協議, VPN 會有不同的速度、功能和漏洞。大多數服務會讓你在應用程式設定中選擇你想使用的協定。
有幾種VPN 協議,但並非所有協議
都安全。以下是最常見協議的快速概述:
- OpenVPN:開源、非常安全,並且與幾乎所有支援VPN 的裝置相容。
- WireGuard :極快速且非常高效,但由於最近才發布,還未獲得VPN 行業的完全信任。
- IKEv2/IPsec:一個封閉原始碼的協議,非常適合移動VPN 用戶,但被懷疑被NSA 破解。
- SoftEther :很少有VPN 服務支持,但它速度快、安全,並且非常適合繞過審查。
- L2TP/IPsec:較慢的協議,也被懷疑被NSA 破解。
- SSTP:能很好地處理防火牆,但封閉原始碼,可能容易受到中間人攻擊。
- PPTP:過時、不安全,應盡量避免使用。
了解更多:若想深入了解不同類型的VPN 協議,並了解哪一個最適合你,請閱讀我們專門的VPN 協議指南。
VPN 握手
除了協定和加密演算法, VPN 還使用稱為握手和哈希認證的流程來進一步保護和認證你的連線。
握手是指兩台電腦之間的初始連接。這是一個問候過程,雙方相互認證並確定通訊規則。
在VPN 握手期間,VPN 用戶端(即你的裝置)與VPN 伺服器建立初始連線。
然後,這個連接用於在客戶端和伺服器之間安全地共享加密金鑰。這個金鑰用於在整個瀏覽會話期間加密和解密VPN 隧道兩端的資料。
VPN 握手通常使用RSA(Rivest-Shamir-Adleman)演算法。 RSA 在過去的二十年裡一直是網路安全的基礎。
雖然目前沒有確鑿證據表明RSA-1024 被破解,但考慮到現有的運算能力,它通常被認為是安全風險。
RSA-2048 是一個更安全的替代方案,幾乎沒有計算速度的減慢。因此,大多數VPN 服務已經不再使用RSA-1024。
你只應信任使用RSA-2048 或RSA-4096 的VPN 服務。
雖然握手過程運作良好並產生安全的加密,但每個會話產生的金鑰都可能被用於解密使用RSA 握手的私鑰加密的每個會話。(This article is created by how&best)從這個意義上說,它就像一把’萬能鑰匙’。
如果萬能鑰匙被破解,可以用來解密VPN 伺服器上所有透過VPN 隧道傳輸的數據,無論是過去還是現在。攻擊者可能會入侵VPN 伺服器,取得透過VPN 隧道流動的所有資料。
為了避免這種情況,我們建議使用設定了完美前向保密( Perfect Forward Secrecy)的VPN 服務。
完美前向保密
完美前向保密是一種協定功能,利用Diffie-Hellman(DH)或橢圓曲線Diffie-Hellman(ECDH)金鑰交換演算法產生臨時會話金鑰。
完美前向保密確保加密金鑰永遠不會透過連線交換。
相反, VPN 伺服器和VPN 用戶端使用DH 或ECDH 演算法獨立產生金鑰。
這是一個數學上複雜的過程,但完美前向保密本質上消除了一個私鑰被破解而暴露伺服器上所有安全會話的威脅。
相反,密鑰是臨時的。這意味著它們只能揭示一個特定會話,而不是更多。
應注意, RSA 單獨不能提供完美前向保密。 DH 或ECDH 必須包含在RSA 的加密套件中才能實現。
ECDH 實際上可以單獨使用——而不是RSA——產生具有完美前向保密的安全VPN 握手。然而,要小心使用DH 單獨的VPN 服務,因為它容易被破解。這在與RSA 一起使用時不是問題。
我們總是推薦給讀者的兩個VPN 協定——OpenVPN 和WireGuard ——都支援完美前向保密。
哈希認證
安全雜湊演算法( SHA)用於認證傳輸資料和客戶端-伺服器連線的完整性。它們確保資訊在從來源到目的地的傳輸過程中未被篡改。
SHA 運行原理是使用所謂的雜湊函數編輯來源資料。原始來源訊息透過演算法運行,結果是一個看起來完全不像原始訊息的固定長度字元字串。這稱為“哈希值”。
這是一個單向函數——你不能透過去哈希過程從哈希值確定原始訊息。
哈希認證防止中間人攻擊,因為它能夠偵測到有效憑證的任何篡改。
沒有它,駭客可能會冒充合法的VPN 伺服器,誘騙你連接到不安全的伺服器,在那裡你的活動可能會被監視。
為了確保最大限度的安全,我們建議使用SHA-2 或更高版本的VPN 服務。 SHA-1 已被證明存在可能危及安全性的弱點。