


Seri: Zero to Zero Knowledge
Frasa pemulihan mnemonik mendasari salah satu aspek terpenting dari mata uang kripto - kustodial mandiri.
Hari ini kita akan mempelajari bagaimana frasa pemulihan dibuat dan digunakan dalam dompet.
Frasa pemulihan ditentukan oleh spesifikasi BIP-39, jenis frasa pemulihan yang paling umum digunakan saat ini.
Pembuatan frasa pemulihan dimulai dengan menghasilkan keacakan. Semakin banyak entropi, semakin tinggi keamanannya. Entropi sebesar 128 bit dianggap cukup bagi sebagian besar pengguna.

Tergantung pada panjang entropi awal, frasa pemulihan akan memiliki panjang 12 hingga 24 kata.
Kita mulai dengan menghasilkan 128 bit entropi.
Kami melakukan hashing pada entropi menggunakan SHA256. Beberapa bit pertama dari hash ini menjadi checksum.
Hal ini memberi kami sidik jari unik untuk entropi kami.

Total 132 bit (128 entropi + 4 checksum) dipisahkan ke dalam potongan berukuran 11 bit.
Setiap urutan 11-bit dikonversi menjadi angka desimal (0-2047).
Wordlist BIP-39 berisi tepat 2048 kata (Bahasa Inggris, Spanyol, Mandarin, dll.).
Angka-angka ini digunakan untuk menemukan kata yang sesuai dalam daftar kata.

Hasil: Sekarang Anda memiliki frasa pemulihan 12 kata yang aman dan dapat dibaca manusia!
Dengan menggunakan frasa pemulihan, sebuah dompet dapat menghasilkan kunci untuk membuat alamat pembayaran dan berbagai akun dompet lainnya.
Kunci yang dihasilkan bersifat deterministik - input yang sama akan selalu menghasilkan output yang sama.
Seed dompet diturunkan dari frasa mnemonik menggunakan Key Derivation Function (KDF):
Ini menghasilkan sebuah frasa pemulihan 64-byte (512-bit).

Seed dibagi menjadi dua urutan 32-byte:
Ini digunakan dalam Dompet Hierarchical Deterministic (HD) untuk derivasi kunci anak.
Di Zcash, viewing authority atau spending authority dapat didelegasikan secara independen untuk sub-tree tanpa mengompromikan master seed.
ZIP-32 mendefinisikan standar pembuatan kunci hierarkis deterministik yang diadaptasi untuk fitur privasi Zcash.
Dari Expanded Spending Key, kita menurunkan:
Mekanisme derivasi yang berbeda menghasilkan alamat eksternal yang sesuai untuk diberikan kepada pengirim di seluruh pool terlindungi (Sapling & Orchard).

Zcash juga mendukung alamat internal untuk operasi dompet seperti Auto-Shielding.
Thread Asli oleh ZecHub (@ZecHub)
https://x.com/ZecHub/status/1624125037945946145
Halaman ini disusun dari utas asli Zero to Zero Knowledge untuk wiki ZecHub.