uu 編碼
uuencode 編碼方式用於將任意的二進制檔案轉換為文本檔案,比如email.轉換後的檔案中僅包含可列印字元.
uuencode 運算法則將連續的 3位元組編碼轉換成 4位元組(8-bit 到 6-bit)的可列印字元. 該編碼的效率高於Hex 格式.
從二進制檔案中讀取 3位元組的數據,表示如下(a7 表示 a位元組的第 7位):
a7a6a5a4a3a2a1a0 b7b6b5b4b3b2b1b0 c7c6c5c4c3c2c1c0
轉換它們到4位元組里為如下所示:
0 0 a7a6a5a4a3a2 0 0 a1a0b7b6b5b4 0 0 b3b2b1b0c7c6 0 0 c5c4c3c2c1c0
然後,每個位元組再加 0x20轉換為可列印的字元.
注意: 如果是一個 0位元組那它應該被轉換為0x60而不是0x20,因為(前引用'`')優於 0x20(空格' ').
例如: 從檔案中讀取的 3位元組如下:
14 0F A8
00010100 00001111 10101000
轉換為 6-bit:
000101 000000 111110 101000
每位元組高兩位補 0後為:
00000101 00000000 00111110 00101000
最後每位元組再加 0x20,則 4位元組輸出應該為:
25 60 5E 48
注意: 00位元組被轉換為 0x60而不是 0x20.
因此,在一個 uuencoded檔案中僅包含字元 0x21 '!'到 0x60 '`',它們都是可列印和可被 email傳送的.
這個轉換過程也意味著 uuencoded 檔案要比原檔案大 33%的.
===== 編碼 =====
outbuf[4] 輸出 uu編碼數據.
inbytep [3] 輸入二進制數據.
#define ENCODE_BYTE(b) (((b) == 0) 0x60 : ((b) + 0x20))
outbuf [0] = ENCODE_BYTE((inbytep [0] & 0xFC) >> 2);
outbuf [1] = ENCODE_BYTE (((inbytep [0] & 0x03) << 4) +
((inbytep [1] & 0xF0) >> 4));
outbuf [2] = ENCODE_BYTE (((inbytep [1] & 0x0F) << 2) +
((inbytep [2] & 0xC0) >> 6));
outbuf [3] = ENCODE_BYTE (inbytep [2] & 0x3F);
===== 解碼 =====
linep [4] 輸入 uu編碼數據.
outbyte [3] 輸出二進制數據.
#define DECODE_BYTE(b) ((b == 0x60) 0 : b - 0x20)
outbyte [0] = DECODE_BYTE (linep [0]);
outbyte [1] = DECODE_BYTE (linep [1]);
outbyte [0] <<= 2;
outbyte [0] |= (outbyte [1] >> 4) & 0x03;
outbyte [1] <<= 4;
outbyte [2] = DECODE_BYTE (linep [2]);
outbyte [1] |= (outbyte [2] >> 2) & 0x0F;
outbyte [2] <<= 6;
outbyte [2] |= DECODE_BYTE (linep [3]) & 0x3F;
相關詞條
-
freebsd packages
FreeBSD logFreeBSD 捆綁了很多系統工具作為基本系統的一部分。然而,在實際工作中,可能仍需要安裝額外的第三方套用...
一個package的安裝 軟體包的管理 -
Linux命令行技術大全
內容簡介《Linux命令行技術大全》的編寫基於FedoraCore6作業系統,2.6.18核心,匯集了絕大部分命令的功能介...
內容簡介 編輯推薦 目錄 -
多用途網際郵件擴展協定
的編碼方式有:純十六進制、uuencode、RFC1421中說明的base...
簡介 第一部分:Internet信息體格式 本備忘錄的狀態 摘要 目錄 -
二進制新聞組
Binaries newsgroup 一種Usenet新聞組(newsgroup),專門用來投遞(post)經uuencode編碼的二進制檔案(binary file)。一些站點(site)不載入二進制...
-
Linux指令辭典
uudecode對uuencode產生的檔案進行解碼uuencode對二進制檔案進行...
內容介紹 作品目錄 -
SED[Linux腳本]
SED簡介Sed腳本是一個sed的命令清單,啟動Sed時以-f選項引導腳本檔案名稱。Sed對於腳本中輸入的命令非常挑剔,在命令的末...
SED簡介 小技巧 典型套用 引號語法 使用方法 -
fangmail企業信箱
uuencode編碼郵件的解碼,輕鬆實現此類郵件的閱讀、轉發、回復14、支持多個個性...
信箱簡介 主要特色 反垃圾方面的技術優勢 運營維護經驗 海外收發功能 -
officescan
主要特色主從式架構 單機版防毒軟體將病毒掃瞄決策交付給工作站使用者,因為無法確定這些防毒軟體的操作是否正確,並無法有效地保護...
主要特色 客戶端程式的完全控制 其它特色 Office Scan 客戶端程式 作業平台 -
黑客與網路安全
實例四第3章 黑客的工具3.1 了解Uuencode/decode3.2...
內容介紹 作品目錄