Wasabi Wallet、zkSNACKs、Chaumian Coinjoinの概説するやで

この記事では、非常に高い匿名性を持つビットコインウォレットのWasabi Wallet、その背後にある企業zkSNACKsとミキシング技術のChaumian Coinjoinを簡単に紹介したい。

通貨に匿名性を持たせる事の利点だが、これは匿名性の高い通貨の方が価値が高くなることに起因する。

自身が受け取ったコインは、<どう><誰によって><いつ>取引されていたか、全て分かるような通貨を日常的に使おうとならない。プライバシーのかけらも無いからだ。

犯罪に使用された事が露見した場合、そのコインを受け取らないという事業者や人が出てくるはずなので、匿名性が低い通貨のファンジビリティ(代替可能性)は著しく低い。

つまりは、人が『積極的に受け取りたがらない』通貨の価値は、あまり高くないのである。マネーロンダリングや犯罪、脱税、政治献金(裏金)などは、なぜ現金で行われるのかを考えれば分かる事だ。

Wasabi Walletとは

Wasabi Wallet

Wasabi Walletは、オープンソースで非中央集権型のプライバシー重視であるデスクトップ用ビットコインウォレット。信頼を必要としないコインシャッフリング(CoinShuffle)技術であるChaumian CoinJoinを実装している。

Wasabiのcoinjoin実装は、設計上信頼がいらない形となっている。ミキシングプロバイダーを使用する時のように、参加者は互いを信頼し合う必要がない。送信アドレス(coinjoin入力)と受信アドレス(coinjoin出力)の両方が、自分自身の秘密鍵によって制御される。

Wasabiは参加者の入力を1つのトランザクションにまとめるプロセスを調整するだけで、ビットコインを盗むことや、どの出力がどの入力に属するのかを知ることはできない。

全WasabiネットワークのトラフィックはデフォルトでTorを経由するため、自分でノードや接続をセットアップする必要はない。すでにTorを実行しているなら、WasabiはユーザーのTorを最初に使用しようとする。もちろん、設定でTorをオフにすることができる。

WasabiはBech32アドレスのみを生成する。これは、bc1アドレスまたはSegWitアドレスとも呼ばれている。これらのアドレスは、<bc1…>で始まる。いくつかのウォレットや取引所はこのタイプのアドレスをサポートしておらず、エラーメッセージを出すかもしれない(例: “unknown bitcoin address”)。

解決策は、Bech32をサポートするウォレットで資金を管理することだ。Bech32のサポートは、このリストで確認できる。

https://github.com/zkSNACKs/WalletWasabi

現在、Coinjoinには0.003%の匿名セット料がかかる。コインの匿名性セットが50の場合、0.003% * 50(= 0.15%)を支払う。ターゲットの匿名性を53に設定した場合、Wasabiはこれに達するまでミキシングを続ける。したがって、最終的に60の匿名性が設定された場合は0.003%* 60(= 0.18%)が差し引かれる。

匿名セットは、事実上あなたが隠れているグループのサイズだ。

3人がCoinJoin(同じサイズの入力で)に参加し、3つの出力がある場合、それらの各出力コインには3の匿名性セットがある。

0.1 BTC (Alice)       0.1 BTC (Anon set 3)
0.3 BTC (Bob)     ->  0.1 BTC (Anon set 3)
0.4 BTC (Charlie)     0.1 BTC (Anon set 3)
                      0.2 BTC (Change Coin Bob)
                      0.3 BTC (Change Coin Charlie)

デフォルトのミキシングラウンド数(匿名セット)を変更するには、ウォレットのGUIから「File> Open> Config File」に行き、最後の4行で以下のように設定する。

" MixUntilAnonymitySet ": 50、
 " PrivacyLevelSome ": 2、
 " PrivacyLevelFine ": 21、
 " PrivacyLevelStrong ": 50

Wasabiを一度使ったら、継続してWasabiで資金を管理することをお勧めする。資金を別のウォレット(例えばモバイルウォレット)に送るつもりなら、考慮すべき重要なことがいくつかある。

  • ウォレットがコインコントロール機能を持っていないと、コインはマージされプライバシーが侵害される
  • ウォレットがフルノードに接続しないかぎり、ブロックやフィルタを提供するサーバーへ情報が漏れることになる。結論、プライバシーの面でWasabi以外に適切なウォレットはほとんどない。

https://wasabiwallet.io/

zkSNACKsとは

zkSNACKs

Wasabi Walletを開発している企業。

ビットコインが持つ機能強化の可能性を調査し、必要なプライバシーを確保するさまざまな製品を提供するために設立された。

多くの人はビットコインが匿名だと信じているが、実際ブロックチェーンは非常に透明であることから、匿名性プロトコルを中心に開発を行っている。

拠点はジブラルタルに置かれている。

Chaumian Coinjoin(ZeroLink)とは

ZeroLink

CoinJoinは、ビットコインの規格による比較的古いアイデアで、Bitcoin Coreの貢献者であるGregory Maxwell氏が2013年に最初に提案したものだ。本質的には、複数のトランザクションを1つの大きなトランザクションにまとめることで、どのBitcoinアドレスにDepositされ(「入力」)、どのBitcoinアドレスへWithdrawしたか(「出力」)、の移動を難読化することができる。

簡単な例として、アリス、ボブ、キャロルのすべてがお互いにコインをミキシングしたい(混ぜてみたい)としよう。 CoinJoinを使用することで、彼らは自分のアイデンティティに結びついていない新しいアドレスを使い、自分自身に送金するトランザクションを作成することができる。

Coinjoin

アリス、ボブ、キャロルが同じ金額のコインでトランザクションを生成している限り、「スパイ」は新しいアドレスのどれが誰に属しているのかを知る由はない(彼らが異なる金額のコインを使用する場合は、どのコインがどこに移動したかは明らかだが)。

CoinJoinトランザクションは数年前から現実味を帯びてきたが、長い間アリス、ボブ、キャロルのような人物らでトランザクションを構築する必要があった。

Coinjoin

この人物らは、どの古いアドレスが新しいアドレスにビットコインを送金しているかを正確に知る必要がある。それ以外の場合、ミキシングトランザクションを構築することは不可能だ。

しかし、「スパイ」がいた場合、スパイはコインの所有権を再確立することができてしまう。

この問題は、2013年の提案でGregory Maxwellが言及した「Chaumian CoinJoin」と呼ばれるトリックを使用して解決することができる(1983年にDavid Chaumが提唱した「blind signature scheme(ブラインド署名)」の名前に由来)。

ブラインド署名とは、署名者に対してメッセージの内容がわからない状態(正確に分からない)で署名してもらう、デジタル署名技術だ。

アリス、ボブ、キャロルは、ウォレットプロバイダーによって運営されているChaumian CoinJoinサーバーに接続する。

最初に、彼らへすべての送金アドレスと、暗号化されたサーバーによって署名された(暗号的にスクランブルされた)受取アドレスを与える。

その後、アリス、ボブ、キャロルは、Torなどの暗号化されたネットワークを介して再接続するために切断し、アンブラインドされたアドレスを提供していく。

Chaumianブラインド署名を利用し、サーバーはブラインドされていないアドレスがブラインドされたアドレスと一致することを確認する。

これにより、アドレスが誰に属しているかを知ることなく、アリス、ボブ、キャロルへ本当に属していることを確認することができるという仕組み。

Chaumian CoinJoinの提案は最初に提案されてから約4年間立ったが、BreezeのTumbleBit実装に取り​​組んでいたÁdám Ficsór氏が提案を再発見し、実装することとなっている。

Ficsór氏が設計したZeroLinkフレームワークに組み込まれているChaumian CoinJoinは、最近リリースされたプライバシー重視のWasabi Walletに実装された。

また最近では、プライバシーに重点を置くSamourai Walletが、Whirlpoolと呼ばれるモバイルZeroLinkの実装を間もなくリリースすると発表した。さらに、Bob Walletという新しいウォレットもZeroLinkの実装へ向かって開発している。

技術的見解や匿名性のある通貨の是非などは、以下を参照すると良いだろう。

Wasabi Walletのインストール

Wasabi Walletのウェブサイトにアクセスし、下へスクロール。

Wasabi Wallet

Wasabi Walletはデスクトップ用のビットコインウォレットであるため、モバイル版はない。各OSに合う拡張子のファイルをダウンロードする。

Wasabi Wallet

Macの場合、以下のようにApplicationsへドロップする。Linux(Ubuntu系)の方はdebファイル、そのたFedoraなどのLinuxディストリビューションはtar.gzファイルをダウンロードしよう。

Wasabi Wallet

Generate Walletでウォレットを作成、すでに作成している方はRecover Walletをクリックする。識別するための名前<Wallet Name>とPasswordを入力し、Generate(生成)する。

ウォレットが生成されると、Recovery Wordsが表示されるので、バックアップを取っておこう。パスワードマネージャー等の暗号化されたサービスやオフラインのメモ帳が良いだろう。

Wasabi Wallet

Coinjoinを使用できることがウォレットの下部で確認できる。

例えば、Wasabi Walletで生成されたこのCoinJoinトランザクションを見ると、「Segwitであることと「Coinjoinであろうこと」が分かる。

すでにウォレットを作成してある場合、Recover Walletからウォレットをリカバーする。

Wasabi Wallet

Ledger nano SやTrezorといったハードウェアウォレットを読み込むことも可能。

Wasabi Wallet

初心者向けの分かりやすいインターフェイスを備えたウォレットではないが(そもそも目的がプライバシー保護をトラストレスに行うため)、トランザクションが第三者に解析されるのを好まないユーザーはWasabi Walletを利用すると良いだろう。

まとめ

Wasabi Walletの概要やインストール方法について説明してきた。

所有しているビットコインのうち、ストーカーにトランザクションを追われたくなかったり、政府に覗き見られたくない資金をWasabi Walletで管理すると良いかもしれない。

これまでトランザクションをミキシングする<Bestmixer.io>といったサービスもあったが、Europol(欧州刑事警察機構)などによりマネーロンダリング関与の疑いで閉鎖されてしまった。

トランザクションミキシングサービスは非常に集権的であり、いつ資金をパクられても、サービスが閉鎖されてもおかしくない。

Samourai Wallet

もし、スマートフォンでもプライバシーに配慮したウォレットを使用したい場合、AndroidのみだがChaumian CoinJoinの章で記載したSamourai Walletを利用すると良い(STONEWALLを使用)。

Samourai Walletも非常に面白いソリューションで、ロンドンに拠点をおくKatana Cryptographic Ltd.が開発・運営しているウォレットだ。About usでは、以下のように紹介されている。

私たちは、シリコンバレーが決して構築しない、規制当局が許可しない、そしてVCが投資することがないようなソフトウェアの作成に人生を捧げてきたプライバシー活動家です。私たちはビットコインに値するソフトウェアを構築します。

ビットコイントランザクションのプライバシーを気にする方の参考になれば幸いである。

いま、暗号学について学習するため、IPUSIRON氏著書である↓を読み進めている。暗号、難しい。

Default image
Keisuke Kuribara
零細企業の代表 / ウェブマーケティング、コンサルティング、EC / 漫画と本が好き / 生物捕獲が趣味 / キーワード:WordPress、Shopify、Googleマーケティングプラットフォーム、Facebook・Google広告、iPaaS