Kita berbicara tentang prinsip-prinsip pengoperasian protokol P2P ini dan proyek-proyek yang dibangun atas dasar itu.
/ Unsplash / Alina GrubnyakApa itu dat
Dat (Decentralized Archive Transport) adalah protokol terbuka untuk bertukar data dan pesan dalam jaringan terdistribusi (peer-to-peer). Ini memiliki fitur kontrol versi bawaan dan memungkinkan Anda untuk memonitor perubahan set data. Dat dikembangkan oleh insinyur Max Ogden. Dia
memperkenalkan protokol pada 2013 sebagai bagian dari proyek
Code for America .
Pesertanya mengembangkan layanan yang berkontribusi pada peningkatan layanan kota. Dat diciptakan sebagai alat untuk mentransfer data pribadi warga negara antara negara. organisasi. Namun kemudian, fokus proyek beralih ke informasi ilmiah.
Sebuah komunitas besar telah terbentuk sekitar Dat (7 ribu bintang
di GitHub ). Protokol dan aplikasi yang dibangun atas dasar dipromosikan oleh organisasi nirlaba
Dat Foundation . Ini didukung oleh Mozilla, Yayasan open source
Code for Science & Society dan Wireline, seorang pengembang jaringan P2P.
Bagaimana dia bekerja?
Untuk mengunggah file ke jaringan Dat, Anda harus menentukan URL-nya. Berikut ini sebuah contoh:
dat://778f8d955175c92e4ced5e4f5563f69bfec0c86cc6f670352c457943666fe639/dat_intro.gif
Untuk menemukan tautan alamat, klien Dat menggunakan
DNS multicast . Teman sebaya menyiarkan permintaan mereka ke jaringan lokal dengan harapan salah satu peserta akan "mendengar" dan berbagi informasi. Pelanggan juga dapat mengakses server di Internet. Server utama terletak di
discovery1.datprotocol.com . Jika tidak tersedia, maka Anda dapat merujuk ke mirrornya -
discovery2.datprotocol.com .
Tentang protokol dan standar lain di blog kami di HabrΓ©:
Ketika peer mempelajari alamat IP dan nomor port dari peer lain, mereka membangun koneksi TCP. Semua data yang dikirim dienkripsi - sistem enkripsi aliran
XSalsa20 digunakan untuk ini. Algoritme menggunakan fungsi hash dua puluh siklus. Operasi konversi mengingatkan mereka yang terlibat dalam AES.
Data dalam jaringan Dat ditransmisikan dalam fragmen terpisah (potongan), yang ukurannya dapat bervariasi. Sistem ini memungkinkan Anda untuk menambahkan fragmen baru ke file Dat, tetapi tidak memungkinkan Anda untuk mengubah atau menghapus yang sudah ada. Menurut pengembang, pendekatan ini memungkinkan Anda untuk menyimpan seluruh riwayat perubahan dokumen. Sistem ini dapat berfungsi secara bebas di lingkungan dengan koneksi yang tidak stabil.
/ Unsplash / Sven BrandsmaSekarang anggota Yayasan Dat meningkatkan protokol sehingga dapat bekerja dengan sejumlah besar data. Secara khusus, mereka berencana untuk memperbaiki sistem file (disebut
Hyperdrive ) untuk mengatasi jutaan file dan memperkenalkan
mesin pencari
peer baru (
Hyperswarm ).
Siapa yang menggunakan
Contohnya adalah proyek
ScienceFair terbuka. Ini adalah aplikasi desktop untuk menjelajah dan mencari literatur ilmiah. Pada platform ini, para ilmuwan dan peneliti dapat bekerja dengan catatan pribadi, majalah atau kutipan dari mereka. Untuk menampilkan konten dari literatur ilmiah, ScienceFair menggunakan pembaca
Lensa - itu bertanggung jawab untuk memberikan
format XML JATS .
Meskipun Dat awalnya dirancang sebagai protokol untuk bertukar informasi ilmiah, komunitas menggunakannya untuk membuat situs web, obrolan, dan aplikasi lainnya.
Satu contoh baru-baru ini adalah browser
Beaker P2P, yang dikembangkan dalam kemitraan dengan tim pengembangan Dat. Tujuannya adalah untuk memberikan pengguna kemampuan untuk meng-host situs web "langsung di browser." Pembuat Beaker meluncurkan layanan cloud Hashbase, yang menyediakan akses konstan ke situs dat yang salinan lokalnya tidak tersedia.
Proyek ini sepenuhnya terbuka, dan sumbernya
dapat ditemukan di GitHub . Jika Anda ingin mengevaluasi sendiri kemampuan peramban, maka untuk menjalankannya di Linux Anda harus menginstal libtool, m4 dan autoconf:
sudo apt-get install libtool m4 make g++ autoconf
Setelah cukup berjalan:
git clone https://github.com/beakerbrowser/beaker.git cd beaker npm install npm run rebuild
Lebih banyak contoh aplikasi
dapat ditemukan di situs web proyek.
Analogi
Tentu saja, Dat bukan satu-satunya protokol P2P yang telah dikembangkan secara aktif baru-baru ini. Alternatif adalah proyek IPFS (InterPlanetary File System). Ini adalah sistem file terdistribusi peer-to-peer. Perbedaan dari jaringan desentralisasi lainnya adalah ia bekerja dengan blok. Mereka mungkin berisi bagian file dan tautan ke blok lain. Dari blok-blok ini grafik diarahkan seperti pohon yang digeneralisasi terbentuk yang membentuk direktori atau file. IPFS bekerja dengan tabel hash terdistribusi dan mendukung pertukaran blok terdesentralisasi. IPFS tidak memiliki poin kegagalan, dan host
tidak diharuskan untuk saling percaya. Akses ke sistem file dapat diperoleh menggunakan
FUSE atau HTTP.
Solusinya sudah menggunakan
Neocities hosting dan pasar
OpenBazaar . Pengembang protokol seperti IPFS dan Dat berharap proyek mereka akan memberi pengguna Internet lebih banyak kontrol atas data mereka.
Apa yang kami tulis di blog korporat VAS Experts: