Jump to content

yEnc

yEnc — это схема кодирования двоичного текста в текст для передачи двоичных файлов в сообщениях Usenet или по электронной почте . Это снижает накладные расходы по сравнению с предыдущими US-ASCII методами кодирования на основе за счет использования 8-битного метода кодирования. Накладные расходы yEnc часто (если каждое значение байта появляется в среднем примерно с одинаковой частотой) составляют всего 1–2%, [1] по сравнению с 33–40% накладными расходами для 6-битных методов кодирования, таких как uuencode и Base64 . yEnc был первоначально разработан Юргеном Хелбингом, и его первый выпуск состоялся в начале 2001 года. К 2003 году yEnc стал де-факто стандартной системой кодирования двоичных файлов в Usenet. [2] Название yEncode представляет собой игру слов на тему «Зачем кодировать?» , поскольку идея состоит в том, чтобы кодировать символы только в том случае, если это абсолютно необходимо для соблюдения стандарта формата сообщения. [3]

Как работает yEnc

[ редактировать ]

Тела сообщений Usenet и электронной почты должны были содержать только символы ASCII ( RFC   822 или RFC   2822 ). Большинство конкурирующих кодировок представляют двоичные файлы путем преобразования их в печатные символы ASCII, поскольку диапазон печатаемых символов ASCII поддерживается большинством операционных систем. Однако, поскольку это значительно уменьшает доступный набор символов, в сетях с 8-битными байтами возникают значительные накладные расходы (растраченная пропускная способность). Например, в uuencode и Base64 три байта данных кодируются в четыре печатаемых символа ASCII, что соответствует четырем байтам, что составляет 33 % накладных расходов (не включая накладные расходы на заголовки). yEnc использует один символ (один байт) для представления одного байта файла, за некоторыми исключениями.

yEnc предполагает, что двоичные данные в основном могут передаваться через Usenet и электронную почту. Таким образом, 252 из 256 возможных байтов передаются в незакодированном виде как один байт, независимо от того, является ли этот результат печатным символом ASCII или нет. только NUL , LF , CR и = Экранируются . LF и CR экранируются, поскольку RFC, определяющие интернет- сообщения, по-прежнему требуют, чтобы возврат каретки и перевод строки имели особое значение в почтовом сообщении. = — это escape-символ, поэтому он сам экранируется. NUL также экранируется из-за проблем с обработкой нулевых символов в общем коде, хотя в качестве оптимизации yEnc добавляет 42 к каждому исходному байту, так что нередко длинные участки нулевых байтов не требуют большого экранирования.

Не существует RFC или другого стандартного документа, описывающего yEnc. [4] На домашней странице yEnc размещен проект неофициального [ нужна ссылка ] спецификация и грамматика (которые противоречат RFC   2822 и RFC   2045 ), [ нужна ссылка ] хотя ни один из них не был представлен в Инженерную рабочую группу по Интернету . [ нужна ссылка ]

Как и uuencoding, несмотря на свои недостатки, yEnc остается [ когда? ] активен и эффективен в Usenet. [ нужна ссылка ] На домашней странице yEnc указано, что « все основные программы чтения новостей получили поддержку yEnc ». Microsoft , Outlook Express Windows Mail и Windows Live Mail не обеспечивают поддержку yEnc ни для новостей, ни для почты, но существуют доступные плагины . Mozilla Thunderbird декодирует файлы yEnc, состоящие из одной части, но не может объединять двоичные файлы, состоящие из нескольких частей. [5]

Проблемы

[ редактировать ]

Многие программисты и администраторы новостей отметили слабые стороны yEnc. [6] [7] [8] [9] Он страдает многими из тех же недостатков, что и uuencode, некоторые из которых уже были устранены за несколько лет до этого с помощью MIME (который устранял те же недостатки uuencode). Например, yEnc требует, чтобы строки «=ybegin» и «=yend» располагались вокруг закодированного файла в теле сообщения. [3] Хотя это улучшение по сравнению с «началом» и «концом» uuencode, которые встречаются чаще в обычном тексте, читатели сообщений все равно могут столкнуться со строками вне вложений (чаще всего в обсуждениях самого yEnc). yEnc и uuencode [ нужна ссылка ] также попытайтесь собрать файлы, разделенные на несколько сообщений, используя строку темы, что ненадежно. [ по мнению кого? ]

принятие yEncode

[ редактировать ]

Проект предложения yEncode был доступен 31 июля 2001 года. [10] Эталонный кодер и декодер были включены в бесплатную версию MyNews 1.9 в ноябре того же года. [11] yDec, бесплатный декодер Win32, появился 14 ноября 2001 года. 21 марта 2002 года агент поддержал yEnc с версией 1.91. [12] [13] По отзывам Юргена Хельбинга релиз был отложен на неделю. [14] [15] Через пару дней после релиза Юрген Хельбинг написал, что Forté реализовала yEnc наилучшим образом . [16]

В Stuffit Deluxe добавлена ​​поддержка yEnc в версии 8.0 в 2003 году. [17] [18] В PowerArchiver 9.2 добавлена ​​поддержка yEnc в мае 2005 года. [19]

  1. ^ Хелбинг, Юрген (28 февраля 2002 г.). «yEncode — быстрое и грязное кодирование двоичных файлов» . Проверено 26 июля 2014 г.
  2. ^ Товарищи, Г. (2006). «Возрождение групп новостей – ренессанс бинарной публикации». Цифровое расследование . 3 (2): 73–78. дои : 10.1016/j.diin.2006.04.006 . ISSN   1742-2876 .
  3. ^ Jump up to: а б Ким, Джухун; Шнайдер, Фабиан; Агер, Бернхард; Фельдманн, Аня (2010). «Сегодняшнее использование Usenet: характеристика трафика NNTP». 2010 Конференция INFOCOM IEEE по компьютерным коммуникациям . стр. 1–6. CiteSeerX   10.1.1.679.6023 . дои : 10.1109/INFCOMW.2010.5466665 . ISBN  978-1-4244-6739-6 . S2CID   18282467 .
  4. ^ Высокое разрешение: руководство по персональным технологиям от А до Я. 2006. с. 353. ИСБН  978-0618714896 . Хотя для yEnc не существует официальных стандартов, он широко используется для публикации двоичных файлов в группах новостей.
  5. ^ «Поддержка Yenc в Thunderbird?» . org.mozilla.lists.support-thunderbird (список рассылки). 18 мая 2006 г.
  6. ^ Хельбинг, Юрген (10 июня 2002 г.). «Противники yEnc» . yenc.org . Архивировано из оригинала 28 августа 2013 года.
  7. ^ Никсон, Джереми (17 марта 2002 г.). «Почему yEnc вреден для Usenet» . Архивировано из оригинала 29 августа 2013 года.
  8. ^ Уэлч, Курт (19 сентября 2002 г.). «Что не так с yEnc?» . Архивировано из оригинала 11 августа 2013 года.
  9. ^ Фербер, Клаус (4 марта 2002 г.). «yEnc считается вредным» . Архивировано из оригинала 1 июня 2009 года.
  10. ^ «Оригинальный проект yEnc 1.0» . 31 июля 2001 г.
  11. ^ Юрген «Архиватор» Хельбинг. «Новые возможности версии 1.9» . www.winews.net .
  12. ^ «Агент 1.91 выпущен» . forteinc.com . Агент 1.91 обеспечивает полную поддержку yEnc, нового алгоритма кодирования Usenet для двоичных файлов.
  13. ^ Спанбауэр, Скотт (август 2002 г.). «Контроль версий — последние настройки программного обеспечения (слушайте мир радиостанций в Интернете)». Мир ПК . 20 (8): 138–139. В версии 1.92 программы чтения новостей Usenet от Forté добавлена ​​папка для мусора, улучшены некоторые существующие функции и исправлены различные ошибки; но более важным, чем исправления и улучшения, является добавленная поддержка приложением алгоритма двоичного кодирования YEnc.
  14. ^ «Агенту 1.91 нужна еще одна неделя» . Форте . 15 марта 2002 г.
  15. ^ «Отзыв Юргена Хельбинга о yEnc и Агенте 1.91» . Форте . 17 марта 2002 г.
  16. ^ Хельбинг, Юрген (22 марта 2002 г.). «Forte Agent 1.91 поддерживает yEnc» .
  17. ^ Селлерс, Деннис (22 сентября 2003 г.). «В StuffIt Deluxe 8.0 добавлены новые плагины и повышена производительность» . Макмир .
  18. ^ Брин, Кристофер (июль 2004 г.). «Stufflt Deluxe 8.0». Макмир . 21 (7): 40.
  19. ^ Ричард В. Драган (4 мая 2005 г.). «Сжатие файлов: PowerArchiver 9.2» .
[ редактировать ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 576541391dfd68ab3c1027baddf0049c__1707556140
URL1:https://arc.ask3.ru/arc/aa/57/9c/576541391dfd68ab3c1027baddf0049c.html
Заголовок, (Title) документа по адресу, URL1:
yEnc - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)