Bitcoin Cash: Uang elektronik peer-to-peer untuk dunia

作者 Bitcoin Cash Development Team · 2017

Bitcoin Cash(BCH)于 2017 年 8 月 1 日从 Bitcoin 硬分叉而来。它没有自己的白皮书——本页面所呈现的是 Satoshi Nakamoto 撰写的 Bitcoin 原始白皮书,Bitcoin Cash 以此作为其点对点电子现金愿景的技术基础。

Abstract

Bitcoin Cash是一个于2017年8月1日从比特币区块链分叉而来的点对点电子现金系统。为应对比特币的扩展性限制而诞生的Bitcoin Cash通过提高区块大小上限来实现更高的交易吞吐量和更低的手续费,恢复了比特币作为日常交易实用交换媒介的原始愿景。通过32MB区块、自适应难度调整算法以及持续的协议开发,Bitcoin Cash旨在通过链上扩展来服务于全球点对点现金。

Bitcoin Cash项目源于比特币社区内部关于网络应如何扩展以适应不断增长的需求的根本性分歧。一方主张采用基于SegWit构建的闪电网络等链下扩展方案,另一方则认为提高区块大小上限是最直接且经过验证的扩展方法。当无法达成共识时,后者执行了硬分叉,创建了一条保留比特币交易历史、同时实现更大区块大小上限并排除SegWit的新链。本文描述了Bitcoin Cash的技术规格、设计理念和发展方向。

Abstract

Bitcoin Cash adalah sistem uang elektronik peer-to-peer yang melakukan fork dari blockchain Bitcoin pada 1 Agustus 2017. Diciptakan sebagai respons terhadap keterbatasan skalabilitas Bitcoin, Bitcoin Cash meningkatkan batas ukuran blok untuk memungkinkan throughput transaksi yang lebih tinggi dan biaya yang lebih rendah, memulihkan visi awal Bitcoin sebagai media pertukaran yang praktis untuk transaksi sehari-hari. Dengan blok 32MB, algoritma penyesuaian kesulitan adaptif, dan pengembangan protokol yang berkelanjutan, Bitcoin Cash bertujuan untuk melakukan scaling on-chain agar dapat berfungsi sebagai uang tunai peer-to-peer global.

Proyek Bitcoin Cash lahir dari ketidaksepakatan mendasar di dalam komunitas Bitcoin tentang bagaimana jaringan harus diskalakan untuk mengakomodasi permintaan yang terus bertumbuh. Sementara satu kubu menganjurkan solusi scaling off-chain seperti Lightning Network yang dibangun di atas Segregated Witness (SegWit), kubu lain berpendapat bahwa meningkatkan batas ukuran blok adalah pendekatan scaling yang paling langsung dan terbukti. Ketika konsensus tidak dapat dicapai, kelompok terakhir mengeksekusi hard fork, menciptakan rantai baru yang mempertahankan riwayat transaksi Bitcoin sekaligus menerapkan batas ukuran blok yang lebih besar dan menolak SegWit. Dokumen ini menjelaskan spesifikasi teknis, filosofi desain, dan lintasan pengembangan Bitcoin Cash.

Introduction

中本聪于2008年发表的比特币原始白皮书描述了"一种纯粹的点对点电子现金",将"允许在线支付从一方直接发送给另一方,而无需通过金融机构"。比特币作为日常交易交换媒介的这一愿景是其早期采用和社区发展的核心。早期的比特币支持者经常将低交易手续费和快速支付作为相对于传统金融系统的关键优势加以引用。

然而,随着比特币在2010年代中期日益普及,一个根本性的限制开始制约其作为电子现金的实用性。最初作为临时反垃圾邮件措施引入的1兆字节区块大小限制,为网络可以处理的交易数量设定了人为上限。随着对区块空间需求的增加,用户不得不通过提供更高的交易手续费来竞争有限的容量。到2017年初,比特币的中位交易手续费已上涨至数美元,使小额交易在经济上不切实际。在拥堵高峰期,手续费可超过20美元,交易可能数小时甚至数天未得到确认。

这种情况代表了对比特币原始承诺的根本背离。一个旨在实现点对点电子支付的系统,对于其被创造出来要服务的用例而言正变得过于昂贵和缓慢。当比特币越来越被定位为"数字黄金"——一种价值储存手段而非交换媒介时,许多社区成员和开发者认为这是对项目创始原则的背叛。

Bitcoin Cash的创建正是为了通过最直接的扩展方法——提高区块大小上限来解决这一危机。通过允许每个区块容纳更多交易,Bitcoin Cash旨在恢复低手续费和快速确认,使点对点电子现金再次变得实用。该项目的支持者认为,链上扩展不仅在技术上可行,而且是中本聪最初设想的方法,并引用了中本聪讨论随着网络增长而提高区块大小限制的早期通信作为依据。

2017年8月1日Bitcoin Cash的诞生是加密货币历史上最重要的事件之一。它是比特币历史上第一次因对协议未来方向的真正哲学分歧而引发的重大链分裂。这次分叉表明,在去中心化系统中,不可调和的争端可以通过允许各方独立追求自己的愿景来解决,最终由市场决定结果。

Introduction

Whitepaper Bitcoin asli, yang dipublikasikan oleh Satoshi Nakamoto pada 2008, menggambarkan "versi uang elektronik yang murni peer-to-peer" yang akan "memungkinkan pembayaran online dikirim langsung dari satu pihak ke pihak lain tanpa melalui lembaga keuangan." Visi Bitcoin sebagai media pertukaran untuk transaksi sehari-hari ini menjadi pusat adopsi awal dan pertumbuhan komunitasnya. Para pendukung awal Bitcoin sering menyoroti biaya transaksi yang rendah dan pembayaran yang cepat sebagai keunggulan utama dibanding sistem keuangan tradisional.

Namun, seiring popularitas Bitcoin meningkat pada pertengahan 2010-an, sebuah batasan mendasar mulai membatasi kegunaannya sebagai uang elektronik. Batas ukuran blok satu megabyte, yang awalnya diperkenalkan sebagai langkah anti-spam sementara, menciptakan plafon buatan pada jumlah transaksi yang dapat diproses jaringan. Ketika permintaan ruang blok meningkat, pengguna terpaksa bersaing untuk kapasitas yang terbatas dengan menawarkan biaya transaksi yang lebih tinggi. Pada awal 2017, median biaya transaksi Bitcoin telah naik menjadi beberapa dolar, membuat transaksi bernilai kecil tidak praktis secara ekonomi. Pada periode kemacetan puncak, biaya dapat melampaui dua puluh dolar, dan transaksi dapat tetap tidak terkonfirmasi selama berjam-jam bahkan berhari-hari.

Situasi ini merupakan penyimpangan mendasar dari janji awal Bitcoin. Sistem yang dirancang untuk memungkinkan pembayaran elektronik peer-to-peer menjadi terlalu mahal dan terlalu lambat untuk kasus penggunaan yang justru menjadi tujuannya. Sementara Bitcoin semakin diposisikan sebagai "emas digital" — penyimpan nilai alih-alih media pertukaran — banyak anggota komunitas dan pengembang percaya bahwa ini adalah pengkhianatan terhadap prinsip pendirian proyek.

Bitcoin Cash diciptakan untuk menyelesaikan krisis ini dengan mengambil pendekatan scaling yang paling langsung: meningkatkan batas ukuran blok. Dengan mengizinkan lebih banyak transaksi muat dalam setiap blok, Bitcoin Cash bertujuan memulihkan biaya rendah dan konfirmasi cepat, sehingga uang elektronik peer-to-peer menjadi praktis kembali. Para pendukung proyek berargumen bahwa scaling on-chain bukan hanya layak secara teknis, tetapi juga merupakan pendekatan yang awalnya dibayangkan Satoshi Nakamoto, merujuk pada komunikasi awal di mana Nakamoto membahas peningkatan batas ukuran blok seiring pertumbuhan jaringan.

Pembuatan Bitcoin Cash pada 1 Agustus 2017 adalah salah satu peristiwa paling signifikan dalam sejarah kripto. Peristiwa ini merupakan pemisahan rantai besar pertama dalam sejarah Bitcoin yang didorong oleh perbedaan filosofi yang nyata tentang arah masa depan protokol. Fork tersebut menunjukkan bahwa dalam sistem terdesentralisasi, perselisihan yang tidak dapat diselesaikan bisa diselesaikan dengan memungkinkan setiap kubu mengejar visinya sendiri secara independen, dan pasar pada akhirnya menentukan hasilnya.

Background: The Scaling Debate

比特币扩展性之争是开源软件开发历史上最具争议性和持续时间最长的纷争之一。其核心是一个看似简单的问题:比特币网络应如何提高其交易处理能力?然而,这个问题的答案涉及治理、去中心化、技术哲学以及比特币身份认同本身的根本性问题。

比特币1兆字节的区块大小限制由中本聪于2010年引入,作为防止攻击者用超大区块泛滥网络的拒绝服务攻击的临时措施。当时,实际的区块使用量远低于这一限制,中本聪建议未来可以通过简单的代码更改来提高该限制。然而,随着比特币使用量的增长和区块开始填满,提高限制被证明远比任何人预期的更具争议性。

一个阵营与Bitcoin Core开发团队相关联,主张应保持较小的区块大小以维护去中心化。他们的理由是,更大的区块会增加运行全节点的计算和带宽要求,可能将普通用户排除在外,并使节点运营集中在资源充足的实体手中。他们提出了一条替代性扩展路径:SegWit,一种在不提高名义大小限制的情况下重组交易数据以有效增加区块交易容量的协议变更,结合闪电网络等链下解决方案,将大部分交易移出主区块链。

对立阵营包括知名开发者、矿工和企业,他们主张提高区块大小上限是最简单、最经过验证且最紧迫的解决方案。他们认为1兆字节的限制是一个从未打算成为协议永久特性的任意约束,由此导致的手续费上涨和拥堵正在将用户和商家从比特币中赶走。他们对SegWit的复杂性持怀疑态度,并担心当时仍主要处于理论阶段的闪电网络可能永远无法兑现其廉价即时交易的承诺。

争论通过一系列提案和反提案不断升级。2015年由Mike Hearn和Gavin Andresen提出的Bitcoin XT试图将区块大小增加到8MB。Bitcoin Classic提出了更温和的增加到2MB的方案。Bitcoin Unlimited提出完全取消区块大小限制,允许矿工通过市场动态设定自己的限制。每项提案都引发了激烈的辩论,但没有一项达到无争议硬分叉所需的压倒性共识。

也进行了多次妥协尝试。香港协议(2016年2月)中,Bitcoin Core开发者和矿工同意在部署SegWit后进行2MB硬分叉,但由于硬分叉部分未被推进,协议最终瓦解。纽约协议(2017年5月),也称为SegWit2x,提议立即激活SegWit,随后在六个月内进行2MB硬分叉。该协议由代表比特币大部分算力的50多家公司签署,但遭到Bitcoin Core开发团队和相当一部分用户社区的强烈反对。

当妥协显然不可能时,大区块阵营决定单方面行动。2017年8月1日,他们执行了比特币区块链的硬分叉,创建了初始区块大小上限为8MB的Bitcoin Cash。这不是一个轻率的决定——它需要分裂区块链、网络、社区和品牌。但Bitcoin Cash的支持者们相信这是保护比特币作为点对点电子现金原始愿景的唯一途径。

Background: The Scaling Debate

Perdebatan scaling Bitcoin adalah salah satu perselisihan paling kontroversial dan berkepanjangan dalam sejarah pengembangan perangkat lunak open-source. Inti perdebatan berpusat pada pertanyaan yang tampak sederhana: bagaimana jaringan Bitcoin seharusnya meningkatkan kapasitas pemrosesan transaksinya? Namun jawaban atas pertanyaan itu menyentuh isu mendasar tentang tata kelola, desentralisasi, filosofi teknis, dan identitas Bitcoin itu sendiri.

Batas ukuran blok Bitcoin satu megabyte diperkenalkan oleh Satoshi Nakamoto pada 2010 sebagai langkah sementara untuk mencegah serangan denial-of-service, di mana penyerang dapat membanjiri jaringan dengan blok berukuran besar. Pada saat itu, penggunaan blok nyata jauh di bawah batas ini, dan Nakamoto menyarankan bahwa batas tersebut dapat dinaikkan di masa depan melalui perubahan kode sederhana. Namun, seiring penggunaan Bitcoin tumbuh dan blok mulai terisi, menaikkan batas terbukti jauh lebih kontroversial daripada yang diperkirakan siapa pun.

Satu kubu, yang kemudian diasosiasikan dengan tim pengembangan Bitcoin Core, berargumen bahwa ukuran blok harus tetap kecil untuk menjaga desentralisasi. Alasan mereka: blok yang lebih besar akan meningkatkan kebutuhan komputasi dan bandwidth untuk menjalankan node penuh, sehingga dapat "memprice out" pengguna biasa dan memusatkan operasi node di entitas yang memiliki sumber daya besar. Mereka mengusulkan jalur scaling alternatif: Segregated Witness (SegWit), perubahan protokol yang merestrukturisasi data transaksi untuk meningkatkan kapasitas efektif tanpa menaikkan batas ukuran nominal, dikombinasikan dengan solusi off-chain seperti Lightning Network yang memindahkan sebagian besar transaksi keluar dari blockchain utama.

Kubu yang berlawanan, yang mencakup pengembang, penambang, dan bisnis terkemuka, berpendapat bahwa menaikkan batas ukuran blok adalah solusi yang paling sederhana, paling terbukti, dan paling mendesak. Mereka menyatakan bahwa batas satu megabyte adalah pembatasan arbitrer yang tidak pernah dimaksudkan sebagai fitur permanen protokol, dan bahwa kenaikan biaya serta kemacetan yang dihasilkan mendorong pengguna dan pedagang menjauh dari Bitcoin. Mereka skeptis terhadap kompleksitas SegWit dan khawatir bahwa Lightning Network, yang pada saat itu masih sebagian besar teoretis, mungkin tidak pernah memenuhi janji transaksi murah dan instan.

Perdebatan meningkat melalui serangkaian proposal dan kontra-proposal. Bitcoin XT, yang diusulkan oleh Mike Hearn dan Gavin Andresen pada 2015, berupaya menaikkan ukuran blok menjadi 8MB. Bitcoin Classic mengusulkan kenaikan yang lebih moderat menjadi 2MB. Bitcoin Unlimited mengusulkan penghapusan batas ukuran blok sepenuhnya, membiarkan penambang menetapkan batasnya sendiri melalui dinamika pasar. Setiap proposal memicu perdebatan sengit dan tidak ada yang mencapai konsensus luar biasa yang dibutuhkan untuk hard fork yang tidak kontroversial.

Beberapa upaya kompromi dilakukan. Hong Kong Agreement (Februari 2016) membuat pengembang Bitcoin Core dan penambang sepakat menerapkan SegWit lalu hard fork ke 2MB, namun kesepakatan itu runtuh ketika komponen hard fork tidak dilanjutkan. New York Agreement (Mei 2017), juga dikenal sebagai SegWit2x, mengusulkan aktivasi SegWit segera diikuti hard fork 2MB dalam enam bulan. Kesepakatan ini ditandatangani oleh lebih dari lima puluh perusahaan yang mewakili mayoritas hash power Bitcoin, tetapi ditentang keras oleh tim pengembangan Bitcoin Core dan sebagian signifikan komunitas pengguna.

Ketika menjadi jelas bahwa kompromi tidak mungkin, kubu big-block memutuskan bertindak secara sepihak. Pada 1 Agustus 2017, mereka mengeksekusi hard fork blockchain Bitcoin, menciptakan Bitcoin Cash dengan batas ukuran blok awal 8MB. Keputusan ini tidak diambil dengan ringan — ia memerlukan pemisahan blockchain, jaringan, komunitas, dan merek. Namun para pendukung Bitcoin Cash percaya bahwa itu adalah satu-satunya cara untuk mempertahankan visi asli Bitcoin sebagai uang elektronik peer-to-peer.

The Fork

Bitcoin Cash硬分叉于2017年8月1日在区块高度478,558处执行。在该节点,比特币区块链分裂为两条独立的链:随着SegWit激活而延续的原始链比特币(BTC),以及区块大小上限增加至8MB的新链Bitcoin Cash(BCH)。

分叉在技术上是干净且精心计划的。在分叉时持有余额的每个比特币地址在两条链上都收到了相同的余额。如果用户在分叉前持有1 BTC,分叉后他们将在比特币链上拥有1 BTC,在Bitcoin Cash链上拥有1 BCH。区块478,558之前的全部交易历史由两条链共享。

分叉面临的关键技术挑战之一是实现重放保护。在没有重放保护的情况下,在一条链上广播的交易可能在另一条链上被重放,可能导致用户无意中在两条链上花费代币。Bitcoin Cash通过修改交易签名算法实现了强重放保护。具体来说,Bitcoin Cash引入了一个新的SigHash标志(SIGHASH_FORKID),该标志包含在每个交易签名的哈希中。使用此标志签名的交易在Bitcoin Cash链上有效但在比特币链上无效,反之亦然。这确保了从分叉时刻起两个网络之间的干净分离。

Bitcoin Cash的初始区块大小上限设为8MB,是比特币1MB限制的八倍。这代表了链上交易容量的显著提升,使Bitcoin Cash能够在保持低手续费的同时处理每个区块中更多的交易。分叉后的第一个Bitcoin Cash区块由ViaBTC矿池挖出,大小约为1.9MB,展示了更大区块大小的即时实际效益。

分叉还移除了在比特币链上已激活的SegWit。Bitcoin Cash开发者出于多种原因拒绝了SegWit:他们认为它给协议引入了不必要的复杂性,创建了具有不同手续费结构的双层交易系统,并以他们认为破坏UTXO模型简洁性的方式修改了区块结构。通过选择直接的区块大小增加,Bitcoin Cash维持了更简单、更传统的类比特币协议架构。

分叉后,两条链都不得不应对难度调整的挑战。Bitcoin Cash最初使用与比特币链相同的SHA-256难度,但投入挖矿的算力大幅减少。为防止区块被极其缓慢挖出的情况,Bitcoin Cash实施了紧急难度调整(EDA)机制,如果在12小时内挖出的区块少于6个,难度将降低20%。虽然这一机制成功地在关键的早期阶段维持了链的运行,但事实证明它是不稳定的,导致矿工根据盈利能力在比特币和Bitcoin Cash之间切换时,区块生产时间和算力出现剧烈波动。EDA在2017年11月被基于前144个区块移动平均值的更稳定的难度调整算法所取代。

分叉在更广泛的加密货币社区中引发了重大争议。批评者认为Bitcoin Cash是对比特币品牌的不正当侵占尝试,而支持者则坚持认为它是比特币原始路线图的合法延续。交易所和服务提供商不得不迅速决定是否支持新链以及如何将分叉代币分配给客户。尽管存在争议,Bitcoin Cash迅速确立了自己作为可行且活跃使用的加密货币的地位,在分叉后数月内实现了显著的交易量和商户采用。

The Fork

Hard fork Bitcoin Cash dieksekusi pada 1 Agustus 2017, pada ketinggian blok 478.558. Pada titik tersebut, blockchain Bitcoin terpecah menjadi dua rantai terpisah: rantai asli yang berlanjut sebagai Bitcoin (BTC) dengan aktivasi SegWit, dan rantai baru yang menjadi Bitcoin Cash (BCH) dengan batas ukuran blok yang ditingkatkan menjadi 8MB.

Fork tersebut secara teknis bersih dan direncanakan dengan baik. Setiap alamat Bitcoin yang memiliki saldo pada saat fork menerima saldo identik di kedua rantai. Jika seorang pengguna memiliki 1 BTC sebelum fork, ia akan memiliki 1 BTC di rantai Bitcoin dan 1 BCH di rantai Bitcoin Cash setelah fork. Seluruh riwayat transaksi sebelum blok 478.558 dibagikan oleh kedua rantai.

Salah satu tantangan teknis kritis dari fork adalah menerapkan replay protection. Tanpa replay protection, transaksi yang disiarkan pada satu rantai dapat "diulang" pada rantai lain, berpotensi membuat pengguna secara tidak sengaja membelanjakan koin di kedua rantai. Bitcoin Cash menerapkan replay protection yang kuat dengan memodifikasi algoritma penandatanganan transaksi. Secara spesifik, Bitcoin Cash memperkenalkan flag SigHash baru (SIGHASH_FORKID) yang disertakan dalam hash setiap tanda tangan transaksi. Transaksi yang ditandatangani dengan flag ini valid di rantai Bitcoin Cash tetapi tidak valid di rantai Bitcoin, dan sebaliknya. Ini memastikan pemisahan yang bersih antara kedua jaringan sejak saat fork.

Batas ukuran blok awal untuk Bitcoin Cash ditetapkan pada 8MB, delapan kali lebih besar dari batas 1MB Bitcoin. Ini merupakan peningkatan signifikan pada kapasitas transaksi on-chain, memungkinkan Bitcoin Cash memproses jauh lebih banyak transaksi per blok sambil mempertahankan biaya rendah. Blok Bitcoin Cash pertama setelah fork ditambang oleh pool penambangan ViaBTC dan berukuran sekitar 1,9MB, menunjukkan manfaat praktis langsung dari ukuran blok yang lebih besar.

Fork tersebut juga menghapus SegWit yang telah diaktifkan pada rantai Bitcoin. Para pengembang Bitcoin Cash menolak SegWit karena beberapa alasan: mereka percaya SegWit menambahkan kompleksitas yang tidak perlu, menciptakan sistem transaksi dua tingkat dengan struktur biaya yang berbeda, dan memodifikasi struktur blok dengan cara yang menurut mereka melemahkan kesederhanaan model UTXO. Dengan memilih peningkatan ukuran blok yang langsung, Bitcoin Cash mempertahankan arsitektur protokol yang lebih sederhana dan lebih tradisional seperti Bitcoin.

Setelah fork, kedua rantai harus menghadapi tantangan penyesuaian kesulitan. Bitcoin Cash pada awalnya menggunakan kesulitan SHA-256 yang sama dari rantai Bitcoin, tetapi dengan hash power yang jauh lebih sedikit yang didedikasikan untuk menambangnya. Untuk mencegah skenario blok ditambang sangat lambat, Bitcoin Cash menerapkan mekanisme Emergency Difficulty Adjustment (EDA) yang menurunkan kesulitan sebesar 20 persen jika kurang dari 6 blok ditambang dalam periode 12 jam. Mekanisme ini berhasil menjaga rantai tetap hidup pada periode awal yang kritis, tetapi terbukti tidak stabil, menyebabkan osilasi liar pada waktu produksi blok dan hash rate ketika penambang beralih antara Bitcoin dan Bitcoin Cash berdasarkan profitabilitas. EDA diganti pada November 2017 dengan algoritma penyesuaian kesulitan yang lebih stabil, berbasis rata-rata bergerak dari 144 blok sebelumnya.

Fork tersebut disambut dengan kontroversi signifikan di komunitas kripto yang lebih luas. Para kritikus menyatakan bahwa Bitcoin Cash adalah upaya tidak sah untuk membajak merek Bitcoin, sementara para pendukung mempertahankan bahwa itu adalah kelanjutan yang sah dari roadmap asli Bitcoin. Bursa dan penyedia layanan harus mengambil keputusan cepat tentang apakah akan mendukung rantai baru dan bagaimana menangani distribusi koin hasil fork kepada pelanggan mereka. Terlepas dari kontroversi, Bitcoin Cash dengan cepat memantapkan dirinya sebagai mata uang kripto yang layak dan aktif digunakan, mencapai volume perdagangan yang signifikan dan adopsi pedagang dalam bulan-bulan setelah fork.

Technical Specifications

Bitcoin Cash与比特币共享基本技术架构,包括SHA-256工作量证明共识机制、UTXO交易模型、用于数字签名的secp256k1椭圆曲线,以及十分钟的目标出块间隔。然而,若干关键修改使其区别于比特币协议。

最显著的区别是区块大小上限。Bitcoin Cash以8MB区块大小上限启动,随后于2018年5月将其提高至32MB。这一32MB上限提供的交易容量约为比特币有效1MB非SegWit区块大小的32倍(或比特币SegWit增强后有效上限约4MB的约8倍)。更大的区块大小是Bitcoin Cash链上扩展哲学的基石,在区块持续满载时不会产生手续费压力的情况下,为交易增长提供充足空间。

Bitcoin Cash不实现SegWit。与SegWit将见证数据从交易数据中分离不同,Bitcoin Cash保持了原始的比特币交易格式。包括签名在内的所有交易数据都以传统方式存储在区块内。这简化了协议并保持了与旧版比特币软件和基础设施的向后兼容性。

Bitcoin Cash的一项重要协议改进是在分叉时引入的改进SigHash算法。这一基于BIP 143(最初为SegWit开发)的新算法修复了原始比特币签名验证方案中存在的二次哈希问题。在原始方案中,验证交易签名的计算成本随输入数量呈二次增长,造成了潜在的拒绝服务攻击向量。新的SigHash算法使验证成本变为线性,使网络能够安全地处理更大、更复杂的交易。

与比特币相比,Bitcoin Cash支持更大的最大交易大小和每个区块更多的签名操作(sigops)。sigops限制按区块大小比例调整,确保区块验证的计算成本保持在限度内,同时允许每个区块处理显著更多的交易。

Bitcoin Cash的脚本系统已经超越了比特币相对保守的方法进行了积极开发。Bitcoin Cash已重新启用并引入了多个扩展脚本语言表达能力的操作码。值得注意的新增内容包括OP_CHECKDATASIG和OP_CHECKDATASIGVERIFY,它们允许交易脚本验证针对任意数据(而不仅仅是交易数据)的签名,从而实现基于预言机的智能合约和其他高级脚本模式。OP_REVERSEBYTES操作码、原生内省操作码以及更大的脚本和堆栈限制进一步增强了Bitcoin Cash的可编程性。

Bitcoin Cash使用与比特币相同的地址格式基础,但于2018年1月采用了CashAddr格式以防止混淆和跨链发送错误。CashAddr地址以"bitcoincash:"作为前缀(哈希部分通常缩写为"q"或"p"),使用与比特币的base58check格式不同的编码方案。这种视觉区分立即明确了地址属于比特币还是Bitcoin Cash,降低了用户不小心将代币发送到错误链的风险。

网络在8333端口运行,这是与比特币相同的默认端口,但Bitcoin Cash节点在协议握手中使用不同的网络魔数来标识自身。这意味着尽管使用相同的端口,比特币和Bitcoin Cash节点不会意外地相互连接。

Technical Specifications

Bitcoin Cash berbagi arsitektur teknis fundamental Bitcoin, termasuk mekanisme konsensus proof-of-work SHA-256, model transaksi UTXO, kurva eliptik secp256k1 untuk tanda tangan digital, dan interval blok target sepuluh menit. Namun, beberapa modifikasi kunci membedakannya dari protokol Bitcoin.

Perbedaan yang paling menonjol adalah batas ukuran blok. Bitcoin Cash diluncurkan dengan batas ukuran blok 8MB dan kemudian meningkatkannya menjadi 32MB pada Mei 2018. Batas 32MB ini menyediakan sekitar 32 kali kapasitas transaksi dari ukuran blok efektif 1MB Bitcoin tanpa SegWit (atau kira-kira 8 kali kapasitas dari batas efektif Bitcoin yang ditingkatkan oleh SegWit sekitar 4MB). Ukuran blok yang lebih besar merupakan landasan filosofi scaling on-chain Bitcoin Cash, menyediakan ruang yang luas untuk pertumbuhan transaksi tanpa tekanan biaya yang muncul ketika blok secara konsisten penuh.

Bitcoin Cash tidak mengimplementasikan Segregated Witness (SegWit). Alih-alih memisahkan data witness dari data transaksi seperti pada SegWit, Bitcoin Cash mempertahankan format transaksi Bitcoin asli. Semua data transaksi, termasuk tanda tangan, disimpan di dalam blok dengan cara tradisional. Hal ini menyederhanakan protokol dan mempertahankan kompatibilitas mundur dengan perangkat lunak dan infrastruktur Bitcoin yang lebih lama.

Peningkatan protokol penting di Bitcoin Cash adalah algoritma SigHash yang diperbaiki, diperkenalkan pada saat fork. Algoritma baru ini, yang berbasis BIP 143 (awalnya dikembangkan untuk SegWit), memperbaiki masalah hashing kuadratik yang ada dalam skema verifikasi tanda tangan Bitcoin asli. Dalam skema asli, biaya komputasi untuk memverifikasi tanda tangan transaksi tumbuh secara kuadratik dengan jumlah input, menciptakan vektor serangan denial-of-service potensial. Algoritma SigHash baru membuat biaya verifikasi menjadi linear, memungkinkan jaringan memproses transaksi yang lebih besar dan lebih kompleks dengan aman.

Bitcoin Cash mendukung ukuran transaksi maksimum yang lebih besar dan jumlah operasi tanda tangan (sigops) yang lebih banyak per blok dibanding Bitcoin. Batas sigops diskalakan secara proporsional dengan ukuran blok, memastikan biaya komputasi validasi blok tetap terbatas sambil tetap memungkinkan lebih banyak transaksi per blok.

Sistem scripting di Bitcoin Cash dikembangkan secara aktif melampaui pendekatan Bitcoin yang relatif konservatif. Bitcoin Cash telah mengaktifkan kembali dan memperkenalkan beberapa opcode yang memperluas kemampuan ekspresif bahasa scripting-nya. Penambahan penting mencakup OP_CHECKDATASIG dan OP_CHECKDATASIGVERIFY, yang memungkinkan skrip memverifikasi tanda tangan terhadap data arbitrer (bukan hanya data transaksi), sehingga memungkinkan smart contract berbasis oracle dan pola scripting lanjutan lainnya. Opcode OP_REVERSEBYTES, opcode introspeksi native, serta batas script dan stack yang lebih besar semakin meningkatkan kemampuan pemrograman Bitcoin Cash.

Bitcoin Cash menggunakan fondasi format alamat yang sama dengan Bitcoin, tetapi mengadopsi format CashAddr pada Januari 2018 untuk mencegah kebingungan dan kesalahan pengiriman lintas rantai. Alamat CashAddr diawali dengan prefix "bitcoincash:" (sering dipendekkan menjadi "q" atau "p" pada bagian hash) dan menggunakan skema encoding yang berbeda dari format base58check Bitcoin. Perbedaan visual ini membuatnya segera jelas apakah sebuah alamat milik Bitcoin atau Bitcoin Cash, mengurangi risiko pengguna secara tidak sengaja mengirim koin ke rantai yang salah.

Jaringan beroperasi pada port 8333, sama seperti port default Bitcoin, meskipun node Bitcoin Cash mengidentifikasi diri mereka dengan network magic number yang berbeda dalam handshake protokol. Ini berarti node Bitcoin dan Bitcoin Cash tidak akan secara tidak sengaja terhubung satu sama lain meskipun menggunakan port yang sama.

Transaction Throughput and Scalability

交易吞吐量和可扩展性是Bitcoin Cash价值主张的核心。该项目的基本论点是,点对点电子现金必须能够快速且低成本地处理交易才能在日常使用中可行,而通过更大区块进行链上扩展是实现这一目标最可靠的方式。

凭借32MB区块大小上限和十分钟的出块间隔,Bitcoin Cash的理论最大吞吐量约为每秒100笔交易,具体取决于平均交易大小。与比特币在1MB区块下每秒约7笔交易的理论最大值相比,这是一个显著的提升。实际吞吐量取决于交易类型和大小的组合,但Bitcoin Cash的容量对于其当前交易量而言绰绰有余,区块通常远低于32MB上限。

充裕的可用区块空间对交易手续费产生直接且可衡量的影响。当区块未满时,不存在手续费竞争,交易可以以最低手续费得到确认。Bitcoin Cash的默认最低中继手续费为每字节1聪(1聪 = 0.00000001 BCH),大多数交易以该最低值或接近该最低值在下一个区块中得到确认。这使得Bitcoin Cash交易在正常条件下的成本不到一美分,与比特币在拥堵期间可能从数美元到数十美元的手续费形成鲜明对比。

Bitcoin Cash开发社区对链上扩展的极限进行了广泛的研究和测试。2017-2018年进行的千兆区块测试网计划证明,在适当的软件优化和现代硬件条件下,比特币协议可以处理1GB甚至更大的区块。这些测试识别出了原始代码库中的几个瓶颈——包括区块传播、交易验证和UTXO集管理——并为后续的优化工作提供了信息。

为支持更大的区块,已进行了若干协议和实现改进。Graphene是一种基于可逆布隆查找表和布隆过滤器的区块传播协议,通过仅编码区块与接收节点内存池中已有交易的差异,大幅降低了区块传播所需的带宽。2018年11月实施的规范交易排序(CTOR)要求区块内的交易按交易ID排序。这一看似微小的变更实现了交易的并行验证和更高效的集合协调算法,在区块验证和传播方面带来了显著优化。

UTXO承诺和并行验证计划进一步提升了网络高效处理大区块的能力。通过利用现代多核处理器和固态存储,优化的节点实现可以在可接受的时间范围内验证包含数万笔交易的区块。

Bitcoin Cash的可扩展性路线图设想在技术和需求允许的情况下进一步提高区块大小上限。项目开发者已表达了完全在链上支持全球规模支付量的长期目标,目标是使Bitcoin Cash能够处理每天数十亿笔交易的吞吐量水平。虽然这一目标雄心勃勃,但硬件性能、网络带宽和软件优化的持续改进为逐步实现它提供了可信的路径。

Bitcoin Cash扩展方法的一个重要方面是"零确认"交易的概念。对于小额支付,商户可以在交易被纳入区块之前的广播时立即接受交易。Bitcoin Cash已实施了多项措施来提高零确认交易的可靠性,包括"首次发现"规则(节点仅中继他们首次看到的交易版本,使双花尝试更加困难)和双花通知协议(如果检测到冲突交易,则向商户发出警报)。这些措施使Bitcoin Cash在等待十分钟区块确认不切实际的销售点交易中变得实用。

Transaction Throughput and Scalability

Throughput transaksi dan skalabilitas adalah pusat dari proposisi nilai Bitcoin Cash. Tesis fundamental proyek ini adalah bahwa uang elektronik peer-to-peer harus mampu memproses transaksi dengan cepat dan murah agar layak untuk penggunaan sehari-hari, dan bahwa scaling on-chain melalui blok yang lebih besar adalah cara paling dapat diandalkan untuk mencapainya.

Dengan batas ukuran blok 32MB dan interval blok sepuluh menit, Bitcoin Cash memiliki throughput maksimum teoretis sekitar 100 transaksi per detik, tergantung pada ukuran transaksi rata-rata. Ini merupakan peningkatan substansial dibanding throughput maksimum teoretis Bitcoin sekitar 7 transaksi per detik dengan blok 1MB. Dalam praktiknya, throughput aktual bergantung pada campuran jenis dan ukuran transaksi, tetapi kapasitas Bitcoin Cash jauh lebih dari cukup untuk volume transaksi saat ini, dengan blok yang biasanya jauh di bawah batas 32MB.

Kelimpahan ruang blok yang tersedia berdampak langsung dan terukur pada biaya transaksi. Ketika blok tidak penuh, tidak ada kompetisi biaya, dan transaksi dapat dikonfirmasi dengan biaya minimal. Minimum relay fee default Bitcoin Cash adalah 1 satoshi per byte (di mana 1 satoshi = 0.00000001 BCH), dan sebagian besar transaksi dikonfirmasi dalam blok berikutnya pada atau dekat minimum ini. Ini membuat transaksi Bitcoin Cash berbiaya pecahan sen dalam kondisi normal, dibanding biaya Bitcoin yang dapat berkisar dari beberapa dolar hingga puluhan dolar selama periode kemacetan.

Komunitas pengembangan Bitcoin Cash telah melakukan penelitian dan pengujian luas pada batas scaling on-chain. Gigablock Testnet Initiative (2017-2018) menunjukkan bahwa protokol Bitcoin dapat menangani blok 1GB atau lebih dengan optimisasi perangkat lunak yang tepat dan perangkat keras modern. Pengujian ini mengidentifikasi beberapa bottleneck dalam codebase asli — termasuk propagasi blok, validasi transaksi, dan manajemen set UTXO — dan menginformasikan upaya optimisasi berikutnya.

Beberapa perbaikan protokol dan implementasi telah dilakukan untuk mendukung blok yang lebih besar. Graphene, sebuah protokol propagasi blok berbasis invertible Bloom lookup tables dan Bloom filter, secara dramatis mengurangi bandwidth yang diperlukan untuk menyebarkan blok dengan mengenkode hanya perbedaan antara blok dan transaksi yang sudah dimiliki node penerima di mempool-nya. Canonical Transaction Ordering (CTOR), diimplementasikan pada November 2018, mengharuskan transaksi di dalam blok diurutkan berdasarkan transaction ID. Perubahan yang tampak kecil ini memungkinkan optimisasi signifikan dalam validasi dan propagasi blok, karena memungkinkan validasi paralel dan algoritma rekonsiliasi set yang lebih efisien.

Inisiatif UTXO commitment dan parallel validation semakin meningkatkan kemampuan jaringan untuk menangani blok besar secara efisien. Dengan memanfaatkan prosesor multi-core modern dan penyimpanan solid-state, implementasi node yang dioptimalkan dapat memvalidasi blok berisi puluhan ribu transaksi dalam waktu yang dapat diterima.

Roadmap skalabilitas Bitcoin Cash membayangkan peningkatan batas ukuran blok lebih lanjut seiring kemajuan teknologi dan kebutuhan permintaan. Pengembang proyek menyatakan tujuan jangka panjang untuk mendukung volume pembayaran skala global sepenuhnya on-chain, menargetkan throughput yang memungkinkan Bitcoin Cash melayani miliaran transaksi harian. Walaupun tujuan ini ambisius, peningkatan berkelanjutan pada kemampuan perangkat keras, bandwidth jaringan, dan optimisasi perangkat lunak memberikan jalur yang kredibel untuk mencapainya secara bertahap dari waktu ke waktu.

Aspek penting dari pendekatan scaling Bitcoin Cash adalah konsep transaksi "zero-confirmation". Untuk pembayaran bernilai rendah, pedagang dapat menerima transaksi segera setelah disiarkan, sebelum dimasukkan ke dalam blok. Bitcoin Cash menerapkan beberapa langkah untuk meningkatkan keandalan transaksi zero-confirmation, termasuk aturan "first-seen" (di mana node hanya meneruskan versi pertama transaksi yang mereka lihat, membuat upaya double-spend lebih sulit) dan protokol notifikasi double-spend yang memperingatkan pedagang jika transaksi yang bertentangan terdeteksi. Langkah-langkah ini membuat Bitcoin Cash praktis untuk transaksi point-of-sale di mana menunggu sepuluh menit untuk konfirmasi blok tidak realistis.

OP_RETURN and Data Applications

Bitcoin Cash支持OP_RETURN操作码,允许用户在可证明不可花费的交易输出中将任意数据嵌入区块链。此功能支持在Bitcoin Cash区块链上构建的一系列以数据为中心的应用,包括代币协议、消息系统、公证服务和社交媒体平台。

Bitcoin Cash的OP_RETURN数据限制设定为每个输出220字节,远大于比特币的80字节限制。此外,Bitcoin Cash允许在单笔交易中包含多个OP_RETURN输出,进一步扩大了可嵌入单笔交易的数据量。这些宽裕的限制结合低交易手续费,使Bitcoin Cash成为在容量更受限的链上成本过高的数据应用的经济可行平台。

Simple Ledger Protocol(SLP)是使用OP_RETURN在Bitcoin Cash上构建的最早且被广泛采用的代币系统之一。SLP允许用户通过在OP_RETURN输出中编码代币元数据,在Bitcoin Cash区块链上创建和转移自定义代币。虽然SLP已在很大程度上被CashTokens协议取代,但它证明了在UTXO模型上构建代币经济的可行性。

2023年5月激活的CashTokens代表了Bitcoin Cash上代币化的更精细方法。与依赖基础协议可以忽略的OP_RETURN元数据的SLP不同,CashTokens是一个共识级功能,将代币直接整合到UTXO模型中。每个UTXO可以同时携带BCH价值和关联的代币,代币有效性由共识规则强制执行。CashTokens支持两种类型的代币:同质化代币(类似于以太坊上的ERC-20代币)和非同质化代币(NFT)。共识级强制执行意味着代币交易具有与原生BCH交易相同的安全保障,消除了SLP等覆盖协议的信任假设和索引要求。

Memo.cash是一个使用OP_RETURN交易在Bitcoin Cash上构建的去中心化社交媒体协议。用户将帖子、关注、点赞和其他社交行为作为包含编码OP_RETURN数据的Bitcoin Cash交易进行广播。由于数据存储在区块链上,它具有抗审查性并被永久存档。Bitcoin Cash的低交易成本使这在经济上可行——每个社交媒体操作的成本不到一美分。

Bitcoin Cash上的其他数据应用包括文档时间戳和公证服务,其中文档的哈希被嵌入OP_RETURN输出中,创建该文档在特定时间点存在的永久且防篡改的记录。供应链追踪、凭证验证和去中心化身份系统也已使用Bitcoin Cash的数据嵌入功能构建。

大容量OP_RETURN、低手续费和快速确认时间的结合使Bitcoin Cash成为基于区块链的数据应用的有竞争力的平台。虽然存在专用数据区块链,但Bitcoin Cash提供了一个成熟的、高度安全的、广泛支持的网络的优势,拥有经过验证的持续运营记录。

OP_RETURN and Data Applications

Bitcoin Cash mendukung opcode OP_RETURN, yang memungkinkan pengguna menyematkan data arbitrer ke dalam blockchain di dalam output transaksi yang terbukti tidak dapat dibelanjakan. Fitur ini memungkinkan berbagai aplikasi berorientasi data yang dibangun di atas blockchain Bitcoin Cash, termasuk protokol token, sistem pesan, layanan notarization, dan platform media sosial.

Batas data OP_RETURN pada Bitcoin Cash ditetapkan pada 220 byte per output, jauh lebih besar daripada batas 80 byte Bitcoin. Selain itu, Bitcoin Cash mengizinkan beberapa output OP_RETURN dalam satu transaksi, semakin memperluas jumlah data yang dapat disematkan. Batas yang longgar ini, dikombinasikan dengan biaya transaksi rendah, menjadikan Bitcoin Cash platform yang layak secara ekonomi untuk aplikasi data yang akan menjadi terlalu mahal pada rantai dengan kapasitas yang lebih ketat.

Simple Ledger Protocol (SLP) adalah salah satu sistem token paling awal dan paling banyak diadopsi yang dibangun di atas Bitcoin Cash menggunakan OP_RETURN. SLP memungkinkan pengguna membuat dan mentransfer token kustom di blockchain Bitcoin Cash dengan mengenkode metadata token dalam output OP_RETURN. Walaupun SLP kini sebagian besar digantikan oleh protokol CashTokens, ia menunjukkan kelayakan membangun ekonomi token di atas model UTXO.

CashTokens, diaktifkan pada Mei 2023, mewakili pendekatan tokenisasi yang lebih canggih di Bitcoin Cash. Tidak seperti SLP, yang mengandalkan metadata OP_RETURN yang dapat diabaikan oleh protokol dasar, CashTokens adalah fitur tingkat konsensus yang mengintegrasikan token secara langsung ke dalam model UTXO. Setiap UTXO dapat membawa nilai BCH dan token terkait, dengan validitas token ditegakkan oleh aturan konsensus. CashTokens mendukung dua jenis token: token fungible dan token non-fungible (NFT). Penegakan tingkat konsensus berarti transaksi token memiliki jaminan keamanan yang sama dengan transaksi BCH asli, menghilangkan asumsi kepercayaan dan kebutuhan indexing overlay seperti pada SLP.

Memo.cash adalah protokol media sosial terdesentralisasi yang dibangun di atas Bitcoin Cash menggunakan transaksi OP_RETURN. Pengguna menyiarkan posting, follow, like, dan tindakan sosial lainnya sebagai transaksi Bitcoin Cash dengan data OP_RETURN yang dienkode. Karena data disimpan di blockchain, ia tahan sensor dan tersimpan permanen. Biaya transaksi yang rendah di Bitcoin Cash membuat ini layak secara ekonomi — setiap tindakan media sosial berbiaya pecahan sen.

Aplikasi data lain mencakup layanan timestamping dan notarization dokumen, di mana hash dokumen disematkan dalam output OP_RETURN untuk menciptakan catatan permanen dan tahan manipulasi tentang keberadaan dokumen pada titik waktu tertentu. Pelacakan rantai pasokan, verifikasi kredensial, dan sistem identitas terdesentralisasi juga dibangun menggunakan kemampuan penyematan data Bitcoin Cash.

Kombinasi kapasitas OP_RETURN besar, biaya rendah, dan waktu konfirmasi cepat memposisikan Bitcoin Cash sebagai platform yang kompetitif untuk aplikasi data berbasis blockchain. Walaupun ada blockchain yang dirancang khusus untuk data, Bitcoin Cash menawarkan keuntungan berupa jaringan yang mapan, sangat aman, didukung luas, dan memiliki rekam jejak operasi berkelanjutan yang terbukti.

Network Architecture

Bitcoin Cash网络在与比特币相同的基本点对点架构上运行,节点通过八卦协议进行通信以传播交易和区块。全节点维护区块链的完整副本,并根据共识规则独立验证所有交易和区块。网络是无许可的,意味着任何人都可以无需授权即可运行节点并参与网络。

Bitcoin Cash存在多个独立的全节点实现,反映了该项目对去中心化开发的承诺。Bitcoin Cash Node(BCHN)是最广泛使用的实现,充当事实上的参考客户端。其他实现包括Bitcoin Unlimited、BCHD(用Go编写)和Knuth(高性能C++实现)。多个独立实现的存在降低了单一软件错误导致全网故障的风险,并确保没有任何一个开发团队能够单方面控制协议。

Bitcoin Cash挖矿使用与比特币相同的SHA-256工作量证明算法。这意味着相同的ASIC挖矿硬件可以用于挖掘任一链,矿工可以根据盈利能力在比特币和Bitcoin Cash之间切换。实际上,Bitcoin Cash的算力只是比特币的一小部分,因为大部分SHA-256挖矿算力被投入到更有利可图的比特币链上。然而,Bitcoin Cash的难度调整算法确保无论绝对算力水平如何,都能以目标十分钟间隔产生区块。

难度调整算法是Bitcoin Cash最重要的协议组件之一。原始比特币的难度调整每2016个区块(约两周)重新计算一次,对于矿工在比特币和Bitcoin Cash之间切换时所经历的快速算力波动来说过于缓慢。在2017年存在问题的紧急难度调整(EDA)期间之后,Bitcoin Cash于2017年11月采用了基于144个区块移动窗口的新算法。

2020年11月,Bitcoin Cash升级至ASERT(Absolutely Scheduled Exponentially Rising Targets)难度调整算法,也称为aserti3-2d。ASERT是一种数学上优雅的算法,根据自参考区块("锚定区块")以来实际经过时间与预期时间之间的差异来调整难度目标。如果区块生成速度快于预期,难度呈指数级增加;如果较慢,则呈指数级降低。"3-2d"标识指的是大约两天(具体为十分钟目标下的288个区块)的半衰期,意味着算力的持续翻倍或减半将在两天内带来完全的难度调整。ASERT已被证明高度稳定,即使在显著的算力波动下也能产生一致的出块间隔。

区块传播效率对于拥有大区块的网络至关重要。Bitcoin Cash已采用多项优化以确保大区块能够在网络中快速传播。紧凑区块(BIP 152)允许节点在拥有重叠内存池的情况下从交易ID而非完整交易数据重建区块,大幅降低区块传播所需的带宽。Graphene协议通过使用概率数据结构实现近乎最优的区块编码,提供更大的压缩率。Xthinner是专门为Bitcoin Cash开发的另一种压缩协议,对典型区块实现约99.6%的压缩率。

网络的中继和内存池策略旨在支持可靠的零确认交易。节点遵循严格的首次发现规则,仅接受和中继他们观察到的第一个版本的交易。如果检测到尝试花费相同输入的第二笔交易(双花尝试),节点将生成双花证明并通过网络传播,向商户和其他相关方发出警报。此基础设施为接受日常小额支付的未确认交易提供了合理的安全水平。

Network Architecture

Jaringan Bitcoin Cash beroperasi pada arsitektur peer-to-peer fundamental yang sama dengan Bitcoin, dengan node berkomunikasi melalui protokol gossip untuk menyebarkan transaksi dan blok. Node penuh memelihara salinan lengkap blockchain dan memvalidasi semua transaksi dan blok secara independen sesuai aturan konsensus. Jaringan ini bersifat permissionless, yang berarti siapa pun dapat menjalankan node dan berpartisipasi tanpa otorisasi.

Beberapa implementasi node penuh independen ada untuk Bitcoin Cash, mencerminkan komitmen proyek terhadap pengembangan yang terdesentralisasi. Bitcoin Cash Node (BCHN) adalah implementasi yang paling banyak digunakan dan berfungsi sebagai klien referensi de facto. Implementasi lain mencakup Bitcoin Unlimited, BCHD (ditulis dalam Go), dan Knuth (implementasi C++ berperforma tinggi). Keberadaan beberapa implementasi independen mengurangi risiko bahwa satu bug perangkat lunak dapat menyebabkan kegagalan jaringan secara luas dan memastikan tidak ada satu tim pengembang pun yang memiliki kendali sepihak atas protokol.

Penambangan pada Bitcoin Cash menggunakan algoritma proof-of-work SHA-256, identik dengan Bitcoin. Ini berarti perangkat keras penambangan ASIC yang sama dapat digunakan untuk menambang kedua rantai, dan penambang dapat berpindah antara Bitcoin dan Bitcoin Cash berdasarkan profitabilitas. Dalam praktiknya, hash rate Bitcoin Cash adalah sebagian kecil dari Bitcoin, karena mayoritas daya penambangan SHA-256 diarahkan ke rantai Bitcoin yang lebih menguntungkan. Namun, algoritma penyesuaian kesulitan Bitcoin Cash memastikan blok diproduksi pada interval target sepuluh menit terlepas dari tingkat hash rate absolut.

Algoritma penyesuaian kesulitan adalah salah satu komponen protokol terpenting Bitcoin Cash. Penyesuaian kesulitan asli Bitcoin, yang dihitung ulang setiap 2016 blok (sekitar dua minggu), terlalu lambat untuk mengakomodasi fluktuasi hash rate yang cepat ketika penambang berganti antara Bitcoin dan Bitcoin Cash. Setelah periode Emergency Difficulty Adjustment (EDA) yang bermasalah pada 2017, Bitcoin Cash mengadopsi algoritma baru pada November 2017 yang menyesuaikan kesulitan berdasarkan jendela bergerak 144 blok.

Pada November 2020, Bitcoin Cash meng-upgrade ke algoritma penyesuaian kesulitan ASERT (Absolutely Scheduled Exponentially Rising Targets), juga dikenal sebagai aserti3-2d. ASERT menyesuaikan target kesulitan berdasarkan perbedaan antara waktu aktual yang berlalu dan waktu yang diharapkan sejak blok referensi ("anchor block"). Jika blok diproduksi lebih cepat dari yang diharapkan, kesulitan meningkat secara eksponensial; jika lebih lambat, kesulitan menurun secara eksponensial. Penamaan "3-2d" merujuk pada half-life sekitar dua hari (288 blok pada target sepuluh menit), yang berarti penggandaan atau pengurangan setengah hash rate yang berkelanjutan akan menghasilkan penyesuaian kesulitan penuh dalam dua hari. ASERT terbukti sangat stabil, menghasilkan interval blok yang konsisten bahkan di bawah volatilitas hash rate yang signifikan.

Efisiensi propagasi blok kritis untuk jaringan dengan blok besar. Bitcoin Cash mengadopsi beberapa optimisasi untuk memastikan blok besar dapat menyebar cepat. Compact Blocks (BIP 152) memungkinkan node merekonstruksi blok dari transaction ID alih-alih data transaksi penuh, mengurangi bandwidth saat mempool node saling tumpang tindih. Protokol Graphene memberikan kompresi lebih besar dengan struktur data probabilistik untuk mencapai encoding blok yang mendekati optimal. Xthinner adalah protokol kompresi lain yang dikembangkan khusus untuk Bitcoin Cash dengan tingkat kompresi sangat tinggi untuk blok tipikal.

Kebijakan relay dan mempool jaringan dirancang untuk mendukung transaksi zero-confirmation yang andal. Node mengikuti aturan first-seen yang ketat, hanya menerima dan meneruskan versi pertama transaksi yang mereka amati. Jika transaksi kedua yang mencoba membelanjakan input yang sama (upaya double-spend) terdeteksi, node akan menghasilkan bukti double-spend dan menyebarkannya, memperingatkan pedagang dan pihak lain yang berkepentingan. Infrastruktur ini menyediakan tingkat keamanan yang wajar untuk menerima transaksi belum terkonfirmasi untuk pembayaran sehari-hari bernilai rendah.

Smart Contract Capabilities

虽然Bitcoin Cash主要被设计为点对点电子现金系统,但它已通过扩展其脚本语言发展出显著的智能合约能力。与以太坊基于账户的图灵完备智能合约模型不同,Bitcoin Cash智能合约在UTXO模型内使用一种有意非图灵完备的基于堆栈的脚本语言运行。这种设计提供了可预测的执行成本,避免了与无限计算相关的漏洞类别,同时仍然能够实现令人惊讶的丰富可编程金融工具集。

Bitcoin Cash脚本语言已通过一系列协议升级逐步增强。2018年5月,在比特币早期历史中被禁用的若干操作码被重新启用,包括位逻辑运算符(OP_AND、OP_OR、OP_XOR)、大数算术运算符和字符串操作(OP_SPLIT、OP_CAT)。这些恢复的操作码显著扩展了Bitcoin Cash脚本的表达能力。

2018年11月引入的OP_CHECKDATASIG和OP_CHECKDATASIGVERIFY是一项特别重要的进步。这些操作码允许交易脚本验证针对任意数据(而不仅是交易本身)的ECDSA签名。这使得基于预言机的合约成为可能,其中外部数据源签署证明某种现实世界条件(如价格、天气事件或体育比分)的消息,而合约的执行取决于该签名消息的内容。这一功能为去中心化预测市场、保险合约和其他依赖外部数据的金融工具打开了大门。

2022年5月引入的原生内省操作码允许交易脚本检查包含它们的交易的属性。脚本可以检查同一交易中输入和输出的价值、锁定脚本和代币数据。这使得契约式合约成为可能——不仅限制谁可以花费代币,还限制代币在未来交易中如何被花费的脚本。契约实现了诸如保险库(用于安全的时间锁定花费限制)、定期支付、去中心化交易所和链上投票机制等强大模式。

CashScript是Bitcoin Cash的高级智能合约语言,类似于以太坊的Solidity。CashScript允许开发者以类似JavaScript的熟悉语法编写合约,并编译为Bitcoin Cash脚本字节码。该语言处理了UTXO合约设计的复杂性,包括输入/输出内省和签名验证,使不熟悉底层基于堆栈编程的开发者也能使用。CashScript合约已被用于构建去中心化交易所、托管服务、众筹平台和其他应用。

2023年5月的CashTokens升级为Bitcoin Cash的智能合约能力增添了新维度。通过在共识级别将同质化和非同质化代币直接嵌入UTXO模型,CashTokens使由网络共识规则而非覆盖协议强制执行的基于代币的合约成为可能。CashTokens中的非同质化代币(NFT)携带一个"承诺"字段——附加到代币的任意数据——可以被智能合约脚本读取和验证。这创建了一种在多笔交易之间维护链上状态的机制,这是之前在UTXO模型中难以实现的能力。合约可以使用NFT作为状态载体,在每笔交易中更新承诺数据以实现复杂的多步骤协议。

内省操作码、CashTokens和CashScript的结合创建了一个智能合约平台,虽然与以太坊的模型根本不同,但能够实现许多相同的去中心化金融应用。去中心化交易所、自动做市商、借贷协议和去中心化自治组织都已在Bitcoin Cash上构建或原型化。基于UTXO的方法在并行化(UTXO可以独立验证)、隐私(每个UTXO独立)和可预测性(无需竞争的全局状态)方面提供优势,但需要与基于账户的系统不同的设计模式。

Smart Contract Capabilities

Meskipun Bitcoin Cash terutama dirancang sebagai sistem uang elektronik peer-to-peer, ia telah mengembangkan kapabilitas smart contract yang signifikan melalui perluasan bahasa scripting-nya. Tidak seperti model smart contract Turing-complete berbasis akun milik Ethereum, smart contract Bitcoin Cash beroperasi di dalam model UTXO menggunakan bahasa scripting berbasis stack yang sengaja tidak Turing-complete. Desain ini memberikan biaya eksekusi yang dapat diprediksi dan menghindari kelas kerentanan yang terkait dengan komputasi tak terbatas, sambil tetap memungkinkan berbagai instrumen keuangan terprogram yang kaya.

Bahasa scripting Bitcoin Cash ditingkatkan secara progresif melalui serangkaian upgrade protokol. Pada Mei 2018, beberapa opcode yang pernah dinonaktifkan pada awal sejarah Bitcoin diaktifkan kembali, termasuk operator logika bitwise (OP_AND, OP_OR, OP_XOR), operator aritmatika untuk angka yang lebih besar, serta operasi manipulasi string (OP_SPLIT, OP_CAT). Opcode yang dipulihkan ini secara signifikan memperluas kemampuan ekspresif skrip Bitcoin Cash.

Pengenalan OP_CHECKDATASIG dan OP_CHECKDATASIGVERIFY pada November 2018 adalah kemajuan yang sangat penting. Opcode ini memungkinkan skrip memverifikasi tanda tangan ECDSA terhadap data arbitrer, bukan hanya terhadap transaksi itu sendiri. Ini memungkinkan kontrak berbasis oracle di mana sumber data eksternal menandatangani pesan yang menyatakan suatu kondisi dunia nyata (seperti harga, peristiwa cuaca, atau skor olahraga), dan eksekusi kontrak bergantung pada isi pesan yang ditandatangani tersebut. Kemampuan ini membuka pintu bagi pasar prediksi terdesentralisasi, kontrak asuransi, dan instrumen keuangan lain yang bergantung pada data eksternal.

Opcode introspeksi native, yang diperkenalkan pada Mei 2022, memungkinkan skrip memeriksa properti transaksi yang memuatnya. Skrip dapat menginspeksi nilai, locking script, dan data token dari input dan output dalam transaksi yang sama. Ini memungkinkan kontrak tipe covenant — skrip yang membatasi bagaimana koin dapat dibelanjakan di transaksi masa depan, bukan hanya siapa yang dapat membelanjakannya. Covenants memungkinkan pola kuat seperti vault (pembatasan pengeluaran dengan time-lock untuk keamanan), pembayaran berulang, bursa terdesentralisasi, dan mekanisme pemungutan suara on-chain.

CashScript adalah bahasa smart contract tingkat tinggi untuk Bitcoin Cash, analog dengan Solidity di Ethereum. CashScript memungkinkan pengembang menulis kontrak dengan sintaks yang familier seperti JavaScript, yang kemudian dikompilasi menjadi bytecode script Bitcoin Cash. Bahasa ini menangani kompleksitas desain kontrak UTXO, termasuk introspeksi input/output dan verifikasi tanda tangan, sehingga lebih mudah diakses oleh pengembang yang tidak terbiasa dengan pemrograman stack tingkat rendah. Kontrak CashScript telah digunakan untuk membangun bursa terdesentralisasi, layanan escrow, platform crowdfunding, dan aplikasi lainnya.

Upgrade CashTokens pada Mei 2023 menambahkan dimensi lain pada kapabilitas smart contract Bitcoin Cash. Dengan menyematkan token fungible dan non-fungible langsung ke dalam model UTXO pada tingkat konsensus, CashTokens memungkinkan kontrak berbasis token yang ditegakkan oleh aturan konsensus jaringan alih-alih protokol overlay. NFT di CashTokens membawa field "commitment" — data arbitrer yang melekat pada token — yang dapat dibaca dan divalidasi oleh skrip smart contract. Ini menciptakan mekanisme untuk mempertahankan state on-chain lintas transaksi, sesuatu yang sebelumnya sulit dicapai pada model UTXO. Kontrak dapat menggunakan NFT sebagai pembawa state, memperbarui data commitment pada setiap transaksi untuk mengimplementasikan protokol multi-langkah yang kompleks.

Kombinasi opcode introspeksi, CashTokens, dan CashScript menciptakan platform smart contract yang, walaupun berbeda secara fundamental dari model Ethereum, mampu mengimplementasikan banyak aplikasi keuangan terdesentralisasi yang serupa. Bursa terdesentralisasi, automated market maker, protokol pinjam-meminjam, dan decentralized autonomous organization telah dibangun atau diprototipekan di Bitcoin Cash. Pendekatan berbasis UTXO menawarkan keunggulan dalam hal paralelisasi (UTXO dapat divalidasi secara independen), privasi (setiap UTXO berdiri sendiri), dan prediktabilitas (tidak ada global state), meskipun membutuhkan pola desain yang berbeda dari sistem berbasis akun.

Monetary Policy

Bitcoin Cash完整继承了比特币的货币政策。Bitcoin Cash的总供应量上限为2100万枚,发行计划遵循与比特币相同的减半机制。这一共享的货币政策是分叉的直接结果:由于Bitcoin Cash从比特币区块链分裂而来,它以相同的发行历史开始并继续遵循相同的未来发行规则。

区块奖励从每区块50 BCH开始(继承自比特币的创世参数),每210,000个区块减半一次,约每四年一次。第一次减半发生在2012年11月(在分叉之前,属于共享历史),将奖励减至25枚。第二次减半在2016年7月将其减至12.5枚。第三次减半在2020年4月发生(在分叉之后,因此是Bitcoin Cash链特有的),将奖励减至6.25 BCH。第四次减半在2024年4月进一步减至每区块3.125 BCH。

这一减半计划创造了一种通缩型货币政策,新币创造率随时间递减,渐近地趋向零。最后一枚Bitcoin Cash预计将在2140年左右被挖出。届时,矿工收入将完全由交易手续费构成。

2100万的供应上限和减半计划赋予Bitcoin Cash与比特币相同的稀缺性特征。截至2026年初,流通供应量约为1980万BCH,占未来将存在的总供应量的94%以上。其余代币将在一个多世纪的递减区块奖励中分发。

Bitcoin Cash在从区块奖励向基于手续费的矿工补偿过渡方面的方法与比特币的策略不同。比特币通过限制区块空间以维持手续费市场的扩展哲学,隐含地依赖于高单笔交易手续费来在区块奖励减少时补偿矿工。Bitcoin Cash采取了相反的方法:通过保持低手续费和大区块,网络旨在通过高交易量而非高单笔手续费来产生足够的总手续费收入。在这一模型中,如果每笔交易支付一美分的手续费,但网络每个区块处理数百万笔交易,则总手续费收入仍然可以足够可观,以激励挖矿。

这种基于交易量的手续费模型要求Bitcoin Cash在后补贴时代实现远高于比特币的交易吞吐量,以提供同等的矿工激励。支持者认为这是可以实现的,因为全球支付需求巨大,即使占据世界交易量的适度份额也将代表每天数百万笔支付。批评者则反驳说,实现这一采用水平是不确定的,低手续费模型可能在过渡期间产生不充分的激励。

比特币和Bitcoin Cash之间共享的货币政策意味着两条链在SHA-256挖矿算力方面存在直接竞争。矿工在任何给定时间将资源分配给更有利可图的链,两条链的难度调整算法都能适应这种流动性分配。实际上,Bitcoin Cash在总SHA-256算力中的份额一直与其相对价格成正比,反映了利润最大化矿工的理性经济行为。

Monetary Policy

Bitcoin Cash mewarisi kebijakan moneter Bitcoin sepenuhnya. Total pasokan Bitcoin Cash dibatasi hingga 21 juta koin, dan jadwal penerbitannya mengikuti mekanisme halving yang sama seperti Bitcoin. Kebijakan moneter yang sama ini merupakan konsekuensi langsung dari fork: karena Bitcoin Cash terpecah dari blockchain Bitcoin, ia dimulai dengan sejarah penerbitan yang sama dan berlanjut dengan aturan penerbitan masa depan yang sama.

Hadiah blok dimulai pada 50 BCH per blok (mewarisi parameter genesis Bitcoin) dan berkurang setengah setiap 210.000 blok, sekitar setiap empat tahun. Halving pertama terjadi pada November 2012 (sebelum fork, jadi sejarah bersama), menurunkan hadiah menjadi 25 koin. Halving kedua pada Juli 2016 menurunkannya menjadi 12,5 koin. Halving ketiga pada April 2020, yang terjadi setelah fork dan karenanya spesifik untuk rantai Bitcoin Cash, menurunkannya menjadi 6,25 BCH. Halving keempat pada April 2024 menurunkannya lagi menjadi 3,125 BCH per blok.

Jadwal halving ini menciptakan kebijakan moneter disinflasioner di mana laju penciptaan koin baru menurun dari waktu ke waktu, mendekati nol secara asimtotik. Koin Bitcoin Cash terakhir diperkirakan akan ditambang sekitar tahun 2140. Pada titik itu, pendapatan penambang akan sepenuhnya terdiri dari biaya transaksi.

Batas pasokan 21 juta dan jadwal halving memberikan Bitcoin Cash sifat kelangkaan yang sama seperti Bitcoin. Pasokan yang beredar pada awal 2026 sekitar 19,8 juta BCH, mewakili lebih dari 94 persen dari total pasokan yang akan pernah ada. Koin yang tersisa akan didistribusikan selama lebih dari satu abad melalui hadiah blok yang terus menurun.

Pendekatan Bitcoin Cash terhadap transisi dari hadiah blok ke kompensasi penambang berbasis biaya berbeda dari strategi Bitcoin. Filosofi scaling Bitcoin, yang membatasi ruang blok untuk mempertahankan pasar biaya, secara implisit bergantung pada biaya tinggi per transaksi untuk mengompensasi penambang ketika hadiah blok menurun. Bitcoin Cash mengambil pendekatan sebaliknya: dengan menjaga biaya rendah dan blok besar, jaringan bertujuan menghasilkan pendapatan biaya total yang cukup melalui volume transaksi tinggi alih-alih biaya tinggi per transaksi. Dalam model ini, jika setiap transaksi membayar biaya satu sen tetapi jaringan memproses jutaan transaksi per blok, pendapatan biaya agregat tetap dapat cukup besar untuk memberi insentif penambangan.

Model biaya berbasis volume ini menuntut Bitcoin Cash mencapai throughput transaksi yang jauh lebih tinggi daripada Bitcoin untuk memberikan insentif penambang yang setara di era pasca-subsidi. Para pendukung berargumen bahwa ini dapat dicapai melalui scaling on-chain berkelanjutan, karena permintaan pembayaran global sangat besar dan bahkan porsi kecil dari transaksi dunia dapat berarti jutaan pembayaran per hari. Para kritikus menanggapi bahwa tingkat adopsi ini tidak pasti dan bahwa model biaya rendah mungkin menciptakan insentif yang tidak memadai selama periode transisi.

Kebijakan moneter yang sama antara Bitcoin dan Bitcoin Cash berarti kedua rantai bersaing langsung untuk hash power penambangan SHA-256. Penambang mengalokasikan sumber daya mereka ke rantai mana pun yang paling menguntungkan pada saat tertentu, dan algoritma penyesuaian kesulitan pada kedua rantai mengakomodasi alokasi yang dinamis ini. Dalam praktiknya, porsi hash rate total SHA-256 yang dimiliki Bitcoin Cash telah sebanding dengan harga relatifnya, mencerminkan perilaku ekonomi rasional dari penambang yang memaksimalkan keuntungan.

Conclusion

Bitcoin Cash代表了比特币作为点对点电子现金原始愿景的有原则的延续。通过提高区块大小上限并追求链上扩展,Bitcoin Cash维持了早期比特币所特有的低手续费和快速交易,使原始白皮书所设想的日常支付和微交易变得实用。

该项目的技术轨迹以深思熟虑且具有重大意义的协议改进为特征。ASERT难度调整算法在算力波动条件下提供稳定的区块生产。具有恢复和新增操作码的增强脚本语言在UTXO模型的安全约束内实现了精密的智能合约。CashTokens首次为比特币协议带来了共识级强制执行的代币化。CashScript使这些能力对广泛的开发者社区可及。这些进步共同证明了UTXO模型可以在保持其基本简洁性和安全属性的同时支持丰富的去中心化应用生态系统。

导致Bitcoin Cash诞生的扩展性争论突显了去中心化系统中的一个基本张力:链上容量与运营全节点成本之间的权衡。Bitcoin Cash选择优先考虑交易容量和用户体验,认为广泛采用和使用的经济效益超过了节点运营者增加的硬件要求。这是一个经验性问题,其答案将在比特币和Bitcoin Cash各自沿着各自路径继续演进的未来数年乃至数十年中逐步展开。

Bitcoin Cash在经历了多次熊市、争议性分叉(尤其是2018年11月的Bitcoin SV分裂)和持续的社区努力后的存续和持续发展,展示了该项目的韧性和参与者的信念。该网络自分叉以来已处理了数亿笔交易,维持了持续运营,并吸引了一个由全球开发者、商户和用户组成的社区,他们共同相信点对点电子现金是一项值得构建的技术。

Bitcoin Cash的长期成功取决于其吸引重视低手续费、可靠交易的用户和商户的能力,以及扩展其基础设施以满足全球支付网络需求的能力。技术基础是稳固的,路线图是清晰的,社区是坚定的。Bitcoin Cash最终能否实现其服务于全球电子现金的宏伟目标,将不由技术限制决定,而由支配所有货币系统演进的网络效应、市场动态和采用模式决定。

Conclusion

Bitcoin Cash mewakili kelanjutan berprinsip dari visi Bitcoin asli sebagai uang elektronik peer-to-peer. Dengan meningkatkan batas ukuran blok dan mengejar scaling on-chain, Bitcoin Cash mempertahankan biaya rendah dan transaksi cepat yang menjadi ciri Bitcoin awal, membuatnya praktis untuk pembayaran sehari-hari dan mikrotransaksi yang dibayangkan whitepaper asli.

Lintasan teknis proyek ini ditandai oleh perbaikan protokol yang dipikirkan matang dan berdampak. Algoritma penyesuaian kesulitan ASERT menyediakan produksi blok yang stabil di bawah kondisi hash rate yang volatil. Bahasa scripting yang ditingkatkan, dengan opcode yang dipulihkan dan yang baru, memungkinkan smart contract yang canggih dalam batasan keamanan model UTXO. CashTokens membawa tokenisasi yang ditegakkan oleh konsensus ke protokol Bitcoin untuk pertama kalinya. CashScript membuat kemampuan ini dapat diakses oleh komunitas pengembang yang lebih luas. Bersama-sama, kemajuan ini menunjukkan bahwa model UTXO dapat mendukung ekosistem aplikasi terdesentralisasi yang kaya sambil mempertahankan kesederhanaan dan keamanan dasarnya.

Debat scaling yang melahirkan Bitcoin Cash menyoroti ketegangan fundamental dalam sistem terdesentralisasi: trade-off antara kapasitas on-chain dan biaya menjalankan node penuh. Bitcoin Cash memilih untuk memprioritaskan kapasitas transaksi dan pengalaman pengguna, berargumen bahwa manfaat ekonomi dari adopsi dan penggunaan yang luas lebih besar daripada peningkatan kebutuhan perangkat keras bagi operator node. Ini adalah pertanyaan empiris yang jawabannya akan terlihat dalam tahun-tahun dan dekade-dekade mendatang ketika Bitcoin dan Bitcoin Cash terus berevolusi pada jalur masing-masing.

Kelangsungan hidup dan pengembangan Bitcoin Cash melalui beberapa bear market, fork yang kontroversial (terutama pemisahan Bitcoin SV pada November 2018), dan upaya komunitas yang berkelanjutan menunjukkan ketahanan proyek dan keyakinan para pesertanya. Jaringan telah memproses ratusan juta transaksi sejak fork, mempertahankan operasi terus-menerus, dan menarik komunitas global pengembang, pedagang, dan pengguna yang percaya bahwa uang elektronik peer-to-peer adalah teknologi yang layak dibangun.

Keberhasilan jangka panjang Bitcoin Cash bergantung pada kemampuannya menarik pengguna dan pedagang yang menghargai transaksi yang andal dengan biaya rendah, dan pada kemampuannya menskalakan infrastrukturnya untuk memenuhi tuntutan jaringan pembayaran global. Fondasi teknisnya kuat, roadmap-nya jelas, dan komunitasnya berkomitmen. Apakah Bitcoin Cash pada akhirnya mencapai tujuan ambisiusnya untuk melayani sebagai uang elektronik untuk dunia akan ditentukan bukan oleh keterbatasan teknis, melainkan oleh efek jaringan, dinamika pasar, dan pola adopsi yang mengatur evolusi semua sistem moneter.