IPFS pa dhimbje (por kjo nuk është e saktë)

IPFS pa dhimbje (por kjo nuk është e saktë)

Pavarësisht se Habré ishte tashmë më shumë se një artikull rreth IPFS.

Do të sqaroj menjëherë se nuk jam ekspert në këtë fushë, por kam shfaqur interes për këtë teknologji më shumë se një herë, por përpjekja për të luajtur me të shpesh shkaktonte pak dhimbje. Sot fillova të eksperimentoj përsëri dhe mora disa rezultate që do të doja t'i ndaja. Shkurtimisht, procesi i instalimit të IPFS dhe disa veçori do të përshkruhen (gjithçka është bërë në ubuntu, nuk e kam provuar në platforma të tjera).

Nëse keni humbur se çfarë është IPFS, shkruhet në disa detaje këtu: habr.com/en/post/314768

Instalim

Për pastërtinë e eksperimentit, unë sugjeroj ta instaloni menjëherë në ndonjë server të jashtëm, pasi do të shqyrtojmë disa gracka me punën në modalitetin lokal dhe në distancë. Pastaj, nëse dëshironi, nuk do të prishet për një kohë të gjatë, nuk ka shumë.

Instalo go

Dokumentacioni zyrtar
Shihni versionin aktual në golang.org/dl

Shënim: është më mirë të instaloni IPFS në emër të përdoruesit që supozohet ta përdorë atë më shpesh. Fakti është se më poshtë do të shqyrtojmë mundësinë e montimit nëpërmjet Siguresave dhe ka hollësi.

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

Pastaj ju duhet të përditësoni mjedisin (më shumë detaje këtu: 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

Kontrollimi që goja është instaluar

go version

Instaloni IPFS

Më pëlqeu më shumë mënyra e instalimit përditësimi i ipfs.

Instaloni atë me komandën

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

Pas kësaj, mund të ekzekutoni komandat e mëposhtme:

versionet e përditësimit të ipfs - për të parë të gjitha versionet e disponueshme për shkarkim.
versioni ipfs-update - për të parë versionin e instaluar aktualisht (derisa të kemi instaluar IPFS, nuk do të jetë asnjë).
instalimi i fundit i ipfs-update - instaloni versionin më të fundit të IPFS. Në vend të më të fundit, përkatësisht, mund të specifikoni çdo version të dëshiruar nga lista e atyre të disponueshme.

Instalimi i ipfs

ipfs-update install latest

Po kontrollon

ipfs --version

Direkt me instalimin në terma të përgjithshëm gjithçka.

Filloni IPFS

Inicializimi

Së pari ju duhet të kryeni inicializimin.

ipfs init

Si përgjigje, do të merrni diçka si kjo:

 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

Ju mund të ekzekutoni komandën e sugjeruar

ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Result

Hello and Welcome to IPFS!

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

If you're seeing this, you have successfully installed
IPFS and are now interfacing with the ipfs merkledag!

 -------------------------------------------------------
| Warning:                                              |
|   This is alpha software. Use at your own discretion! |
|   Much is missing or lacking polish. There are bugs.  |
|   Not yet secure. Read the security notes for more.   |
 -------------------------------------------------------

Check out some of the other files in this directory:

  ./about
  ./help
  ./quick-start     <-- usage examples
  ./readme          <-- this file
  ./security-notes

Këtu, për mendimin tim, fillon interesante. Djemtë në fazën e instalimit tashmë kanë filluar të përdorin teknologjitë e tyre. Hash-i i propozuar QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv nuk është krijuar posaçërisht për ju, por i qepur në version. Kjo do të thotë, para lëshimit, ata përgatitën një tekst mirëseardhjeje, e derdhën në IPFS dhe shtuan adresën te instaluesi. Unë mendoj se është shumë e lezetshme. Dhe ky skedar (më saktë, i gjithë dosja) tani mund të shihet jo vetëm në nivel lokal, por edhe në portën zyrtare ipfs.io/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv. Në të njëjtën kohë, mund të jeni i sigurt se përmbajtja e dosjes nuk ka ndryshuar në asnjë mënyrë, sepse nëse do të kishte ndryshuar, atëherë edhe hash-i do të kishte ndryshuar.

Nga rruga, në këtë rast, IPFS ka disa ngjashmëri me serverin e kontrollit të versionit. Nëse bëni ndryshime në skedarët burimor të dosjes dhe derdhni përsëri dosjen në IPFS, atëherë ajo do të marrë një adresë të re. Në të njëjtën kohë, dosja e vjetër nuk do të shkojë askund ashtu dhe do të jetë e disponueshme në adresën e saj të mëparshme.

Nisja e drejtpërdrejtë

ipfs daemon

Ju duhet të merrni një përgjigje si kjo:

ipfs daemon
Initializing daemon...
go-ipfs version: 0.4.22-
Repo version: 7
System version: amd64/linux
Golang version: go1.12.7
Swarm listening on /ip4/x.x.x.x/tcp/4001
Swarm listening on /ip4/127.0.0.1/tcp/4001
Swarm listening on /ip6/::1/tcp/4001
Swarm listening on /p2p-circuit
Swarm announcing /ip4/127.0.0.1/tcp/4001
Swarm announcing /ip6/::1/tcp/4001
API server listening on /ip4/127.0.0.1/tcp/5001
WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080
Daemon is ready

Hapja e dyerve në internet

Kushtojini vëmendje këtyre dy rreshtave:

WebUI: http://127.0.0.1:5001/webui
Gateway (readonly) server listening on /ip4/127.0.0.1/tcp/8080

Tani, nëse keni instaluar IPFS në nivel lokal, atëherë do të përdorni ndërfaqet IPFS duke përdorur adresat lokale dhe gjithçka do të jetë e disponueshme për ju (Për shembull, localhost:5001/webui/). Por kur instalohet në një server të jashtëm, si parazgjedhje, portat janë të mbyllura për internetin. Portat dy:

  1. admin webui (Github) në portin 5001.
  2. API e jashtme në portën 8080 (vetëm për lexim).

Deri më tani, të dy portet (5001 dhe 8080) mund të hapen për eksperimente, por në një server luftarak, natyrisht, porti 5001 duhet të mbyllet me një mur zjarri. Ekziston edhe porti 4001, i cili nevojitet në mënyrë që kolegët e tjerë të mund t'ju gjejnë. Ajo duhet të lihet e hapur ndaj kërkesave të jashtme.

Hapni ~/.ipfs/config për redaktim dhe gjeni këto rreshta në të:

"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"
}

Ndryshoni 127.0.0.1 në ip-në e serverit tuaj dhe ruani skedarin, më pas rinisni ipfs (ndaloni komandën e ekzekutimit me Ctrl+C dhe filloni përsëri).

Duhet të marrë

...
WebUI: http://ip_вашего_сервера:5001/webui
Gateway (readonly) server listening on /ip4/ip_вашего_сервера/tcp/8080

Tani ndërfaqet e jashtme duhet të jenë të disponueshme.

Kontrolloni

http://домен_или_ip_сервера:8080/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Skedari readme i mësipërm duhet të hapet.

http://домен_или_ip_сервера:5001/webui/

Ndërfaqja e internetit duhet të hapet.

Nëse webui funksionon për ju, atëherë cilësimet e IPFS mund të ndryshohen drejtpërdrejt në të, duke përfshirë statistikat e shikimit, por më poshtë do të shqyrtoj opsionet e konfigurimit direkt përmes skedarit të konfigurimit, i cili në përgjithësi nuk është kritik. Thjesht është më mirë të mbani mend saktësisht se ku është konfigurimi dhe çfarë të bëni me të, përndryshe nëse faqja e internetit nuk funksionon, do të jetë më e vështirë.

Vendosja e një ndërfaqe në internet për të punuar me serverin tuaj

Këtu është gracka e parë, e cila zgjati rreth tre orë.

Nëse keni instaluar IPFS në një server të jashtëm, por nuk keni instaluar ose ekzekutuar IPFS në nivel lokal, atëherë kur shkoni te /webui në ndërfaqen e internetit, duhet të shihni një gabim lidhjeje:

IPFS pa dhimbje (por kjo nuk është e saktë)

Fakti është se webui, për mendimin tim, funksionon në mënyrë shumë të paqartë. Së pari, ai përpiqet të lidhet me API-në e serverit ku ndërfaqja është e hapur (bazuar në adresën në shfletues, natyrisht). dhe nëse nuk funksionon atje, ai përpiqet të lidhet me portën lokale. Dhe nëse keni IPFS që funksionon në nivel lokal, atëherë webui do të funksionojë mirë për ju, vetëm ju do të punoni me IPFS lokale, dhe jo të jashtme, megjithëse keni hapur webui në një server të jashtëm. Më pas i ngarkoni skedarët, por për ndonjë arsye nuk i shihni ato ashtu si në një server të jashtëm…

Dhe nëse nuk funksionon në nivel lokal, atëherë marrim një gabim lidhjeje. Në rastin tonë, gabimi ka shumë të ngjarë për shkak të CORS, i cili tregohet gjithashtu nga webui, duke sugjeruar shtimin e një konfigurimi.

ipfs config --json API.HTTPHeaders.Access-Control-Allow-Origin '["http://ip_вашего сервера:5001", "http://127.0.0.1:5001", "https://webui.ipfs.io"]'
ipfs config --json API.HTTPHeaders.Access-Control-Allow-Methods '["PUT", "GET", "POST"]'

Sapo regjistrova një wildcard

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

Titujt e shtuar mund të gjenden në të njëjtën ~/.ipfs/config. Në rastin tim është

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

Ne rinisim ipfs dhe shohim që webui është lidhur me sukses (në çdo rast, duhet, nëse hapni portat për kërkesat nga jashtë, siç përshkruhet më sipër).

Tani mund të ngarkoni dosje dhe skedarë direkt përmes ndërfaqes së uebit, si dhe të krijoni dosjet tuaja.

Montimi i sistemit të skedarëve FUSE

Këtu është një veçori mjaft interesante.

Skedarët (si dhe dosjet), ne mund të shtojmë jo vetëm përmes ndërfaqes së internetit, por edhe direkt në terminal, për shembull

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

Hashi i fundit është hash-i i dosjes rrënjë.

Duke përdorur këtë hash, ne mund të hapim një dosje në çdo nyje ipfs (e cila mund të gjejë nyjen tonë dhe të marrë përmbajtjen), mundemi në ndërfaqen e internetit në portin 5001 ose 8080, ose mundemi në nivel lokal nëpërmjet ipfs.

ipfs ls QmbnzgRVAP4fL814h5mQttyqk1aUxxxxxxxxxxxxx
QmfYuz2gegRZNkDUDVLNa5DXzKmKVxxxxxxxxxxxxxx 10 test.txt

Por ju mund ta hapni atë si një dosje të rregullt.

Le të krijojmë dy dosje në rrënjë dhe t'i japim të drejta përdoruesve tanë.

sudo mkdir /ipfs /ipns
sudo chown USERNAME /ipfs /ipns

dhe rinisni ipfs me flamurin --mount

ipfs daemon --mount

Ju mund të krijoni dosje në vende të tjera dhe të specifikoni rrugën drejt tyre përmes parametrave të daemonit ipfs -mount -mount-ipfs /ipfs_path -mount-ipns /ipns_path

Tani leximi nga kjo dosje është disi e pazakontë.

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

Kjo do të thotë, nuk ka qasje të drejtpërdrejtë në rrënjën e kësaj dosjeje. Por ju mund të merrni përmbajtjen, duke ditur hash.

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

Në të njëjtën kohë, edhe vetë-përfundimi funksionon brenda dosjes kur specifikohet shtegu.

Siç thashë më lart, ka hollësi me një montim të tillë: si parazgjedhje, dosjet e montuara FUSE janë të disponueshme vetëm për përdoruesin aktual (edhe root nuk do të jetë në gjendje të lexojë nga një dosje e tillë, për të mos përmendur përdoruesit e tjerë në sistem). Nëse dëshironi t'i bëni këto dosje të disponueshme për përdoruesit e tjerë, atëherë në konfigurim duhet të ndryshoni "FuseAllowOther": false në "FuseAllowOther": e vërtetë. Por kjo nuk është e gjitha. Nëse përdorni IPFS si rrënjë, atëherë gjithçka është në rregull. Dhe nëse në emër të një përdoruesi të rregullt (madje edhe sudo), atëherë do të merrni një gabim

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

Në këtë rast, ju duhet të redaktoni /etc/fuse.conf duke mos komentuar linjën #user_allow_other.

Pas kësaj, rinisni ipfs.

Probleme të njohura me FUSE

Problemi është vënë re më shumë se një herë që pas rinisjes së ipf-ve me montim (dhe ndoshta në raste të tjera), pikat e montimit /ipfs dhe /ipns bëhen të padisponueshme. Nuk ka qasje në to, dhe ls -la /ipfs tregon ???? në listën e të drejtave.

Gjeta këtë zgjidhje:

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

Pastaj rinisni ipfs.

Shtimi i një shërbimi

Natyrisht, drejtimi në terminal është i përshtatshëm vetëm për testet fillestare. Në modalitetin luftarak, demon duhet të fillojë automatikisht në fillimin e sistemit.

Në emër të sudo, krijoni skedarin /etc/systemd/system/ipfs.service dhe shkruani në të:

[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, sigurisht, duhet të zëvendësohet me përdoruesin tuaj (dhe ndoshta rruga e plotë drejt programit ipfs do të jetë e ndryshme për ju (duhet të specifikoni rrugën e plotë)).

Ne aktivizojmë shërbimin.

sudo systemctl enable ipfs.service

Ne fillojmë shërbimin.

sudo service ipfs start

Kontrollimi i statusit të shërbimit.

sudo service ipfs status

Për pastërtinë e eksperimentit, do të jetë e mundur të rindizni serverin në të ardhmen për të kontrolluar që ipfs të fillojë me sukses automatikisht.

Duke shtuar festat e njohura për ne

Konsideroni një situatë ku ne kemi nyje IPFS të instaluara si në një server të jashtëm ashtu edhe në nivel lokal. Në një server të jashtëm, ne shtojmë disa skedarë dhe përpiqemi ta marrim atë nëpërmjet IPFS në nivel lokal nga CID. Çfarë do të ndodhë? Sigurisht, serveri lokal ka shumë të ngjarë të mos dijë asgjë për serverin tonë të jashtëm dhe thjesht do të përpiqet të gjejë skedarin nga CID duke "kërkuar" të gjithë kolegët IPFS të disponueshëm për të (me të cilët tashmë ka arritur të "njohet"). Ata nga ana e tyre do të pyesin të tjerët. Dhe kështu me radhë, derisa të gjendet skedari. Në fakt, e njëjta gjë ndodh kur përpiqemi ta kalojmë skedarin përmes portës zyrtare ipfs.io. Nëse jeni me fat, skedari do të gjendet në pak sekonda. E nëse jo, nuk do të gjendet as për pak minuta, gjë që ndikon shumë në komoditetin e punës. Por ne e dimë se ku do të shfaqet fillimisht ky skedar. Pra, pse nuk i themi menjëherë serverit tonë lokal "Kërko fillimisht atje"? Me sa duket, kjo mund të bëhet.

1. Shkojmë te serveri i largët dhe shikojmë në konfigurimin ~/.ipfs/config

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

2. Ekzekutoni statusin e shërbimit sudo ipfs dhe kërkoni për hyrjet e Swarm në të, për shembull:

Swarm announcing /ip4/ip_вашего_сервера/tcp/4001

3. Nga kjo shtojmë adresën e përgjithshme të formularit "/ip4/ip_your_server/tcp/4001/ipfs/$PeerID".

4. Për besueshmëri, ne do të përpiqemi t'ua shtojmë këtë adresë kolegëve përmes webuit tonë lokal.

IPFS pa dhimbje (por kjo nuk është e saktë)

5. Nëse gjithçka është në rregull, hapni konfigurimin lokal ~ / .ipfs / config, gjeni "Bootstrap" në të: [...
dhe shtoni adresën e marrë së pari në grup.

Rinisni IPFS.

Tani le të shtojmë skedarin në serverin e jashtëm dhe të përpiqemi ta kërkojmë atë në atë lokal. Duhet të fluturojë shpejt.

Por ky funksionalitet nuk është ende i qëndrueshëm. Me sa kuptoj unë, edhe nëse specifikojmë adresën e një peer në Bootstrap, ipfs ndryshon listën e lidhjeve aktive me kolegët gjatë funksionimit. Në çdo rast, diskutimi për këtë dhe dëshirat në lidhje me mundësinë e specifikimit të festave të përhershme është duke u zhvilluar këtu dhe duket sikur supozohet se shtoni disa funksionalitete në [email mbrojtur]+

Lista e kolegëve aktualë mund të shihet si në webui ashtu edhe në terminal.

ipfs swarm peers

Dhe aty-këtu mund ta shtoni festën tuaj me dorë.

ipfs swarm connect "/ip4/ip_вашего_сервера/tcp/4001/ipfs/$PeerID"

Derisa ky funksionalitet të jetë përmirësuar, mund të shkruani një mjet për të kontrolluar për një lidhje me kolegun e dëshiruar dhe, nëse jo, për të shtuar një lidhje.

Arsyetimi

Midis atyre që tashmë janë njohur me IPFS, ka argumente pro dhe kundër IPFS. Në thelb, dje diskutim dhe më nxiti të gërmoj përsëri në IPFS. Dhe për sa i përket diskutimit të përmendur më lart: nuk mund të them se kundërshtoj me forcë ndonjë argument të atyre që folën (nuk pajtohem vetëm me faktin që një programues e gjysmë përdorin IPFS). Në përgjithësi, të dy kanë të drejtë në mënyrën e tyre (sidomos koment rreth çeqeve të bën të mendosh). Por nëse e hedhim poshtë vlerësimin moral dhe ligjor, kush do ta bëjë vlerësimin teknik të kësaj teknologjie? Personalisht kam një lloj ndjenje të brendshme që “kjo duhet bërë pa mëdyshje, ka perspektiva të caktuara”. Por pse saktësisht, nuk ka një formulim të qartë. Si, nëse shikoni mjetet ekzistuese të centralizuara, atëherë në shumë aspekte ato janë shumë përpara (stabiliteti, shpejtësia, menaxhueshmëria, etj.). Megjithatë, kam një mendim që duket se ka kuptim dhe që vështirë se mund të zbatohet pa sisteme të tilla të decentralizuara. Sigurisht që po lëkundem shumë, por do ta formuloja në këtë mënyrë: duhet ndryshuar parimi i shpërndarjes së informacionit në internet.

Më lejo të shpjegohem. Nëse mendoni për këtë, tani ne kemi informacion të shpërndarë sipas parimit "Shpresoj që ai të cilit ia dhashë do ta mbrojë dhe nuk do të humbasë apo marrë nga ata të cilëve nuk u ishte menduar". Si shembull, është e lehtë të merren parasysh shërbime të ndryshme postare, depo në re, etj. Dhe me çfarë përfundojmë? Në qendër Habré Siguria e informacionit është në linjën e parë dhe pothuajse çdo ditë marrim lajme për një tjetër rrjedhje globale. Në parim, të gjitha gjërat më interesante janë renditur në <ironi> e mrekullueshme artikull Vera pothuajse ka mbaruar. Nuk ka pothuajse asnjë të dhënë të pazbuluar. Kjo do të thotë, gjigantët kryesorë të internetit po bëhen më të mëdhenj, ata po grumbullojnë gjithnjë e më shumë informacion, dhe rrjedhje të tilla janë një lloj shpërthimi atomik informacioni. Kjo nuk ka ndodhur kurrë më parë, dhe ja ku është përsëri. Në të njëjtën kohë, megjithëse shumë e kuptojnë se ka rreziqe, ata do të vazhdojnë t'i besojnë të dhënat e tyre kompanive të palëve të treta. Së pari, nuk ka shumë alternativë dhe së dyti, premtojnë se i kanë rregulluar të gjitha vrimat dhe kjo nuk do të ndodhë më kurrë.

Çfarë opsioni shoh? Më duket se të dhënat fillimisht duhet të shpërndahen hapur. Por hapja në këtë rast nuk do të thotë që gjithçka duhet të jetë e lehtë për t'u lexuar. E kam fjalën për hapjen e ruajtjes dhe shpërndarjes, por jo hapjen totale në lexim. Unë supozoj se informacioni duhet të shpërndahet me çelësa publikë. Në fund të fundit, parimi i çelësave publikë / privatë është tashmë i vjetër, pothuajse si interneti. Nëse informacioni nuk është konfidencial dhe është i destinuar për një rreth të gjerë, atëherë ai vendoset menjëherë me një çelës publik (por ende në formë të koduar, vetëm kushdo mund ta deshifrojë atë me çelësin e disponueshëm). Dhe nëse jo, atëherë ai vendoset pa një çelës publik, dhe vetë çelësi transferohet në atë që duhet të ketë akses në këtë informacion. Në të njëjtën kohë, ai që duhet ta lexojë duhet të ketë vetëm një çelës, dhe ku ta marrë këtë informacion, ai nuk duhet të fluturojë me të vërtetë - ai thjesht e tërheq atë nga rrjeti (ky është parimi i ri i shpërndarjes sipas përmbajtjes, jo nga adresë).

Kështu, për një sulm masiv, sulmuesit do të duhet të marrin një numër të madh çelësash privatë, dhe kjo nuk ka gjasa të bëhet në një vend. Kjo detyrë, siç e shoh unë, është më e vështirë sesa hakimi i një shërbimi të caktuar.

Dhe këtu mbyllet një problem tjetër: konfirmimi i autorësisë. Tani në internet mund të gjeni shumë citate të shkruara nga miqtë tanë. Por ku është garancia që kanë qenë ata që i kanë shkruar? Tani, nëse çdo regjistrim i tillë do të shoqërohej me një nënshkrim dixhital, do të ishte shumë më e lehtë. Dhe nuk ka rëndësi se ku qëndron ky informacion, gjëja kryesore është nënshkrimi, i cili, natyrisht, është i vështirë për t'u falsifikuar.

Dhe ja çfarë është interesante këtu: IPFS tashmë mbart mjete kriptimi (në fund të fundit, është ndërtuar mbi teknologjinë blockchain). Çelësi privat specifikohet menjëherë në konfigurim.

  "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.................

Unë nuk jam specialist i sigurisë dhe nuk mund ta di saktësisht se si ta përdor siç duhet, por më duket se këta çelësa përdoren në nivelin e shkëmbimit midis nyjeve IPFS. Dhe gjithashtu js-ipfs dhe projekte shembull si p.sh orbitë-dbnë të cilën funksionon orbitë.chat. Domethënë, teorikisht, çdo pajisje (e lëvizshme dhe jo vetëm) mund të pajiset lehtësisht me makinat e veta të enkriptimit-deshifrimit. Në këtë rast, mbetet vetëm që të gjithë të kujdesen për ruajtjen e çelësave të tyre privatë, dhe secili do të jetë përgjegjës për sigurinë e tij, dhe jo të jetë peng i një faktori tjetër njerëzor në ndonjë gjigant super-popullor të internetit.

Vetëm përdoruesit e regjistruar mund të marrin pjesë në anketë. Hyni, te lutem

A keni dëgjuar më parë për IPFS?

  • Unë kurrë nuk kam dëgjuar për IPFS, por duket interesante

  • Nuk kam dëgjuar dhe nuk dua të dëgjoj

  • Dëgjuar por jo i interesuar

  • Dëgjova, por nuk e kuptova, por tani duket interesante

  • Unë kam përdorur në mënyrë aktive IPFS për një kohë të gjatë.

69 përdorues votuan. 13 përdorues abstenuan.

Burimi: www.habr.com

Shto një koment