透過 telnet 發送加密郵件

透過 telnet 發送加密郵件

我有一個 OpenPGP 公共金鑰,需要使用 telnet 發送加密的電子郵件。但是,我無法找到與該主題相關的任何內容。

我透過 telnet 發送電子郵件沒有問題,但不知道如何加密郵件。

答案1

您必須在發送之前對訊息文字進行加密。

舊方法:內嵌 PGP

早些時候,PGP 加密的訊息直接包含在訊息正文中。這很簡單,並且允許使用缺乏內建 PGP 支援的程序,但也有其自身的問題。

  1. 將訊息正文(不含標頭)放入body.txt.

  2. gpg --armor --recipient [email protected] --encrypt < body.txt > body.gpg

    (或gpg -a -r .... -e

  3. 開啟 SMTP 會話,發送常用的信封和標頭,然後body.gpg只需包含訊息正文的內容即可。

    例子:

    數據
    第354章 發送訊息
    主題:加密訊息
    內容類型:文字/純文字;字符集=utf-8
    
    -----開始 PGP 訊息-----
    版本:GnuPG v1.4.11 (GNU/Linux)
    
    owE7bZ3E4C/NHB6SkVmsUJ5YnKdeolCUmpiTU6mQmpdcVFlQkpqio5BUWqJQmV+q
    kJ5aolCSkapQkJ+ZV6LHBQA=
    =JTcg
    -----PGP 訊息結束-----
    250 排隊
    

新方法:PGP/MIME

大多數郵件用戶端現在都會建立一個多部分 MIME 訊息,如下所示:

Subject: Encrypted message
Content-Type: multipart/encrypted;
    protocol="application/pgp-encrypted";
    boundary="5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp"

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp
Content-Type: application/pgp-encrypted

Version: 1

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp
Content-Type: application/octet-stream

-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.11 (GNU/Linux)

owE7bZ3E4C/NHB6SkVmsUJ5YnKdeolCUmpiTU6mQmpdcVFlQkpqio5BUWqJQmV+q
kJ5aolCSkapQkJ+ZV6LHBQA=
=JTcg
-----END PGP MESSAGE-----

--5mzSFVMjvq1PjxJCWywcUUnUEVIaXOtp--

不用管這個,讓 MUA 來做吧。

答案2

這句話telnet暗示了以下兩件事之一

  • 您正在使用 telnet 在 Unix 伺服器上開啟 shell 會話,並使用它的命令列工具,例如mail.

  • 您正在使用 telnet 開啟至 SMTP 伺服器的 SMTP 會話並手動鍵入 SMTP 命令。

我假設是前者。

在最簡單的層級上,您可以加密訊息正文,並在必要時在呼叫 mail 命令之前轉換為適當的編碼(例如 base64)。

echo "Send reinforcements" \
| gpg -e -a -r 12345 \
| mail -s "C company" [email protected] 

更新:好的,您正在手動將 SMTP 命令輸入到 SMTP 伺服器中。

了解附件是如何序列化的。閱讀 MIME 附件的 RFC。使用 Thunderbird 查看帶有小附件 ( Ctrl+ IIRC)的簡訊的來源u。尋找二進位附件的各種編碼方式,以便它們可以通過 7 位元 ASCII 或 8 位元通道。

您可以將附件建立為外部文件。甚至 rot13 也能充分展示該過程。然後,您只需弄清楚要鍵入哪些 MIME 等標題以及如何在 telnet 會話期間貼上適當的編碼加密附件。

答案3

許多電子郵件用戶端(例如 Microsoft Outlook)都支援加密。加密和解密是電子郵件用戶端的工作,而不是傳輸機制的工作。

澄清一下,Telnet 是一種網路協定(http://en.wikipedia.org/wiki/Telnet)就像 TCP 一樣。該協議與加密無關。大多數郵件用戶端使用 TCP/IP 透過網際網路傳送和接收電子郵件。郵件用戶端用來傳送電子郵件給伺服器的常用協定是簡單郵件傳輸協定 (SMTP)。發送加密電子郵件時,必須在將訊息交給協定之前進行加密。

您使用哪個電子郵件用戶端?支援加密嗎?如果沒有,也許您應該嘗試使用不同的電子郵件用戶端,很多都可以。

Eudora 是眾多支援此功能的免費用戶端之一。以下是有關如何設定的說明:http://www.ncsa.illinois.edu/people/hkhurana/mithril/Help-SecureEmail.htm

Mozilla Thunderbird 是一個開源免費用戶端,也支援此功能。

相關內容