IPFS tanpa rasa sakit (tapi ini belum pasti)

IPFS tanpa rasa sakit (tapi ini belum pasti)

Terlepas dari kenyataan bahwa itu sudah ada di Habré lebih dari satu artikel tentang IPFS.

Izinkan saya segera mengklarifikasi bahwa saya bukan ahli di bidang ini, tetapi saya telah menyatakan minatnya pada teknologi ini lebih dari sekali, tetapi mencoba memainkannya sering kali menimbulkan rasa sakit. Hari ini saya mulai bereksperimen lagi dan mendapatkan beberapa hasil yang ingin saya bagikan. Secara singkat akan dijelaskan proses instalasi IPFS dan beberapa triknya (semuanya dilakukan di ubuntu, saya belum mencobanya di platform lain).

Jika Anda melewatkan apa itu IPFS, ada tertulis secara rinci di sini: habr.com/en/post/314768

Instalasi

Demi kemurnian percobaan, saya sarankan segera menginstalnya di beberapa server eksternal, karena kami akan mempertimbangkan beberapa kendala saat bekerja dalam mode lokal dan jarak jauh. Lalu kalau mau, tidak butuh waktu lama untuk membongkarnya, tidak banyak di sana.

Instal pergi

Dokumentasi resmi
Untuk versi saat ini, lihat golang.org/dl

Catatan: Lebih baik menginstal IPFS atas nama pengguna yang diperkirakan paling sering menggunakannya. Faktanya adalah bahwa di bawah ini kami akan mempertimbangkan opsi pemasangan melalui SEKERING dan ada kehalusan di sana.

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

Maka Anda perlu memperbarui lingkungan (detail lebih lanjut di sini: 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

Memeriksa apakah go sudah diinstal

go version

Menginstal IPFS

Saya paling menyukai metode instalasi: pembaruan ipfs.

Kami menginstalnya dengan perintah

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

Setelah ini Anda dapat menjalankan perintah berikut:

versi pembaruan ipfs — untuk melihat semua versi yang tersedia untuk diunduh.
versi pembaruan ipfs — untuk melihat versi terinstal saat ini (sampai kita menginstal IPFS, versi tersebut tidak akan ada).
ipfs-perbarui instal terbaru — instal IPFS versi terbaru. Alih-alih yang terbaru, Anda dapat menentukan versi apa pun yang diinginkan dari daftar versi yang tersedia.

Menginstal ipfs

ipfs-update install latest

Memeriksa

ipfs --version

Semuanya langsung dengan instalasi secara umum.

Memulai IPFS

Inisialisasi

Pertama, Anda perlu melakukan inisialisasi.

ipfs init

Sebagai tanggapan, Anda akan menerima sesuatu seperti ini:

 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

Anda dapat menjalankan perintah yang disarankan

ipfs cat /ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv/readme

Hasil

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

Di sinilah, menurut pendapat saya, hal-hal menjadi menarik. Bahkan pada tahap instalasi, mereka sudah mulai menggunakan teknologinya sendiri. Hash yang diusulkan QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv tidak dibuat khusus untuk Anda, tetapi tertanam dalam rilis. Artinya, sebelum rilis, mereka menyiapkan teks selamat datang, menuangkannya ke IPFS dan menambahkan alamat ke penginstal. Menurutku ini sangat keren. Dan file ini (lebih tepatnya, seluruh folder) sekarang dapat dilihat tidak hanya secara lokal, tetapi juga di gateway resmi ipfs.io/ipfs/QmS4ustL54uo8FzR9455qaxZwuMiUhyvMcX9Ba8nUH4uVv. Dalam hal ini, dapat dipastikan bahwa isi folder tersebut tidak berubah sama sekali, karena jika berubah maka hashnya juga akan berubah.

Omong-omong, dalam hal ini IPFS memiliki beberapa kesamaan dengan server kontrol versi. Jika Anda membuat perubahan pada file sumber folder dan mengunggah lagi folder tersebut ke IPFS, folder tersebut akan menerima alamat baru. Pada saat yang sama, folder lama tidak akan kemana-mana begitu saja dan akan tersedia di alamat sebelumnya.

Peluncuran langsung

ipfs daemon

Anda harus mendapatkan respons seperti ini:

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

Membuka pintu ke Internet

Perhatikan dua baris ini:

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

Sekarang, jika Anda menginstal IPFS secara lokal, maka Anda akan mengakses antarmuka IPFS menggunakan alamat lokal dan semuanya akan tersedia untuk Anda (Misalnya, localhost:5001/webui/). Namun ketika diinstal pada server eksternal, secara default gateway ditutup ke Internet. Ada dua gerbang:

  1. admin webui (github) pada port 5001.
  2. API eksternal pada port 8080 (hanya baca).

Untuk saat ini, kedua port (5001 dan 8080) dapat dibuka untuk percobaan, namun pada server produksi, tentunya port 5001 harus ditutup dengan firewall. Ada juga port 4001, diperlukan agar rekan lain dapat menemukan Anda. Ini harus dibiarkan terbuka untuk permintaan dari luar.

Buka ~/.ipfs/config untuk mengedit dan temukan baris ini di dalamnya:

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

Kami mengubah 127.0.0.1 ke ip server Anda dan menyimpan file, setelah itu kami me-restart ipfs (hentikan perintah yang berjalan dengan Ctrl+C dan jalankan lagi).

Harus dapat

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

Sekarang antarmuka eksternal harus tersedia.

Periksa

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

File readme di atas akan terbuka.

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

Antarmuka web akan terbuka.

Jika Anda menjalankan webui, maka pengaturan IPFS dapat diubah langsung di dalamnya, termasuk melihat statistik, tetapi di bawah ini saya akan mempertimbangkan opsi konfigurasi langsung melalui file konfigurasi, yang umumnya tidak penting. Lebih baik mengingat di mana tepatnya konfigurasinya dan apa yang harus dilakukan dengannya, jika tidak, jika antarmuka web tidak berfungsi, itu akan lebih sulit.

Menyiapkan antarmuka web agar berfungsi dengan server Anda

Inilah jebakan pertama yang menghabiskan tiga jam.

Jika Anda menginstal IPFS di server eksternal, namun tidak menginstal atau menjalankan IPFS secara lokal, maka ketika Anda membuka /webui di antarmuka web Anda akan melihat kesalahan koneksi:

IPFS tanpa rasa sakit (tapi ini belum pasti)

Faktanya adalah webui, menurut saya, bekerja dengan cara yang sangat berbeda. Pertama, ia mencoba menyambung ke API server tempat antarmuka terbuka (tentu saja berdasarkan alamat di browser). dan jika tidak berhasil di sana, maka ia mencoba menyambung ke gateway lokal. Dan jika Anda menjalankan IPFS secara lokal, maka webui akan berfungsi dengan baik untuk Anda, hanya Anda yang akan bekerja dengan IPFS lokal, dan bukan eksternal, meskipun Anda membuka webui di server eksternal. Kemudian Anda mengunggah file tersebut, tetapi karena alasan tertentu Anda tidak hanya melihatnya di server eksternal...

Dan jika tidak diluncurkan secara lokal, maka kita mendapatkan kesalahan koneksi. Dalam kasus kami, kesalahan kemungkinan besar disebabkan oleh CORS, yang juga ditunjukkan oleh webui, yang menyarankan penambahan konfigurasi.

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

Saya baru saja mendaftarkan wildcard untuk diri saya sendiri

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

Header yang ditambahkan dapat ditemukan di ~/.ipfs/config yang sama. Dalam kasus saya itu

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

Kami me-restart ipfs dan melihat bahwa webui telah berhasil terhubung (setidaknya demikian jika Anda telah membuka gateway untuk permintaan dari luar, seperti dijelaskan di atas).

Sekarang Anda dapat mengunggah folder dan file langsung melalui antarmuka web, serta membuat folder Anda sendiri.

Memasang sistem file FUSE

Ini merupakan fitur yang cukup menarik.

Kita bisa menambahkan file (seperti folder) tidak hanya melalui antarmuka web, tetapi juga langsung di terminal, misalnya

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

Hash terakhir adalah hash dari folder root.

Dengan menggunakan hash ini, kita dapat membuka folder di node ipfs mana pun (yang dapat menemukan node kita dan menerima isinya), kita dapat melakukannya di antarmuka web pada port 5001 atau 8080, atau kita dapat melakukannya secara lokal melalui ipfs.

ipfs ls QmbnzgRVAP4fL814h5mQttyqk1aUxxxxxxxxxxxxx
QmfYuz2gegRZNkDUDVLNa5DXzKmKVxxxxxxxxxxxxxx 10 test.txt

Namun Anda juga bisa membukanya seperti folder biasa.

Mari kita buat dua folder di root dan berikan haknya kepada pengguna kita.

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

dan restart ipfs dengan flag --mount

ipfs daemon --mount

Anda dapat membuat folder di tempat lain dan menentukan jalur ke folder tersebut menggunakan parameter daemon ipfs -mount -mount-ipfs /ipfs_path -mount-ipns /ipns_path

Sekarang membaca dari folder ini agak tidak biasa.

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

Artinya, tidak ada akses langsung ke root folder ini. Tapi Anda bisa mendapatkan isinya jika Anda mengetahui hashnya.

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

Selain itu, di dalam folder, bahkan pelengkapan otomatis berfungsi saat menentukan jalur.

Seperti yang saya katakan di atas, ada kehalusan dalam pemasangan semacam ini: secara default, folder FUSE yang dipasang hanya dapat diakses oleh pengguna saat ini (bahkan root tidak akan dapat membaca dari folder tersebut, belum lagi pengguna lain di sistem) . Jika Anda ingin membuat folder ini tersedia untuk pengguna lain, maka di konfigurasi Anda perlu mengubah “FuseAllowOther”: false menjadi “FuseAllowOther”: true. Tapi bukan itu saja. Jika Anda menjalankan IPFS sebagai root, maka semuanya baik-baik saja. Dan jika atas nama pengguna biasa (bahkan sudo), Anda akan mendapatkan error

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

Dalam hal ini, Anda perlu mengedit /etc/fuse.conf dengan menghapus komentar pada baris #user_allow_other.

Setelah ini kita restart ipfs.

Masalah yang diketahui dengan FUSE

Masalah telah diketahui lebih dari sekali bahwa setelah memulai ulang ipfs dengan pemasangan (dan mungkin dalam kasus lain), titik pemasangan /ipfs dan /ipns menjadi tidak dapat diakses. Tidak ada akses ke sana, tetapi ls -la /ipfs menunjukkan ???? dalam daftar hak.

Saya menemukan solusi ini:

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

Kemudian kita restart ipfs.

Menambahkan layanan

Tentu saja, menjalankan di terminal hanya cocok untuk pengujian awal. Dalam mode pertempuran, daemon akan dimulai secara otomatis saat sistem dimulai.

Atas nama sudo, buat file /etc/systemd/system/ipfs.service dan tulis ke dalamnya:

[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 tentu saja harus diganti dengan pengguna Anda (dan mungkin path lengkap ke program ipfs akan berbeda untuk Anda (Anda harus menentukan path lengkap)).

Ayo aktifkan layanannya.

sudo systemctl enable ipfs.service

Mari kita mulai layanannya.

sudo service ipfs start

Memeriksa status layanan.

sudo service ipfs status

Demi kemurnian percobaan, server dapat di-boot ulang di masa mendatang untuk memeriksa apakah ipfs berhasil dimulai secara otomatis.

Menambahkan rekan yang kita kenal

Mari kita pertimbangkan situasi di mana kita menginstal node IPFS di server eksternal dan lokal. Di server eksternal kami menambahkan beberapa file dan mencoba mendapatkannya melalui IPFS secara lokal dengan CID. Apa yang akan terjadi? Tentu saja, server lokal kemungkinan besar tidak tahu apa-apa tentang server eksternal kami dan hanya akan mencoba menemukan file dengan CID dengan "menanyakan" semua rekan IPFS yang tersedia (yang telah berhasil "dikenal"). Mereka, pada gilirannya, akan bertanya kepada orang lain. Begitu seterusnya hingga file ditemukan. Sebenarnya hal yang sama terjadi ketika kita mencoba menerima file melalui gateway resmi ipfs.io. Jika Anda beruntung, file tersebut akan ditemukan dalam beberapa detik. Dan jika tidak, maka tidak akan ditemukan meski dalam beberapa menit, yang sangat mempengaruhi kenyamanan kerja. Tapi kita tahu di mana file ini akan muncul pertama kali. Jadi kenapa kita tidak segera memberitahu server lokal kita untuk “Lihat dulu”? Rupanya hal ini bisa dilakukan.

1. Buka server jarak jauh dan cari ~/.ipfs/config di konfigurasi

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

2. Jalankan sudo service ipfs status dan cari entri Swarm di dalamnya, misalnya:

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

3. Dari sini kami menambahkan alamat umum dalam bentuk “/ip4/ip_of_server_Anda/tcp/4001/ipfs/$PeerID”.

4. Untuk keandalan, mari kita coba tambahkan alamat ini ke rekan-rekan melalui webui lokal kita.

IPFS tanpa rasa sakit (tapi ini belum pasti)

5. Jika semuanya OK, buka konfigurasi lokal ~/.ipfs/config, temukan “Bootstrap” di dalamnya: [...
dan tambahkan alamat yang diterima terlebih dahulu ke array.

Mulai ulang IPFS.

Sekarang mari tambahkan file ke server eksternal dan coba minta di server lokal. Harus terbang dengan cepat.

Namun fungsi ini belum stabil. Sejauh yang saya mengerti, meskipun kita menentukan alamat rekan di Bootstrap, selama operasi ipfs mengubah daftar koneksi aktif menjadi rekan. Bagaimanapun, diskusi mengenai hal ini dan keinginan mengenai kemungkinan menentukan rekan tetap sedang berlangsung di sini dan sepertinya seharusnya menambahkan beberapa fungsi ke [email dilindungi]+

Daftar rekan saat ini dapat dilihat di webui dan di terminal.

ipfs swarm peers

Di kedua tempat tersebut Anda dapat menambahkan pesta Anda sendiri secara manual.

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

Hingga fungsi ini ditingkatkan, Anda dapat menulis alat untuk memeriksa koneksi dengan rekan yang diinginkan dan, jika tidak, menambahkan koneksi.

Pemikiran

Di antara mereka yang sudah familiar dengan IPFS, ada argumen yang mendukung dan menentang IPFS. Pada dasarnya, sehari sebelum kemarin diskusi dan mendorong saya untuk menggali IPFS lagi. Dan sehubungan dengan diskusi di atas: Saya tidak bisa mengatakan bahwa saya sangat menentang argumen yang diberikan oleh mereka yang berbicara (saya hanya tidak setuju dengan fakta bahwa satu setengah programmer menggunakan IPFS). Secara umum, keduanya benar dengan caranya masing-masing (khususnya komentar tentang cek membuatmu berpikir). Namun jika kita mengesampingkan penilaian moral dan hukum, siapa yang akan memberikan penilaian teknis terhadap teknologi ini? Secara pribadi, saya memiliki perasaan batin bahwa "ini pasti perlu, ada prospek tertentu". Namun kenapa tepatnya, belum ada rumusan yang jelas. Misalnya, jika Anda melihat alat terpusat yang ada, maka dalam banyak hal alat tersebut jauh di depan (stabilitas operasi, kecepatan operasi, pengendalian, dll.). Namun demikian, saya punya satu gagasan yang tampaknya masuk akal dan sulit diterapkan tanpa sistem desentralisasi seperti itu. Tentu saja saya memaksakan diri, tetapi saya akan merumuskannya seperti ini: prinsip penyebaran informasi di Internet perlu diubah.

Biar saya jelaskan. Kalau dipikir-pikir seperti ini, sekarang kita menyebarkan informasi sesuai dengan prinsip “Saya berharap orang yang saya berikan akan melindunginya dan tidak akan hilang atau diterima oleh orang yang tidak dimaksudkan.” Sebagai contoh, mudah untuk mempertimbangkan berbagai layanan email, penyimpanan cloud, dll. Dan apa yang kita miliki pada akhirnya? Hub di Habré Keamanan informasi berada di baris pertama dan hampir setiap hari kami menerima berita tentang kebocoran global lainnya. Pada prinsipnya, semua hal yang paling menarik tercantum dalam <ironisnya> luar biasa artikel Musim panas hampir berakhir. Hampir tidak ada data yang tidak bocor tersisa. Artinya, raksasa Internet utama menjadi semakin besar, mereka mengumpulkan lebih banyak informasi, dan kebocoran semacam itu adalah semacam ledakan informasi atom. Ini belum pernah terjadi sebelumnya, dan ini terjadi lagi. Pada saat yang sama, meskipun banyak yang memahami adanya risiko, mereka akan terus mempercayakan data mereka kepada perusahaan pihak ketiga. Pertama, tidak banyak alternatif lain, dan kedua, mereka berjanji telah menutup semua lubang dan hal ini tidak akan terjadi lagi.

Opsi apa yang saya lihat? Menurut saya, data pada awalnya harus didistribusikan secara terbuka. Namun keterbukaan dalam hal ini bukan berarti segala sesuatunya harus mudah dibaca. Saya berbicara tentang keterbukaan penyimpanan dan distribusi, namun bukan keterbukaan total dalam membaca. Saya berasumsi bahwa informasi harus didistribusikan dengan kunci publik. Bagaimanapun, prinsip kunci publik/pribadi sudah setua Internet. Jika informasi tersebut tidak bersifat rahasia dan ditujukan untuk kalangan luas, maka informasi tersebut langsung diposting dengan kunci publik (namun tetap dalam bentuk terenkripsi, sembarang orang dapat mendekripsinya dengan kunci yang ada). Dan jika tidak, maka itu diposting tanpa kunci publik, dan kunci itu sendiri ditransfer ke orang yang seharusnya memiliki akses ke informasi ini. Pada saat yang sama, orang yang harus membacanya seharusnya hanya memiliki kunci, dan di mana mendapatkan informasi ini tidak terlalu menjadi masalah baginya - dia hanya menariknya dari jaringan (ini adalah prinsip baru distribusi berdasarkan konten, dan bukan berdasarkan alamat).

Jadi, untuk serangan besar-besaran, penyerang perlu mendapatkan kunci privat dalam jumlah besar, dan hal ini tidak mungkin dilakukan di satu tempat. Tugas ini, menurut saya, lebih sulit daripada meretas layanan tertentu.

Dan inilah masalah lainnya: konfirmasi kepengarangan. Sekarang di Internet Anda dapat menemukan banyak kutipan yang ditulis oleh teman-teman kita. Tapi di manakah jaminan bahwa merekalah yang menulisnya? Sekarang, jika setiap catatan tersebut disertai dengan tanda tangan digital, itu akan menjadi lebih sederhana. Dan tidak peduli di mana informasi ini berada, yang utama adalah tanda tangannya, yang jelas sulit dipalsukan.

Dan inilah yang menarik di sini: IPFS sudah berisi alat enkripsi (bagaimanapun juga, ini dibangun di atas teknologi blockchain). Kunci pribadi segera ditunjukkan dalam konfigurasi.

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

Saya bukan spesialis keamanan dan saya tidak tahu persis cara menggunakannya dengan benar, tetapi menurut saya kunci ini digunakan pada tingkat pertukaran antar node IPFS. Dan juga js-ipfs dan contoh proyek seperti orbit-db, tempat ia bekerja orbit.chat. Artinya, secara teori, setiap perangkat (ponsel dan tidak hanya) dapat dengan mudah dilengkapi dengan mesin enkripsi dan dekripsinya sendiri. Dalam hal ini, yang tersisa hanyalah setiap orang menjaga keamanan kunci pribadi mereka dan setiap orang akan bertanggung jawab atas keamanan mereka sendiri, dan tidak menjadi sandera oleh faktor manusia lain di raksasa Internet yang sangat populer.

Hanya pengguna terdaftar yang dapat berpartisipasi dalam survei. Masuk, silakan.

Pernahkah Anda mendengar tentang IPFS sebelumnya?

  • Saya belum pernah mendengar tentang IPFS, tapi sepertinya menarik

  • Aku belum mendengarnya dan aku tidak ingin mendengarnya

  • Aku mendengarnya, tapi aku tidak tertarik

  • Saya mendengarnya, tetapi tidak memahaminya, tetapi sekarang sepertinya menarik

  • Saya sudah aktif menggunakan IPFS sejak lama.

69 pengguna memilih. 13 pengguna abstain.

Sumber: www.habr.com

Tambah komentar