On-Line Библиотека www.XServer.ru - учебники, книги, статьи, документация, нормативная литература.
       Главная         В избранное         Контакты        Карта сайта   
    Навигация XServer.ru








 

Кодировки в сети Internet

Vladimir P. Belokursky

КАК РАСКОДИРОВАТЬ ПИСЬМО.

Электронная почта может передавать только текстовую информацию. Поэтому если нужно переслать файл, содержащий что-либо, кроме символов букв и цифр (файл базы данных, файл с графическим изображением, упакованный архив, исполняемый файл), его нужно перекодировать в текстовую форму. Для этого используются различные способы кодировки. Рассмотрим наиболее часто встречающиеся. Для каждой кодировки попытаемся ответить на вопросы:

- КАК ОПОЗHАТЬ ту или иную кодировку.
- ЧТО ДЕЛАТЬ с письмом, чтобы прочитать текст (данные).
- ГДЕ ВЗЯТЬ необходимые программы.

1. UUENCODE


документ находится в одном письме.


КАК ОПОЗHАТЬ.
Закодированный текст начинается строкой "begin имя_файла".
В последней строке - слово "end"

begin 664 text.zip
M270G<R!A('9E<GD@9G5N;GD@=&AO=6=H="!T:&%T+"!I9B!"96%R<R!W97)E
M($)E97,L#0I4:&5Y)V0@8G5I;&0@=&AE:7(@;F5S=',@870@=&AE(&)O='1O
                ........
M97)E($)E87)S*2P-"E=E('-H;W5L9&XG="!H879E('1O(&-L:6UB('5P(&%L
M;"!T:&5S92!S=&%I<G,N#0H@("`@("`@("`@("`@("`@("`@("`@("`@("`@
7("`@(%=I;FYI92UT:&4M4&]O:`T*#0H@
`
end

ЧТО ДЕЛАТЬ.
В программе dMail нужно перейти в меню (клавиша F2), затем выбрать пункт меню "Обработка" -> "Извлечь данные". В текущем каталоге будет создан файл с именем, которое указано в строке "begin".
ИЛИ
- записать текст письма в отдельный файл (например, text.uue)
- c помощью программы uudecode раскодировать письмо
uudecode text.uue

ГДЕ ВЗЯТЬ

ftp://ftp.aist.net/pub/dos/mail/convert/uuexe525.zip ( 32.339 Kb )

Проблема:
имя файла в строке "begin" может не соответствовать правилам MSDOS, например,
anderson.software_piracy.ps.Z
(в MSDOS имя файла не более 8 символов и только одна точка). В этом случае нужно отредактировать письмо - изменить строку begin:
begin anderson.software_piracy.ps.Z --> begin anderson.z

2. Кодировка UUENCODE


документ состоит из нескольких частей.



КАК ОПОЗHАТЬ.
Документ находится в нескольких письмах.
Первое письмо начинается словами "begin имя_файла":

begin image.gif
M4$L#!!0````(`,-*AQ[B,JU,'R$``(Q*```#````:7)CS7Q9<QQ'DN8SXU<$
MBVVF*DY5%@Z"1W4W130)2F@2()M`ZYC>MK:HS*BJ9&5FE#(R42C]NH6,L!Z.
M@F_5EQIH+_UF:>FVW\D)\;9XH$A^<@>?09+669P]/@-?6F%4%)->MSN=3BNQ
M=D<$*2=`R%U>KBL._-<\<`_^/WUBW2?F\[(=_ASAGO'+G0.&:63<08'_I`3.

Вторая (и последующие промежуточные) части файла могут не иметь ни слова "begin" в начале, ни слова "end" в конце.
Последнее письмо заканчивается словом "end":

M,%!QWJ'P@M;>F=CE8-23]QZVY>?[;?D9!;O?&63UERXMPK&guot;>W/^\+3]]W);;
M<=XOK1#_%U!+`0(4`Q0````(`,-*AQ[B,JU,'R$``(Q*```#``````````$`
A``"D@0````!I<F-02P4&``````$``0`Q````0"$`````
`
end

Иногда в конце каждой части указывается контрольная сумма и размер части.

sum -r/size 27951/6200 section (from first to last encoded line)

А в последней части - контрольная сумма всего документа

MH`T*KZZOXZOOX*WKK"X-"@T*+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
K+2TM+2TM,3@U-#,X.3,S.#@T-#4Q-#0Q.3$W,#@T,#8P.#,M+0T*#0H-"@H-
`
end
sum -r/size 48886/2672 section (from first encoded line to "end")
sum -r/size 25804/24433 entire input file

ЧТО ДЕЛАТЬ
Вариант 1:
В программе BMail или dMail отсортировать, включив сортировку по дате (при этом части будут расположены по порядку). Затем отметить все файлы и декодировать.

Вариант 2:
- каждое письмо записать в отдельный файл (part1.uue, part2.uue ...)
- программой uudecode из комплекта uuexe525.zip раскодировать все письма (она умеет автоматически "собирать" файл, состоящий из нескольких частей).
uudecode part

ГДЕ ВЗЯТЬ
ftp://ftp.aist.net/pub/dos/mail/convert/uuexe525.zip ( 32.339 Kb )

3. Кодировка BinHex


КАК ОПОЗHАТЬ
В тексте или заголовках письма встречаются слова BinHex.
Пример:

--=====================_830452152==_
Content-Type: application/mac-binhex40; name="LOGIN.CMD"
Content-Disposition: attachment; filename="LOGIN.CMD"

(This file must be converted with BinHex 4.0)
:#8a24dP1,N004!;"849K8G(4iG!!!!!!')3!!!!"aR#0dFQ&MC5"[)#!J$5-0)b"
cCA3JGA!JFfpYC5"cG(*TEQGc)'C[FL"ND@&XE'PZCb"eF!dM$50TCL!K@fa[B@3
....
KFh0`FQpYF(30)#!J)'peG("eG#!NF'&cFhG[FQ4F-6-0)`dM)(GP)'&bC5"ZEhF
JE'pRCf9N)'PZ$5-0C@jN$E#E!!!!:

--=====================_830452152==_
Content-Type: text/plain; charset="us-ascii"

ЧТО ДЕЛАТЬ.
Записать письмо в файл. Извлечь данные можно программой
xbin.exe file
При этом создается три файла с расширениями

file.dat
file.rsr
file.inf
Собственно данные содержатся в файле с расширением ".dat"
ГДЕ ВЗЯТЬ

ftp://ftp.aist.net/pub/dos/mail/convert/xbin23.zip ( 34.688 Kb )

4. Кодировка MIME Base64.


КАК ОПОЗHАТЬ.
Обратите внимание на заголовок письма - там обязательно есть строка
MIME-Version.

Content-Type: text/plain; charset=US-ASCII; name=text.txt
Content-transfer-encoding: base64
MIME-Version: 1.0

SXQncyBhIHZlcnkgZnVubnkgdGhvdWdodCB0aGF0LCBpZiBCZWFycyB3ZXJl
IEJlZXMsDQpUaGV5J2QgYnVpbGQgdGhlaXIgbmVzdHMgYXQgdGhlIGJvdHRv
bCB0aGVzZSBzdGFpcnMuDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFdpbm5pZS10aGUtUG9vaA0KDQo=

ЧТО ДЕЛАТЬ.
Записать письмо (вместе с заголовком) в файл. Последняя строка кода должна быть последней строкой в файле.
Раскодировать:
mime64.exe infile [outfile]
ГДЕ ВЗЯТЬ.
ftp://ftp.aist.net/pub/dos/mail/convert/mime64b.zip ( 31.924 Kb )

5. Кодировка MIME Quoted-printable.


КАК ОПОЗHАТЬ.
Вместо русских букв - их шестнадцатеричные коды.


Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

=F0=D2=C9=D7=C5=D4 =F3=D7=C5=D4=C1!
=ED=C5=CE=D1 =DA=CF=D7=D5=D4 =F2=CF=C2=C5=D2=D4, 
=D0=C9=DB=D5 =D4=C5=C2=C5=C9=DA =E1=CD=C5=D2=C9=CB=C9.

ЧТО ДЕЛАТЬ.
Записать письмо в файл.
Раскодировать:
mimeqp.exe infile [outfile]
ГДЕ ВЗЯТЬ.
mimeqp.zip - MIME Quoted Printable encode/decode program
ftp://ftp.aist.net/pub/dos/mail/convert/mimeqp.zip ( 23.935 Kb )

6. Упакованный "пакет статей".


КАК ОПОЗHАТЬ.
Закодированный текст начинается строкой "start stdin"

start stdin
,+aH*bB,X}QfD{p5@wOmS>[nZ@j4!CC.aHO'7icI$08DllEr+Yd!-%lhBl^gt;oph"_
>:zhH]d3/7gC'9%wNG@trjH|-y2#WMmWHfG/5SX:;zHnKP&jX;F%[M5#)U*0"j?c
.....
S!-cc=,5@bU(cZq*(FZ_&o<!/OV.Haa[HT[m:i@t<E0%y"rQ';+uv=Qw,uVd,n{A
~IHgA=koK47O
end

Это упакованный "пакет статей". Включается сервером телеконференций по команде PACK.

ЧТО ДЕЛАТЬ.
- BML версии 1.27 умеет делать распаковку в процессе чтения почтового ящика. Для этого нужно вызывать BML с флагом -p.
- получить программу распаковки ящика UUNPACK.ZIP.
UUNPACK.EXE - выполняемая программа
Нужно переписать UUNPACK.EXE в каталог, например, C:\UUPC и в файл вызова UUPC.BAT последней строкой добавить:
    c:\uupc\uunpack c:\uupc\mail\boxes\user
                                 здесь ^^^^ - имя пользователя,
                                 получающего новости
ГДЕ ВЗЯТЬ. 
ftp://ftp.aist.net/pub/dos/mail/convert/uunpack.zip ( 16.876 Kb )

7. xbtoa


КАК ОПОЗHАТЬ
Закодированный текст начинается словами xbtoa Begin.

xbtoa Begin
LSWk$U>b++j/FRPUu::.+Und7Xl?28V;^I2iZR6R+JttXiLm9Fmi\glY+_nmXIp]>XrpD,9q\R1UoW
...
2-e_5P)clh1r+D5M!F#n>QCh%C#/n8g:E%YX:+=\iJ%13OO%13(8
xbtoa End N 16950 4236 E 7 S 198ec9 R 8335744f

Кодировщик "btoa".

ЧТО ДЕЛАТЬ.
Такие письма раскодируются программой atob.

ГДЕ ВЗЯТЬ.
ftp://ftp.aist.net/pub/dos/mail/convert/btoa.zip (17.660 K)

8. PGP


КАК ОПОЗHАТЬ.

-----BEGIN PGP MESSAGE-----
Version: 2.3a

hDwCqboOL27CRKkBAX0dOcOn07QFhqNuJFetp+WUb1QedPkRturI/2vKkS5/bmzR
nnJKj75Cp7/FhILgCrmmAABEIcd+MmhibfPVVmmgeuEUAbE5r+lCtHFRM/FaA4Lr
...
izQw7OIWz4OrGtRpAM00NSalSXiVnuiGG21pLa3ozTPEw0x/+iqXRRPILdhWeSV7
6nATz0hikdjSeuaolcHs086O2G2+1KQl7TTqpWU0ST+BhcKB
=T6hh
-----END PGP MESSAGE-----

Так выглядит документ, обработанный программой шифрования PGP (Pretty Good Privacy).

ЧТО ДЕЛАТЬ.
Записать письмо в отдельный файл.
Раскодировать файл:
pgp ciphertextfile [-o plaintextfile]
Кроме самой программы pgp, вам понадобится открытый ключ автора письма и ваш закрытый ключ. (подробнее - см. документацию к программе pgp).

ГДЕ ВЗЯТЬ:
ftp://ftp.aist.net/pub/dos/mail/convert/pgp26i.zip ( 257.322 Kb )

9. Кодировка KOI-8


КАК ОПОЗНАТЬ
Вместо русских букв символы псевдографики. Скорее всего это файл в кодировке koi8.

ЧТО ДЕЛАТЬ
Для его перекодировки в альтернативную (досовскую) кодировку есть специальные программы, например, "todos".
todos unixfile
ГДЕ ВЗЯТЬ
ftp://ftp.aist.net/pub/dos/mail/convert/todos.exe ( 9.441 Kb )


Примечание:


Расположение файлов указано в формате
ftp://host.address/dir1/dir2/dir3/file
где
ftp - способ доступа к серверу. В режиме on-line нужно использовать программу ftp, для электронной почты -
ftpmail (например, ftpmail@aist.net).
host.address - адрес ftp-сервера.
dir1/dir2/dir3/ - полный путь (список каталогов) к файлу.
file - имя файла.

Литература.


UUENCODE
HOW TO:UUdecode and view binary messages (регулярно печатается в конференциях news.newusers.questions, comp.binaries.ibm.pc.d,alt.binaries.pictures.d)

MIME
comp.mail.mime FAQ 1/3 (frequently asked questions list) (конференции news.answers,comp.mail.mime,comp.answers)

PGP
PGP Frequently Asked Questions with Answers, Part */3 (конференции news.answers,alt.security.pgp,alt.answers)
Where to get the latest PGP (Pretty Good Privacy) FAQ (конференции news.answers,alt.security.pgp,alt.answers)
RSA Cryptography Today FAQ (*/3) (конференции news.answers,sci.crypt,talk.politics.crypto, alt.security.ripem,sci.answers,talk.answers,alt.answers)


Литература по Internet