本文へスキップ
buybitcoinsmart

用語集 / プライバシーとセキュリティ

コインコントロール

コインコントロールとは?
コインコントロールとは、ウォレットが自動で選ぶのではなく、保有するコインのうちどれを取引で使用するかを正確に自分で選択できるウォレットの機能です。

残高は1つの数字ではなく、複数の独立した塊の集まりです。それぞれの塊は、以前にウォレットへ入金された支払いの残りであり、支出のたびに塊を丸ごと消費します。トランザクションに塊を1つ追加すると、手数料としておよそ68仮想バイトのコストがかかり、チェーンを読む誰にでも、両方の塊が同じ所有者に属すると分かってしまいます。コインコントロールは、その判断を自分に取り戻す機能です。

仕組み

どのウォレットも、すでにユーザーの代わりにコインを選択しています。金額を入力して送信を押すと、アルゴリズムが未使用のアウトプット(UTXO)から、その金額をカバーする組み合わせを探します。Bitcoin Coreはバージョン0.17.0(2018年)からMurchのbranch and boundソルバーを使用しており、これは目標額に十分近い入力の組み合わせを探して、お釣りのアウトプットを完全に省きます。手数料を最適化しますが、どのコインに触れたくないかは一切考慮しません。

コインコントロールを有効にすると、その推測がリストに置き換わります。Bitcoin Coreでは設定で「Enable coin control features」にチェックを入れると、送信画面に入力セレクターが追加されます。この機能はバージョン0.9.0(2014年)からグラフィカルウォレットに搭載されています。Sparrow、Electrum、Wasabi、BlueWalletはいずれも、UTXOタブとして同じものを提供しており、各コインの金額、確認数、そしてユーザーが付けたラベルが表示されます。

これには3つの操作があります。入力は手動で選択できるため、トランザクションはチェックしたコインだけを消費します。コインを凍結すると、自動選択はそのコインを永久に対象外にします。そして、コインが届いた時点でラベルを付けられます。これが多くの人が省略して後悔する部分です。6か月前のラベルのないアウトプットは、由来のないただの数字にすぎないからです。

入力の選択はお釣りも決めます。250,000サトシのコインを使って200,000サトシを支払うと、残額から手数料を引いた額の新しいコインが作られ、そのコインは、いま使ったすべての履歴を引き継ぎます。

ビットコインを購入するときにこれが重要な理由

取引所から出金すると、誰かのコンプライアンスデータベースに、あなたの身元がアドレスの隣に書き込まれます。当サイトに掲載している大規模な取引所はいずれも最初に本人確認を行うため、ウォレットに届くコインは、分析ツールを使う誰から見ても、あなたのものというラベルがあらかじめ付いた状態で届きます。コインコントロールは、そのラベルが広がるのを止める方法です。後で別の場所、たとえば個人間取引や仕事の報酬としてビットコインを取得した場合に、それらのコインを取引所からの出金と同じトランザクションに入れないことは、2つの別々の履歴と1つの履歴の違いになります。

2つ目の理由は取得原価です。ドルコスト平均法では小さなコインが大量に生まれます。Riverは定期購入の手数料を無料にしており、毎週出金する習慣があれば、それぞれ違う価格で購入した52個の独立したアウトプットが1年間に残ります。ほとんどの国の税制では、どの単位を処分したかを特定できますが、コインコントロールと、入ってくるすべてのコインへの日付付きラベルがあって初めて、その特定は理論上のものではなく証明可能なものになります。200ドルのコインではなく2,000ドルのコインを売却することは、税額に実際の差を生みます。

3つ目は、取引相手に開示する情報を守ることです。支払いを受ける相手は、あなたが使ったすべての入力を見ることができ、したがって支出元のコインの合計額も分かります。40ドルの請求書を2BTCの貯蓄アウトプットから支払えば、受け取った相手にあなたの保有額が分かってしまいます。少額の専用のコインから支払えば、何も分かりません。

200,000サトシの支払いに向けた入力の選び方

ウォレットに3つのコインがあるとします。Swanで購入した40,000サトシ、Krakenから出金した250,000サトシ、そして数年前に設定したハードウェアウォレットにある長期貯蓄の5,000,000サトシです。誰かに200,000サトシを支払う必要があり、mempoolは8sat/vBと落ち着いています。

そのままにしておくと、ウォレットは無駄を最小化するために、40,000のコインと250,000のコインを一緒に選ぶかもしれません。その結果は2個の入力と2個の出力、およそ209仮想バイト、手数料はおよそ1,672サトシとなり、SwanのコインとKrakenのコインが同じ人物に属するという恒久的な公開の表明が残ります。

コインコントロールを使えば、250,000サトシのコインだけをチェックします。それは1個の入力と2個の出力、およそ141仮想バイト、手数料はおよそ1,128サトシ、お釣りは48,872サトシです。544サトシ少なく支払い、開示した出所は2つではなく1つです。5,000,000サトシの貯蓄コインは凍結されたままアルゴリズムから見えず、まさにそうあるべき状態です。

コインコントロールvs UTXOの統合

コインコントロールはハンドルであり、統合は特定の行き先の1つです。統合とは、将来の手数料を減らすために多くのコインを意図的に1つにまとめて消費することで、これは自分で選んだコインの合併です。コインコントロールは選択するための一般的な機能であり、ほとんどの場合は逆のこと、つまりアルゴリズムがまとめてしまうコインを分けておくために使います。

コインコントロールvs CoinJoin

コインコントロールは記録管理の規律であり、注意以外のコストはかかりません。新しい結び付きが作られるのを防ぎますが、すでにチェーン上に存在する結び付きを消すことはできません。coinjoinは見知らぬ相手との能動的で協調的なトランザクションであり、履歴がすでに公開されているコインにあいまいさを加えます。両者は補完的であり、先に重要なのはコインコントロールです。不注意な入力の選択は、1回の支出でcoinjoinを台無しにするからです。

混同しやすい用語

よくある質問

購入して保有するだけの場合、コインコントロールは必要ですか?

入金の段階では必要ありません。受け取ること自体にコストはかからず、余分な情報も明らかにならないからです。重要になるのは初めて支出するときです。ウォレットがどのコインを結合するかを決め、それらの間の関連性を公開するのはそのときだからです。

コインコントロールに対応しているウォレットはどれですか?

Bitcoin Coreは設定のチェックボックスでこの機能を有効にでき、Sparrow、Electrum、Wasabi、BlueWalletはいずれもUTXOの一覧を表示し、個々のコインを選択、ラベル付け、凍結できます。大半のシンプルなモバイルウォレットはこの機能を完全に隠しています。

コインコントロールを使えば取引はプライバシー保護されますか?

いいえ。自分のコイン間に新たな関連性が生まれるのを防ぐもので、それには大きな価値がありますが、すでにチェーン上に公開された関連性を消すことはできず、取引所が保有する自分の身元情報についても何も変わりません。

次に読む

関連用語

プライバシーとセキュリティのその他の用語

このページを英語で読む