跳至內容

電子郵箱

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書
「電子郵箱」的各地常用名稱
中國大陸電子郵箱
臺灣電子信箱
港澳電子郵箱

電子郵箱是傳遞電子郵件訊息的目的地。它相當於郵政系統中的信箱

定義

[編輯]

郵箱以電子郵件地址作為標識。但並非所有電子郵件地址都有對應的儲存設施。有時,也使用「偽郵箱」一詞來指代那些並無相應的明確郵件儲存的地址。電子郵件轉發英語Email forwarding可以通過這樣的地址送達最終收件人。郵寄清單電子郵件別名英語Email alias都是典型的例子。

RFC 5321 將「電子郵件地址」定義為一個字串,它可以標識一個郵件將要送達的用戶,或一個郵件將被儲存的位置。「郵箱」一詞用來指保管者。在這個意義上說,「郵箱」和「地址」兩個詞是可以互換使用的。

RFC 5322 將「郵箱」定義如下:「郵箱接收郵件。它是一個『概念性實體』,並不一定非得涉及到檔案儲存。」(A mailbox receives mail. It is a 'conceptual entity' that does not necessarily pertain to file storage.)它還進一步舉例說明,某些站點可能會選擇在印表機上列印郵件,並將紙質郵件遞送到收件人的桌上,就像傳統的傳真傳送一樣。

訪問

[編輯]

對郵箱的訪問由郵箱提供商英語Mailbox provider控制。通常,任何人都可以將訊息傳送到一個郵箱,但只有經過驗證的用戶才可以從他們自己的郵箱中讀取或刪除郵件。電子郵件客戶端可以從一個或多個郵箱將訊息取回。客戶端用來儲存訊息的資料庫(檔案、目錄、儲存系統)被稱為「本地郵箱」。

讀取

[編輯]

用於收取郵件的主流客戶端-伺服器協定有:

  • 郵局協定(POP):一種最適宜從單一客戶端電腦上讀取訊息的方法。通常,郵件被收取之後會從伺服器郵箱中刪除。而郵件的正本被儲存在本地郵箱中。
  • 互聯網資訊訪問協定(IMAP):被設計為通過允許遠端管理伺服器郵箱,以從多個客戶端收取郵件。正本被保留在伺服器上,而本地可以儲存一份副本。
  • 基於超文字傳輸協定(HTTP)的Webmail:郵件被以伺服器定義的格式提供給用戶瀏覽器。正本留在伺服器上,可能是以可下載的原始格式。

IMAP和Webmail或多或少都可以無縫地共同工作。POP如果組態為在伺服器上保留副本,則也可以相容。

互聯網郵件格式,目前由 RFC 5322 定義,它可以追溯到1982年的 RFC 822。這也是POP和IMAP客戶端所期望的格式。

寫入

[編輯]

傳送到郵箱的郵件,由郵件遞送代理英語Mail delivery agent寫入伺服器的本地郵箱中。對遠端用戶來說,這是他們在該伺服器上擁有的遠端郵箱。IMAP客戶端可以在遠端郵箱上複製、移動和刪除郵件。

郵箱空間

[編輯]

郵箱都有大小限制,或者由儲存空間隱式確定,或者對郵箱或資料夾有配額限制。除了管理方面的考慮,配額限制還有助於抑制電郵炸彈攻擊。[1]

IMAP對配額的擴充在1997年被標準化。[2]

儲存格式

[編輯]

任何一種資料庫都可以用來儲存電子郵件訊息。然而,有些標準化已經導致若干眾所周知的檔案格式允許不同的電腦程式訪問一個給定的郵箱。有兩種格式是被廣泛使用的:

  • Mbox英語Mbox是一種原始技術,它將所有訊息儲存在一個單一檔案中。
  • Maildir英語Maildir是一種較新的規範,它將所有訊息儲存在一個目錄樹中,每一條訊息存為一個檔案。

郵箱名稱

[編輯]

郵箱名稱是電子郵件地址的第一部分,也稱為「域內部分」;也就是@符號前面的部分。其格式由 RFC 5322RFC 5321 正式指定。它往往是收件人在郵件伺服器上,或目標域中的用戶名

域內部分最長可達64個字元,而且理論上是大小寫敏感的。它可以包括一個「有效字元」的序列(如下所述),或是一個用引號引住的字串,其中還可以包含空格和特殊字元。如果使用SMTPUTF8擴充SMTP英語Extended SMTP,也可以使用非ASCII字元。[3]在新增的郵箱名稱時,需要了解一些常識,以避免常見錯誤。在 RFC 5321 的描述中,對施加限制持非常謹慎態度:

While the above definition for Local-part is relatively permissive, for maximum interoperability, a host that expects to receive mail SHOULD avoid defining mailboxes where the Local-part requires (or uses) the Quoted-string form or where the Local-part is case-sensitive.[While 上面對域內部分的定義相對寬容,為了最大的互通性,接收郵件的主機定義的郵箱,「應當」避免域內部分要求(或使用)用引號引住字串的形式或域內部分是大小寫敏感的。]

——John Klensin,RFC 5321

有效字元

[編輯]

以下字元可以出現在域內部分中,而不需要引號:

  • 大小寫英文字母(a–z、A–Z),及UTF-8序列(若使用SMTPUTF8)
  • 數字09
  • 字元! # $ % & ' * + - / = ? ^ _ ` { | } ~
  • 字元.(點),但不能出現在開頭或結尾,也不能連續出現兩次(例如[email protected]

保留名稱

[編輯]

名稱「postmaster」、「abuse」和其它對應於眾所周知角色和職能的名稱,被要求保留。[4]

還有其它一些名稱會引起麻煩,可能是因為它們會與郵件軟件(某些部分)內部使用的名稱相衝突,包括電子郵件過濾英語Email filtering器,或因為底層儲存系統不允許。這樣的名單有很多,比如在GitHub上。[5][6][7]

參考文獻

[編輯]
  1. ^ Nick Christenson. A Highly Scalable Electronic Mail Service Using Open Systems [一種使用開放系統的高擴充性電子郵件服務]. USENIX. 1997-12-09 [2015-12-12] (英語). In addition to authentication and mailbox location, the mail delivery agent also knows about mailbox quotas which we impose on our subscribers. If the current mailbox size is over the quota for that user, the default being 10 MB, then the message is bounced back to the MTA with reason, "User npc, mailbox full." In addition to preventing resource abuse on the part of subscribers, this also helps mitigate possible damaging effects of mail bombing by malicious people on the Internet. We believe that a 10 MB quota is quite generous, especially considering over a 28.8 modem using very high quality line speeds and no network bottlenecks, one could expect to take over an hour to download the contents of a 10 MB mailbox.[除了認證和郵箱位置之外,郵件遞送代理還了解限制我們訂閱者的郵箱配額。如果當前的郵箱尺寸超過了給該用戶的配額,預設為10MB,那麼郵件會被退回訊息傳輸代理,原因是「用戶網絡參數控制,郵箱已滿。」除了阻止對部分訂閱者的資源濫用之外,這還有助於抑制互聯網上的惡意電郵炸彈可能帶來的損害。我們相信,10MB的配額已經很慷慨了,尤其考慮到,即使是非常高質素的網速,也沒有網絡瓶頸,通過28.8的數據機來下載10MB郵箱的內容也要花費一小時以上的時間。] 
  2. ^ RFC 2087
  3. ^ RFC 6531
  4. ^ RFC 2142
  5. ^ Casey O'Hara. A list of reserved usernames to avoid vanity URL collision with resource paths [為避免特殊URL與資源路徑相衝突的保留用戶名名單]. 2011 [2015-12-12]. (原始內容存檔於2022-04-08) (英語). 
  6. ^ Michael Mahemoff. Reserved username list [保留用戶名名單]. 2011 [2015-12-12]. (原始內容存檔於2022-04-08) (英語). 
  7. ^ ShouldBee. reserved-usernames [保留用戶名]. [2015-12-12]. (原始內容存檔於2020-11-11) (英語).