8bitové čisté - 8-bit clean

8-bit clean je atribut počítačových systémů , komunikačních kanálů a dalších zařízení a softwaru, kterésprávnězpracovávají 8bitové kódování znaků . Takové kódování zahrnují ISO 8859 série a UTF-8 kódování Unicode .

Dějiny

Do počátku 90. let bylo mnoho programů a kanálů pro přenos dat orientováno na znaky a některé znaky, např. ETX , byly považovány za řídicí znaky . Jiní předpokládali proud sedmibitových znaků s hodnotami mezi 0 a 127; například standard ASCII používal pouze sedm bitů na znak, čímž se vyhnul 8bitové reprezentaci, aby se ušetřily náklady na přenos dat. Na počítačích a datových spojeních využívajících 8bitové bajty to ponechalo horní bit každého bajtu volný pro použití jako bit parity , příznakového bitu nebo metadatového datového bitu. 7bitové systémy a datová spojení nejsou schopny přímo zpracovávat složitější znakové kódy, které jsou běžné v neanglicky mluvících zemích s většími abecedami .

Binární soubory z oktetů nemohou být přenášeny přes 7-bitových datových kanálů přímo. Chcete-li to vyřešit, bylo navrženo kódování binárních textů , které používají pouze 7bitové znaky ASCII . Některá z těchto kódování jsou uuencoding , Ascii85 , SREC , BinHex , kermit a MIME 's Base64 . Systémy založené na EBCDIC nemohou zpracovat všechny znaky použité v datech UUencoded. Kódování base64 však tento problém nemá.

8bitová čistota SMTP a NNTP

Historicky byla k přenosu zpráv používána různá média, některá podporovala pouze 7bitová data, takže 8bitová zpráva měla velké šance na zkomolení během přenosu ve 20. století. Ale některé implementace se opravdu nestaraly o formální odrazování od 8bitových dat a umožňovaly procházet bity s vysokou bitovou sadou. O takových implementacích se říká, že jsou 8bitové čisté. Obecně se o komunikačním protokolu říká, že je 8bitový čistý, pokud správně prochází vysokým bitem každého bajtu v komunikačním procesu.

Mnoho standardů raného komunikačního protokolu , jako RFC  780 , 788 , 821 , 2821 , 5321 (pro SMTP ), RFC  977 (pro NNTP ) a RFC  1056 , bylo navrženo tak, aby fungovalo přes taková „7bitová“ komunikační spojení. Konkrétně vyžadují použití znakové sady ASCII „přenášené jako 8bitový bajt s bitem vysokého řádu vymazaným na nulu“ a některé z nich výslovně omezují všechna data na 7bitové znaky.

V prvních několika desetiletích e-mailových sítí (1971 až počátek 90. ​​let) byla většina e-mailových zpráv prostým textem v 7bitové znakové sadě US-ASCII.

RFC  788 Definice SMTP, stejně jako jeho předchůdce RFC  780 omezuje internetovou poštu na linkách (1000 znaků nebo méně) 7-bitové znaky US-ASCII.

Později byl formát e-mailových zpráv znovu definován, aby podporoval zprávy, které nejsou zcela textem US-ASCII (textové zprávy ve znakových sadách jiných než US-ASCII, a netextové zprávy, například audio a obrázky).

RFC  3977 specifikuje "NNTP funguje přes jakýkoli spolehlivý obousměrný 8bitový kanál datových proudů." a změní znakovou sadu pro příkazy na UTF-8. Nicméně, RFC  5536 stále omezuje znakové sady ASCII, včetně RFC  2047 a RFC  2231 MIME kódování dat ne-ASCII.

Internetová komunita obecně přidává funkce rozšířením , což umožňuje komunikaci v obou směrech mezi upgradovanými stroji a dosud neaktualizovanými počítači, místo aby prohlašovala, že dřívější software kompatibilní se standardy je „rozbitý“, a trvala na tom, aby veškerý software na celém světě byl aktualizován na nejnovější Standard. V polovině devadesátých let lidé protestovali proti „jen odeslat 8 bitů (na servery RFC  821 SMTP)“, možná kvůli vnímání, že „jen poslat 8 bitů“ je implicitní deklarace, že se ISO 8859-1 stalo novým „standardním kódováním“ “, což nutí všechny lidi na světě používat stejnou znakovou sadu . Místo toho je doporučeným způsobem, jak využít výhody 8bitových čistých odkazů mezi počítači, použití rozšíření ESMTP ( RFC  1869 ) 8BITMIME pro těla zpráv a rozšíření SMTP SMTPUTF8 pro záhlaví zpráv. Navzdory tomu někteří agenti pro přenos pošty , zejména Exim a qmail , předávají poštu serverům, které neregistrují 8BITMIME, aniž by provedly převod na 7bitové MIME (typicky tisk v uvozovkách , „převod QP“) vyžadovaný RFC  6152 . Tento přístup „stačí odeslat-8“ ve skutečnosti ve skutečnosti nezpůsobuje problémy, protože prakticky všechny moderní e-mailové servery jsou 8bitové čisté.

Viz také

Reference