Vitalik menjelaskan The Purge: tantangan dan solusi kunci untuk pengembangan jangka panjang Ethereum

Vitalik: Masa Depan Ethereum yang Mungkin, The Purge

Salah satu tantangan yang dihadapi Ethereum adalah bahwa, secara default, pembengkakan dan kompleksitas dari setiap protokol blockchain akan meningkat seiring berjalannya waktu. Ini terjadi di dua tempat:

Data sejarah: Setiap transaksi yang dilakukan dan setiap akun yang dibuat pada waktu mana pun dalam sejarah perlu disimpan secara permanen oleh semua klien dan diunduh oleh klien baru mana pun, sehingga sepenuhnya disinkronkan ke jaringan. Ini akan menyebabkan beban klien dan waktu sinkronisasi meningkat seiring berjalannya waktu, bahkan jika kapasitas rantai tetap tidak berubah.

Fungsi protokol: Menambahkan fitur baru jauh lebih mudah daripada menghapus fitur lama, yang menyebabkan kompleksitas kode meningkat seiring waktu.

Untuk memastikan bahwa Ethereum dapat bertahan dalam jangka panjang, kita perlu menerapkan tekanan balik yang kuat terhadap kedua tren ini, mengurangi kompleksitas dan ekspansi seiring berjalannya waktu. Namun, pada saat yang sama, kita perlu mempertahankan salah satu atribut kunci yang membuat blockchain menjadi hebat: keberlanjutan. Anda bisa menempatkan sebuah NFT, sebuah surat cinta dalam data panggilan transaksi, atau sebuah kontrak pintar yang berisi 1 juta dolar di dalam rantai, masuk ke sebuah gua selama sepuluh tahun, dan keluar dengan menemukan bahwa itu masih ada menunggu Anda untuk membaca dan berinteraksi. Agar DApp dapat sepenuhnya terdesentralisasi dengan tenang dan menghapus kunci pembaruan, mereka perlu yakin bahwa ketergantungan mereka tidak akan diperbarui dengan cara yang merusak mereka - terutama L1 itu sendiri.

Jika kita bertekad untuk menemukan keseimbangan antara kedua kebutuhan ini dan meminimalkan atau membalikkan pembengkakan, kompleksitas, dan penurunan sambil mempertahankan kontinuitas, ini sama sekali mungkin. Organisme dapat melakukannya: meskipun sebagian besar organisme menua seiring waktu, sejumlah kecil yang beruntung tidak. Bahkan sistem sosial pun dapat memiliki umur yang sangat panjang. Dalam beberapa kasus, Ethereum telah berhasil: bukti kerja telah menghilang, opcode SELFDESTRUCT sebagian besar telah hilang, dan node rantai beacon telah menyimpan data lama selama maksimum enam bulan. Menemukan jalan ini untuk Ethereum dengan cara yang lebih umum dan menuju hasil akhir yang stabil dalam jangka panjang adalah tantangan tertinggi bagi skalabilitas jangka panjang Ethereum, keberlanjutan teknologi, dan bahkan keamanan.

Vitalik: Masa Depan Potensial Ethereum, The Purge

The Purge: Tujuan utama.

Mengurangi kebutuhan penyimpanan klien dengan mengurangi atau menghilangkan kebutuhan bagi setiap node untuk menyimpan semua riwayat atau bahkan status akhir secara permanen.

Mengurangi kompleksitas protokol dengan menghapus fungsi yang tidak diperlukan.

Daftar Isi:

Kedaluwarsa riwayat

Kedaluwarsa status(状态到期)

Pembersihan fitur

Riwayat kedaluwarsa

menyelesaikan masalah apa?

Pada saat penulisan artikel ini, node Ethereum yang sepenuhnya disinkronkan memerlukan sekitar 1,1 TB ruang disk untuk menjalankan klien, ditambah lagi beberapa ratus GB ruang disk untuk klien konsensus. Sebagian besar dari ini adalah sejarah: data tentang blok sejarah, transaksi, dan bukti, sebagian besar dari mana sudah berusia bertahun-tahun. Ini berarti bahwa bahkan jika batas Gas tidak meningkat sama sekali, ukuran node akan terus meningkat ratusan GB setiap tahun.

Apa itu, dan bagaimana cara kerjanya?

Salah satu fitur penyederhanaan kunci dari masalah penyimpanan sejarah adalah, karena setiap blok terhubung ke blok sebelumnya melalui tautan hash (dan struktur lainnya), maka mencapai konsensus saat ini sudah cukup untuk mencapai konsensus sejarah. Selama jaringan mencapai konsensus pada blok terbaru, blok, transaksi, atau status sejarah (saldo akun, nomor acak, kode, penyimpanan) dapat disediakan oleh peserta tunggal mana pun serta bukti Merkle, dan bukti tersebut memungkinkan orang lain untuk memverifikasi kebenarannya. Konsensus adalah model kepercayaan N/2-of-N, sedangkan sejarah adalah model kepercayaan N-of-N.

Ini memberikan banyak pilihan tentang bagaimana kita menyimpan catatan sejarah. Salah satu pilihan alami adalah jaringan di mana setiap node hanya menyimpan sebagian kecil data. Inilah cara kerja jaringan biji selama beberapa dekade: meskipun jaringan secara total menyimpan dan mendistribusikan jutaan file, setiap peserta hanya menyimpan dan mendistribusikan beberapa file di antaranya. Mungkin bertentangan dengan intuisi, pendekatan ini bahkan tidak selalu mengurangi ketahanan data. Jika kita dapat membangun jaringan dengan 100.000 node yang masing-masing menyimpan 10% catatan sejarah secara acak dengan membuat node beroperasi lebih ekonomis, maka setiap data akan disalin 10.000 kali - sama dengan faktor salinan dari jaringan 10.000 node, di mana setiap node menyimpan semua konten.

Saat ini, Ethereum telah mulai menghilangkan model di mana semua node menyimpan semua sejarah secara permanen. Blok konsensus (yaitu bagian yang terkait dengan konsensus proof-of-stake) hanya menyimpan sekitar 6 bulan. Blob hanya menyimpan sekitar 18 hari. EIP-4444 bertujuan untuk memperkenalkan periode penyimpanan satu tahun untuk blok sejarah dan tanda terima. Tujuan jangka panjang adalah untuk membangun periode yang seragam (mungkin sekitar 18 hari), di mana setiap node bertanggung jawab untuk menyimpan semua konten, kemudian membangun jaringan peer-to-peer yang terdiri dari node Ethereum yang menyimpan data lama dengan cara terdistribusi.

Vitalik: Masa Depan Potensial Ethereum, The Purge

Kode penghapusan dapat digunakan untuk meningkatkan ketahanan, sambil menjaga faktor replikasi tetap sama. Faktanya, Blob sudah menerapkan kode penghapusan untuk mendukung pengambilan ketersediaan data. Solusi yang paling sederhana kemungkinan adalah menggunakan kembali kode penghapusan ini dan juga memasukkan data blok eksekusi dan konsensus ke dalam blob.

memiliki hubungan apa dengan penelitian yang ada?

EIP-4444;

Torrent dan EIP-4444;

Portal Jaringan;

Jaringan portal dan EIP-4444;

Penyimpanan dan pengambilan terdistribusi objek SSZ di Portal;

Bagaimana cara meningkatkan batas gas (Paradigm).

apa lagi yang perlu dilakukan, apa yang perlu dipertimbangkan?

Pekerjaan utama yang tersisa termasuk membangun dan mengintegrasikan solusi terdistribusi konkret untuk menyimpan catatan sejarah------setidaknya catatan eksekusi, tetapi pada akhirnya juga termasuk konsensus dan blob. Solusi termudah adalah (i) dengan sederhana memperkenalkan pustaka torrent yang ada, serta (ii) yang disebut solusi asli Ethereum bernama Portal Network. Begitu salah satu dari ini diperkenalkan, kita dapat membuka EIP-4444. EIP-4444 itu sendiri tidak memerlukan hard fork, tetapi memang memerlukan versi protokol jaringan yang baru. Oleh karena itu, mengaktifkannya secara bersamaan untuk semua klien adalah berharga, jika tidak ada risiko klien mengalami kegagalan karena terhubung ke node lain dengan harapan mengunduh catatan sejarah lengkap tetapi sebenarnya tidak mendapatkannya.

Pertimbangan utama melibatkan bagaimana kita berusaha untuk menyediakan data sejarah "kuno". Solusi yang paling sederhana adalah berhenti menyimpan sejarah kuno besok dan mengandalkan node arsip yang ada serta berbagai penyedia terpusat untuk replikasi. Ini mudah, tetapi ini melemahkan posisi Ethereum sebagai tempat catatan permanen. Cara yang lebih sulit tetapi lebih aman adalah terlebih dahulu membangun dan mengintegrasikan jaringan torrent untuk menyimpan catatan sejarah secara terdistribusi. Di sini, "seberapa keras kita berusaha" memiliki dua dimensi:

Bagaimana kami berusaha memastikan bahwa kumpulan node terbesar benar-benar menyimpan semua data?

Seberapa dalam integrasi penyimpanan historis ke dalam protokol?

Salah satu metode ekstrem yang sangat paranoid untuk (1) akan melibatkan bukti penahanan: pada kenyataannya, mengharuskan setiap validator bukti kepemilikan untuk menyimpan proporsi tertentu dari catatan sejarah, dan secara berkala memeriksa secara kriptografis apakah mereka melakukannya. Metode yang lebih moderat adalah menetapkan standar sukarela untuk persentase sejarah yang disimpan oleh setiap klien.

Untuk (2), implementasi dasar hanya melibatkan pekerjaan yang sudah diselesaikan hari ini: Portal telah menyimpan file ERA yang mencakup seluruh sejarah Ethereum. Implementasi yang lebih menyeluruh akan melibatkan menghubungkannya ke proses sinkronisasi, sehingga jika seseorang ingin menyinkronkan node penyimpanan sejarah lengkap atau node arsip, bahkan jika tidak ada node arsip lain yang online, mereka dapat mencapainya melalui sinkronisasi langsung dari jaringan portal.

Bagaimana itu berinteraksi dengan bagian lain dari peta jalan?

Jika kita ingin membuat menjalankan atau memulai node menjadi sangat mudah, maka mengurangi kebutuhan penyimpanan sejarah bisa dibilang lebih penting daripada tanpa status: dari 1,1 TB yang dibutuhkan node, sekitar 300 GB adalah status, dan sekitar 800 GB telah menjadi sejarah. Hanya dengan mencapai tanpa status dan EIP-4444, visi untuk menjalankan node Ethereum di jam tangan pintar dan hanya memerlukan beberapa menit untuk mengaturnya dapat terwujud.

Pembatasan penyimpanan sejarah juga membuat implementasi node Ethereum yang lebih baru menjadi lebih praktis, hanya mendukung versi terbaru dari protokol, yang membuatnya lebih sederhana. Misalnya, sekarang banyak baris kode dapat dihapus dengan aman, karena slot penyimpanan kosong yang dibuat selama serangan DoS pada tahun 2016 telah dihapus sepenuhnya. Sekarang bahwa peralihan ke bukti kepemilikan telah menjadi sejarah, klien dapat dengan aman menghapus semua kode yang terkait dengan bukti kerja.

Kadaluarsa negara

Apa masalah yang diselesaikan?

Meskipun kita menghilangkan kebutuhan untuk menyimpan riwayat di klien, kebutuhan penyimpanan klien akan terus bertambah, sekitar 50 GB per tahun, karena status terus berkembang: saldo akun dan nomor acak, kode kontrak, dan penyimpanan kontrak. Pengguna dapat membayar biaya sekali untuk selamanya membebani klien Ethereum saat ini dan di masa depan.

"Status lebih sulit untuk "kedaluwarsa" daripada sejarah, karena EVM pada dasarnya dirancang berdasarkan asumsi bahwa: setelah objek status dibuat, ia akan selalu ada dan dapat dibaca kapan saja oleh transaksi mana pun. Jika kita memperkenalkan tanpa status, beberapa orang berpendapat bahwa masalah ini mungkin tidak begitu buruk: hanya kelas pembangun blok khusus yang perlu menyimpan status secara nyata, sementara semua node lainnya (bahkan yang menyertakan pembuatan daftar!) dapat beroperasi tanpa status. Namun, ada pandangan bahwa kita tidak ingin terlalu bergantung pada tanpa status, dan pada akhirnya kita mungkin ingin membuat status kedaluwarsa untuk menjaga desentralisasi Ethereum.

Apa itu, dan bagaimana cara kerjanya

Hari ini, ketika Anda membuat objek status baru (ini dapat terjadi melalui salah satu dari tiga cara berikut: (i) mengirim ETH ke akun baru, (ii) membuat akun baru menggunakan kode, (iii) mengatur slot penyimpanan yang belum pernah dijangkau sebelumnya), objek status tersebut akan selamanya berada dalam keadaan tersebut. Sebaliknya, apa yang kita inginkan adalah objek tersebut secara otomatis kedaluwarsa seiring berjalannya waktu. Tantangan utama adalah melakukan ini dengan cara yang memenuhi tiga tujuan:

Efisiensi: Tidak perlu banyak perhitungan tambahan untuk menjalankan proses kedaluwarsa.

Keterpakaian pengguna: Jika seseorang masuk ke dalam gua selama lima tahun dan kembali, mereka seharusnya tidak kehilangan akses ke posisi ETH, ERC20, NFT, dan CDP...

Keterpaduan untuk Pengembang: Pengembang tidak perlu beralih ke model pemikiran yang sepenuhnya tidak dikenal. Selain itu, aplikasi yang saat ini sudah kaku dan tidak diperbarui seharusnya tetap dapat berjalan normal.

Tidak memenuhi tujuan-tujuan ini sangat mudah untuk menyelesaikan masalah. Misalnya, Anda dapat membuat setiap objek status juga menyimpan penghitung tanggal kedaluwarsa (yang dapat diperpanjang dengan membakar ETH, yang dapat terjadi secara otomatis kapan saja saat dibaca atau ditulis), dan memiliki proses yang mengiterasi status untuk menghapus objek status dengan tanggal kedaluwarsa. Namun, ini memperkenalkan perhitungan tambahan (bahkan kebutuhan penyimpanan), dan pasti tidak dapat memenuhi persyaratan ramah pengguna. Pengembang juga sulit untuk menyimpulkan kasus batas yang melibatkan nilai penyimpanan yang kadang-kadang direset menjadi nol. Jika Anda menetapkan penghitung kedaluwarsa di dalam ruang lingkup kontrak, secara teknis ini akan membuat kehidupan pengembang lebih mudah, tetapi ini akan membuat ekonomi menjadi lebih sulit: pengembang harus mempertimbangkan bagaimana "mengalihkan" biaya penyimpanan yang berkelanjutan kepada pengguna.

Semua ini adalah masalah yang telah berusaha diselesaikan oleh komunitas pengembang inti Ethereum selama bertahun-tahun, termasuk proposal seperti "sewa blockchain" dan "replikasi". Akhirnya, kami menggabungkan bagian terbaik dari proposal dan memfokuskan pada dua kategori "solusi yang diketahui tidak terlalu buruk":

  • Solusi status yang sebagian sudah kedaluwarsa
  • Saran kedaluwarsa status berdasarkan siklus alamat.

Masa kedaluwarsa status parsial

Beberapa proposal status yang kedaluwarsa mengikuti prinsip yang sama. Kami membagi status menjadi blok. Setiap orang menyimpan "peta teratas" secara permanen, di mana blok bisa kosong atau tidak kosong. Data dalam setiap blok hanya akan disimpan jika data tersebut baru saja diakses. Ada mekanisme "revival", jika tidak lagi disimpan.

Vitalik: Masa Depan Potensial Ethereum, The Purge

Perbedaan utama antara proposal ini adalah: (i) bagaimana kami mendefinisikan "

Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 7
  • Bagikan
Komentar
0/400
ILCollectorvip
· 07-12 16:37
Penyimpanan adalah titik nyeri
Lihat AsliBalas0
LiquidationKingvip
· 07-10 22:51
Membersihkan adalah kunci untuk tumbuh
Lihat AsliBalas0
DegenMcsleeplessvip
· 07-10 12:31
Menyederhanakan kode adalah kunci
Lihat AsliBalas0
GateUser-a180694bvip
· 07-10 12:29
Mengurangi beban secara efektif adalah jalan yang benar
Lihat AsliBalas0
BlockchainTalkervip
· 07-10 12:27
Sebenarnya batas pertumbuhan yang kritis
Lihat AsliBalas0
OvertimeSquidvip
· 07-10 12:22
Peningkatan sudah di ambang pintu!
Lihat AsliBalas0
SocialFiQueenvip
· 07-10 12:01
Hard drive sudah tidak mampu lagi
Lihat AsliBalas0
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)