Web 3.0 a vývoj dApps: Co jsou zač a proč by vás měly zajímat?

Vše, co potřebujete vědět o webu 3.0 a vývoji decentralizovaných (blockchain) aplikací přehledně a na jednom místě.

Responzivní webové stránkyResponzivní webové stránky

Web3 a decentralizované aplikace v poslední době vzbudily mnoho povyku. Někteří je vnímají jako další buzzword, zatímco jiní v nich vidí budoucnost internetu i digitálních produktů.

Ponořte se s námi do světa těchto moderních technologií a udělejte si o nich obrázek sami. Prozradíme vám vše, co potřebujete vědět o technologii web3 i proč přemýšlet nad vývojem dApps.

Co je web 3.0?

Web 3.0 (někdy též web3) je decentralizovaná síť postavená na decentralizovaných technologiích. Jejím hlavním cílem je přetvořit internet na demokratičtější a bezpečnější místo, kde nebude nikdo kontrolovat provoz či cenzurovat informace jen proto, že web běží na jeho serverech.

Například používání decentralizovaných sociálních sítí nemůže být podmíněno souhlasem se zpracováním osobních údajů a všichni musejí dodržovat stejná pravidla, nezávisle na tom, o jakého uživatele či korporaci se jedná.

Web3 tak reaguje na potřebu zvýšení kontroly nad uživatelskými daty a ochrany soukromí, která vzrostla s rozmachem sociálních sítí a dalších platforem, typických pro web 2.0.

Přesto, že je web3 relativně nový pojem a dosud nikdo přesně nedefinoval komplexní řešení této technologie, symbolizuje pro mnohé budoucnost internetu. Budoucnost postavenou na nové architektuře, další generaci webových aplikací (dApps) a business modelu nezávislém na korporacích.

Chci začít web3 projekt
Responzivní webové stránky
WEB X.0

Historie webových stránek v kostce

hand image
  • 1990–2004
  • počátek internetu
  • první webové stránky
  • převaha statických webových stránek
  • obsah tvořen převážně programátory
  • internet využíván zejména ke konzumaci obsahu
hand image

Web 2.0 vs. Web3

Architektura webu 2.0 je postavená na komunikaci webového prohlížeče s webovým serverem, na kterém se nachází frontend, backend i databáze webu či webové aplikace:

  1. Uživatel zadá prostřednictvím prohlížeče požadavek.

  2. Prohlížeč požadavek pomocí protokolů doručí na server.

  3. Server požadavek zpracuje.

  4. Server pošle prostřednictvím protokolů výsledek prohlížeči.

Klíčovými prvky jsou tedy server a protokoly – nad nimiž uživatel nemá 100% kontrolu. A zde přichází na řadu web3, který centralizované prvky, závislé na autoritách, nahrazuje prvky decentralizovanými.

Chci začít web3 projekt
Responzivní webové stránkyWeb 2.0 vs. Web3

Jak funguje Web 3.0

Architektura webu3 může být realizována několika způsoby. Nejčastěji je dnes spojována s Ethereum blockchainem, a proto se veškerý další obsah zaměřuje na popis tohoto modelu:

  1. Uživatel se prostřednictvím privátního klíče, uloženého v kryptopeněžence (například Metamask) připojí k frontendu decentralizované aplikace.

  2. Frontend dApp připojí k poskytovateli (např. opět Metamask).

  3. Poskytovatel komunikuje s chytrými kontrakty umístěnými v blockchainu.

  4. Uzly blockchainu ověří transakci.

  5. Po úspěšném ověření se přidá nový blok do blockchainu.

Všichni tedy kontrolují data, která jsou do databáze přidávána a každý má kopii databáze – peer-to-peer architektura. Komunikace s blockchainem je financována tokeny kryptoměn a vlastnictví je drženo v NFT.

Chci začít web3 projekt
Responzivní webové stránkyJak funguje Web 3.0

Výhody a nevýhody webu 3.0

výhody

1

Ochrana osobních údajů

Uživatel má mnohem větší kontrolu nad svými daty. Identita je navíc chráněna prostřednictvím privátního klíče.

2

Odstranění vlivu autorit

Web3 je postavený na decentralizaci. Nikdo nemůže podmínit používání dApp, cenzurovat obsah ani porušovat pravidla.

3

Snížení kyberzločinnosti

Princip blockchainu snižuje riziko kyberzločinů.
nevýhody

1

Závislost na kryptoměně

Hodnota tokenů je závislá na zájmu uživatelů. Pokud klesne zájem, klesne i jejich hodnota.

2

Výkon sítě a dApps

Vyšší bezpečnost a důvěryhodnost internetu i transakcí je zaplacena pomalejší odezvou sítě a aplikací.

3

Zneužití decentralizace

Absence autority, která kontroluje provoz sítě může vést ke zneužívání této svobody. Hrozí tedy nárůst případů obtěžování či nenávistných projevů.

Co jsou dApps a jak fungují?

Decentralizované aplikace (zkráceně dApps) navenek vypadají stejně jako klasické webové aplikace. Stejné zůstává i ovládání a zaměření jednotlivých nástrojů.

Rozdíl je ovšem v architektuře a v backendu. Původní architekturu klient-server nahrazuje peer-to-peer model, jenž data místo na centralizovaný server ukládá na decentralizované úložiště (IPFS/SWARM).

Samotná logika aplikace je uložena ve smart contractech (chytrých kontraktech), které se nacházejí v blockchainu – odtud označení blockchain aplikace.

Zápis dat do blockchainu probíhá prostřednictvím transakcí. Podobu těchto transakcí definují zmíněné chytré kontrakty, přičemž za provedení každé transakce uživatel platí tokeny kryptoměn.

Díky blockchainu jsou dApps bezpečnější, jelikož jeho princip brání přepsání nebo napadení aplikace. Stejně tak nemůže dApp nikdo jen tak vypnout, protože neexistuje žádná centrální entita, která by mohla sama o sobě určovat směr appky.

Chci začít web3 projekt
Responzivní webové stránky

Architektura dApps

1

Kryptopeněženka

Digitální identita uživatele

  • ověřuje identitu uživatele a platby

  • podepisuje transakce

  • komunikuje s frontendem

2

Frontend

Uživatelské rozhraní aplikace

  • vytváří požadavky uživatele

  • komunikuje se smart contracts

3

Smart contracts

Backend / logika aplikace

  • kód umístěný v blockchainu

  • komunikuje s uživatelem prostřednictvím transakcí definovaným v kódu

4

Ethereum Virtual Machine

Jádro architektury

  • provádí logiku definovanou ve smart contracts

  • zpracovává všechny změny

Zájem o Web 3.0 a vývoj dApps v průběhu času

Graph

Vývoj webových aplikací vs. tvorba dApps

vývojáři

Technologie

  • frontendové technologie webových aplikací: React, Angular, Vue.js, BootStrap, ...
  • frontendové technologie pro vývoj dApps: stejné jako u webových aplikací
  • backendové technologie webových aplikací: Node.js, Gatsby, Next.js, PHP, ...
  • backendové technologie pro vývoj dApps: Truffle, Brownie, Hardhat, ...

Architektura

  • tradiční webové aplikace jsou postavené na backendu a frontendu, které se nasazují na centralizované servery
  • dApps používají decentralizované prvky a data se neukládají na servery třetích stran
uživatelé

Práva uživatelů

  • web 2.0 a tradiční webové aplikace jsou řízeny autoritami, může tedy docházet k blokování uživatelů či cenzuře
  • základní myšlenkou webu3 a blockchain aplikací je demokratizace internetu – všichni uživatelé by měli mít stejná práva
  • používání klasických aplikací zanechává digitální stopu – např. poskytovatel internetu vidí navštívené weby
  • decentralizované aplikace kladou soukromí uživatelů na první místo,

Bezpečnost

  • korporace stojící za vývojem webových aplikací mohou zneužívat uživatelská data
  • u dApps jsou uživatelská data, včetně identity v rukou uživatelů
  • webové aplikace čelí MITM a dalším útokům
  • dApps jsou postavené na blockchainu, který brání záměně obsahu

FAQ

Co jsou decentralizované aplikace?

addition

Decentralizovaná aplikace je typ softwaru postavený na technologiích bez centrální autority. Skládají se ze dvou částí – frontend, který je vytvořený např. prostřednictvím JavaScriptu a backend – chytré kontrakty, které jsou uložené v blockchainu.

Na první pohled jsou tedy nerozeznatelné od tradičních webových aplikací a mohou mít stejné využití – např. aplikace pro správu úkolů.

Které programovací jazyky se používají k tvorbě dApps?

addition

Solidity – programovací jazyk, určený k tvorbě chytrých kontraktů, který vyvinul Vitalik Buterin (zakladatel Ethereum blockchainu).

Java – jazyk typický pro vývoj mobilních aplikací je možné využít také k tvorbě chytrých kontraktů a vývoji dApps.

JavaScript – jeden z nejpopulárnějších prostředků určených k tvorbě webu či vývoji webových aplikací si díky své škálovatelnosti a zrychlení procesu vývoje probojoval cestu až k vývoji dApps.

Simplicity – jazyk s přívětivou syntaxí, která činí kódování snazší a efektivnější. Umožňuje vytvářet chytré kontrakty a další blockchainová řešení nejen pro Bitcoin, ale i Ethereum.

Je Bitcoin decentralizovaná aplikace?

addition

Bitcoin je open-source platforma, která svým uživatelům umožňuje provádět transparentní transakce bez dohledu jakékoli centrální autority. Díky tomu lze Bitcoin nazvat nejen první kryptoměnou na světě, ale i decentralizovanou aplikací.

Je možné vydělat na dApp?

addition

Stejně jako tradiční webové aplikace či webové stránky lze dApps zpeněžit různými technikami monetizace. Jednou z nejvyužívanějších možností je takzvaný crowdsale, který je postavený na davovém prodeji, tedy na shánění investorů a rozdělení nákladů

Druhou variantou jsou poplatky za provedené transakce. Díky tomu máte profit ze samotného používání aplikace. Stejně tak lze ovšem využít i zaběhnuté modely, jako jsou platby v aplikacích prostřednictvím kryptoměn.

Patří decentralizované aplikace mezi webové stránky?

addition

dApps jsou stejné jako každý jiný digitální produkt. Může se jednat o webovou stránku, webovou nebo mobilní aplikaci. Rozdíl je v tom, že decentralizované aplikace běží na decentralizovaném základu, kupříkladu na Ethereu.

Jaké jsou výhody decentralizovaných aplikací?

addition

Díky tomu, že backend dApps běží na blockchainu, disponují decentralizované aplikace vysokou mírou zabezpečení, maximální transparentností a mnohem vyšší kontrolou nad uživatelskými daty. Neexistuje zde žádná centrální autorita, která by mohla omezovat či kontrolovat přenášená data a blockchain zajišťuje provoz bez výpadků aplikace.

Jaký je rozdíl mezi aplikací a decentralizovanou aplikací?

addition

Rozdíl mezi webovou aplikací a decentralizovanou aplikací tkví v jejich architektuře. Zatímco webové aplikace používají centralizované servery a databáze, dApps využívají pouze decentralizované platformy. Výhodou centralizovaných webových aplikací je svižnější provoz. Výhodou dApps pak vyšší transparentnost, svoboda a nezávislost na autoritách.

Potřebují dApps backend?

addition

Decentralizované aplikace se stejně jako tradiční webové projekty skládají ze dvou částí – backend a frontend. Rozdíl je v tom, že v současnosti většina digitálních produktů backend provozuje na centralizovaných serverech. dApps využívají decentralizované technologie, typicky Ethereum blockchain.

Rascasone

Máte nápad na nový projekt?

Popište nám ho! Rádi odpovíme na všechny vaše dotazy, nebo rovnou domluvíme termín schůzky.

Ozvěte se Vítovi! Vše s vámi projedná a probere.

Vít Uličný

Zakladatel & CEO

Vít Uličný