跳轉到

加密通訊

什麼是 E2EE (端對端加密)

端對端加密(End-to-End Encryption,簡稱 E2EE)是一種加密傳送訊息類型,通信訊息資料從發送端出發,直到接收端解密之前,始終保持加密狀態。這意味著除了通信的兩端之外,任何中間節點,包括網路提供者、伺服器運營者甚至是駭客,都無法去解密這些訊息

E2EE 的原理與運作方式

端對端加密的核心在於密鑰的管理。每個通信的參與者擁有一對密鑰:公鑰(公開)私鑰(秘密保存)。公鑰加密的訊息只能用相應的私鑰解密,反之亦然。以下是一個簡單的例子來解釋其運作方式:

經典範例:Alice 和 Bob 的通信

  1. 生成密鑰對: Alice 和 Bob 各自生成一對密鑰,每對密鑰中包含一個公鑰和一個私鑰

  2. 交換公鑰: Alice 將她的公鑰發送給 Bob,Bob 也將他的公鑰發送給 Alice。

  3. 加密訊息: 當 Alice 想要發送訊息給 Bob 時,她會使用 Bob 的公鑰加密訊息。 假設 Alice 要發送 "Hello, Bob!" 這條訊息,她會用 Bob 的公鑰進行加密,生成一段密文。

  4. 傳送密文: 加密後的訊息以密文形式在網路上傳送。即使訊息在傳輸過程中被攔截,駭客也無法讀取內容,因為他們沒有 Bob 的私鑰

  5. 解密訊息: 當 Bob 收到這段密文後,會用他的私鑰來解密,從而得到 Alice 發送的原文訊息 "Hello, Bob!"。

E2EE 的優點

  • 強化隱私保護: 只有通信的當事人能解讀訊息內容,中間節點即便攔截也無法解密。
  • 防止竊聽與攻擊: 即使駭客入侵了伺服器或竊聽了網路封包數據,也難以解密端對端加密的訊息。
  • 提升資料完整性: 防止訊息在傳輸過程中被篡改,確保資料的真實性和可靠性。

PGP 介紹

PGP(Pretty Good Privacy) 是一種數位加密技術,用於保護電子郵件和文件的安全性PGP 結合了對稱加密和非對稱加密的優勢,提供強大的資料保護功能,包括加密訊息、數位簽章以及鑑別身份等。

PGP 主要有以下幾個核心功能:

  1. 加密:保護訊息內容,只有持有相應解密密鑰的人才能讀取。
  2. 解密:將加密訊息還原為可讀的原文。
  3. 數位簽章:驗證訊息發送者的身份和訊息完整性。
  4. 密鑰管理:生成和管理公鑰與私鑰對。

PGP 的實際例子

假設 Alice 需要發送一封加密訊息給 Bob:

  1. 生成訊息:Alice 撰寫她希望傳遞的訊息。
  2. 生成對稱密鑰PGP 生成一個臨時的對稱加密密鑰(Session Key)。
  3. 對稱加密訊息:Alice 使用這個對稱密鑰加密訊息,生成加密的訊息內容。
  4. 公鑰加密對稱密鑰:Alice 使用 Bob 的公鑰加密這個對稱密鑰。
  5. 發送加密資料:Alice 將(1)加密後的訊息內容 和 (2) 經過 Bob 的公鑰加密後的對稱密鑰一起發送給 Bob。

Bob 接收到來自 Alice 的加密資料後:

  1. 提取對稱密鑰:Bob 使用自己的私鑰解密 Alice 用他公鑰加密的對稱密鑰。
  2. 解密訊息內容:Bob 再用這個對稱密鑰解密加密的訊息內容,還原成原始訊息。

這樣,訊息在傳輸過程中即便被攔截,未持有相應的私鑰也無法解密,確保了內容的機密性。

過程似曾相似

E2EE(端對端加密)與 PGP 的關係

E2EE 是一種通訊加密的方法,目的是確保通訊的兩端使用者可以直接傳遞加密訊息,只有發送者和接收者可以解密該訊息。這與 PGP(Pretty Good Privacy)加密是不同層次的概念,PGP 是一種具體的加密技術和標準,經常用於電子郵件和文件的加密和簽名。

E2EE 是一種加密通訊的方法,旨在確保訊息僅能由通訊的兩端讀取。這種方法需要配合具體的加密技術來實現,例如 PGP(Pretty Good Privacy)就是一種常見的加密技術,經常用於電子郵件加密。端對端加密可以使用 PGP 作為其中一種實作技術,但並不局限於 PGP。其他技術如 Signal Protocol 也是常見的 E2EE 實作方式。

補充資料

驗證數位簽章

PGP 也提供數位簽章功能,以確保訊息來源和內容的完整性。當 Alice 發送訊息時,她可以使用自己的私鑰對訊息做數位簽章。Bob 接收到後,則能使用 Alice 的公鑰驗證簽章,確認訊息確實由 Alice 發出,且在傳輸過程中未被篡改。

  1. 驗證身份PGP 數位簽章可以用來證明資訊的發送者身份。只有擁有對應私鑰的人才能製作出對應的數位簽章,確保訊息確實來自所聲稱的人。
  2. 確保完整性:數位簽章還可以確保資料在傳輸過程中未被竄改。任何微小的變動都會導致簽章驗證失敗,這樣收件人就能夠知道資料是否被修改過。
  3. 不可否認性:一旦文件被簽章,發送者便無法否認自己曾經發送過該文件。這在法律上有時候是非常重要的證明。

應用例子

  1. 安全的電子郵件通訊:假設某公民團體需要向其成員發送機敏信息,例如活動細節或內部報告。組織可以使用 PGP 數位簽章來簽署這些電子郵件。成員在接收電子郵件後,可以用公鑰來驗證,確保該郵件確實來自於組織,且內容未被竄改。
  2. 重要文件的簽署與驗證:公民團體可能需要發表公開聲明或提交官方文件。這些文件可以經由 PGP 數位簽章來予以簽署,這樣接收方就可以驗證文件的真實性和完整性。舉例來說,一個環保團體提交給政府的抗議書,可以由代表人利用 PGP 簽名,讓政府確信該文件確實是由該團體所發出。
  3. 線上投票系統:公民團體可能會使用線上工具來進行組織內部的投票。每位成員可以利用 PGP 數位簽章來簽署其投票選票,確保每一票都是合法和真實的。這樣不僅保障了系統的透明度,也避免了假票或選票被篡改的可能性。