Electrum 2.0 memperkenalkan cara yang lebih baik untuk menserialisasi transaksi. Metode baru ini memungkinkan pengguna untuk berbagi transaksi yang belum ditandatangani atau ditandatangani sebagian dengan penandatangan lain atau menyimpannya dalam perangkat penyimpanan dingin.
Perubahan utama dalam format serialisasi ini ditemukan dalam input transaksi. Secara khusus, Electrum memperluas fitur pubkey
untuk memasukkan informasi tambahan. Perluasan ini memungkinkan dompet untuk menangani transaksi yang belum sepenuhnya ditandatangani, membuatnya lebih mudah untuk mengelola pengaturan multi-tanda tangan dan operasi penyimpanan dingin.
Kunci Publik yang Diperpanjang
Kunci publik Bitcoin standar dimulai dengan 0x02
, 0x03
atau 0x04
. Ini adalah kunci publik terkompresi atau tidak terkompresi normal yang digunakan dalam transaksi Bitcoin.
Kunci publik yang diperluas dimulai dengan 0xFF
, 0xFE
atau 0xFD
. Electrum menggunakan ini untuk memberikan lebih banyak informasi tentang asal dan jalur turunan kunci.
Ada tiga jenis kunci publik yang diperluas:
- Tombol yang dimulai dengan
0xFF
adalah kunci publik yang diperluas BIP32 (xpubs) dengan jalur turunannya. - Tombol yang dimulai dengan
0xFE
menggunakan metode derivasi lawas Electrum, yang menggabungkan kunci publik utama dan jalur derivasi. - Tombol yang dimulai dengan
0xFD
mewakili kunci publik yang tidak diketahui di mana hanya alamat Bitcoin yang diketahui.
Jenis
- Derivasi BIP32 (dimulai dengan
0xFF
): Format ini terdiri dari kunci publik yang diperluas (xpub) yang panjangnya 78 byte, diikuti oleh jalur derivasi BIP32. Jalur derivasi direpresentasikan sebagai serangkaian bilangan bulat 4-byte, dengan panjang total dua kali lipat dari jumlah langkah derivasi. - Derivasi Electrum Lawas (dimulai dengan
0xFE
): Format yang lebih lama ini menggunakan master public key (mpk) yang panjangnya 64 byte, diikuti dengan nilai turunan 4 byte. Metode ini khusus untuk versi Electrum yang lebih lama. - Hanya Alamat Bitcoin (dimulai dengan
0xFD
): Format ini digunakan ketika kunci publik lengkap tidak tersedia, tetapi kita mengetahui alamat Bitcoin atau hash skrip yang sesuai. Format ini menyimpan hash160 berukuran 20-byte dari skrip keluaran. Format ini mengasumsikan bahwa penanda tangan dapat memberikan kunci publik yang sebenarnya ketika dibutuhkan.
Format yang diperluas ini memungkinkan Electrum untuk menangani berbagai jenis dompet dan metode turunan, mendukung dompet hirarkis berbasis BIP32 modern dan struktur dompet Electrum yang lebih tua. The 0xFD
Format ini juga memberikan fleksibilitas ketika bekerja dengan data transaksi yang diketahui sebagian.
Kunci Publik Standar
Bitcoin menggunakan format tertentu untuk merepresentasikan kunci publik. Format-format ini diakui sebagai standar di seluruh jaringan Bitcoin:
Kunci Publik Terkompresi: Ini dimulai dengan salah satu dari 0x02
atau 0x03
diikuti oleh 32 byte data. Byte awal menunjukkan apakah y
-koordinat titik kunci publik pada kurva elips adalah genap (0x02
) atau ganjil (0x03
).
Kunci Publik yang tidak terkompresi: Ini dimulai dengan 0x04
diikuti oleh 64 byte data. Format ini mencakup kedua format x
dan y
koordinat titik kunci publik pada kurva elips.