发信人: wenbobo()
整理人: wenbobo(2002-12-22 01:27:57), 站内信件
|
发信人: bluesea (蓝海), 信区: Internet
标 题: 乱码大全(6)──MIME/BASE64介绍
发信站: BBS 水木清华站 (Tue Feb 3 01:02:17 1998)
乱码大全(6)──MIME/BASE64介绍
MIME: Multipurpose Internet Mail Extensions
英国帝国大学计算机在线字典FOLDOC对 MIME 的解释为:“多部分( multi-
part)、多媒体电子邮件和 WWW 超文本的一种编码标准,用于传送诸如图形、声
音和传真等非文本数据。MIME 定义于 RFC 1341, 用 MIMENCODE 的方法将二进
制数据转换成为一种被称为 BASE64 的 ASCII 子集的字符的组合。”
Internet 上有专门讨论 MIME 的新闻组:comp.mail.mime。该新闻组的FAQ
可以从下面的网点获得:
http://www.cis.ohio-state.edu/hypertext/faq/usenet/mail/mime-faq/mime0/faq.html
MIMENCODE 最早称为 MMENCODE,提出用 MIMENCODE 代替 UUENCODE, 是因
为 UUENCODE 使用了一些字符在一些邮件网关(特别是那些转换ASCII 和 EBCDIC
码的网关)中造成传输障碍,(还有一些软件不能对所有 UUENCODE 的算法进行正
确解码而导致邮件的阅读困难),因此 MIME 被设计用于替代 UUENCODE,但是结
果是这些协议共存。
MIME/BASE64 的算法很简单,它将字符流顺序放入一个 24 位的缓冲区,缺
字符的地方补零。然后将缓冲区截断成为 4 个部分,高位在先,每个部分 6 位,
用下面的64个字符重新表示:“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnop
qrstuvwxyz0123456789+/”。如果输入只有一个或两个字节,那么输出将用等号
“=”补足。这可以隔断附加的信息造成编码的混乱。这就是BASE64。
那么 MIME/BASE64 是什么样子呢?通常很多程序都做成每行70-80个字符,
由于我们前面已经说了组成 MIME/BASE64 的编码是 A-Z、a-z、0-9、+ 和 /,
那么这个编码很容易认出来,如:
UEsDBBQAAgAIAEapPiS/mrkHoQEAAEECAAAMAAAAYWNhZDd+dWUudHh0dVFRb5swGHyPlP9Q5Iet
TUICzCUJASTiFuIQhwbHRJnUqmRsndqmVQO0CsK/fXbRVvVh+AV9vrvv7txunYiPV8rAW3n33w5B
R9FAN3ld34Axr9OHIjtkt7wC3bmKHD+zznjteTGvjBnVFGCdxz265XW7dfI+ZVFyRjegO3hix8nl
fGcdjeLqy/rGTp0Sj+Jp8Djho9oIWRSX0IYIwwmWbF4RHKYK0ByCaI9u4u3HukYZIvE32+fZyz7L
含有 MIME/BASE64 编码的邮件,你查看它的源码时, 一般都含有:“This
is a multi-part message in MIME format.”这样的句子。 也可以被绝大多数
的 email 程序进行解码,包括 Netscape、MS Mail、Eudora等。 这些程序可以
正确识别邮件的正文,恢复 MIME/BASE64 编码的部分为正确的文字或夹带的二
进制文件。
如果这些文件不能正确被恢复,可以将邮件原文存成文本文件,改文件名后
缀为 .UUE,让 Winzip 自动识别并恢复。推荐使用 Winzip 6.3 SR-1 或更高的
版本。也可以将文件后缀改为 .EML , 由 Microsoft Mail 或 OutLook Express
打开,该软件也可以自动解码。另外很多网点,如 http://www.shareware.com 、
http://www.download.com 、 http://www.hotfiles.com 、
http://www.alberts.com 等都可以通过查询 MIME 关键字得到大量的小型应用
程序支持 MIME 的转换。
--
脊柱是我们这种生命的重要特征,在此基础上我们才有了光芒的智慧和
丰富的情感。上帝赋予我们自由的意志,同时也赋予我们选择的重担。
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.99.62.45]
|
|