Как раскодировать письмо?

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

  1. Кодировка UUENCODE. Документ находится в одном письме.
  2. Кодировка UUENCODE. Документ состоит из нескольких частей.
  3. Кодировка BinHex.
  4. Кодировка MIME.
  5. Кодировка Quoted-Printable.
  6. Упакованный "пакет статей".
  7. PGP.

1. Кодировка UUENCODE. Документ находится в одном письме.

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

Закодированный текст начинается строкой "begin имя_файла" и оканчивается словом "end":

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

ЧТО ДЕЛАТЬ.

Если Вы пользуетесь программой dMail, перейдите в меню (клавиша F2), затем выбрать пункт меню "Обработка | Извлечь данные". В текущем каталоге будет создан файл с именем, которое указано в строке "begin...".

Или

записать текст письма в отдельный файл, например, text.uue, и c помощью программы uudecode.exe раскодировать письмо:

uudecode.exe text.uue

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/relcom/coders/
Файл: uucode.arj

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

begin anderson.software_piracy.ps.Z замените на begin anderson.z

2. Кодировка UUENCODE. Документ состоит из нескольких частей.

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

Документ находится в нескольких письмах. Первое письмо начинается словами "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">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)

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

.....
M,%!QWJ'P@M;>F=CE8-23]QZVY>?[;?D9!;O?&63UERXMPK">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 48886/2672 section (from first encoded line to "end")
sum -r/size 25804/24433 entire input file

ЧТО ДЕЛАТЬ.

Каждое письмо записать в отдельный файл (part1.uue, part2.uue ...),
программой uudecode.exe из комплекта uucode.arj раскодировать все письма (она умеет автоматически "собирать" файл, состоящий из нескольких частей):

uudecode.exe part

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/relcom/coders/
Файл: uucode.arj

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

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

В тексте или заголовках письма встречаются слова "BinHex". Например:

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

Part 1.4 Type: Macintosh BinHex Archive (application/mac-binhex40)

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:

xbin.exe file

При этом создается три файла с расширениями

file.dat
file.rsr
file.inf

Собственно данные содержатся в файле с расширением ".dat"

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/relcom/coders/
Файл: xbinhex.arj

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

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

Обратите внимание на заголовок письма - там обязательно есть строка "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]

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/relcom/coders/
Файл: mime64.zip

5. Quoted-Printable

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

Текст выглядит как набор сочетаний "=XX", где XX- шестнадцатиричное представление ASCII- символа. В тексте или заголовках письма могут содержаться слова "quoted-printable". Например:

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

=CF=F0=E8=E2=E5=F2 =C2=E0=E4=EC=E8!!

=D1=EF=E0=F1=E8=E1=EE =E7=E0 =F2=E2=EE=E8
=EF=EE=F1=EB=E5=E4=ED=E8=E5=
...

ЧТО ДЕЛАТЬ.

Записать письмо (вместе с заголовком) в файл. Раскодировать:

mimeqp.exe infile [outfile]

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/relcom/coders/
Файл: mimeqp.zip

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

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

Закодированный текст начинается строкой "start stdin"

start stdin
,+aH*bB,X}QfD{p5@wOmS>[nZ@j4!CC.aHO'7icI$08DllEr+Yd!-%lhBl>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.

ЧТО ДЕЛАТЬ.

Hеобходима программа uunpack.

ГДЕ ВЗЯТЬ.

Получить можно, в частности, послав на mailserv@inforis.nnov.su письмо:

cd relcom/dos
get uunpack.zip
quit

7. PGP.

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

-----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.exe ciphertextfile [-o plaintextfile]

Кроме самой программы pgp.exe, вам понадобится открытый ключ автора письма и ваш закрытый ключ. (подробнее - см. документацию к программе pgp).

ГДЕ ВЗЯТЬ.

Файловый архив МАРК-ИТТ:

Каталог: msdos/cripto/
Файл: pgp263i.zip

Литература.

UUENCODE

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

MIME

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

PGP

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