Gloria Zhao adalah pengembang Bitcoin Core dan penulis BIP 331 serta BIP 431. Ia berfokus pada mempool, tempat setiap node menyimpan transaksi yang belum dikonfirmasi, serta aturan penerimaan dan penerusannya. Bagian perangkat lunak yang jarang terlihat ini menentukan pembayaran mana yang diketahui node dan disebarkan ke node lain. Pengembangannya meliputi penulisan kode, peninjauan cermat, dan pencarian cara mencegah penyalahgunaan.
Gloria Zhao bergabung dengan Brink pada 4 Januari 2021 sebagai penerima beasiswa pertamanya. Pada 2022 ia menjadi pemelihara Bitcoin Core, salah satu orang yang bertanggung jawab atas kode sumber dan proses pengembangannya. Ini pekerjaan pada perangkat lunak tertentu, bukan pengangkatan sebagai pemimpin Bitcoin. Daftar alumni Brink yang diperiksa untuk revisi ini menyebutnya mantan pemelihara. Jadi, perhatikan tanggal saat membaca biografinya: berita pengangkatan lama tidak membuktikan jabatan seseorang hari ini. [1] [2]
Kode yang baik tetap perlu diperiksa orang lain. Zhao terlibat dalam Bitcoin Core PR Review Club, tempat kontributor baru belajar membaca usulan perubahan dan mempertimbangkan dampaknya. PR, atau pull request, adalah permintaan untuk memasukkan perubahan ke dalam proyek. Klub membantu memahami masalah yang hendak diselesaikan dan cara meninjaunya; tujuan utamanya bukan meloloskan penggabungan PR tertentu. Diskusi mendukung pembelajaran dan persiapan, bukan otomatis menyetujui kode atau sebuah rilis. [2] [3]
Mempool bukan satu antrean yang dipakai bersama oleh seluruh jaringan. Setiap node menentukan transaksi belum terkonfirmasi mana yang diterima dan diteruskan, misalnya berdasarkan biaya dan perlindungan dari beban berlebihan. Inilah kebijakan lokal, berbeda dari aturan konsensus untuk memeriksa keabsahan blok. Zhao menandatangani pernyataan pengembang pada 6 Juni 2025 yang menekankan pilihan perangkat lunak oleh pengguna. Pengembang dapat mengusulkan kebijakan lain, tetapi tanda tangan atau akses pemeliharaan repositori tidak menulis ulang program di semua node orang lain. [4]
Sebuah transaksi bisa membelanjakan dana dari transaksi lain yang belum dikonfirmasi. Transaksi sebelumnya disebut induk, sedangkan yang bergantung padanya disebut anak. BIP 331 dari Zhao mengusulkan Package Relay, pengiriman transaksi terkait sebagai paket. Node akan menyepakati dukungan melalui sendpackages, mengambil informasi tentang transaksi pendahulu yang diperlukan, lalu mengambil data transaksinya. Dengan begitu, node tidak harus bersusah payah mencari setiap mata rantai yang hilang. Dokumen berstatus Draft, yakni rancangan; keberadaannya tidak membuktikan penerapan protokol secara penuh di seluruh jaringan. [5]
Bayangkan menerima pembayaran belum terkonfirmasi dengan biaya terlalu rendah. Jika dapat membelanjakan outputnya, Anda bisa membuat transaksi lanjutan dengan biaya lebih tinggi. Inilah CPFP, Child Pays for Parent: untuk memperoleh biaya anak, penambang harus memasukkan induknya juga, sehingga keduanya dapat dinilai bersama. Namun, node yang tidak mengetahui induk biasanya tidak bisa menerima anak sendirian. BIP 331 menangani hambatan penerusan seperti ini. Biaya lebih tinggi tetap tidak menggantikan tanda tangan dan input yang sah, atau menjamin konfirmasi sebelum tenggat tertentu. [5]
Bitcoin Core 28.0 memperkenalkan prosedur terbatas 1P1C: satu induk dan satu anak. Melalui komunikasi P2P yang sudah ada, yakni pertukaran langsung antarnode, program dapat memasangkan transaksi yang sesuai dan menilainya bersama. Ini perbaikan nyata, tetapi bukan penerapan penuh BIP 331. Catatan rilis secara tegas menyatakan bahwa prosedur jaringan ini tidak mendukung anak dengan beberapa induk belum terkonfirmasi dan belum dapat diandalkan saat diserang. Pengembang dompet yang bergantung pada penerusan perlu membedakan fitur terbatas suatu rilis dari usulan yang lebih luas. [5] [6]
Penyerang bisa memanfaatkan batas mempool untuk mempersulit penggantian transaksi atau kenaikan biayanya. Ini disebut pinning. Kebijakan TRUC membatasi ketergantungan transaksi sebelum konfirmasi agar penerimaan atau penggantiannya lebih mudah dinilai. Bitcoin Core 28.0 memperkenalkannya untuk transaksi dengan nVersion=3. BIP 431 dari Zhao menjelaskan pendekatan ini sebagai dokumen informasional berstatus Draft. Pembatasan transaksi pendahulu dan turunan yang belum dikonfirmasi membantu, tetapi perlindungannya juga bergantung pada adopsi kebijakan oleh node lain. Ini bukan jaminan melawan setiap pinning atau janji masuk ke blok tepat waktu. [6] [7]
Aplikasi dapat mengirimkan paket ke node sendiri melalui submitpackage. Dokumentasi Bitcoin Core 28.0 menjelaskan bahwa perintah melalui antarmuka RPC untuk berkomunikasi dengan node ini memeriksa aturan konsensus dan kebijakan mempool. Transaksi yang lolos pemeriksaan dapat diterima meskipun bagian lain paket gagal. Jadi, kesalahan tidak selalu membatalkan seluruh hasil. Baca pesan umum package_msg sekaligus setiap tx-results. Keberhasilan lokal pun tidak membuktikan paket sudah mencapai seluruh jaringan atau transaksinya sudah masuk ke blok. [8]
Untuk gambaran yang lebih utuh, baca entri ini bersama Mike Hearn, Mempool, Package Relay. Entri ini juga dirujuk dari Package Relay, Mike Hearn, Sergio Demian Lerner.