Sejak peningkatan Shanghai/Capella, penarikan telah diaktifkan di Rantai Suar, dengan penyertaan EIP-4895. Proposal Peningkatan Ethereum ini memungkinkan imbalan otomatis ditarik ke lapisan eksekusi, dan juga memberikan cara bagi validator yang keluar untuk membuka kunci seluruh saldo mereka—gas tidak diperlukan.
Agar validator Anda dapat melakukan penarikan dalam bentuk apa pun, alamat penarikan harus diberikan dan didaftarkan untuk akun Anda di Rantai Suar. Ini harus berupa alamat yang Anda kendalikan, dan tidak dapat diubah setelah ditetapkan.
Validator saat ini
Bergantung cara Anda menyiapkan setoran awal, akun Anda mungkin sudah siap atau belum siap untuk melakukan penarikan:
CLI Setoran Penaruhan: jika Anda menggunakan bendera --eth1_withdrawal_address saat membuat kunci, Anda sudah siap melanjutkan
Wagyu Key Gen GUI: jika Anda memberikan alamat penarikan ketika membuat kunci, Anda sudah siap (ditemukan di bagian “mode lanjutan”)
Masukkan indeks validator Anda di sini untuk memeriksa apakah akun siap untuk penarikan atau tidak:
Jika akun validator Anda masih memiliki kredensial penarikan BLS (0x00), pesan satu kali harus disiarkan yang memberi sinyal akun lapisan eksekusi mana yang harus digunakan untuk semua penarikan.
0x00 = "Jenis 0" = Kunci BLS = Kredensial penarikan yang lama: Tidak memenuhi syarat untuk penarikan
Perhatikan bahwa kredensial penarikan Anda tidak sama dengan penerima biaya, yang menerima biaya transaksi dari blok yang diusulkan. Keduanya dapat diatur ke alamat yang sama, tetapi masing-masing harus diatur secara terpisah.
Perangkat yang tersedia untuk membuat pesan perubahan kunci
Perangkat ini akan membantu Anda membuat kunci dan pesan yang diperlukan untuk penandatanganan. Pesan yang ditandatangani dapat disiarkan ke blok yang dimulai dengan peningkatan Shanghai/Capella.
Ini mengharuskan penggunaan fase benih mnemonik Anda, dan harus dilakukan di mesin bercelah udara offline.
Antrean BLS Untuk Perubahan Eksekusi (BTEC)
Salah satu antrean yang perlu diperhatikan adalah antrean yang membatasi berapa banyak alamat penarikan (0x00) BLS yang dapat diperbarui ke alamat eksekusi (0x01) selama blok tertentu.If more than 16 requests are being made at one time, a queue will be formed and these will be processed in subsequent blocks. Once completed, your validator is permanently enabled for withdrawals, and will be eligible for payouts during the next sweep.
penarikan kelebihan saldo diproses ketika validator aktif memiliki saldo efektif maksimal 32, dan memiliki total saldo lebih dari 32. Satu validator tidak bisa mendapatkan imbalan atas kelebihan saldo lebih dari 32 ETH, sehingga akun ini akan memiliki saldo ekstra yang otomatis ditarik ke alamat Ethereum mereka.Ini juga disebut sebagai “penarikan parsial” atau “pembayaran imbalan” karena 32 ETH yang tersisa tetap dikunci dan dipertaruhkan.
📝Tidak dimungkinkan meminta ETH yang akan ditarik dengan jumlah tertentu secara manual
penarikan penuh diproses untuk aktivitas validator yang tidak aktif yang tidak lagi dianggap sebagai penaruhan, yang telah keluar sepenuhnya dari tanggung jawab validasi mereka. Jadi agar validator dapat menarik saldonya sepenuhnya, mereka harus menyelesaikan proses keluar terlebih dahulu.
Untuk keluar dari penaruhan dan menarik sepenuhnya seluruh saldo yang tersisa, Anda harus melakukan dua hal:
Pastikan Anda telah memperbarui kredensial penarikan dengan alamat penarikan eksekusi
Beri sinyal niat Anda untuk keluar dari penaruhan dengan menandatangani dan menyiarkan pesan keluar sukarela ke jaringan menggunakan kunci validator dan klien validator Anda
Dengan menyelesaikan langkah satu, Anda akan memungkinkan penarikan dari akun validator. Ini akan otomatis memicu pembayaran kelebihan saldo (penarikan parsial) untuk diproses, tetapi ini tidak otomatis membuka kunci dana Anda lainnya, atau memicu keluar dari jaringan.Mereka yang ingin keluar dari validator dari penaruhan dan penarikan ETH mereka harus melihat panduan di bawah ini yang sesuai dengan pengaturan Anda:Klien konsensus:
Agar akun memenuhi syarat untuk penarikan penuh, akun validator harus keluar terlebih dahulu. Akun validator dapat keluar dari penaruhan dengan dua cara utama: secara sukarela atau dipaksa.
Siapa pun yang ingin menyelesaikan kewajiban penaruhan mereka dapat menandatangani pesan “keluar sukarela” yang kemudian menyiarkannya ke Rantai Suar untuk memulai proses tersebut. Ini adalah langkah manual.
Akun yang telah dipotong, atau yang tidak punya saldo memadai, akan dipaksa untuk keluar sesuai dengan aturan jaringan. Ini otomatis dan tidak dapat dihentikan setelah dimulai.
Keluar, baik sukarela atau tidak, harus diproses melalui antrean keluar. Ini tidak instan, dan bergantung berapa banyak akun lain yang keluar pada saat bersamaan.
📝Validator masih harus menyelesaikan tugas validasi hingga mereka keluar
Setelah validator keluar dan saldo penuhnya telah ditarik, dana lain yang disetorkan ke validator tersebut akan otomatis ditransfer ke alamat penarikan saat penyisiran validator berikutnya. Untuk melakukan penaruhan ulang ETH, validator baru harus diaktifkan.
Pengguna Ethereum digunakan untuk transaksi yang akan dijalankan dengan cara manual—jika Anda ingin mentransfer dana, Anda harus menandatangani transaksi dan membayar gas.EIP-4895, berjudul Rantai suar mendorong penarikan sebagai operasi, menerapkan desain yang menyederhanakan seluruh proses ini bagi penaruh.Alih-alih jenis transaksi baru yang akan digunakan bagi penaruh untuk meminta penarikan secara manual, akun otomatis diperiksa atas kelebihan saldo yang memenuhi syarat setiap beberapa hari. Semua validator diperiksa pada putaran tanpa akhir, dan imbalan yang tersedia atau dana yang dikeluarkan otomatis “didorong” ke akun penarikan yang diberikan.
Antrean penarikan akan diisi otomatis dan diproses oleh pengusul blok, yang otomatis memeriksa ketersediaan pembayaran melalui mekanisme penyisiran.Pada putaran tanpa akhir, setiap akun validator terus dievaluasi atas kelayakan penarikan ETH (yang ada dua jenis, selengkapnya tentang hal ini dijelaskan di bawah). Validator diproses secara berurutan berdasarkan nomor indeks, yang awalnya dimulai dari 0, dengan setiap pengusul berikutnya melanjutkan dari nomor yang terakhir.Saat validator dijadwalkan untuk mengusulkan blok berikutnya, akan dijalankan penyisiran akun validator untuk mencari penarikan yang memenuhi syarat. Selama penyisiran, validator akan memeriksa maksimal 16.384 akun, berupaya menemukan 16 penarikan yang tersedia untuk diproses di blok berikutnya.Seperti jarum jam, proses ini berlangsung dalam satu arah, dan ketika mencapai validator terakhir, penyisiran akan dimulai lagi dari awal. Di setiap validator selama ini, akun dievaluasi untuk potensi penarikan.
📝Perhatikan bahwa antrean "penarikan" dan "BLS-untuk-eksekusi" bersifat independen dan tidak saling bersaing. Masing-masing dibatasi berdasarkan blok.
Seperti yang diketahui oleh semua orang yang telah melakukan proses mengaktifkan validator, proses ini tidak otomatis, terutama jika ada banyak pengguna lain yang mencoba bergabung pada saat yang sama. Ini karena lapisan konsensus menggunakan antrean aktivasi untuk membatasi seberapa cepat akun validator baru dapat bergabung dengan jaringan.Demikian halnya, ada juga antrean keluar, yang membatasi seberapa cepat validator dapat tinggalkan jaringan. Ini untuk alasan keamanan. Mengingat setiap validator dibatasi hingga saldo efektif maksimal 32 ETH, hal ini mencegah sebagian besar ETH kemungkinan digunakan dalam serangan lalu dengan cepat keluar dari jaringan sekaligus.Jumlah validator yang dapat diaktifkan atau dikeluarkan dalam jangka waktu tertentu (6,4 menit) ditentukan oleh berapa banyak validator aktif yang saat ini ada di jaringan.Empat (4) validator keluar diizinkan per jangka waktu, ditambah satu (1) lagi untuk setiap total 65.536 validator aktif atas 327.680. Mulai Februari 2023 batas ini adalah tujuh (7), dan akan meningkat hingga (8) jika/bila jumlah validator mencapai 524.288.
📝Perhatikan bahwa antrean "aktivasi" dan "keluar" bersifat independen dan tidak saling bersaing. Masing-masing dibatasi berdasarkan jangka waktu.
Jangka waktu keluar dan jangka waktu yang dapat ditarik
Segera setelah menyiarkan pesan keluar sukarela yang ditandatangani, nilai jangka waktu keluar dan jangka waktu yang dapat ditarik dihitung berdasarkan jumlah jangka waktu saat ini. Nilai ini menentukan dengan tepat kapan validator tidak lagi diharuskan melakukan validasi secara online, dan kapan validator memenuhi syarat untuk penarikan penuh.Jangka waktu keluar - jangka waktu ketika validator Anda tidak lagi aktif, tidak lagi mendapatkan imbalan, dan tidak lagi tunduk pada aturan pemotongan.Jangka waktu ini ditentukan berdasarkan yang pertama tersedia yang belum dimaksimalkan dengan keluarnya validator lain (batas tarif bergantung pada total validator yang ada di jaringan), dan minimal harus empat (4) jangka waktu setelah keluar dimulai.Hingga jangka waktu ini (saat "dalam antrean"), validator Anda diharapkan untuk online dan melakukan aturan pemotongan yang sama seperti biasanya. Jangan nonaktifkan validator Anda hingga jangka waktu ini dicapai.Jangka waktu yang dapat ditarik - jangka waktu ketika dana validator Anda memenuhi syarat untuk penarikan penuh saat penyisiran validator berikutnya.Ini terjadi 256 jangka waktu setelah jangka waktu keluar, yang butuh waktu ~27,3 jam.Ringkasan antrean keluarSetelah pesan keluar sukarela yang ditandatangani disiarkan, butuh waktu:
Setidaknya ~25 menit (empat jangka waktu) dari jangka waktu saat ini sebelum mencapai jangka waktu keluar (tanpa yang lain dalam antrean, sangat bervariasi)
Lalu ~27 jam (256 jangka waktu) lainnya sebelum dana tersebut diberi bendera sebagai dapat ditarik
Kemudian hingga beberapa hari lagi untuk penyisiran validator berikutnya guna mengeksekusi penarikan penuh (dengan asusmsi kredensial penarikan 0x01)
Perhatikan bahwa setelah pengguna memiliki kredensial penarikan 0x01 dan telah menyiarkan keluar sukarela, tidak diperlukan tindakan lebih lanjut hingga pemrosesan selesai.
Pohon keputusan diikuti untuk menentukan jenis penarikan mana yang akan dimulai. Jika validator yang diperiksa memiliki ETH yang memenuhi syarat untuk ditarik, validator akan ditambahkan ke antrean penarikan. Jika tidak ada, akun akan dilewati.
Apakah sudah memberikan alamat penarikan?
Jika demikian, beralih ke pertanyaan berikutnya
Jika tidak, hentikan. Tidak ada penarikan yang akan diproses dan akun akan dilewatkan
Apakah validator telah menyelesaikan proses keluar?
Jika demikian, hentikan. Penarikan penuh diproses untuk setiap saldo yang tersisa
Jika tidak, beralih ke pertanyaan berikutnya
Apakah saldo efektif masksimal pada 32?
Jika demikian, penarikan kelebihan saldo akan diproses
Jika tidak, tidak ada penarikan yang akan diproses dan akun akan dilewatkan
Produser blok kemudian memeriksa validator berikutnya, dan sekali lagi setelah menentukan apakah penarikan perlu diproses atau tidak. Proses ini diulangi hingga 16 penarikan yang memenuhi syarat ditemukan, atau hingga 16.384 validator telah diperiksa, mana pun yang terlebih dahulu dicapai. Pada saat itu, antrean penarikan dikirimkan ke lapisan eksekusi untuk disertakan pada akhir blok berikutnya.
Berapa lama waktu yang dibutuhkan siklus untuk memeriksa setiap akun bergantung pada:
Batas tarif yang ditetapkan pada antrean penarikan (dapat berubah melalui pengujian sebelum Shanghai)
Max withdrawals per payload: 16 (24) Jumlah maksimal penarikan yang dapat diproses dalam satu blok
Max validators per withdrawals sweep: 16,384 (214) Jumlah maksimal akun yang dapat diperiksa dalam satu blok. Hentikan ketika 16 penarikan ditemukan. Jika 16 imbalan yang memenuhi syarat tidak ditemukan di 16.384 akun pertama yang diperiksa, antrean penarikan untuk blok tersebut akan dikirimkan apa adanya, dan pengusul berikutnya akan melanjutkannya.
Total jumlah akun validator (jumlah indeks, setiap akun validator yang pernah didaftarkan, hanya naik seiring waktu)
Total jumlah akun validator yang memenuhi syarat untuk penarikan (bisa bervariasi)
Akun tanpa pembaruan kredensial penarikan akan dilewatkan
Akun yang telah ditarik sepenuhnya dan memiliki saldo nol akan dilewatkan
Akun aktif dengan saldo efektif atau total saldo kurang dari 32 akan dilewatkan
Jumlah ruang kosong (peluang blok yang terlewatkan, bisa bervariasi, biasanya minimal)
Pengaturan waktu ruang lapisan konsensus: 12 detik (tidak ada rencana untuk diubah)
Ini dapat diringkas untuk memperkirakan batas atas berapa lama waktu yang dibutuhkan penyisiran lengkap berdasarkan berapa banyak penarikan yang perlu diproses: