Dat - protokol apa itu dan siapa yang menggunakannya

Kita berbicara tentang prinsip-prinsip pengoperasian protokol P2P ini dan proyek-proyek yang dibangun atas dasar itu.


/ Unsplash / Alina Grubnyak

Apa 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 Brandsma

Sekarang 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 # debian/ubuntu sudo dnf install libtool m4 make gcc-c++ libXScrnSaver # fedora 

Setelah cukup berjalan:

 git clone https://github.com/beakerbrowser/beaker.git cd beaker npm install npm run rebuild # see https://github.com/electron/electron/issues/5851 npm start 

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:

Source: https://habr.com/ru/post/id462359/


All Articles