Apa manfaat teknologi Data Availability Sampling? Mengapa kita membutuhkannya?
Foto oleh@testalizeme?utm_source=medium&utm_medium=referral">Testalize.me on Unsplash
Pengetahuan prasyarat:
Berikutnya akan menjadi Publikasi Data untuk memanggil Ketersediaan Data, tetapi beberapa kata terkait Ketersediaan Data, seperti DAS dan DAC, akan mempertahankan kata-kata aslinya untuk mencegah pembaca tidak dapat terhubung ke teks asli dalam bahasa Inggris. Untuk pengenalan nama Publikasi Data, silakan lihat:
Serangkaian artikel ini akan memperkenalkan mekanisme operasional DAS melalui Danksharding, serta persamaan dan perbedaan antara Celestia, EigenDA, dan AvailDA. Artikel pertama akan memperkenalkan mengapa kita membutuhkan DAS dan manfaat yang DAS bawa.
Saat ini, situasi paling umum di mana rilis data dibahas dalam ekosistem Ethereum adalah ketika membahas desain L2: L2 itu sendiri juga merupakan sebuah rantai, sehingga akan memiliki blok dan data transaksi sendiri, jadi di mana seharusnya data-data ini ditempatkan? Karena pengguna membutuhkan informasi ini untuk memastikan keamanan.
Untuk informasi lebih lanjut tentang hubungan antara Rollup dan rilis data, silakan lihat di:
Namun sebenarnya, bukan hanya L2, rantai Ethereum itu sendiri juga perlu menghadapi masalah pelepasan data, karena node ringan tidak akan mengunduh data blok lengkap seperti node penuh, sehingga node ringan perlu percaya bahwa "saat blok baru muncul Pada saat itu, data lengkap dari blok tersebut benar-benar dirilis." Ketika node ringan ditipu untuk percaya bahwa blok "tidak lengkap", dampaknya sama seperti ketika ditipu untuk percaya bahwa blok "ilegal" - itu terhubung ke tautan yang tidak digunakan oleh orang lain. Mengakui rantai yang bercabang.
Node penuh tidak akan percaya pada blok yang tidak lengkap, tetapi node ringan akan
Jadi kepercayaan siapa yang dipercayai oleh node ringan Ethereum saat ini untuk memastikan bahwa data blok baru benar-benar dirilis? Jawabannya adalah "Validasi". Ketika node ringan menerima blok baru, itu tidak akan mengunduh data blok lengkap, tetapi akan melihat berapa banyak validator yang memberikan suara untuk blok tersebut. Ketika cukup validator memberikan suara untuk blok ini, ia akan percaya bahwa informasi lengkap dari blok ini memang telah dipublikasikan. Ini adalah asumsi yang termasuk dalam Mayoritas Jujur, yaitu keyakinan bahwa sebagian besar validator adalah orang-orang baik.
Ketika validator yang cukup menandatangani blok, node ringan akan percaya bahwa blok telah sepenuhnya dirilis.
Catatan: Saat ini, node ringan Ethereum sebenarnya tidak mengumpulkan suara dari ratusan ribu validator untuk perhitungan, karena jumlahnya terlalu besar dan perhitungannya terlalu banyak menghabiskan sumber daya. Sebaliknya, sekelompok Sync Committee lain dengan jumlah yang jauh lebih kecil ditugaskan, terdiri dari Tanda tangan validator di dalamnya berfungsi sebagai jaminan untuk node ringan. Ini dianggap sebagai pendekatan transisional, menunggu desain yang lebih lengkap dan matang untuk menggantikannya di masa depan.
"Percaya bahwa sebagian besar validator adalah orang baik" terdengar seperti pilihan yang masuk akal dan baik, tetapi bagaimana jika kita bisa melakukan yang lebih baik? Bagaimana jika suatu hari benar-benar terjadi bahwa sebagian besar validator ingin bergabung untuk menipu kita, mengatakan bahwa mereka memiliki data blok yang lengkap padahal sebenarnya tidak, tetapi selama ada beberapa orang baik dalam jaringan p2p, kita dapat menghindari penipuan?
Kemampuan yang begitu hebat pasti tidak muncul secara tiba-tiba. Untuk memiliki kemampuan ini, Anda perlu membangun jaringan p2p yang cukup stabil, memiliki cukup pengguna, dan bahkan menambahkan fungsi privasi ke lapisan jaringan. Kemampuan ini adalah fokus dari seri artikel ini - Data Availability Sampling (DAS).
Dalam blockchain dengan DAS, node-node ringan tidak hanya akan secara pasif menerima data blok baru, tetapi akan ikut serta dalam operasi DAS: setiap node ringan harus pergi ke jaringan p2p untuk setiap blok. Di sepanjang jalan, ia mencari beberapa potongan data pada blok dan menyimpan data tersebut, dan membagikannya dengan node lain ketika mereka meminta data. Sama seperti protokol berbagi file terdesentralisasi BitTorrent, node-node dalam jaringan menyimpan dan berbagi data yang mereka pedulikan bersama daripada bergantung pada server terpusat.
Node-node ringan bekerja sama untuk mengambil dan berbagi data fragmen blok melalui jaringan p2p
Catatan: Pada skenario ideal, pengguna blockchain semuanya akan menjalankan node-node ringan, berpartisipasi dalam operasi DAS, dan memastikan keamanan bersama, alih-alih sepenuhnya mempercayai node lain seperti sekarang.
Setiap node ringan tidak dapat percaya bahwa data blok telah benar-benar dirilis sampai berhasil mendapatkan setiap bagian data yang diminta. Namun, begitu setiap bagian data yang diminta diperoleh, node ringan dapat dengan aman percaya bahwa data blok telah dirilis. Informasi telah dirilis sepenuhnya. Tetapi mengapa node ringan dapat dengan aman percaya bahwa data blok lengkap telah dirilis meskipun mereka hanya memiliki data yang terfragmentasi? Hal ini karena node ringan lainnya dalam jaringan juga akan menyimpan data fragmentasi secara terpisah, sehingga jika diperlukan, semua orang akan dapat bekerja sama untuk menyusun data lengkap dari data fragmentasi masing-masing, dan kemampuan ajaib lain dari DAS adalah: Data yang disimpan oleh node ringan tidak perlu mencakup data blok lengkap. Node ringan dapat mengembalikan 100% data selama mereka mendapatkan 50% data.
Selama node ringan memiliki lebih dari 50% data fragmen, mereka dapat memulihkan data blok lengkap.
Catatan: Ini tidak selalu 50%, mungkin lebih tinggi, tergantung pada pengaturan DAS, tetapi pasti akan kurang dari 100%.
Oleh karena itu, dalam DAS, bahkan jika sebagian besar validator memilih untuk suatu blok tertentu, node ringan tidak akan dengan mudah percaya pada blok tersebut. Node ringan akan melakukan sampling (Sampling), yaitu, meminta data fragmen dari blok tersebut. Ketika semua fragmen yang diminta diperoleh, akan dipercayai bahwa data blok telah sepenuhnya dirilis.
Dibandingkan dengan Ethereum, yang saat ini tidak memiliki DAS, node ringan harus bergantung pada "sebagian besar validator adalah orang baik", yang merupakan asumsi Mayoritas Jujur; setelah Ethereum bergabung dengan DAS, node ringan bergantung pada "sejumlah kecil node yang (akan sampling dan "Seorang yang baik yang menjaga informasi" adalah asumsi Minoritas Jujur.
Catatan: "Beberapa" merujuk pada fakta bahwa jumlah node ringan yang perlu diambil sampel dan disimpan untuk mengembalikan data lengkap relatif sedikit dibandingkan dengan semua (sangat banyak) node ringan di jaringan.
Seperti yang disebutkan sebelumnya, ketika node ringan menerima semua data fragmen yang diminta, ia akan percaya bahwa data blok telah sepenuhnya dirilis, dan node-node ringan dalam jaringan dapat bekerja sama untuk meminjamnya saat diperlukan. Data lengkap dapat dipulihkan dari data yang terfragmentasi, tetapi... bagaimana jika orang yang memproduksi blok tersebut bersifat jahat, dan tidak merilis cukup data blok pada awalnya? Bagaimana jika ditujukan kepada node ringan tertentu dan tidak lagi menyediakan data apa pun setelah menyediakan data fragmen yang diperlukan oleh node ringan tersebut?
Alice berhasil mendapatkan informasi yang diminta, sehingga ia percaya bahwa informasi blok telah sepenuhnya dirilis, dan ia akhirnya akan mengambil blok yang dibuang oleh node lain.
Kemudian node ringan yang malang ini akan harus ditipu, dan ini juga merupakan batasan dan trade-off dari DAS: jaminan "pembebasan data yang lengkap" yang disediakan oleh DAS adalah jaminan probabilitas, bukan jaminan 100% dan kategoris, tetapi ini masih lebih baik daripada harus sepenuhnya mempercayai mayoritas validator. Jika Anda merasa bahwa jaminan probabilitas tidak cukup aman dan ingin pasti 100% apakah data blok telah benar-benar dirilis, maka maaf, Anda hanya dapat menjalankan node penuh sendiri untuk mengunduh data blok lengkap.
Catatan: Program yang menjalankan node ringan tidak memiliki cara untuk mengetahui bahwa ia telah ditipu. Bagi program, selama menerima semua data yang diminta, ia akan percaya bahwa blok telah sepenuhnya diterbitkan. Pengguna hanya dapat mengetahui melalui saluran sosial mereka sendiri bahwa suatu blok sebenarnya tidak sepenuhnya dirilis, dan dengan cepat memerintahkan node ringan mereka untuk menandai blok sebagai data yang tidak lengkap.
Jika orang yang memproduksi blok tersebut bersifat jahat dan ingin menipu beberapa node ringan, maka sayangnya, akan dapat menipu node-node ringan tersebut. Namun, akan ada batasan atas jumlah penipu. Pada akhirnya, penyerang tidak dapat melepaskan terlalu banyak blok sehingga node-node ringan benar-benar dapat bekerja sama untuk mengembalikan data lengkap.
Pada saat ini, Anda mungkin khawatir, apakah keamanan Anda hanya dapat didasarkan pada “tidak bermusuhan dengan orang yang memproduksi blok” atau “penyerang tidak tahu siapa saya, sehingga dia tidak akan menargetkan saya”? Ya, tetapi itulah mengapa sebelumnya disebutkan bahwa DAS memerlukan fungsi privasi dari lapisan jaringan, karena jika penyerang dapat mengetahui “siapa” yang meminta data fragmen, atau mengetahui bahwa tiga fragmen A, B, dan C adalah “Individu” yang sama yang mencari, maka secara alami dapat dengan mudah menargetkan korban dan memberikan informasi kepada pihak lain. Jika lapisan jaringan hari ini memiliki fungsi privasi, maka penyerang tidak akan memiliki cara untuk mengetahui siapa yang meminta informasi ini. Secara alami, tidak akan ada cara untuk menipu target, dan efisiensi serangan penyerang akan sangat berkurang: tidak ada cara untuk menentukan apakah korban telah ditipu, atau bahkan node ringan apa pun.
Jika penyerang tidak tahu siapa yang meminta informasi, akan sangat sulit menipu node-node ringan.
Untuk DAS menjadi aman, diperlukan:
Apa masalahnya jika blok tidak dienkripsi melalui coding penghapusan, tetapi biarkan node ringan langsung mengambil sampel konten blok asli? Jawabannya adalah: data fragmen yang diambil oleh node ringan harus mencapai cakupan 100% untuk memastikan integritas data. Bahkan jika node ringan bekerja sama untuk mengambil sampel 99% data blok, blok ini masih tidak lengkap dan tidak diakui.
Tanpa pengkodean penghapusan, selama sedikit blok hilang, itu berarti blok tersebut belum sepenuhnya dirilis.
Jika blok dienkripsi oleh pengkodean penghapusan, maka 100% data dapat dipulihkan dengan, misalnya, 50% data apa pun. Ini berarti bahwa node-node ringan dapat memastikan bahwa mereka dapat memulihkan data selama data fragmen yang diambil bersama mencapai cakupan 50%. Informasi blok lengkap. Dibandingkan dengan cakupan 100%, persyaratan untuk cakupan 50% jauh lebih sederhana. Akan jauh lebih sulit bagi produsen blok jahat untuk menyembunyikan beberapa informasi untuk menipu node-node ringan.
Catatan: 50% hanyalah contoh. Kebutuhan yang berbeda akan memerlukan % yang berbeda untuk restorasi.
Jika node ringan tidak menyimpan data fragmen yang cukup, bahkan jika data blok dienkripsi melalui pengkodean penghapusan, 100% dari data tidak dapat dipulihkan. Sebagai contoh, jika node ringan hanya menyimpan 40% dari data fragmen secara total, dan mereka tidak dapat memulihkan 100% data bersama, maka node-node ini semua akan tertipu dan percaya bahwa data blok telah sepenuhnya dirilis.
Bagaimana memastikan bahwa node ringan menyimpan data yang cukup? Kami perlu memiliki cukup node ringan atau cukup sampel untuk setiap node ringan. Jika sudah cukup node ringan, jumlah kali pengambilan sampel untuk setiap node ringan tidak perlu tinggi; tetapi jika tidak cukup node ringan, maka jumlah kali pengambilan sampel untuk setiap node ringan harus cukup tinggi untuk memastikan bahwa node ringan bekerja sama untuk menyimpan data yang cukup.
Catatan: Jika jumlah node ringan terus bertambah, ukuran data yang dapat mereka simpan bersama sebenarnya dapat meningkat jika jumlah sampel tetap tidak berubah. Sebagai contoh, Celestia, yang akan diperkenalkan dalam seri artikel ini, dapat mendukung ukuran blok yang fleksibel. Blockchain: ukuran blok Celestia dapat disesuaikan sesuai dengan jumlah node ringan dalam jaringan.
Node-ringan perlu berbagi data yang terfragmentasi melalui jaringan p2p sehingga data blok lengkap dapat dikembalikan saat diperlukan. Jika jaringan p2p tidak stabil dan tidak dapat menangani sejumlah besar permintaan data, node-node mungkin tidak dapat memperoleh fragmen data tertentu. Selain itu, juga perlu mencegah semua fragmen data beredar di jaringan p2p yang sama, menyebabkan kelebihan beban lebar pita jaringan. Idealnya, sebuah node-ringan seharusnya hanya dapat menerima data yang diminta, bukan semua data tidak relevan lainnya. Mengalir melalui tangan mereka melalui jaringan p2p.
Selain itu, lapisan jaringan juga perlu memiliki fungsi privasi, jika tidak, node ringan akan diidentifikasi oleh penyerang. Penyerang tidak akan mempublikasikan lebih dari 50% data, tetapi akan memberikan data yang terfragmentasi yang diminta oleh node ringan yang terkunci. Untuk menyesatkan node ringan agar percaya bahwa data blok telah dirilis sepenuhnya.
Detail dari tiga bagian ini akan diperkenalkan secara lebih rinci dalam rangkaian artikel ini.
Apa manfaat teknologi Data Availability Sampling? Mengapa kita membutuhkannya?
Foto oleh@testalizeme?utm_source=medium&utm_medium=referral">Testalize.me on Unsplash
Pengetahuan prasyarat:
Berikutnya akan menjadi Publikasi Data untuk memanggil Ketersediaan Data, tetapi beberapa kata terkait Ketersediaan Data, seperti DAS dan DAC, akan mempertahankan kata-kata aslinya untuk mencegah pembaca tidak dapat terhubung ke teks asli dalam bahasa Inggris. Untuk pengenalan nama Publikasi Data, silakan lihat:
Serangkaian artikel ini akan memperkenalkan mekanisme operasional DAS melalui Danksharding, serta persamaan dan perbedaan antara Celestia, EigenDA, dan AvailDA. Artikel pertama akan memperkenalkan mengapa kita membutuhkan DAS dan manfaat yang DAS bawa.
Saat ini, situasi paling umum di mana rilis data dibahas dalam ekosistem Ethereum adalah ketika membahas desain L2: L2 itu sendiri juga merupakan sebuah rantai, sehingga akan memiliki blok dan data transaksi sendiri, jadi di mana seharusnya data-data ini ditempatkan? Karena pengguna membutuhkan informasi ini untuk memastikan keamanan.
Untuk informasi lebih lanjut tentang hubungan antara Rollup dan rilis data, silakan lihat di:
Namun sebenarnya, bukan hanya L2, rantai Ethereum itu sendiri juga perlu menghadapi masalah pelepasan data, karena node ringan tidak akan mengunduh data blok lengkap seperti node penuh, sehingga node ringan perlu percaya bahwa "saat blok baru muncul Pada saat itu, data lengkap dari blok tersebut benar-benar dirilis." Ketika node ringan ditipu untuk percaya bahwa blok "tidak lengkap", dampaknya sama seperti ketika ditipu untuk percaya bahwa blok "ilegal" - itu terhubung ke tautan yang tidak digunakan oleh orang lain. Mengakui rantai yang bercabang.
Node penuh tidak akan percaya pada blok yang tidak lengkap, tetapi node ringan akan
Jadi kepercayaan siapa yang dipercayai oleh node ringan Ethereum saat ini untuk memastikan bahwa data blok baru benar-benar dirilis? Jawabannya adalah "Validasi". Ketika node ringan menerima blok baru, itu tidak akan mengunduh data blok lengkap, tetapi akan melihat berapa banyak validator yang memberikan suara untuk blok tersebut. Ketika cukup validator memberikan suara untuk blok ini, ia akan percaya bahwa informasi lengkap dari blok ini memang telah dipublikasikan. Ini adalah asumsi yang termasuk dalam Mayoritas Jujur, yaitu keyakinan bahwa sebagian besar validator adalah orang-orang baik.
Ketika validator yang cukup menandatangani blok, node ringan akan percaya bahwa blok telah sepenuhnya dirilis.
Catatan: Saat ini, node ringan Ethereum sebenarnya tidak mengumpulkan suara dari ratusan ribu validator untuk perhitungan, karena jumlahnya terlalu besar dan perhitungannya terlalu banyak menghabiskan sumber daya. Sebaliknya, sekelompok Sync Committee lain dengan jumlah yang jauh lebih kecil ditugaskan, terdiri dari Tanda tangan validator di dalamnya berfungsi sebagai jaminan untuk node ringan. Ini dianggap sebagai pendekatan transisional, menunggu desain yang lebih lengkap dan matang untuk menggantikannya di masa depan.
"Percaya bahwa sebagian besar validator adalah orang baik" terdengar seperti pilihan yang masuk akal dan baik, tetapi bagaimana jika kita bisa melakukan yang lebih baik? Bagaimana jika suatu hari benar-benar terjadi bahwa sebagian besar validator ingin bergabung untuk menipu kita, mengatakan bahwa mereka memiliki data blok yang lengkap padahal sebenarnya tidak, tetapi selama ada beberapa orang baik dalam jaringan p2p, kita dapat menghindari penipuan?
Kemampuan yang begitu hebat pasti tidak muncul secara tiba-tiba. Untuk memiliki kemampuan ini, Anda perlu membangun jaringan p2p yang cukup stabil, memiliki cukup pengguna, dan bahkan menambahkan fungsi privasi ke lapisan jaringan. Kemampuan ini adalah fokus dari seri artikel ini - Data Availability Sampling (DAS).
Dalam blockchain dengan DAS, node-node ringan tidak hanya akan secara pasif menerima data blok baru, tetapi akan ikut serta dalam operasi DAS: setiap node ringan harus pergi ke jaringan p2p untuk setiap blok. Di sepanjang jalan, ia mencari beberapa potongan data pada blok dan menyimpan data tersebut, dan membagikannya dengan node lain ketika mereka meminta data. Sama seperti protokol berbagi file terdesentralisasi BitTorrent, node-node dalam jaringan menyimpan dan berbagi data yang mereka pedulikan bersama daripada bergantung pada server terpusat.
Node-node ringan bekerja sama untuk mengambil dan berbagi data fragmen blok melalui jaringan p2p
Catatan: Pada skenario ideal, pengguna blockchain semuanya akan menjalankan node-node ringan, berpartisipasi dalam operasi DAS, dan memastikan keamanan bersama, alih-alih sepenuhnya mempercayai node lain seperti sekarang.
Setiap node ringan tidak dapat percaya bahwa data blok telah benar-benar dirilis sampai berhasil mendapatkan setiap bagian data yang diminta. Namun, begitu setiap bagian data yang diminta diperoleh, node ringan dapat dengan aman percaya bahwa data blok telah dirilis. Informasi telah dirilis sepenuhnya. Tetapi mengapa node ringan dapat dengan aman percaya bahwa data blok lengkap telah dirilis meskipun mereka hanya memiliki data yang terfragmentasi? Hal ini karena node ringan lainnya dalam jaringan juga akan menyimpan data fragmentasi secara terpisah, sehingga jika diperlukan, semua orang akan dapat bekerja sama untuk menyusun data lengkap dari data fragmentasi masing-masing, dan kemampuan ajaib lain dari DAS adalah: Data yang disimpan oleh node ringan tidak perlu mencakup data blok lengkap. Node ringan dapat mengembalikan 100% data selama mereka mendapatkan 50% data.
Selama node ringan memiliki lebih dari 50% data fragmen, mereka dapat memulihkan data blok lengkap.
Catatan: Ini tidak selalu 50%, mungkin lebih tinggi, tergantung pada pengaturan DAS, tetapi pasti akan kurang dari 100%.
Oleh karena itu, dalam DAS, bahkan jika sebagian besar validator memilih untuk suatu blok tertentu, node ringan tidak akan dengan mudah percaya pada blok tersebut. Node ringan akan melakukan sampling (Sampling), yaitu, meminta data fragmen dari blok tersebut. Ketika semua fragmen yang diminta diperoleh, akan dipercayai bahwa data blok telah sepenuhnya dirilis.
Dibandingkan dengan Ethereum, yang saat ini tidak memiliki DAS, node ringan harus bergantung pada "sebagian besar validator adalah orang baik", yang merupakan asumsi Mayoritas Jujur; setelah Ethereum bergabung dengan DAS, node ringan bergantung pada "sejumlah kecil node yang (akan sampling dan "Seorang yang baik yang menjaga informasi" adalah asumsi Minoritas Jujur.
Catatan: "Beberapa" merujuk pada fakta bahwa jumlah node ringan yang perlu diambil sampel dan disimpan untuk mengembalikan data lengkap relatif sedikit dibandingkan dengan semua (sangat banyak) node ringan di jaringan.
Seperti yang disebutkan sebelumnya, ketika node ringan menerima semua data fragmen yang diminta, ia akan percaya bahwa data blok telah sepenuhnya dirilis, dan node-node ringan dalam jaringan dapat bekerja sama untuk meminjamnya saat diperlukan. Data lengkap dapat dipulihkan dari data yang terfragmentasi, tetapi... bagaimana jika orang yang memproduksi blok tersebut bersifat jahat, dan tidak merilis cukup data blok pada awalnya? Bagaimana jika ditujukan kepada node ringan tertentu dan tidak lagi menyediakan data apa pun setelah menyediakan data fragmen yang diperlukan oleh node ringan tersebut?
Alice berhasil mendapatkan informasi yang diminta, sehingga ia percaya bahwa informasi blok telah sepenuhnya dirilis, dan ia akhirnya akan mengambil blok yang dibuang oleh node lain.
Kemudian node ringan yang malang ini akan harus ditipu, dan ini juga merupakan batasan dan trade-off dari DAS: jaminan "pembebasan data yang lengkap" yang disediakan oleh DAS adalah jaminan probabilitas, bukan jaminan 100% dan kategoris, tetapi ini masih lebih baik daripada harus sepenuhnya mempercayai mayoritas validator. Jika Anda merasa bahwa jaminan probabilitas tidak cukup aman dan ingin pasti 100% apakah data blok telah benar-benar dirilis, maka maaf, Anda hanya dapat menjalankan node penuh sendiri untuk mengunduh data blok lengkap.
Catatan: Program yang menjalankan node ringan tidak memiliki cara untuk mengetahui bahwa ia telah ditipu. Bagi program, selama menerima semua data yang diminta, ia akan percaya bahwa blok telah sepenuhnya diterbitkan. Pengguna hanya dapat mengetahui melalui saluran sosial mereka sendiri bahwa suatu blok sebenarnya tidak sepenuhnya dirilis, dan dengan cepat memerintahkan node ringan mereka untuk menandai blok sebagai data yang tidak lengkap.
Jika orang yang memproduksi blok tersebut bersifat jahat dan ingin menipu beberapa node ringan, maka sayangnya, akan dapat menipu node-node ringan tersebut. Namun, akan ada batasan atas jumlah penipu. Pada akhirnya, penyerang tidak dapat melepaskan terlalu banyak blok sehingga node-node ringan benar-benar dapat bekerja sama untuk mengembalikan data lengkap.
Pada saat ini, Anda mungkin khawatir, apakah keamanan Anda hanya dapat didasarkan pada “tidak bermusuhan dengan orang yang memproduksi blok” atau “penyerang tidak tahu siapa saya, sehingga dia tidak akan menargetkan saya”? Ya, tetapi itulah mengapa sebelumnya disebutkan bahwa DAS memerlukan fungsi privasi dari lapisan jaringan, karena jika penyerang dapat mengetahui “siapa” yang meminta data fragmen, atau mengetahui bahwa tiga fragmen A, B, dan C adalah “Individu” yang sama yang mencari, maka secara alami dapat dengan mudah menargetkan korban dan memberikan informasi kepada pihak lain. Jika lapisan jaringan hari ini memiliki fungsi privasi, maka penyerang tidak akan memiliki cara untuk mengetahui siapa yang meminta informasi ini. Secara alami, tidak akan ada cara untuk menipu target, dan efisiensi serangan penyerang akan sangat berkurang: tidak ada cara untuk menentukan apakah korban telah ditipu, atau bahkan node ringan apa pun.
Jika penyerang tidak tahu siapa yang meminta informasi, akan sangat sulit menipu node-node ringan.
Untuk DAS menjadi aman, diperlukan:
Apa masalahnya jika blok tidak dienkripsi melalui coding penghapusan, tetapi biarkan node ringan langsung mengambil sampel konten blok asli? Jawabannya adalah: data fragmen yang diambil oleh node ringan harus mencapai cakupan 100% untuk memastikan integritas data. Bahkan jika node ringan bekerja sama untuk mengambil sampel 99% data blok, blok ini masih tidak lengkap dan tidak diakui.
Tanpa pengkodean penghapusan, selama sedikit blok hilang, itu berarti blok tersebut belum sepenuhnya dirilis.
Jika blok dienkripsi oleh pengkodean penghapusan, maka 100% data dapat dipulihkan dengan, misalnya, 50% data apa pun. Ini berarti bahwa node-node ringan dapat memastikan bahwa mereka dapat memulihkan data selama data fragmen yang diambil bersama mencapai cakupan 50%. Informasi blok lengkap. Dibandingkan dengan cakupan 100%, persyaratan untuk cakupan 50% jauh lebih sederhana. Akan jauh lebih sulit bagi produsen blok jahat untuk menyembunyikan beberapa informasi untuk menipu node-node ringan.
Catatan: 50% hanyalah contoh. Kebutuhan yang berbeda akan memerlukan % yang berbeda untuk restorasi.
Jika node ringan tidak menyimpan data fragmen yang cukup, bahkan jika data blok dienkripsi melalui pengkodean penghapusan, 100% dari data tidak dapat dipulihkan. Sebagai contoh, jika node ringan hanya menyimpan 40% dari data fragmen secara total, dan mereka tidak dapat memulihkan 100% data bersama, maka node-node ini semua akan tertipu dan percaya bahwa data blok telah sepenuhnya dirilis.
Bagaimana memastikan bahwa node ringan menyimpan data yang cukup? Kami perlu memiliki cukup node ringan atau cukup sampel untuk setiap node ringan. Jika sudah cukup node ringan, jumlah kali pengambilan sampel untuk setiap node ringan tidak perlu tinggi; tetapi jika tidak cukup node ringan, maka jumlah kali pengambilan sampel untuk setiap node ringan harus cukup tinggi untuk memastikan bahwa node ringan bekerja sama untuk menyimpan data yang cukup.
Catatan: Jika jumlah node ringan terus bertambah, ukuran data yang dapat mereka simpan bersama sebenarnya dapat meningkat jika jumlah sampel tetap tidak berubah. Sebagai contoh, Celestia, yang akan diperkenalkan dalam seri artikel ini, dapat mendukung ukuran blok yang fleksibel. Blockchain: ukuran blok Celestia dapat disesuaikan sesuai dengan jumlah node ringan dalam jaringan.
Node-ringan perlu berbagi data yang terfragmentasi melalui jaringan p2p sehingga data blok lengkap dapat dikembalikan saat diperlukan. Jika jaringan p2p tidak stabil dan tidak dapat menangani sejumlah besar permintaan data, node-node mungkin tidak dapat memperoleh fragmen data tertentu. Selain itu, juga perlu mencegah semua fragmen data beredar di jaringan p2p yang sama, menyebabkan kelebihan beban lebar pita jaringan. Idealnya, sebuah node-ringan seharusnya hanya dapat menerima data yang diminta, bukan semua data tidak relevan lainnya. Mengalir melalui tangan mereka melalui jaringan p2p.
Selain itu, lapisan jaringan juga perlu memiliki fungsi privasi, jika tidak, node ringan akan diidentifikasi oleh penyerang. Penyerang tidak akan mempublikasikan lebih dari 50% data, tetapi akan memberikan data yang terfragmentasi yang diminta oleh node ringan yang terkunci. Untuk menyesatkan node ringan agar percaya bahwa data blok telah dirilis sepenuhnya.
Detail dari tiga bagian ini akan diperkenalkan secara lebih rinci dalam rangkaian artikel ini.