
Bug yang sama, dua hasil berbeda: Telestai, Ravencoin, dan apa yang diwarisi sebuah fork
Kemarin kami menulis tentang bug konsensus Ravencoin — sebuah bidang nHeight tak tervalidasi di header blok yang membuat bukti kerja bisa dipalsukan, dan reorganisasi rantai sedalam tiga hari yang diperlukan untuk membatalkannya.
Cerita itu punya paruh kedua, dan paruh itulah yang lebih berguna. Rantai lain memikul bug yang persis sama di tempat yang persis sama. Bug itu tak pernah dieksploitasi.
Perbedaan antara dua hasil itu layak dipahami, karena ia bukan perbedaan kode.
Telestai mewarisi cacat itu, karena begitulah cara fork bekerja
Telestai adalah fork Ravencoin. Basis kodenya turun dari milik Ravencoin, lewat Meowcoin — catatan rilis Telestai Core 3.0.1 masih mencantumkan «pembersihan sumber Meowcoin» di antara pekerjaan beres-beres, yang menunjukkan betapa barunya garis keturunan itu masih tampak di pohon sumber.
Validasi header Ravencoin tak memeriksa nHeight yang dideklarasikan terhadap posisi sebenarnya blok itu di rantai. Meowcoin juga tidak. Telestai juga tidak. Tak ada yang memasukkan bug itu ke Telestai; ia datang bersama segalanya yang lain, dengan cara sebuah fork mewarisi bagian-bagian basis kode yang tak dilihat siapa pun bersama bagian yang dilihat orang.
Inilah mekanika tak glamor yang membuat satu cacat menjadi masalah beberapa rantai sekaligus. Fork bukan salinan yang menghanyut menuju kemerdekaan. Ia salinan yang memikul seluruh riwayat asumsi induknya — termasuk, dalam kasus ini, asumsi bahwa seseorang sudah memvalidasi bidang itu.
Apa yang Telestai lakukan dengan dua hari pemberitahuan
Eksploitasi Ravencoin diungkap ke publik pada 11 Agustus 2026. Telestai Core 2.1.8 dirilis 13 Agustus, berjudul lugas «Security: KAWPOW nHeight bind».
Catatan rilisnya tak berbasa-basi:
Rilis ini memperbaiki masalah konsensus/DoS KAWPOW di mana bidang header
nHeight(yang memilih epoch ethash) tidak terikat ke rantai. Kelas bug yang sama dieksploitasi di mainnet Ravencoin. Simpul Telestai yang menjalankan versi lama tetap terpapar sampai mereka memutakhirkan.
Perbaikannya sendiri berlapis, dan pelapisan itulah bagian yang menarik:
- Batas epoch absolut ditegakkan seketika, sebelum ada penghitungan hash bukti kerja sama sekali.
- Pengikatan ketat
height == prev + 1aktif di blok 1.100.000 — bergaya soft fork, tanpa menulis ulang sejarah. - Bukti kerja baru dihitung setelah blok induk ditemukan dan ketinggian diverifikasi, yang menutup jalur penghabisan memori di mana sebuah simpul bisa dipaksa mengerjakan hal mahal atas header yang seharusnya ditolak sejak awal.
- Pemeriksaan yang sama berlaku pada
ConnectBlockdanVerifyDB, sehingga simpul yang mengindeks ulang basis datanya tak bisa diam-diam menerima kembali apa yang dilarang aturan baru.
Mainnet berada di sekitar ketinggian 1.057.000 ketika 2.1.8 mendarat. Penegakan disetel pada 1.100.000. Selisih itu — kira-kira 43.000 blok — memang disengaja: cukup landasan bagi bursa, kolam tambang, penjelajah, dan operator simpul untuk memutakhirkan sebelum aturannya menyala, dan tak begitu banyak sampai jendelanya terbuka tanpa batas.
Telestai juga menyebut sumbernya. Catatan rilis menunjuk 2miners/Ravencoin, cabang rvn-nheight-fix — tambalan yang sama, yang lahir dari insiden Ravencoin — dan berterima kasih kepada para peneliti yang mendokumentasikan perbaikan penerimaan header yang lebih menyeluruh. Obatnya menempuh jalur yang sama dengan yang pernah ditempuh bug-nya.
Dua hasil itu, berdampingan
Dua rantai. Satu warisan basis kode. Satu cacat laten yang identik.
Milik Ravencoin ditemukan lebih dulu oleh penyerang. Hasilnya: empat hari blok palsu sebelum pengungkapan publik, bursa menghentikan setoran dan penarikan, harga jatuh sekitar 20%, dan reorganisasi tiga hari untuk mencabut cabang yang teracuni.
Milik Telestai ditemukan dengan membaca laporan insiden orang lain. Hasilnya: tambalan dua hari kemudian, ketinggian aktivasi yang disetel dengan kelonggaran, dan — karena tak ada sejarah tak sah yang perlu dicabut — sama sekali tanpa reorganisasi. Tak ada yang dibatalkan karena tak ada yang perlu dibatalkan.
Itulah seluruh perbedaannya. Bukan kode yang lebih baik. Bukan bug yang berbeda. Hanya siapa yang menyadarinya lebih dulu, dan secepat apa orang-orang yang merawat rantai itu bertindak berdasarkan pekan buruk orang lain.
Lalu Telestai mengganti algoritmanya sekalian
Enam hari setelah tambalan keamanan, Telestai merilis Core 3.0.0, dengan fork di blok 1.150.000 — sekitar 16 Oktober 2026 — menuju Meraki, algoritma bukti kerjanya sendiri. Meraki masih kerabat KAWPOW (turunan Ethash bercita rasa ProgPoW, dan penambangnya lahir sebagai fork kawpowminer), dipromosikan sebagai lebih hemat daya dan terjangkau oleh kartu grafis sederhana.
Perlu hati-hati soal kausalitas di sini, karena menarik garis lurus itu menggoda padahal garisnya tidak lurus. Meraki sudah berjalan sebelum Agustus: build uji coba testnet untuk 3.0.0 dipublikasikan pada 13 dan 14 Agustus, hari yang sama dengan rilis keamanan, dan itu bukan jadwal yang bisa disusun siapa pun dalam empat puluh delapan jam. Pergantian algoritma adalah pekerjaan terencana yang kebetulan mendarat di sebelah sebuah insiden, bukan reaksi terhadapnya.
Ada juga pelajaran kecil di daftar rilis tentang sisi-sisi tak glamor dari merawat sebuah rantai. Di antara perbaikan keamanan dan fork, Telestai merilis 2.1.9 karena alasan yang sama sekali tak berkaitan dengan konsensus: 2.1.8 dibangun terhadap Berkeley DB yang lebih baru, dan membuka wallet.dat lama dengannya bisa menulis ulang log dompet sehingga klien lama tak lagi bisa membaca berkas itu. Maka mereka membangun ulang terhadap Berkeley DB 4.8 dan merilisnya lagi. Rilis keamanan tak banyak gunanya kalau memutakhirkan ke sana justru membahayakan berkas dompet pengguna Anda.
Mengapa ini penting melampaui dua rantai kecil
Kebanyakan yang membaca ini tak memegang RVN maupun TLS. Yang bisa digeneralisasi adalah polanya.
Rantai hasil fork berbagi permukaan bug, dan hampir tak ada yang melacaknya. Litecoin, Dogecoin, Bitcoin Cash, Ravencoin, Zcash, dan puluhan lainnya turun dari Bitcoin Core, dan masing-masing memikul titik perpisahan yang setelahnya perbaikan dari hulu berhenti datang sendiri. Kerentanan yang diungkap di satu rantai adalah pertanyaan terbuka bagi setiap rantai di hilir kode yang sama — dan makin jauh sebuah fork menghanyut, makin banyak kerja yang dibutuhkan sekadar untuk tahu apakah perbaikannya berlaku. Telestai menjawab pertanyaan itu dalam dua hari. Tak setiap fork punya orang yang itu memang tugasnya.
«Tak ada yang mengeksploitasinya» tak sama dengan «bug itu tak ada di sana». Perangkat lunak simpul Telestai rentan sepanjang keberadaannya. Bug-nya nyata selama itu; yang baru hanyalah perhatiannya. Rantai yang tak pernah menerima laporan insiden dari saudaranya tak akan tahu lewat jalan ini.
Perbaikan yang mendarat sebelum eksploitasi nyaris tak berbiaya. Perbaikan yang sama sesudahnya berbiaya satu reorganisasi. Kerja teknis di Telestai 2.1.8 dan di hard fork Ravencoin secara garis besar tambalan yang sama. Yang berbeda adalah segala hal di sekelilingnya: apakah ada sejarah tak sah yang harus dibuang, apakah bursa harus berhenti, apakah konfirmasi pengguna berarti sesuatu selama tiga hari.
Ini penalaran yang sama di balik build yang bisa direproduksi dan penelaahan dependensi: sebagian besar hal yang melindungi Anda berada di hulu dari apa pun yang bisa Anda lihat dari dalam sebuah dompet, dan dirawat oleh orang-orang yang menaruh perhatian atas nama Anda.
Apa artinya ini di SSP
Secara praktis: bagi Anda tak ada yang berubah.
SSP mendukung Ravencoin, dan simpul kami menjalankan 4.8.0 di rantai yang dipulihkan — pada tulisan kemarin kami memverifikasi hash blok di kedua sisi reorganisasi terhadap rantai rujukan. SSP tidak mendukung Telestai, jadi tak ada saldo Telestai di dompet Anda yang perlu dikhawatirkan.
Kami menulis tentang rantai yang tak kami dukung karena kisahnya menggambarkan dengan rapi sesuatu yang justru kami anggap serius. Menjalankan infrastruktur simpul berarti melacak pekerjaan keamanan di hulu untuk setiap rantai yang kami bawa, termasuk yang basis kodenya berbagi leluhur. Nilai dari itu sepenuhnya tak kasatmata ketika berhasil: simpul yang tertambal tampak persis seperti yang tidak tertambal, tepat sampai hari ketika tidak lagi begitu.
Agustus Telestai adalah rupa hal itu dari dalam: seorang perawat proyek membaca soal eksploitasi orang lain, mengenali bentuknya di pohon kodenya sendiri, lalu merilis. Tanpa insiden, tanpa reorganisasi, tanpa pengumuman yang akan diingat siapa pun di luar sana. Hanya nomor versi yang naik.


