YEnc

yEnc  er et populært binært-til-tekst-kodningsskema, der primært bruges af Usenet -brugere . Bruges også ved afsendelse af store binære filer via e-mail. Sammenlignet med andre skemaer til kodning af binære data til tekst, er det mere effektivt på grund af det faktum, at det ikke kun bruger tegn fra 7-bit ASCII -tabellen , men også en del af tegnene fra den udvidede ASCII-tabel . På grund af dette overstiger størrelsen af ​​filer, der er kodet med yEnc, størrelsen af ​​de originale med kun 1-2 % [1] . Dette er en væsentlig forbedring i forhold til de 33%-40% ekstra plads til seks-bit kodningsmetoder såsom uuencode og Base64 .. Den første version af yEnc blev udgivet af Jürgen Helbing i begyndelsen af ​​2001. I 2003 var yEnc blevet udbredt og blev de facto standarden for kodning af binære filer på Usenet . [2] Navnet yEncode er et ordspil på "Hvorfor kode?" ("Hvorfor kode?"), en vittighed, der opstod på grund af det faktum, at hovedideen med yEnc var, at kun de tegn i en binær fil skal kodes, som den ubetinget krævedes at skulle placeres i brevets brødtekst i overensstemmelse med RFC 's tekniske standarder . [3]

En anden fordel ved yEnc frem for uuencode , Base64 og andre tidligere teknikker er CRC-koden , som giver dig mulighed for at kontrollere, at kildefilen er korrekt samlet og gendannet fra individuelle fragmenter sendt med posten.

Hvordan virker yEnc

Ifølge RFC 822 og RFC 2822 må Usenet -e-mail-beskeder kun indeholde tegn fra 7-bit ASCII -kodetabellen . Men i praksis er denne begrænsning ikke blevet observeret i lang tid, og langt størstedelen af ​​moderne software transmitterer regelmæssigt 8-bit-tegn i bogstavkroppen. Fra yEnc's synspunkt, ud af 256 mulige binære tegn, kan 252 transmitteres inde i bogstavet som en enkelt byte, uanset om dette tegn vises på computerskærmen eller ej. Tegnene NUL, LF, CR og = (lighedstegn) er kodet på en særlig måde. For LF og CR er årsagen til undtagelsen, at disse tegn inde i bogstavet set fra RFC's synspunkt har en særlig betydning. NUL - på grund af kompleksiteten af ​​at behandle strenge, der indeholder denne karakter inde i dem i nogle programmeringssprog og af hensyn til optimering af yEnc-behandlingsalgoritmer. Symbolet = bruges som et escape-tegn .

Problemer og kritik

En række kritikere har peget på svagheder i yEnc. [4] [5] [6] [7]

De påpegede især, at yEnc lider af de samme fejl i den mere almindelige uuencode , som blev løst for længe siden i MIME- mail-standarden . For eksempel kræver yEnc, at strengene "=ybegin" og "=yend" placeres i e-mailens brødtekst, hvilket begrænser det binære stykke, der sendes i den e-mail. [3]

Som et resultat af dette er en falsk positiv af filsamleren mulig, som vil analysere brevets tekst og finde en lignende linje der, som blev nævnt under diskussionen om selve yEnc i korrespondancen. Dette er en mindre fejl, mere alvorlig er, at yEnc koder filnumrene i emnelinjen i e-mailen, hvilket er en upålidelig måde at formidle information på og kan forvanskes. Som et resultat vil samlingen af ​​den binære fil mislykkes.

Kritikken vedrørte også manglen på en formel standard, der beskriver yEnc.

Blandt forslagene til at forfine yEnc var også ideen om at integrere yEnc i MIME , hvilket tilsyneladende ville redde yEnc fra de fleste af de mangler, der tilskrives denne kodningsteknik. Kritikere af yEnc tog dog ikke nogen praktiske skridt for at implementere deres ideer, så yEnc bliver fortsat brugt nu i den form, som det blev defineret af teknologiens forfatter.

Standardisering og support i software

yEnc er aldrig blevet foreslået som en teknisk standard af IETF . yEnc-hjemmesiden indeholder en uformel teknologispecifikation samt en række yderligere tekniske bemærkninger.

yEnc understøttes direkte af Usenet Forte Agent -nyhedslæseren . Der er også en række tredjepartsværktøjer, der giver dig mulighed for at bruge yEnc sammen med andre mail- og nyhedslæsere.

Der er tredjeparts plug-ins til Outlook Express , Windows Mail og Windows Live Mail , der aktiverer denne teknologi. Mozilla Thunderbird understøtter yEnc i begrænset omfang. Denne e-mail-klient kan ikke afkode filer opdelt i flere e-mails. [otte]

Noter

  1. Helbing, Juergen yEncode - En hurtig og beskidt kodning til binære filer (28. februar 2002). Hentet 26. juli 2014. Arkiveret fra originalen 28. august 2013.
  2. Fellows, G. Nyhedsgrupper genfødt – Den binære postrenæssance  (uspecificeret)  // Digital Investigation. - 2006. - V. 3 , nr. 2 . - S. 73-78 . — ISSN 1742-2876 . - doi : 10.1016/j.diin.2006.04.006 .
  3. 1 2 Kim, Juhoon; Schneider, Fabian; Ager, Bernard; Feldmann, Anja. Dagens Usenet-brug: NNTP-trafikkarakterisering  (engelsk)  : tidsskrift. - 2010. - S. 1-6 . - doi : 10.1109/INFCOMW.2010.5466665 .
  4. Helbing, Jürgen Modstandere til yEnc . yenc.org (10. juni 2002). Arkiveret fra originalen den 28. august 2013.
  5. Nixon, Jeremy Hvorfor yEnc er dårligt for Usenet (17. marts 2002). Arkiveret fra originalen den 29. august 2013.
  6. Welch, Curt Hvad er der galt med yEnc? (19. september 2002). Arkiveret fra originalen den 11. august 2013.
  7. Färber, Claus yEnc betragtes som skadelig (link utilgængeligt) (4. marts 2002). Arkiveret fra originalen den 1. juni 2009.  
  8. Yenc-understøttelse i Thunderbird? . org.mozilla.lists.support-thunderbird postliste (18. maj 2006). Dato for adgang: 10. april 2017.

Se også

Links