What is Nostr?
dr.orlovsky / Dr Maxim Orlovsky
npub13mh…mnym
2023-05-27 16:15:43

dr.orlovsky on Nostr: Web2, Web3, Web5… What are those? Let’s start with defining Web itself. My take: ...

Web2, Web3, Web5… What are those?

Let’s start with defining Web itself. My take:

#Web is a computing platform - like POSIX, Windows, Java, embedded etc. Web differs from Internet the same way Windows differs from BIOS.

As a computing platform Web brings a number of protocols, toolchains, SDKs and technologies:

1. Networking is restricted to the TCP/IP subset: HTTP(s), WebSocket and WebRTL

2. Supported instruction set architectures: WASM, JavaScript virtual machine(s), both browser- and server (NodeJS)-based.

3. UI uses HTML, CSS, DOM, WebGL, Canvas. On top of that UI frameworks proliferate - like in POSIX world we have Qt, GTK etc in Web world we have React, Angular, Vue, Svelte etc.

Why Web is so popular? It was the first computing platform created at the age of networking - and for network-based apps first. It allows to run apps without installing them - and do that on any consumer UI-based device: desktop, laptop or mobile. It allows simple creation of cross-platforms apps. It avoids censorship of app stores.

The drawbacks of Web are mostly direct consequences of its advantages:
- low security: a remote code is executed locally;
- privacy leaks as a result of client-server model;
- agility allowing cross-platform UI and schema-less network messaging results in “spaghetti code” and wired JavaScript VM non-determinism
- Web is poorly decentralized and censorship-resistant: an inherited client-server model doesn’t allows proper decentralization.

Web passed through a generations: Web, Web2 - and now attempts of Web3 and Web5 are there.

The main difference between Web and Web2 was:
- interactivity (brought through JavaScript AJAX, and later WebSockets);
- dynamic UI (with JavaScript DOM manipulations);
- abandoning of Java applets;
- move from CGI to custom web servers with embedded server-side business logic (NodeJS, Python and web frameworks in almost each language);
- better markup languages (HTML5, CSS3), including graphic markup (SVG, Canvas, WebGL).

What people were looking for in post Web2-era etc?
- better decentralizaiton and censorship-resistance;
- integration of native internet money and payment methods;
- smart contracts (complex automations based on cryptographic and economic incentives);
- better privacy.

Does Web3 or Web5 delivers on that? No: it promises to deliver, but fails: there can’t be a privacy nor scalability with blockchain-based things; there can’t be censorship-resistance with PoS; there can’t be decentralization with the old client-server hosting of content.

How the proper “next Web” should look like?
- based on P2P (where is possible) or relay-based systems (where P2P is impossible); with relays being self-hosted;
- end-to-end encrypted communications;
- over Mix networks (Tor, Nym, I2P etc);
- authentication based on public key cryptography (and not passwords) and decentralized identities (SSH, GPG and future systems);
- based on zero-knowledge state; i.e. not leaking privacy data to the web servers or nodes;
- using deterministic functional computing;
- using PoW and bitcoin single-use-seals - but not for storing a state like in Web2 (!); only for cryptographic commitments (OTS etc);
- using client-side-valdiated smart contracts like RGB;
- integrated with Lightning payments and #BiFi (bitcoin finance);
- using decentralized data protocols like #Storm, #Slashtags, #Nostr-based and like solutions.

I call this future Web4, and we are working on it at @lnp_bp, @pandoraprime_ch, @cyphernet_io together with parter projects like @nymproject @radicle @DarkFiSquad doing things like mixnets, end-to-end encryption, #reNostr, #Storm, #RGB smart contracts and other exciting projects.

Everyone is welcome to check one of our releases we did this year: cyphernet, a Rust library providing support for mixnets and pure rust implementation of Noise E2E encryption: https://github.com/cyphernet-dao/rust-cyphernet

More fill follow soon!
Author Public Key
npub13mhg7ksq9efna8ullmc5cufa53yuy06k73q4u7v425s8tgpdr5msk5mnym