IPFS laisi irora (ṣugbọn eyi kii ṣe deede)

IPFS laisi irora (ṣugbọn eyi kii ṣe deede)

Bi o ti jẹ pe o ti wa tẹlẹ lori Habré diẹ ẹ sii ju ọkan article nipa IPFS.

Jẹ ki n ṣalaye lẹsẹkẹsẹ pe Emi kii ṣe amoye ni aaye yii, ṣugbọn Mo ti ṣafihan ifẹ si imọ-ẹrọ yii diẹ sii ju ẹẹkan lọ, ṣugbọn igbiyanju lati ṣere pẹlu rẹ nigbagbogbo fa irora diẹ. Loni Mo tun bẹrẹ idanwo lẹẹkansi ati ni awọn abajade diẹ ti Emi yoo fẹ lati pin. Ni kukuru, ilana fifi sori IPFS ati diẹ ninu awọn ẹtan yoo ṣe apejuwe (ohun gbogbo ni a ṣe lori ubuntu, Emi ko gbiyanju lori awọn iru ẹrọ miiran).

Ti o ba padanu kini IPFS jẹ, o ti kọ ni diẹ ninu awọn alaye nibi: habr.com/en/post/314768

eto

Fun mimọ ti idanwo naa, Mo daba fifi sori ẹrọ diẹ ninu olupin ita lẹsẹkẹsẹ, nitori a yoo gbero diẹ ninu awọn ipalara pẹlu ṣiṣẹ ni agbegbe ati ipo latọna jijin. Lẹhinna, ti o ba fẹ, kii yoo gba pipẹ lati wó o; ko si pupọ nibẹ.

Fi sori ẹrọ lọ

Awọn iwe aṣẹ osise
Fun ẹya ti isiyi, wo golang.org/dl

Akiyesi: O dara lati fi IPFS sori ẹrọ ni ipo olumulo ti o nireti lati lo nigbagbogbo nigbagbogbo. Otitọ ni pe ni isalẹ a yoo gbero aṣayan ti iṣagbesori nipasẹ F .N ati nibẹ ni o wa subtleties.

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

Lẹhinna o nilo lati ṣe imudojuiwọn agbegbe (awọn alaye diẹ sii nibi: 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

Ṣiṣayẹwo ti lọ ti fi sori ẹrọ

go version

Fifi IPFS sori ẹrọ

Mo fẹran ọna fifi sori ẹrọ julọ: ipfs-imudojuiwọn.

A fi sori ẹrọ pẹlu aṣẹ

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

Lẹhin eyi o le ṣiṣe awọn aṣẹ wọnyi:

ipfs-imudojuiwọn awọn ẹya - lati wo gbogbo awọn ẹya ti o wa fun igbasilẹ.
ipfs-imudojuiwọn version - lati wo ẹya ti o fi sii lọwọlọwọ (titi a fi fi IPFS sori ẹrọ, kii yoo jẹ rara).
ipfs-imudojuiwọn fi sori ẹrọ titun - fi sori ẹrọ ẹya tuntun ti IPFS. Dipo ti titun, o le lẹsẹsẹ pato eyikeyi fẹ version lati awọn akojọ ti awọn wa.

Fifi awọn ipfs sori ẹrọ

ipfs-update install latest

Ṣiṣayẹwo

ipfs --version

Ohun gbogbo taara pẹlu fifi sori ẹrọ ni awọn ofin gbogbogbo.

Bibẹrẹ IPFS

Ibẹrẹ

Ni akọkọ o nilo lati ṣe ipilẹṣẹ.

ipfs init

Ni idahun iwọ yoo gba nkan bii eyi:

 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

O le ṣiṣe aṣẹ ti o daba

ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Esi

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

Eyi ni ibi ti, ni ero mi, awọn nkan gba igbadun. Paapaa ni ipele fifi sori ẹrọ, awọn eniyan buruku ti bẹrẹ lati lo awọn imọ-ẹrọ tiwọn. Hash ti a dabaa QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv ko ṣe ipilẹṣẹ pataki fun ọ, ṣugbọn ti o fi sii ninu idasilẹ. Iyẹn ni, ṣaaju itusilẹ, wọn pese ọrọ itẹwọgba, tú sinu IPFS ati ṣafikun adirẹsi naa si insitola. Mo ro pe eyi dara pupọ. Ati pe faili yii (diẹ sii ni pipe, gbogbo folda) ni a le wo ni bayi kii ṣe ni agbegbe nikan, ṣugbọn tun lori ẹnu-ọna osise ipfs.io/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv. Ni idi eyi, o le rii daju pe awọn akoonu inu folda ko ti yipada ni eyikeyi ọna, nitori ti wọn ba ti yipada, hash naa yoo ti yipada.

Nipa ọna, ninu ọran yii, IPFS ni diẹ ninu awọn afijq pẹlu olupin iṣakoso ẹya. Ti o ba ṣe awọn ayipada si awọn faili orisun ti folda naa ki o gbe folda si IPFS lẹẹkansi, yoo gba adirẹsi tuntun kan. Ni akoko kanna, folda atijọ kii yoo lọ nibikibi bii iyẹn ati pe yoo wa ni adirẹsi iṣaaju rẹ.

Ifilọlẹ taara

ipfs daemon

O yẹ ki o gba esi bi eleyi:

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

Nsii awọn ilẹkun si Intanẹẹti

San ifojusi si awọn ila meji wọnyi:

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

Bayi, ti o ba fi IPFS sori agbegbe, lẹhinna o yoo wọle si awọn atọkun IPFS nipa lilo awọn adirẹsi agbegbe ati pe ohun gbogbo yoo wa fun ọ (Fun apẹẹrẹ, localhost:5001/webui/). Ṣugbọn nigbati o ba fi sori ẹrọ lori olupin ita, nipasẹ aiyipada awọn ẹnu-ọna ti wa ni pipade si Intanẹẹti. Awọn ẹnu-ọna meji wa:

  1. abojuto webui (github) lori ibudo 5001.
  2. API ita lori ibudo 8080 (kika nikan).

Ni bayi, awọn ebute oko oju omi mejeeji (5001 ati 8080) le ṣii fun awọn idanwo, ṣugbọn lori olupin iṣelọpọ, nitorinaa, ibudo 5001 yoo nilo lati wa ni pipade pẹlu ogiriina kan. Ibudo 4001 tun wa, o nilo ki awọn ẹlẹgbẹ miiran le rii ọ. O yẹ ki o wa ni ṣiṣi silẹ si awọn ibeere lati ita.

Ṣii ~/.ipfs/config fun ṣiṣatunṣe ki o wa awọn laini wọnyi ninu rẹ:

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

A yipada 127.0.0.1 si ip ti olupin rẹ ki o fi faili pamọ, lẹhin eyi a tun bẹrẹ ipfs (da pipaṣẹ ti nṣiṣẹ duro pẹlu Ctrl + C ki o tun ṣiṣẹ lẹẹkansi).

Gbọdọ gba

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

Bayi awọn atọkun ita yẹ ki o wa.

Ṣayẹwo

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

Faili readme loke yẹ ki o ṣii.

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

Oju opo wẹẹbu yẹ ki o ṣii.

Ti o ba ni webui nṣiṣẹ, lẹhinna awọn eto IPFS le yipada taara ninu rẹ, pẹlu awọn iṣiro wiwo, ṣugbọn ni isalẹ Emi yoo gbero awọn aṣayan iṣeto ni taara nipasẹ faili atunto, eyiti kii ṣe pataki. O kan dara lati ranti ibi ti atunto gangan jẹ ati kini lati ṣe pẹlu rẹ, bibẹẹkọ ti wiwo wẹẹbu ko ṣiṣẹ, yoo nira sii.

Ṣiṣeto oju opo wẹẹbu kan lati ṣiṣẹ pẹlu olupin rẹ

Eyi ni ọfin akọkọ, eyiti o lo wakati mẹta.

Ti o ba fi IPFS sori olupin ita, ṣugbọn ko fi sii tabi ṣiṣẹ IPFS ni agbegbe, lẹhinna nigbati o lọ si / webui ni wiwo wẹẹbu o yẹ ki o rii aṣiṣe asopọ kan:

IPFS laisi irora (ṣugbọn eyi kii ṣe deede)

Otitọ ni pe webui, ninu ero mi, ṣiṣẹ ni iyatọ pupọ. Ni akọkọ, o gbiyanju lati sopọ si API ti olupin nibiti wiwo ti ṣii (da lori adirẹsi ninu ẹrọ aṣawakiri, dajudaju). ati pe ti ko ba ṣiṣẹ nibẹ, lẹhinna o gbiyanju lati sopọ si ẹnu-ọna agbegbe. Ati pe ti o ba ni IPFS nṣiṣẹ ni agbegbe, lẹhinna webui yoo ṣiṣẹ daradara fun ọ, iwọ nikan yoo ṣiṣẹ pẹlu IPFS agbegbe, kii ṣe ita, botilẹjẹpe o ṣii webui lori olupin ita. Lẹhinna o gbe awọn faili naa silẹ, ṣugbọn fun idi kan o ko kan rii wọn lori olupin ita…

Ati pe ti ko ba ṣe ifilọlẹ ni agbegbe, lẹhinna a gba aṣiṣe asopọ kan. Ninu ọran wa, aṣiṣe jẹ julọ nitori CORS, eyiti o tun jẹ itọkasi nipasẹ webui, eyiti o ni imọran fifi atunto kan kun.

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"]'

Mo ṣẹṣẹ forukọsilẹ fun ara mi

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

Awọn akọle ti a ṣafikun ni a le rii ni kanna ~/.ipfs/config. Ninu ọran mi o jẹ

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

A tun bẹrẹ awọn ipfs ati rii pe webui ti sopọ ni aṣeyọri (o kere ju ti o ba ti ṣii awọn ẹnu-ọna fun awọn ibeere lati ita, bi a ti salaye loke).

Bayi o le gbe awọn folda ati awọn faili taara nipasẹ wiwo wẹẹbu, bakannaa ṣẹda awọn folda tirẹ.

Iṣagbesori eto faili FUSE

Eyi jẹ ẹya ti o nifẹ pupọ.

A le ṣafikun awọn faili (bii awọn folda) kii ṣe nipasẹ wiwo wẹẹbu nikan, ṣugbọn tun taara ni ebute, fun apẹẹrẹ

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

Hash ti o kẹhin jẹ hash ti folda root.

Lilo hash yii, a le ṣii folda naa lori eyikeyi ipade ipfs (eyiti o le wa oju ipade wa ati gba awọn akoonu), a le ṣe ni wiwo wẹẹbu lori ibudo 5001 tabi 8080, tabi a le ṣe ni agbegbe nipasẹ ipfs.

ipfs ls QmbnzgRVAP4fL814h5mQttyqk1aUxxxxxxxxxxxxx
QmfYuz2gegRZNkDUDVLNa5DXzKmKVxxxxxxxxxxxxxx 10 test.txt

Ṣugbọn o tun le ṣii bi folda deede.

Jẹ ki a ṣẹda awọn folda meji ninu gbongbo ati fifun awọn ẹtọ si wọn si olumulo wa.

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

ki o tun bẹrẹ awọn ipfs pẹlu asia --mount

ipfs daemon --mount

O le ṣẹda awọn folda ni awọn aaye miiran ati pato ọna si wọn nipa lilo awọn paramita ipfs daemon -mount -mount-ipfs /ipfs_path -mount-ipns /ipns_path

Bayi kika lati folda yii jẹ diẹ dani.

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

Iyẹn ni, ko si iwọle taara si gbongbo folda yii. Ṣugbọn o le gba awọn akoonu ti o ba mọ hash naa.

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

Pẹlupẹlu, inu folda kan, paapaa adaṣe adaṣe ṣiṣẹ nigbati o n ṣalaye ọna naa.

Gẹgẹbi Mo ti sọ loke, awọn arekereke wa pẹlu iru iṣagbesori yii: nipasẹ aiyipada, awọn folda FUSE ti a gbe sori wa ni iraye si olumulo lọwọlọwọ (paapaa gbongbo kii yoo ni anfani lati ka lati iru folda kan, kii ṣe darukọ awọn olumulo miiran ninu eto naa) . Ti o ba fẹ jẹ ki awọn folda wọnyi wa si awọn olumulo miiran, lẹhinna ninu atunto o nilo lati yi “FuseAllowOther”: eke si “FuseAllowOther”: otitọ. Sugbon ti o ni ko gbogbo. Ti o ba ṣiṣe IPFS bi root, lẹhinna ohun gbogbo dara. Ati pe ti o ba jẹ aṣoju olumulo deede (paapaa sudo), iwọ yoo gba aṣiṣe kan

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

Ni idi eyi, o nilo lati ṣatunkọ /etc/fuse.conf nipa sisọ laini naa #user_allow_other.

Lẹhin eyi a tun bẹrẹ ipfs.

Awọn ọran ti a mọ pẹlu FUSE

A ti ṣe akiyesi iṣoro diẹ sii ju ẹẹkan lọ lẹhin ti o tun bẹrẹ awọn ipfs pẹlu iṣagbesori (ati boya ni awọn igba miiran), awọn / ipfs ati / ipns òke ojuami di inira. Ko si wiwọle si wọn, ṣugbọn ls -la /ipfs fihan ???? ninu akojọ awọn ẹtọ.

Mo ri ojutu yii:

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

Lẹhinna a tun bẹrẹ ipfs.

Fifi iṣẹ kan kun

Nitoribẹẹ, ṣiṣiṣẹ ni ebute naa dara nikan fun awọn idanwo akọkọ. Ni ipo ija, daemon yẹ ki o bẹrẹ laifọwọyi nigbati eto ba bẹrẹ.

Ni dípò sudo, ṣẹda faili /etc/systemd/system/ipfs.service ki o kọ sinu rẹ:

[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, dajudaju, gbọdọ rọpo pẹlu olumulo rẹ (ati boya ọna kikun si eto ipfs yoo yatọ fun ọ (o gbọdọ pato ọna kikun)).

Jẹ ki a mu iṣẹ naa ṣiṣẹ.

sudo systemctl enable ipfs.service

Jẹ ki a bẹrẹ iṣẹ naa.

sudo service ipfs start

Ṣiṣayẹwo ipo iṣẹ naa.

sudo service ipfs status

Fun mimọ ti idanwo naa, yoo ṣee ṣe lati tun atunbere olupin ni ọjọ iwaju lati ṣayẹwo pe ipfs bẹrẹ ni aṣeyọri laifọwọyi.

Fifi awọn ẹlẹgbẹ mọ si wa

Jẹ ki a wo ipo kan nibiti a ti fi awọn apa IPFS sori ẹrọ mejeeji lori olupin ita ati ni agbegbe. Lori olupin ita a ṣafikun faili kan ati gbiyanju lati gba nipasẹ IPFS ni agbegbe nipasẹ CID. Kini yoo ṣẹlẹ? Nitoribẹẹ, o ṣeeṣe ki olupin agbegbe ko mọ nkankan nipa olupin ita wa ati pe yoo kan gbiyanju lati wa faili naa nipasẹ CID nipa “beere” gbogbo awọn ẹlẹgbẹ IPFS ti o wa si (pẹlu eyiti o ti ṣakoso tẹlẹ lati “faramọ”). Àwọn, ẹ̀wẹ̀, yóò béèrè lọ́wọ́ àwọn ẹlòmíràn. Ati bẹ bẹ titi ti faili yoo fi ri. Lootọ, ohun kanna n ṣẹlẹ nigbati a ba gbiyanju lati gba faili nipasẹ ẹnu-ọna osise ipfs.io. Ti o ba ni orire, faili naa yoo rii ni iṣẹju diẹ. Ati pe ti ko ba ṣe bẹ, lẹhinna kii yoo rii paapaa ni iṣẹju diẹ, eyiti o ni ipa pupọ si itunu iṣẹ. Ṣugbọn a mọ ibiti faili yii yoo han ni akọkọ. Nitorinaa kilode ti a ko sọ lẹsẹkẹsẹ olupin agbegbe wa lati “Wo ibẹ ni akọkọ”? Nkqwe, eyi le ṣee ṣe.

1. Lọ si olupin latọna jijin ki o wa ~ / .ipfs / config ni atunto

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

2. Ṣiṣe ipo iṣẹ sudo ipfs ki o wa awọn titẹ sii Swarm ninu rẹ, fun apẹẹrẹ:

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

3. Lati eyi a ṣafikun adirẹsi gbogbogbo ti fọọmu “/ip4/ip_of_your_server/tcp/4001/ipfs/$PeerID”.

4. Fun igbẹkẹle, jẹ ki a gbiyanju lati ṣafikun adirẹsi yii si awọn ẹlẹgbẹ nipasẹ webui agbegbe wa.

IPFS laisi irora (ṣugbọn eyi kii ṣe deede)

5. Ti ohun gbogbo ba dara, ṣii atunto agbegbe ~/.ipfs/config, wa “Bootstrap” ninu rẹ: [...
ki o si fi adirẹsi ti o gba wọle akọkọ si orun.

Tun IPFS bẹrẹ.

Bayi jẹ ki a ṣafikun faili naa si olupin ita ki o gbiyanju lati beere lori ọkan ti agbegbe. Yẹ ki o fò ni kiakia.

Ṣugbọn iṣẹ ṣiṣe ko tii duro. Niwọn bi mo ti ye mi, paapaa ti a ba ṣalaye adirẹsi ẹlẹgbẹ ni Bootstrap, lakoko iṣiṣẹ ipfs yipada atokọ ti awọn asopọ ti nṣiṣe lọwọ si awọn ẹlẹgbẹ. Ni eyikeyi idiyele, ijiroro ti eyi ati awọn ifẹ nipa iṣeeṣe ti asọye awọn ẹlẹgbẹ ayeraye ti nlọ lọwọ nibi ati pe o dabi ikure fi diẹ ninu awọn iṣẹ-ṣiṣe to [imeeli ni idaabobo]+

Atokọ awọn ẹlẹgbẹ lọwọlọwọ ni a le wo mejeeji ni webui ati ni ebute.

ipfs swarm peers

Ni awọn aaye mejeeji o le fi ọwọ kun ajọ tirẹ.

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

Titi iṣẹ ṣiṣe yii yoo fi ni ilọsiwaju, o le kọ ohun elo kan lati ṣayẹwo fun asopọ pẹlu ẹlẹgbẹ ti o fẹ ati, ti kii ba ṣe bẹ, lati ṣafikun asopọ kan.

Nulinlẹnpọn

Lara awọn ti o mọ tẹlẹ pẹlu IPFS, awọn ariyanjiyan mejeeji wa fun ati lodi si IPFS. Ni ipilẹ, ọjọ ki o to lana fanfa ati ki o ti ọ mi lati ma wà sinu IPFS lẹẹkansi. Ati pẹlu awọn n ṣakiyesi si awọn aforementioned fanfa: Emi ko le so pe Emi ni strongly lodi si eyikeyi ninu awọn ti fi fun awọn ariyanjiyan ti awon ti o soro (Mo nikan koo pẹlu awọn ti o daju wipe ọkan ati idaji pirogirama lo IPFS). Ni gbogbogbo, awọn mejeeji jẹ ẹtọ ni ọna tiwọn (paapaa ọrọìwòye nipa sọwedowo jẹ ki o ronu). Ṣugbọn ti a ba fi igbelewọn iwa ati ti ofin silẹ, tani yoo fun kini igbelewọn imọ-ẹrọ ti imọ-ẹrọ yii? Tikalararẹ, Mo ni iru rilara inu pe “eyi jẹ dandan ni pato, o ni awọn ireti kan.” Ṣugbọn kilode gangan, ko si agbekalẹ ti o han gbangba. Bii, ti o ba wo awọn irinṣẹ aarin ti o wa tẹlẹ, lẹhinna ni ọpọlọpọ awọn ọna wọn wa niwaju (iduroṣinṣin ti iṣẹ, iyara iṣẹ, iṣakoso, ati bẹbẹ lọ). Bibẹẹkọ, Mo ni imọran kan ti o dabi pe o ni oye ati eyiti ko le ṣe imuse laisi iru awọn eto isọdọkan. Nitoribẹẹ, Mo n titari pupọ, ṣugbọn Emi yoo ṣe agbekalẹ rẹ ni ọna yii: ilana ti itankale alaye lori Intanẹẹti nilo lati yipada.

Jẹ ki n ṣe alaye. Bí o bá ronú nípa rẹ̀ lọ́nà yìí, nísinsìnyí a pín ìsọfúnni ní ìbámu pẹ̀lú ìlànà náà “Mo retí pé ẹni tí mo fi í fún yóò dáàbò bò ó tí kò sì ní pàdánù tàbí gbà lọ́dọ̀ ẹnì kan tí a kò pète rẹ̀ fún.” Gẹgẹbi apẹẹrẹ, o rọrun lati gbero ọpọlọpọ awọn iṣẹ imeeli, ibi ipamọ awọsanma, ati bẹbẹ lọ. Ati kini a ni ni ipari? Ibudo lori Habré Aabo Alaye wa lori laini akọkọ ati pe o fẹrẹ to gbogbo ọjọ a gba awọn iroyin nipa jijo agbaye miiran. Ni opo, gbogbo awọn nkan ti o nifẹ julọ ni a ṣe akojọ si ni iyalẹnu <ironically> article Ooru ti fẹrẹ pari. O fẹrẹ jẹ pe ko si data ti a ti tu silẹ. Iyẹn ni, awọn omiran Intanẹẹti akọkọ ti n pọ si ati tobi, wọn n ṣajọpọ alaye diẹ sii ati siwaju sii, ati iru awọn n jo jẹ iru alaye awọn bugbamu atomiki. Eyi ko tii ṣẹlẹ tẹlẹ, ati pe o tun wa. Ni akoko kanna, botilẹjẹpe ọpọlọpọ loye pe awọn ewu wa, wọn yoo tẹsiwaju lati gbẹkẹle data wọn si awọn ile-iṣẹ ẹnikẹta. Ni akọkọ, ko si pupọ ti yiyan, ati keji, wọn ṣe ileri pe wọn ti pa gbogbo awọn iho ati eyi kii yoo ṣẹlẹ lẹẹkansi.

Aṣayan wo ni MO rii? O dabi si mi pe data yẹ ki o wa lakoko pin ni gbangba. Ṣugbọn ṣiṣi silẹ ninu ọran yii ko tumọ si pe ohun gbogbo yẹ ki o rọrun lati ka. Mo n sọrọ nipa ṣiṣi ti ipamọ ati pinpin, ṣugbọn kii ṣe ṣiṣi lapapọ ni kika. Mo ro pe alaye yẹ ki o pin pẹlu awọn bọtini gbangba. Lẹhinna, ilana ti gbogbo eniyan / awọn bọtini ikọkọ ti wa tẹlẹ ti atijọ bi Intanẹẹti. Ti alaye naa ko ba jẹ aṣiri ati pe o ti pinnu fun iyika jakejado, lẹhinna o ti firanṣẹ lẹsẹkẹsẹ pẹlu bọtini gbogbo eniyan (ṣugbọn tun wa ni fọọmu fifi ẹnọ kọ nkan, ẹnikan kan le ge pẹlu bọtini to wa tẹlẹ). Ati pe ti kii ba ṣe bẹ, lẹhinna o ti firanṣẹ laisi bọtini gbangba, ati pe bọtini funrararẹ ti gbe lọ si ẹni ti o yẹ ki o ni iwọle si alaye yii. Ni akoko kanna, ẹniti o gbọdọ ka o yẹ ki o ni bọtini nikan, ati ibiti o ti le gba alaye yii ko yẹ ki o ṣe pataki fun u - o kan fa lati inu nẹtiwọki (eyi ni ilana titun ti pinpin nipasẹ akoonu, kii ṣe nipa adirẹsi).

Nitorinaa, fun ikọlu nla kan, awọn ikọlu yoo nilo lati gba nọmba nla ti awọn bọtini ikọkọ, ati pe eyi ko ṣeeṣe lati ṣee ṣe ni aye kan. Iṣẹ-ṣiṣe yii, bi mo ti rii, nira sii ju gige sakasaka iṣẹ kan pato.

Ati pe iṣoro miiran wa nibi: ijẹrisi ti onkọwe. Bayi lori Intanẹẹti o le rii ọpọlọpọ awọn agbasọ ọrọ ti awọn ọrẹ wa kọ. Ṣugbọn nibo ni ẹri naa wa pe awọn ni wọn kọ wọn? Bayi, ti iru igbasilẹ kọọkan ba wa pẹlu ibuwọlu oni-nọmba kan, yoo rọrun pupọ. Ati pe ko ṣe pataki nibiti alaye yii wa, ohun akọkọ ni ibuwọlu, eyiti o han gbangba pe o ṣoro lati forge.

Ati pe eyi ni ohun ti o nifẹ si nibi: IPFS ti ni awọn irinṣẹ fifi ẹnọ kọ nkan (lẹhinna, o ti kọ lori imọ-ẹrọ blockchain). Awọn ikọkọ bọtini ti wa ni lẹsẹkẹsẹ itọkasi ni konfigi.

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

Emi kii ṣe alamọja aabo ati pe Emi ko le mọ bi o ṣe le lo eyi ni deede, ṣugbọn o dabi si mi pe awọn bọtini wọnyi ni a lo ni ipele paṣipaarọ laarin awọn apa IPFS. Ati pẹlu js-ipf ati iru ise agbese apẹẹrẹ bi orbit-db, lori eyiti o ṣiṣẹ orbit.iwiregbe. Iyẹn ni, ni imọ-jinlẹ, ẹrọ kọọkan (alagbeka ati kii ṣe nikan) le ni irọrun ni ipese pẹlu fifi ẹnọ kọ nkan tirẹ ati awọn ẹrọ decryption. Ni ọran yii, gbogbo ohun ti o ku ni fun gbogbo eniyan lati ṣe abojuto titọju awọn bọtini ikọkọ wọn ati pe gbogbo eniyan yoo jẹ iduro fun aabo tiwọn, ati pe ki o ma ṣe ijẹmọ si ifosiwewe eniyan miiran lori diẹ ninu omiran Intanẹẹti olokiki olokiki.

Awọn olumulo ti o forukọsilẹ nikan le kopa ninu iwadi naa. wọle, Jowo.

Njẹ o ti gbọ ti IPFS tẹlẹ?

  • Emi ko tii gbọ ti IPFS, ṣugbọn o dabi ohun ti o dun

  • Emi ko ti gbọ ati Emi ko fẹ lati gbọ

  • Mo ti gbọ nipa rẹ, ṣugbọn emi ko nife

  • Mo ti gbọ, ṣugbọn ko ye o, ṣugbọn nisisiyi o dabi awon

  • Mo ti n lo IPFS taara fun igba pipẹ.

69 olumulo dibo. 13 olumulo abstained.

orisun: www.habr.com

Fi ọrọìwòye kun