「Bitcoin: A Peer-to-Peer Electronic Cash System」
Satoshi Nakamoto, 2008/10/31
サトシナカモトは「ビットコインをこう作ってください」という設計図(ホワイトペーパー)を世界に公開しました。
ところが、その設計図の一番大事な約束が破られてしまいました。
たとえば、街で「迷い猫をさがしています。見つけてくれたら1万円差し上げます」というポスターを見かけたことはありませんか?
これは法律では「」と呼ばれるもので、ポスターを貼った人は、猫を見つけてくれた人に お礼を払う義務があります。
サトシナカモトのホワイトペーパーも同じです。 「この仕様どおりにビットコインを作ってください」 という設計指示書であり、法的に片務契約の要件を満たしています。
しかし現在、このホワイトペーパーの仕様に忠実に従っているビットコインネットワークは存在しません。
これが暗号資産業界の最大の課題です。
出典:本コンテンツは、(約300万ページ)をもとに、ビットコイン領域に関係する部分を整理・解説したものです。
2015年11月27日 マージ
2026年現在も未改善 — 10年以上放置されている
src/main.cpp —
// Check for conflicts with in-memory transactions
{
LOCK(pool.cs); // protect pool.mapNextTx
for (unsigned int i = 0; i < tx.vin.size(); i++)
{
COutPoint outpoint = tx.vin[i].prevout;
if (pool.mapNextTx.count(outpoint))
{
// Disable replacement feature for now
return false; // ← 衝突したら即リジェクト
}
}
}first-seen ルール:メンプール内のtxと入力が衝突したら、問答無用で拒否。差し替えは一切不可。
// Disable replacement feature for now
→ 差し替え機能は「今は無効」。最初に見たtxが勝つ。
set<uint256> setConflicts;
{
LOCK(pool.cs); // protect pool.mapNextTx
BOOST_FOREACH(const CTxIn &txin, tx.vin)
{
if (pool.mapNextTx.count(txin.prevout))
{
const CTransaction *ptxConflicting =
pool.mapNextTx[txin.prevout].ptx;
if (!setConflicts.count(
ptxConflicting->GetHash()))
{
// Allow opt-out of transaction
// replacement by setting
// nSequence >= maxint-1 on all inputs.
bool fReplacementOptOut = true;
BOOST_FOREACH(const CTxIn &txin,
ptxConflicting->vin)
{
if (txin.nSequence <
std::numeric_limits<unsigned int>
::max()-1)
{
fReplacementOptOut = false;
break;
}
}
if (fReplacementOptOut)
return state.Invalid(false,
REJECT_CONFLICT,
"txn-mempool-conflict");
setConflicts.insert(
ptxConflicting->GetHash());
}
}
}
}RBF導入:「衝突=即拒否」をやめ、nSequenceシグナル + BIP125ルールを満たせば差し替えを許可
// Allow opt-out of transaction replacement
→ first-seen は opt-in で放棄可能に。
マイナーたちが送金トランザクションの有効性を直ちにチェック・伝播。first-seen ルールにより、一度ネットワークに受け入れられたtxは 事実上覆せない。
→ 支払ってすぐに商品を受け取る決済体験が可能
RBFにより、未承認txはより高い手数料で差し替え可能に。支払いを受けた商人は、ブロックに取り込まれるまで 安心できない。
→ 10分間(1ブロック)待たないと決済が確定しない
Whitepaper Section 2:
“the earliest transaction is the one that counts”
RBFはこの原則を覆し、「最も手数料の高いtxが勝つ」モデルに変えた。
サトシが設計した「ピア・ツー・ピアの電子キャッシュ」は、 もはや即座に使えるキャッシュではなくなった。