Řekněte mi, jak funguje bitcoin #8: Internet v internetu, první část

Každý, kdo chce celou svou mysl zachvátit všeobjímajícím a komplexním poznáním všech těch úžasných věcí kolem bitcoinu, musí nejprve chápat, jak funguje internet. Řekli jsme si, v čem spočívá těžení a blockchain – nyní se zaměříme na síť.

Na začátku celého seriálu jsem pořád mluvil právě o síti, do které se vysílají transakce. Bitcoin je internet v internetu. Je všude a vlastně nikde, protože nemá centrum. Je hypoteticky nezničitelný – museli byste přeříznout veškerá internetová spojení vejpůl, abyste oddělili dvě komunikující strany, což je vzhledem k jeho velikosti zcela nemožné. Představte si to jako rozlehlý kus látky, do které dělá útočník díry. Vždycky můžete díru obejít a komunikace se nenaruší, pokud váš kamarád zrovna není na opačné straně a někdo se nechystá látku v půli roztrhnout…

Obsah

  1. Vznik
  2. Základní slovník
    1. Mocnina
    2. Bit
    3. Binární
    4. Číselná soustava
  3. Vodiče informace
    1. Typy vodičů
    2. Typy signálu
      1. Analogový signál
      2. Digitální signál
  4. Shrnutí

1 Vznik

Jak vlastně internet vznikl? Pokud jsem to již dříve nezmínil, prvotní impuls byla bezpečnost. První síť, která předcházela internetu, se jmenovala ARPHANET (Advanced Research Projects Agency Network, „agenturní síť pokročilých výzkumných projektů“) a spustilo jí Ministerstvo obrany Spojených států.

Měla odolat jaderné válce, a tak počítačový expert Paul Baran navrhl distribuovanou síť, tj. rozdělenou a navzájem propojenou. Jako obrovský kus látky výše. Žádné centrum, žádná centrální kontrola. Internet kontrolují všichni a vlastně nikdo. Doslova. Jako bitcoin.

2 Základní slovník

2. 1 Mocnina

Ode dneška se budete čím dál častěji setkávat se zápisem čísel jako např. 28 nebo 105. Co to znamená a k čemu to je? Malé číslo v horním indexu (tzv. exponent) znamená, kolikrát se číslo vynásobí samo sebou (čte se na druhou, na pátou atd.). Tzn. např. 256 = 28, 4 = 22 apod., protože 2 . 2 . 2 . 2 . 2 . 2 . 2 . 2 = 256.

Opakem je odmocnina, která říká, které číslo musí být umocněno na druhou (případně na libovolné číslo), aby vzniklo číslo na začátku. Př. třetí odmocnina z osmi je dva, protože 23 = 8.

2. 2 Bit

Bit je základní jednotka informace. Nula a jednička. Zapnuto nebo vypnuto. Představte si, že jste v pokoji a pozorujete lampu. Jste schopni si zapamatovat jen 1 bit informace, tzn. zda je rozsvícená, nebo ne. Značí je jako b.

Počítač pracuje s neuvěřitelně (asi 1 000 000 000x) většími objemy a skládá bity do dlouhých sekvencí zapnuto, zapnuto, vypnuto atp.

Kapacita vašeho flash disku je ale nejspíš uvedena v bytech (značka B). Jednoduchý převod, osm bajtů je jeden byte. A používají se násobné předpony – k (kilo-) je 1000x víc, M (mega-) je milionkrát víc, G (giga-) je miliardkrát víc, T (tera-) je bilionkrát víc, P (peta-) je biliardkrát víc a E (exa-) je trilionkrát víc. Flash disk o kapacitě 64 GB je schopen zaznamenat 64 . 109 . 8 jedniček a nul, tj. 5,12 . 1012.

Setkáte se s pojmy jako 256bitové šifrování nebo 128 bitů dlouhá adresa. Co to znamená? To znamená, že šifra nebo adresa je 256 řádů dlouhé číslo, které na každém místě ale smí mít jen jedničku nebo nulu. Třeba 0010110001010110110010.

Není to blbuvzdorné? Je. Lidský mozek pracuje i s jinými stavy, než zapnuto/vypnuto, proto je na trochu jiné úrovni, a proto na nás umělá inteligence pořád nemá. Pro zajímavost, HP Labs už od roku 2008 vyvíjí elektronické součástky, které umí operovat s mnohem vyšším počtem stavů („napůl“ zapnuto apod.). Úspěch by znamenal významný pokrok v oblasti umělé inteligence, protože by došlo k exponenciálnímu zvýšení efektivity přenosu (nemusím poslat 256 bitových čísel, ale třeba jen 20) a výpočetního výkonu. Popis tzv. memristoru ale už doopravdy nespadá pod článek o kryptu.

2. 3 Binární

Binární znamená ve dvojkové číselné soustavě, používající čísel pouze 0 a 1. Vizte níže.

2. 4 Číselná soustava

S tím souvisí pojem číselná soustava. Nejjednodušeji řečeno, číselná soustava znamená, které číslice použít pro vyjádření určité hodnoty. My máme deset znaků pro číslice – 0, 1, 2, 3, 4, 5 … 9. Z nich sestavujeme čísla. Když dojdeme k devítce, další číslo znamená zvýšit vyšší řád o jedna. Třeba 119, 120. Ale desítková soustava není jediná.

V informatice se nejčastěji používá tzv. hexadecimální soustava, tj. šestnáctková. Klasické číslice zůstávají, ale pak přicházejí na řadu písmena abecedy. Takže 8, 9, desítka už by byla sestavená ze dvou číslic, takže A, 11 jako B, 12 jako C atd. Laicky, šetří to hodně místa.

Ostatní soustavy mají názvy odvozené od čísla počtu jejích číslic v latině. Např. octadecimální znamená osmnáct „číslic“, protože od devítky dál se použije písmen z abecedy.

3 Vodiče informace

Než se vrhneme na internetový protokol, tak vysvětlím techničtější stránku celé věci. Jak již jsem řekl v podkapitole Slovník, dnešní počítače pracují s bity a tvoří jejich sekvence (001010110…). Pokud se dva počítače dohodnou na stejné frekvenci, s jakou odesílají jedno číslo, dorozumí se. Představte si to jako Morseovu abecedu – bez dohody, jak dlouho musíte svítit, aby to znamenalo 1, se může stát, že místo pěti po sobě jdoucích jedniček si zapíšete jen tři. Při přenosu informací nás zajímají tři věci:

  • Rozsah – kolik dat je zařízení schopno přenést; jinak též šířka přenosového pásma – představte si deset tunelů, v nichž se rozsvěcejí lampy a lidé na druhém konci zapisují jedničky a nuly, to je desetibitová šířka
  • Přenosová rychlost – za jak dlouho to zvládne
  • Propustnost – kolik dat přenese za jednotku času. Třeba 10 b/s (deset bitů za sekundu)
  • Latence – zpoždění, které informace nabere mezi reálnými místy obou komunikujících stran

3. 1 Typy vodičů

Zatím existují tři základní typy přenosových vodičů.

  • Měděné kabely – klasické elektrické vodiče s odporem, který znemožňuje jejich použití na delší vzdálenosti; každý kabel je jeden tunel, což je prostorově náročné – větší rozsah, tlustší kabel
    • Shrnutí: levné, pro kratší vzdálenosti, jednoduché opravy, energetické ztráty
  • Optické kabely – v současnosti nejrozšířenější; ohebné skleněné miniaturní trubičky, kde se sekvence odesílají jako světlo, co se odráží po jejich vnitřních stěnách; minimální ztráty, nejvyšší možná rychlost, obrovský rozsah (každé místo na stěně jde využít – když se paprsky nekříží, dosáhneme tak obrovského rozsahu)
    • Shrnutí: drahé, pro delší vzdálenosti (pod oceány), složitější na údržbu, efektivnější, používané k internetové komunikaci mezi kontinenty
  • Rádiové vlny – bezdrátové; analogový přenos
    • Shrnutí: šíření všemi směry, krátký dosah

3. 2 Typy signálu

Signál je proud dat. Existují dva typy signálu. Digitální a analogový. Elektřinu, kterou používáme k odesílání dat (stavy zapnuto/vypnuto), můžeme totiž využít dvěma různými způsoby.

Když byl vynalezen digitální signál, tak to znamenalo naprostý pokrok v předávání informací. Co kdybyste měli řetěz deseti lidí a předávali si informaci od ucha k uchu? Za chvíli bude dost zkomolená, že? Ale zpráva, video nebo fotografie, kterou posíláte internetem (nebo bitcoinová transakce) nemůže být v žádném případě s každým dalším přenosem zkomolenější. Při dnešní velikosti internetu není možné přenášet data s chybami.

Digitální signál umožňuje předávat informace beze změn, způsobených vlivem přenosu. Pokud přehráváte DVD nebo CD, tak jde víceméně o mechanickou záležitost – trochu vylepšená gramofonová deska. S každým přehráním se kvalita záznamu zhoršuje (!). Jde totiž o analogový signál. Zaznamenané informace se opotřebovávají.

3. 2. 1 Analogový signál

Analogový signál nemá stabilní hodnoty, žádné jasně ohraničené hodnoty (tzn. závisí na přesnosti měření, přičemž už logicky cítíme, že jeho přenos bude zkomolený). Pokud budu např. měřit teplotu vzduchu a tento údaj analogově přenášet do počítače na základě proměnlivého odporu zahřívané látky, počítač tu hodnotu nedokáže uchopit.

Zaznamená jen určitou hodnotu napětí, kterou chce poslat dál. Jeho vlastní součástky ale nejsou navlas přesné, jako součástky dalšího stroje, takže se signál lehce pozmění. Navíc, spojení mezi dvěma počítači není dokonale bezeztrátové.

Naměřená hodnota se mění kontinuálně. Na rozdíl od příkladu se světlem a tunelem neexistuje žádná dohoda o frekvenci a počet hodnot je neomezený.

3. 2. 2 Digitální signál

Digitální signál má jasně danou frekvenci a jasně dané hodnoty. Ukážeme si na kolísavém napětí. Měřím ho a dělám si graf. Nahoru, dolů. Když bude reálná hodnota napětí na svislé ose ve vymezeném pruhu (např. 1 až 5 voltů), znamená to 1. Když bude v jiném rozsahu, znamená to 0.

Stanovením rozsahů jsme totiž odstranili problém nepřesného záznamu všech hodnot v reálném čase. A háček? Nedocílili jsme tak vysoké kvalitě záznamu, protože některé různé hodnoty pro nás znamenají pořád to samé číslo. A my máme k dispozici jen 0 a 1.

Počítače, diktafony atd. proto mají vysokou frekvenci záznamů a k analogovým hodnotám svých čidel (např. toho zvukového) přiřazují dlouhá čísla v binární podobě (jen 1 a 0), která pak odesílají jako signál digitální. Tím je umožněno přenést digitální data velmi vysoké kvality bez sebemenší ztráty. Samozřejmě, existují různé „dorozumívací frekvence“ a protokoly – třeba pro přenos písmen znamená určitá protokolem daná sekvence jedniček a nul nějaké písmeno.

Existuje i jiný signál než digitální? Jak už jsem řekl, v případě efektivního využití memristorové součástky v informatice by bylo možné místo dvou stavů jednoznačně počítat třeba s padesáti, a tím by se exponenciálně zvýšil výkon až k úrovni umělé inteligence.

Ztrátu, byť jen jediného bytu, v internetové komunikaci jistí náhodné zasílání kontrolních součtů, tím se už zabývat nebudu. Budu se zabývat ale tím, jaké jsou přenosové protokoly pro sadu znaků, tzn. kódováním.

4 Shrnutí

Nejdůležitější ze všeho byl digitální signál, který souvisí s veškerou výpočetní technikou na světě. Prostředek, se kterým dokážeme v dnešní době vytvořit svým způsobem nesmrtelnou informaci, jejíž obsah se s každým dalším čtením nebude opotřebovávat. Věc, dnes samozřejmá, ale stále přelomová (kterou budu rozvíjet i mimo tento seriál).

Druhou nejdůležitější věcí jsou bity. Vynález komerčně využitelného memristoru je sice na cestě (nebo v době, kdy čtete tento článek, už existuje), ale jedničky a nuly nás budou pronásledovat ještě dlouho. Příště se budeme bavit o kódování.

Sdílet příspěvek

Napsat komentář

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..