Teknisk forklart

Her følger en svært så forenklet teknisk forklaring på hvordan nettverket virker. Det er lurt å prøve å forstå dette, for da blir det lettere å se styrken med denne type nettverk.

Bl.a. vil man komme nærmere forståelse av hvorfor;

  • Denne type nettverk ikke kan stoppes (taes ned).
  • Ingen kan sensurere deg og stenge deg ute. Her finnes ingen sentrale autoriteter, hverken teknisk eller menneskelig.
  • Alle dine data og publiseringer, samt alle publiseringer fra dine venner og disses venner kan leses på din klient, også når du er OFFLINE (Stenges f.eks din Facebook-konto, så har du samtidig mistet alle dine innlegg, bilder og notater).
  • Din kontaktliste vil alltid være tilgjengelig for deg, også når du er OFFLINE (Stenges f.eks din Facebook-konto, så mister du samtidig hele din kontaktliste)
  • Om så hele internett går ned/stenges, så vil ikke det hindre deg å fortsette å kommunisere med andre “Patchworkere”, og vil ikke kunne hindre deg å tilknytte deg flere kontakter.

De som ønsker å gå dypere inn i stoffet kan lese Scuttlebutt Protocol Guide

Først en illustrasjon med et lite mini-nettverk. Vi tar også utgangspunkt i at disse 6 stykkene ikke har internettforbindelse, så de må bruke lokale wifi- og meshnettverk for å koble seg sammen.

Ovenstående grafikk viser et mini-nettverk bestående av 6 individer med hver sin installerte Patchwork klient som har koblet seg sammen. Klientprogrammet Patchwork er altså installert på brukerens private computer/mobil/nettbrett. Hver Patchwork klient er både klient, og server (minipub). Disse 6 individer er ikke tilkoblet noen sentral “pub”, men de har likevel ved hjelp av lokale wifi- og meshnettverk klart å koble seg sammen og danner så et lite mini-nettverk. Det kan f.eks. være en familie på 6 stykker, eller et en liten klynge husstander som deler et lite wifi-nettverk. Det kan være 6 stykker i et kontorfelleskap med lokalt nettverk, eller 6 venner som møtes på en kafé med lokalt nettverk.

De har lagt hverandre til som “venner/følgere”, og kan derved følge/lese hverandres publiseringer i nettverket, og kan sende hverandre private krypterte meldinger. Oppdateringer og synkroniseringer i nettverket foregår hver gang en av dem fysisk møter en eller flere av de andre i nettverket, eller hvor to eller flere av dem er tilkoblet et eller annet felles lokalt nettverk.

Merk: Ingen av dem er koblet til (ei heller avhengig av) noen form for sentral eller federert “server”. Nettverket er altså per definisjon et 100% brukerdistribuert peer-to-peer (P2P) nettverk, i det all trafikk går i direkte forbindelser brukerklientene i mellom, og ikke gjennom noen sentral/federert server. Dette betyr at man ikke kan stoppe dette nettverket ved f.eks å stenge en nettside, eller stenge en server/serverkonto. Fordi det finnes ikke noen sentrale/federerte servere i denne type nettverk!

Forenklet og hypotetisk forklart, så kan dette nettverket kun stoppes ved at hver av de 6 deltakere får konfiskert sine enheter, eller at hver av dem blir isolert alene på hver sin internettløse øde øy i havgapet hvor de ikke har noen andre brukere å synkronisere med.

Allerede her bør man begynne å ane styrken i dette. Det betyr blandt annet, at dersom det skulle oppstå en katastrofe- eller krigssituasjon, hvor hele internett blir tatt ned, så vil disse 6 stykkene fremdeles kunne kommunisere med hverandre i dette mini nettverket, og ytterligere andre brukere vil kunne koble seg til det samme nettverket. En liten landsby eller by med noen wifi-rutere “her og der” vil faktisk da kunne koble hele innbyggermassen sammen i et slikt nettverk, selv om hele internett har blitt tatt ned. Ja, selv uten wifi-rutere og lokale nettverk kan man fortsette å koble sammen og synkronisere Patchwork-enheter, allerede ved hjelp av USB-minnepinner/SDkort og snart også ved hjelp av blåtannforbindelser.

Dersom dette lille mininettverket ligger i Bergen, og jeg bor i Narvik og får besøk av en av disse 6 bergensere, så kan jeg få synkronisert mitt lokale nettverk med alt innhold som eksisterte i to ledd ut fra min venn i nettverket i Bergen frem til denne dagen. Bergenseren som besøkte meg kunne fått innholdet fra nettverket i Narvik med seg hjem til Bergen, hvor så de andre bergensere kunne fått syncronisert sine enheter mot min venns enhet og derved fått aktiviteten fra Narvik oppdatert på alle sine 6 maskiner i Bergen. Dette var den litt primitive og noe tungvinte måten å bruke systemet. Men denne måten funker også, noe som er nyttig å vite om. Fleksibiliteten i dette systemet er en styrke, spesielt i krisetilfeller og i områder/tilstander hvor en ikke har tilgang til internett.

Ovenstående grafikk viser todimensjonalt og forenklet hvordan nettverket ser ut, sett fra den enkelte bruker (sentrum) og utover i nettverket mot de brukere som denne brukeren følger. Nyhetsfeeden til hver bruker vil vise oppdateringer/publiseringer fra første og andre nettverkshopp ut fra gjeldende bruker. I grafikken over ser vi at brukeren i sentrum følger 5 stykker direkte, som igjen følger 10 stykker til sammen. Brukeren i sentrum vil da i sin feed se aktivitet fra disse 15 stykker til sammen. Aktivitet fra og med 3 hopp og utover vil ikke vises i feeden

Så ser vi på hvordan det kan fungere med en “pub”

En pub er ikke strengt tatt nødvendig for å bygge et nettverk og få det til å fungere, men puben gjør det hele mye enklere, kjappere og åpner for muligheten til å bygge nettverk med folk over store avstander. Hele verden blir plutselig tilgjengelig, bokstavelig talt.

I ovenstående “grønne” grafikk, kan vi se for oss at én av de tre hovedknutepunkter mellom disse 3 forskjellige små mini-nettverk er en pub. Hver av de tre mininettverk er nå koblet sammen via denne puben.Hvem av disse deltakerne som da kan se hverandre og lese hverandres publiseringer bestemmes av prinsippet i illustrasjonen under:

Puben hjelper til slik at vi på sekunder kan tilknytte oss andre deler av nettverket og andre individer over store avstander. Når kontakt så er opprettet vanlige brukere i mellom, uansett avstand, så blir puben mindre relevant for disse brukerne, i det disse brukernes Patchwork klienter i økende grad vil synkronisere mot hverandre direkte, altså P2P (peer-to-peer)

Enda litt mer utbygd, med litt 3D-preg

Når nettverket etterhvert vokser, kan det begynne å se ut som på bildene over.

Ser du at dette nettverket i praksis vil være umulig å stenge ned? Hvordan skal i såfall det kunne skje? Her finnes jo ingen sentrale servere, ingen sentraliserte brukerkontoer som kan “forsvinne”, ingen som kan “kastes ut” osv. Skal man kunne stenge ned dette nettverket, så må man jo dra hjem til hver og og en individuelle bruker og konfiskere enhetene dems, eller sende ut ordre til internettselskapene om å stenge internetabonnmentet til x antall tusen brukere.

Er det realistisk å forestille seg at noe slikt skal kunne skje? Antakelig ikke ikke foreløbig, men det er allerede sterke krefter i sving for å avvikle demokratiet og innføre globalt diktatur. Dersom vi ikke forsvarer ytringsretten og ytringsfriheten, og tar ytringsfriheten i bruk nå mens vi har den, så kan vi miste den, og da er det INGENTING vi kan gjøre.

Facebook, Twitter og liknende sentraliserte tjenestetilbydere og monopolister kan stenge kontoene dine! Når som helst. Myndigheter kan også gi disse sentraliserte gigantene ordre om å stenge massevis av folk ute fra sine kontoer, enten for en kort tid, eller permanent. Da står man uten viktige kommunikasjons- og informasjonskanaler.

Man kan godt fortsette å bruke Facebook og Twitter, men sørg nå for å også begynne å skape din online tilværelse i vårt type P2P nettverk, slik at sjokket ikke blir for stort, tapene av dine data ugjenkallelig, og hele ditt online kontaktnettverk plutselig er mistet den dagen Facebook stenger kontoen din av en eller annen grunn du høyst sannsynlig ikke får vite om, og må gjette deg til. Det har allerede skjedd med mange, svært mange.

Ovenstående grafikk kan tjene som visuell fremstilling av 3 store P2P nettverk. F.eks Norge, Sverige og Danmark. Før eller siden vil noen av disse knytte til seg kontakter på tvers av landegrensene, og så vil disse tre nettverkene etterhvert begynne å smelte sammen. Det kan bli spennende 🙂

Nedenfor finner du en lenke til en 3D visualisering av nettverket til en av utviklerne av SecureScuttlebutt. Han har visst noe i stil med 8000 enheter i nettverket sitt. Du kan i nettleseren din “fly” gjennom dette nettverket ved hjep av tastaturknappene w og s (frem og tilbake), a og d (“strife” til venstre og til høyre), samt piltastene på tastaturet hvor du kan vende “kamera” nedover og oppover, og rotere “kamera” mot venstre og mot høyre.

https://ssbc.github.io/ssb-graphviz/

Dokumentasjon