IPFS utan smÀrta (men det Àr inte sÀkert)

IPFS utan smÀrta (men det Àr inte sÀkert)

Trots att det redan finns flera artiklar om IPFS pÄ Habré.

LÄt mig genast klargöra att jag inte Àr expert inom detta omrÄde, men jag har visat intresse för denna teknik flera gÄnger. Mina försök att experimentera med den har ofta orsakat viss frustration. Idag har jag Äterigen gett mig in pÄ experiment och har fÄtt nÄgra resultat som jag skulle vilja dela med mig av. Kort sagt kommer jag att beskriva installationsprocessen för IPFS och nÄgra funktioner (allt har genomförts pÄ Ubuntu, jag har inte prövat pÄ andra plattformar).

Om du missade vad IPFS Àr, sÄ Àr det beskrivet ganska utförligt hÀr: habr.com/ru/post/314768

Installation

För att sÀkerstÀlla en ren experimentupplevelse föreslÄr jag att du installerar pÄ en extern server, eftersom vi kommer att titta pÄ vissa fallgropar nÀr vi arbetar i lokalt lÀge och pÄ distans. Sen kan du lÀtt rensa bort det om du vill, det tar inte lÄng tid.

Installerar Go

Officiell dokumentation
Se den aktuella versionen pÄ golang.org/dl

Notera: Det Àr bÀst att installera IPFS under den anvÀndare som det Àr tÀnkt att anvÀndas mest av. Anledningen Àr att vi nedan kommer att diskutera alternativet att montera via FUSE och dÀr finns det vissa detaljer.

cd ~
curl -O https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz
tar xvf go1.12.9.linux-amd64.tar.gz
sudo chown -R root:root ./go
sudo mv go /usr/local
rm go1.12.9.linux-amd64.tar.gz

DÀrefter mÄste miljön uppdateras (mer info hÀr: golang.org/doc/code.html#GOPATH).

echo 'export GOPATH=$HOME/work' >> ~/.bashrc
echo 'export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin' >> ~/.bashrc
source ~/.bashrc

Kontrollerar att Go Àr installerat

go version

Installerar IPFS

Jag föredrar installationen via ipfs-update.

Installera det med kommandot

go get -v -u github.com/ipfs/ipfs-update

Efter detta kan följande kommandon köras:

ipfs-update versions — för att se alla tillgĂ€ngliga versioner för nedladdning.
ipfs-update version — för att se den aktuella installerade versionen (eftersom vi inte har installerat IPFS Ă€n, kommer det att vara none).
ipfs-update install latest — installera den senaste versionen av IPFS. IstĂ€llet för latest kan du naturligtvis ange vilken version som helst frĂ„n listan över tillgĂ€ngliga.

Installerar IPFS

ipfs-update install latest

Kontrollerar

ipfs --version

NÀr det gÀller installationen Àr allt ganska klart.

Starta IPFS

Initiering

Först mÄste du initiera det.

ipfs init

Som svar fÄr du nÄgot liknande:

 ipfs init
initializing IPFS node at /home/USERNAME/.ipfs
generating 2048-bit RSA keypair...done
peer identity: QmeCWX1DD7HnXXXXXXXXXXXXXXXXXXXXXXXXxxx
to get started, enter:
	ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Du kan köra det föreslagna kommandot

ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Resultat

Hej och vÀlkommen till IPFS!

██╗██████╗ ███████╗███████╗
██║██╔══██╗██╔════╝██╔════╝
██║██████╔╝█████╗  ███████╗
██║██╔═══╝ ██╔══╝  ╚════██║
██║██║     ██║     ███████║
╚═╝╚═╝     ╚═╝     ╚══════╝

Om du ser detta har du framgÄngsrikt installerat
IPFS och interagerar nu med ipfs merkledag!

 -------------------------------------------------------
| Varning:                                             |
|   Detta Àr alpha-programvara. AnvÀnd pÄ eget ansvar! |
|   Mycket saknas eller Àr oputsat. Det finns buggar.  |
|   Inte sÀkert Ànnu. LÀs sÀkerhetsnoterna för mer.    |
 -------------------------------------------------------

Kolla gÀrna in nÄgra av de andra filerna i denna katalog:

  .\/about
  .\/help
  .\/quick-start     <-- anvÀndningsexempel
  .\/readme          <-- den hÀr filen
  .\/security-notes

HĂ€r börjar det bli intressant, enligt min mening. Killarna börjar anvĂ€nda sina egna teknologier redan under installationssteget. Den föreslagna hash QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv — inte speciellt genererad för dig, utan inbĂ€ddad i releasen. Det betyder att de förberedde vĂ€lkomsttexten innan releasen, laddade upp den till IPFS och lade till adressen i installatören. Jag tycker att det Ă€r riktigt coolt. Och den hĂ€r filen (eller snarare hela mappen) kan nu ses inte bara lokalt, utan Ă€ven pĂ„ den officiella gatewayen. ipfs.io/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv. Man kan vara sĂ€ker pĂ„ att mappens innehĂ„ll inte har Ă€ndrats, eftersom om det hade Ă€ndrats skulle hash ocksĂ„ ha Ă€ndrats.

För övrigt har IPFS hÀr vissa likheter med en versionskontrollserver. Om du gör Àndringar i originalfilerna i mappen och laddar upp mappen igen till IPFS, fÄr den en ny adress. Samtidigt kommer den gamla mappen inte att försvinna utan kommer att vara tillgÀnglig pÄ sin tidigare adress.

Direkt start

ipfs daemon

Du bör fÄ ett svar som det hÀr:

ipfs daemon
Initierar daemon...
go-ipfs version: 0.4.22-
Repo version: 7
Systemversion: amd64/linux
Golang version: go1.12.7
Swarm lyssnar pÄ /ip4/x.x.x.x/tcp/4001
Swarm lyssnar pÄ /ip4/127.0.0.1/tcp/4001
Swarm lyssnar pÄ /ip6/::1/tcp/4001
Swarm lyssnar pÄ /p2p-circuit
Swarm meddelar /ip4/127.0.0.1/tcp/4001
Swarm meddelar /ip6/::1/tcp/4001
API-server lyssnar pÄ /ip4/127.0.0.1/tcp/5001
WebUI: http://127.0.0.1:5001/webui
Gateway (skrivskyddad) server lyssnar pÄ /ip4/127.0.0.1/tcp/8080
Daemon Àr redo

Öppnar dörrarna för Internet

Observera dessa tvÄ rader:

WebUI: http://127.0.0.1:5001/webui
Gateway (skrivskyddad) server lyssnar pÄ /ip4/127.0.0.1/tcp/8080

Om du har installerat IPFS lokalt kommer du att nÄ IPFS-grÀnssnitten via lokala adresser och allt kommer att vara tillgÀngligt för dig (till exempel, localhost:5001/webui/). Men nÀr du installerar pÄ en extern server Àr standardportarna stÀngda för internet. Det finns tvÄ portar:

  1. Adminpanelen webui (github) pÄ port 5001.
  2. Extern API pÄ port 8080 (readonly).

För experiment kan bÄda portarna (5001 och 8080) hÄllas öppna, men pÄ en produktionsserver bör port 5001 sÄ klart stÀngas av brandvÀggen. Det finns ocksÄ port 4001, som behövs för att andra peers ska kunna hitta er. Den bör hÄllas öppen för externa förfrÄgningar.

Öppna för att redigera ~/ .ipfs/config och hitta dessa rader:

"Addresses": {
  "Swarm": [
    "/ip4/0.0.0.0/tcp/4001",
    "/ip6/::/tcp/4001"
  ],
  "Announce": [],
  "NoAnnounce": [],
  "API": "/ip4/127.0.0.1/tcp/5001",
  "Gateway": "/ip4/127.0.0.1/tcp/8080"
}

Byt ut 127.0.0.1 mot er servers IP och spara filen, efter vilket ni startar om ipfs (stoppa den körande kommandot med Ctrl+C och kör det igen).

Ni bör fÄ

...
WebUI: http://ip_ert_servers:5001/webui
Gateway (readonly) server lyssnar pÄ /ip4/ip_ert_servers/tcp/8080

Nu bör de externa grÀnssnitten vara tillgÀngliga.

Kontrollera

http://domen_eller_ip_server:8080/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Den ovan nÀmnda readme-filen bör öppnas.

http://domen_eller_ip_server:5001/webui/

WebbgrÀnssnittet bör öppnas.

Om webui fungerar kan ni Àndra IPFS-instÀllningarna direkt dÀr, inklusive att visa statistik. Men nedan kommer jag att gÄ igenom konfigurationsalternativ direkt via konfigurationsfilen, vilket i stort sett inte Àr kritiskt. Det Àr bara bÀttre att komma ihÄg var konfigurationsfilen ligger och vad man ska göra med den, för om webbgrÀnssnittet inte fungerar blir det svÄrare.

StÀll in webbgrÀnssnittet för att arbeta med er server

HÀr Àr den första fÀllan, som det tog ungefÀr tre timmar att lösa.

Om ni har installerat IPFS pÄ en extern server men inte installerat eller kört IPFS lokalt, bör ni se ett anslutningsfel nÀr ni gÄr till /webui i webbgrÀnssnittet:

IPFS utan smÀrta (men det Àr inte sÀkert)

Anledningen till detta Ă€r att webui, enligt min Ă„sikt, fungerar pĂ„ ett ganska otydligt sĂ€tt. Först försöker den ansluta till API för den server dĂ€r grĂ€nssnittet Ă€r öppet (utifrĂ„n adressen i webblĂ€saren). Om det misslyckas försöker den att ansluta till den lokala gatewayen. Om ni har IPFS körandes lokalt kommer webui att fungera bra, men ni kommer att arbeta med den lokala IPFS, inte den externa, Ă€ven om ni har öppnat webui pĂ„ den externa servern. Sedan laddar ni upp filer, men av nĂ„gon anledning ser ni dem inte sĂ„ enkelt pĂ„ den externa servern


Om det inte körs lokalt fÄr vi ett anslutningsfel. I vÄrt fall beror felet sannolikt pÄ CORS, vilket Àven webui pÄpekar och föreslÄr att vi lÀgger till konfigurationen.

ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["http://ip_adress_till_din_server:5001", "http://127.0.0.1:5001", "https://webui.ipfs.io"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT", "GET", "POST"]'

Jag har bara registrerat wildcard pÄ min.

ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["*"]'

De tillagda rubrikerna kan alla hittas pÄ samma stÀlle i ~/.ipfs/config. I mitt fall Àr det

  "API": {
    "HTTPHeaders": {
      "Access-Control-Allow-Origin": [
        "*"
      ]
    }
  },

Vi startar om ipfs och ser att webui har anslutit framgÄngsrikt (i alla fall ska den göra det om du har öppnat gateways för externa förfrÄgningar, som beskrivits ovan).

Nu kan du direkt via webbgrÀnssnittet ladda upp mappar och filer samt skapa dina egna mappar.

Montering av FUSE-filsystemet

Detta Àr en ganska intressant funktion.

Filer (liksom mappar) kan vi lÀgga till inte bara via webbgrÀnssnittet utan Àven direkt i terminalen, till exempel

ipfs add test -r
added QmfYuz2gegRZNkDUDVLNa5DXzKmxxxxxxxxxx test/test.txt
added QmbnzgRVAP4fL814h5mQttyqk1aURxxxxxxxxxxxx test

Den senaste hash Àr hash för rotmappen.

Genom denna hash kan vi öppna mappen pÄ vilken ipfs-nod som helst (som kan hitta vÄr nod och fÄ Ätkomst till innehÄllet), antingen via webbgrÀnssnittet pÄ port 5001 eller 8080, eller lokalt genom ipfs.

ipfs ls QmbnzgRVAP4fL814h5mQttyqk1aUxxxxxxxxxxxxx
QmfYuz2gegRZNkDUDVLNa5DXzKmKVxxxxxxxxxxxxxx 10 test.txt

Men man kan Àven öppna den som en vanlig mapp.

LÄt oss skapa tvÄ mappar i roten och ge vÄr anvÀndare rÀttigheter till dem.

sudo mkdir /ipfs /ipns
sudo chown ANVÄNDAREN /ipfs /ipns

och starta om ipfs med flaggan —mount

ipfs daemon --mount

Det gĂ„r att skapa mappar pĂ„ andra platser och ange sökvĂ€gen till dem genom parametrarna ipfs daemon —mount —mount-ipfs /ipfs_path —mount-ipns /ipns_path

Nu Àr lÀsningen frÄn denna mapp nÄgot ovanlig.

ls -la /ipfs
ls: reading directory '/ipfs': Operation not permitted
total 0

Det finns ingen direktÄtkomst till roten av denna mapp. Men man kan fÄ tillgÄng till innehÄllet om man vet hashen.

ls -la /ipfs/QmbnzgRVAP4fL814h5mQttyqxxxxxxxxxxxxxxxxx
total 0
-r--r--r-- 1 root root 10 Aug 31 07:03 test.txt

cat /ipfs/QmbnzgRVAP4fL814h5mQttyqxxxxxxxxxxxxxxxxx/test.txt 
test
test

Inuti mappen fungerar till och med autocompletion vid angivande av sökvÀg.

Som jag nÀmnde tidigare finns det detaljer med denna montering: som standard Àr monterade FUSE-mappar endast tillgÀngliga för den aktuella anvÀndaren (Àven root kan inte lÀsa frÄn en sÄdan mapp, för att inte tala om andra anvÀndare i systemet). Om du vill göra dessa mappar tillgÀngliga för andra anvÀndare mÄste du Àndra "FuseAllowOther": false till "FuseAllowOther": true i konfigurationsfilen. Men det Àr inte allt. Om du kör IPFS som root fungerar allt bra. Men om du kör det som en vanlig anvÀndare (Àven med sudo) kommer du att fÄ ett felmeddelande.

mount helper error: fusermount: option allow_other only allowed if 'user_allow_other' is set in /etc/fuse.conf

I sÄ fall mÄste du justera /etc/fuse.conf genom att avkommentera raden #user_allow_other.

Efter detta startar vi om ipfs.

KĂ€nda problem med FUSE

Problemet har observerats flera gÄnger, dÀr efter omstart av ipfs med montering (och kanske Àven i andra fall) blir monteringspunkterna /ipfs och /ipns otillgÀngliga. Ingen Ätkomst till dem, och ls -la /ipfs visar ???? i listan över rÀttigheter.

Jag fann en lösning:

fusermount -z -u /ipfs
fusermount -z -u /ipns

DĂ€refter startar vi om ipfs.

LÀgg till tjÀnst

SjÀlvklart Àr körning i terminalen bara bra för första tester. I produktionslÀge bör demon startas automatiskt nÀr systemet startas.

Som sudo skapar vi filen /etc/systemd/system/ipfs.service och skriver in:

[Unit]
Description=IPFS Daemon
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=simple
ExecStart=/home/USERNAME/work/bin/ipfs daemon --mount
User=USERNAME
Restart=always

[Install]
WantedBy=multi-user.target

USERNAME mÄste sjÀlvklart ersÀttas med din anvÀndare (och eventuell fullstÀndig sökvÀg till programmet ipfs kan vara annorlunda hos er (du mÄste ange den exakta fullstÀndiga sökvÀgen)).

Aktivera tjÀnsten.

sudo systemctl enable ipfs.service

Starta tjÀnsten.

sudo service ipfs start

Kontrollera tjÀnstens status.

sudo service ipfs status

För att hÄlla experimentet rent kan du senare starta om servern för att verifiera att ipfs startar automatiskt.

LÀgg till de kÀnda peers vi har.

LÄt oss övervÀga en situation dÀr vi har IPFS-noder installerade bÄde pÄ en extern server och lokalt. PÄ den externa servern lÀgger vi till en fil och försöker hÀmta den via IPFS lokalt med CID. Vad kommer att hÀnda? SjÀlvklart vet den lokala servern förmodligen ingenting om vÄr externa server och kommer helt enkelt att försöka hitta filen via CID genom att "frÄga" alla tillgÀngliga IPFS-noder (som den redan har lyckats "bekanta sig" med). Dessa i sin tur kommer att frÄga andra. Och sÄ fortsÀtter det tills filen Àr hittad. Det Àr faktiskt detsamma som hÀnder nÀr vi försöker fÄ filen via den officiella gatewayen. ipfs.io. Om vi har tur kan filen hittas pÄ nÄgra sekunder. Om inte, kan det ta flera minuter innan den hittas, vilket verkligen pÄverkar arbetskomforten. Men vi vet ju var den hÀr filen kommer att dyka upp först. SÄ varför sÀger vi inte till vÄr lokala server direkt "Sök först dÀr"? Det verkar som om detta kan göras.

1. Logga in pÄ den externa servern och leta i konfigurationsfilen ~/.ipfs/config

"Identity": {
    "PeerID": "QmeCWX1DD7HnPSuMHZSh6tFuxxxxxxxxxxxxxxxx",

2. Kör sudo service ipfs status och leta efter posterna i Swarm, till exempel:

Swarm announcing /ip4/ip_era_server/tcp/4001

3. SÀtt ihop en fullstÀndig adress av typen "/ip4/ip_era_server/tcp/4001/ipfs/$PeerID".

4. För sÀkerhets skull ska vi via vÄr lokala webui försöka lÀgga till denna adress i noder.

IPFS utan smÀrta (men det Àr inte sÀkert)

5. Om allt Ă€r OK, öppna den lokala konfigurationen ~/.ipfs/config, hitta "Bootstrap": [

och lÀgg först till den erhÄllna adressen i arrayen.

Starta om IPFS.

Nu lÀgger vi till en fil pÄ den externa servern och försöker begÀra den lokalt. Den ska laddas ner snabbt.

Men denna funktionalitet Àr fortfarande instabil. SÄvitt jag förstÄr, Àven om vi anger en nodadress i Bootstrap, Àndrar IPFS aktiva anslutningar med noder under drift. I vilket fall som helst pÄgÄr diskussioner om detta och önskemÄl om att kunna ange permanenta noder. hÀr och det verkar som om det planeras att lÀgga till nÄgon funktionalitet i ipfs@5.0+

Lista över aktuella noder kan ses bÄde i webui och i terminalen.

ipfs swarm peers

Och dÀr kan man manuellt lÀgga till sin nod.

ipfs swarm connect "/ip4/ip_era_server/tcp/4001/ipfs/$PeerID"

Tills de förbÀttrar denna funktionalitet, kan man skriva ett verktyg som kontrollerar anslutningen till en specifik nod och, om det inte finns nÄgon, lÀgger till denna anslutning.

Resonemang

Bland de som redan kĂ€nner till IPFS finns bĂ„de argument för och emot. I princip, hĂ€romdagen diskussion och fick mig att grĂ€va djupare i IPFS. Och angĂ„ende den nĂ€mnda diskussionen: jag kan inte sĂ€ga att jag Ă€r starkt emot nĂ„got av de anförda argumenten frĂ„n de som uttryckt sig (jag Ă€r bara oense om att en och en halv programmerare anvĂ€nder IPFS). I allmĂ€nhet har bĂ„de sidor sina poĂ€nger (speciellt kommentaren om kvitton fĂ„r en att fundera). Men om man bortser frĂ„n den moraliska och juridiska bedömningen, hur skulle man tekniskt bedöma denna teknologi? Personligen har jag en inre kĂ€nsla av att "detta Ă€r nödvĂ€ndigt, det har vissa framtidsutsikter". Men varför exakt, finns det ingen tydlig formulering. Typ, om man ser pĂ„ de redan existerande centraliserade verktygen, sĂ„ ligger de lĂ„ngt före i mĂ„nga avseenden (stabilitet, hastighet, hanterbarhet osv.). ÄndĂ„ har jag en tanke som verkar meningsfull och som troligen inte kan realiseras utan sĂ„dana decentraliserade system. Naturligtvis tĂ€nker jag stort, men jag skulle formulera det sĂ„ hĂ€r: principen för informationsspridning pĂ„ Internet mĂ„ste förĂ€ndras.

LÄt mig förklara. Om man tÀnker efter, sÄ sprider vi just nu information enligt principen "Jag hoppas att den som jag överlÀmnar den till skyddar den och att den inte gÄr förlorad eller nÄr dem den inte Àr avsedd för". För att ge ett exempel kan man enkelt se pÄ olika e-posttjÀnster, molnlagring osv. Och vad fÄr vi i slutÀndan? PÄ Habr stÄr InformationssÀkerhet pÄ första plats och nÀstan varje dag fÄr vi nyheter om ytterligare en global lÀcka. I princip Àr allt det mest intressanta uppradat i <ironi>den fantastiska</ironi> artikeln Sommaren Àr nÀstan slut. NÀstan ingen data har lÀckt ut. Det vill sÀga, de stora internetjÀttarna blir allt större, de ackumulerar mer och mer information, och sÄdana lÀckor Àr en slags informationsatombomber. SÄdant har aldrig hÀnt förut, och hÀr Àr vi igen. Samtidigt, Àven om mÄnga förstÄr att riskerna finns, kommer de att fortsÀtta att lita pÄ sina uppgifter till tredje företag. För det första finns det knappt nÄgra alternativ och för det andra lovar de att de har tÀtat alla hÄl och att sÄdant aldrig kommer att hÀnda igen.

Vilken variant ser jag? Jag anser att data frĂ„n början ska spridas öppet. Men öppenhet innebĂ€r inte att allt mĂ„ste vara lĂ€ttlĂ€st. Jag pratar om öppenheten för lagring och spridning, men inte total öppenhet för lĂ€sning. Jag föreslĂ„r att informationen ska spridas med öppna nycklar. Principen för öppna/stĂ€ngda nycklar Ă€r gammal, nĂ€stan lika gammal som Internet. Om informationen inte Ă€r konfidentiell och riktar sig till en bred publik, kan den publiceras direkt med en öppen nyckel (men Ă€ndĂ„ i krypterad form, sĂ„ att vem som helst kan dekryptera den med den tillgĂ€ngliga nyckeln). Om det inte Ă€r fallet, publiceras den utan öppen nyckel, och sjĂ€lva nyckeln överlĂ€mnas till den som ska ha tillgĂ„ng till denna information. Den som ska lĂ€sa den mĂ„ste bara ha nyckeln, och var man hittar informationen ska inte vara ett problem — han drar bara ner den frĂ„n nĂ€tet (detta Ă€r den nya principen för spridning baserat pĂ„ innehĂ„ll och inte pĂ„ adress).

SÄledes mÄste angripare för en massattack fÄ tag pÄ ett enormt antal stÀngda nycklar, och det Àr osannolikt att det gÄr att göra pÄ en enda plats. Denna uppgift, som jag ser det, Àr svÄrare Àn att hacka en specifik tjÀnst.

HÀr stÀnger Àven ett annat problem: bekrÀftelse av upphovsrÀtt. Just nu kan man hitta mÄnga citat pÄ internet skrivna av vÄra bekanta. Men vad Àr garantin för att det verkligen var de som skrev dem? Om varje sÄdan post skulle Ätföljas av en digital signatur skulle det vara mycket enklare. Och oavsett var informationen ligger, Àr det viktigaste signaturen, som Àr svÄr att förfalska.

Och hÀr Àr det intressant: IPFS har redan inbyggda krypteringsmedel (det Àr ju byggt pÄ blockchain-teknologi). I konfigurationen anges en privat nyckel direkt.

  "Identity": {
    "PeerID": "QmeCWX1DD7HnPSuMHZSh6tFuMxxxxxxxxxxxxxx",
    "PrivKey": "CAASqAkwggSkAgEAAoIBAQClZedVmj8JkPvT92sGrNIQmofVF3ne8xSWZIGqkm+t9IHNN+\/NDI51jA0MRzpBviM3o\/c\/Nuz30wo95vWToNyWzJlyAISXnUHxnVhvpeJAbaeggQRcFxO9ujO9DH61aqgN1m+JoEplHjtc4KS5
pUEDqamve+xAJO8BWt\/LgeRKA70JN4hlsRSghRqNFFwjeuBkT1kB6tZsG3YmvAXJ0o2uye+y+7LMS7jKpwJNJBiFAa\/Kuyu3W6PrdOe7SqrXfjOLHQ0uX1oYfcqFIKQsBNj\/Fb+GJMiciJUZaAjgHoaZrrf2b\/Eii3z0i+QIVG7OypXT3Z9JUS60
KKLfjtJ0nVLjAgMBAAECggEAZqSR5sbdffNSxN2TtsXDa3hq+WwjPp\/908M10QQleH\/3mcKv98FmGz65zjfZyHjV5C7GPp24e6elgHr3RhGbM55vT5dQscJu7SGng0of2bnzQCEw8nGD18dZWmYJsE4rUsMT3wXxhUU4s8\/Zijgq27oLyxKNr9T7
2gxqPCI06VTfMiCL1wBBUP1wHdFmD\/YLJwOjV\/sVzbsl9HxqzgzlDtfMn\/bJodcURFI1sf1e6WO+MyTc3.................

Jag Àr ingen sÀkerhetsexpert och kan inte sÀga exakt hur detta anvÀnds korrekt, men jag tror att dessa nycklar anvÀnds pÄ nivÄn av utbytet mellan IPFS-noder. Och dessutom js-ipfs och sÄdana projekt-exempel som orbit-db, som driver orbit.chat. Det innebÀr att varje enhet (mobil och andra) teoretiskt kan utrustas med sina egna krypterings- och avkrypteringsmaskiner. I sÄ fall Àr det upp till varje person att ta hand om sina privata nycklar och var och en kommer att vara ansvarig för sin egen sÀkerhet, istÀllet för att vara fÄnge under en annan mÀnsklig faktor hos nÄgon superpopulÀr internetjÀtte.

Endast registrerade anvÀndare kan delta i omröstningen. Logga in, tack.

Har du hört talas om IPFS tidigare?

  • Aldrig hört talas om IPFS, men det verkar intressant

  • Har inte hört och vill inte höra

  • Har hört, men blev inte intresserad

  • Har hört, men förstod inte, och nu verkar det intressant

  • Har lĂ€nge aktivt anvĂ€nt IPFS

69 anvÀndare har röstat. 13 anvÀndare avstod.

KĂ€lla: habr.com

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster