ウォレット暗号資産

キーレス&シードレスのセルフカストディウォレット「Bitizen Web3 Wallet」の解説

ウォレット
スポンサーリンク

FTX事件がきっかけで、セルフカストディウォレットを利用する動きは再び高まっています。Bitizen Web3 Wallet では、ソフトウェアウォレットでありながら、ハードウェアウォレット並の安全性をもたらす取り組みを行っています。

Bitizen Web3 Wallet の概要

Bitizen Web3 Wallet(以下、Bitizen)は、キーレスかつシードレスのセルフカストディウォレット(ノンカストディアルウォレット)です。

従来のウォレットのリスク

暗号資産では、秘密鍵でトランザクションに署名することにより送金を実行します。この秘密鍵をいかに安全に保管できるかが、資産の安全性を強さを決定づけます。

ウォレットの種類は、大きくソフトウェア方式とハードウェア方式に分かれます。ソフトウェア方式では、秘密鍵はスマートフォンやPCのような、多くの場合オンラインになっているデバイス上で管理されます。トランザクションへの署名が簡単なので使い勝手に優れるものの、何かしらの不正操作や操作ミスによって秘密鍵が流出してしまうリスクを負うことになります。一方でハードウェア方式では、秘密鍵は専用デバイスの上で管理され、常にオフラインになっています。そのため、ウォレットそのものへのハッキングリスクがないものの、トランザクションに署名するたびに専用デバイスを操作する必要があり、使い勝手は良くありません。

このように、ウォレットのソフトウェア方式とハードウェア方式では、使い勝手とセキュリティはトレードオフの関係にあります。そして両者に共通するリスクが、シードフレーズを人目がつかないところで長期間かつ安全に保管しなければいけないという点です。シードフレーズのメモを絶対に紛失させないというのは、几帳面な人にですらハードルは高いものです。結局のところ、いずれの方式のウォレットついても、ユーザーが最大のセキュリティリスクとなります。

Bitizen Web3 Walletのアプローチ

Bitizenでは、ソフトウェア方式の使い勝手をもたらしながらも、ハードウェア方式レベルのセキュリティを確保したウォレットを実現します。

Bitizenは、ユーザーから秘密鍵とシードフレーズの管理を取り除く「キーレス、シードレス」を謳っています。ユーザーのデバイスには秘密鍵が存在せず、かつユーザーは秘密鍵そのものやシードフレーズを知ることすらないため、従来のウォレットに存在していたユーザー要因のセキュリティリスクの排除を実現します。このようなことは「分割された秘密鍵(キーシェア)を安全に生成し、署名時に各ノードが秘密鍵の全体を知ることなく安全に署名する技術」によって実現されます。Bitizenでは、キーシェアの保管先がユーザーのデバイスとBitizenのサーバーになる他、ユーザーが用意するセカンダリデバイスを指定することもできます。

Bitizen Web3 Wallet の特徴

キーレス・シードレス

Bitizenでは「キーレス、シードレス」を謳っています。ユーザーが秘密鍵を保持せず、秘密鍵やその元となるシードフレーズを知ることがないため、従来のウォレットにおける単一障害点を排除することができます。

Bitizenは、ウォレットの秘密鍵の作成において、分散鍵生成 (Distributed Key Generation: DKG) プロトコルを使用します。DKGでは、秘密鍵が2つまたは3つのデバイスにまたがった状態で、分割されて生成されます。これにより、デバイスが単一の秘密鍵を持ち、そこから秘密鍵が流出することを防ぐことができます。また、トランザクションへの署名では、しきい値署名方式 (Threshold Signature Scheme: TSS) とマルチパーティ計算 (Multi-Party Computation: MPC)技術を利用します。トランザクションを実行する際に、ネットワーク上に散らばった秘密鍵を、ノードの安全な領域に集めて署名を実行します。

サーバーに頼らない署名が可能

Bitizenでは、トランザクションへの署名を行う当事者は少なくとも2デバイスになります。

ユーザーが新しいBitizenをセットアップすると、スマートフォンとBitizenサーバー上にそれぞれ分割された秘密鍵(キーシェア)が生成されます。Bitizenサーバー上のキーシェアは、暗号化されており、Bitizenプロジェクトですら内容を把握できません。しかし、サーバー上に保管されたキーシェアは永続するわけではなく、またユーザーがサーバーを信用しているとも限りません。

そのため、Bitizenにはサーバーに頼らないオプションが用意されています。ユーザーは手持ちのセカンダリデバイスを使って、追加でキーシェアを生成することができるようになっています。そして、ユーザーは、連署者にサーバーに含めるか、自分の手持ちのデバイスのみにするかを選択することができます。後者にした場合、連署者からサーバーを排除することができるため、検閲体制が高い安全な取引を実現することができるようになります。

DAppsを利用できる

Bitizen以外にも、分割された秘密鍵(キーシェア)を生成し、トランザクション時に安全に署名することができるウォレットは、まだ数は多くないものの一定数が存在しています。しかし、エンタープライズ寄りの製品になるため、入出金にしか対応しておらず、限られたトークンのみの対応など、DAppsの利用が前提となっていませんでした。

BitizenではマルチチェーンおよびWalletConnetに対応しており、DApps利用を想定した作りになっています。また、そのために任意のトークンにも対応できるようになっています。2022年12月現在、Bitizenが対応できるチェーンは以下の通りです:

Bitcoin, Ethereum, BNB Smart Chain, Polygon, Avalanche C-Chain, Fantom, Optimism, Arbitrum, Aurora, Gnosis, KardiaChain, TomoChain, KuCoin Community Chain, OKChain, HECO, Bitgert, およびEVM互換チェーン(RPC追加で対応可)

ウォレットの復元にソーシャルリカバリーを利用

Bitizenでは、ウォレットの復元には従来のようなシードフレーズではなく、ソーシャルリカバリーを利用します。

ソーシャルリカバリーでは、メールアドレスや電話番号、顔情報、クラウドストレージ上(iCloudもしくはGoogle Drive)のバックアップファイルを利用します。また、ウォレット所有者が死亡した場合を考慮して、顔情報には友人や家族など、第三者の顔情報を含めることができます。

Bitizen Web3 Wallet の操作例

ウォレットの初回設定

ウォレットをダウンロード(iOS, Android)した後、Bitizenを起動します。

ウォレットのそのものは、「Create」をタップして、規約に同意するために「Agree」をタップするだけで作成されます。

しかし、このままだと万が一のトラブル時にウォレットの復元ができなくなるので「Back Up Now」からウォレットのバックアップを実行します。

最初に、ウォレットとメールアドレスの紐づけを行います。メールアドレスを入力すると、確認番号が記載されたメールが送られるので、6桁の番号を入力します。

そして、その後に顔情報を取得するためのプライバシーポリシーを読んで「Next」をタップします。プライバシーポリシーでは、顔情報が匿名のまま取得され、暗号化される旨が記載されています。また、顔情報の取得はKYCではなく、実名を必要としません。

顔情報を取得するためにカメラで顔をスキャンします。「Next」をタップして「CNABLE CAMERA」でカメラを起動します。

その後、「I’M READY」をタップしてビデオセルフィを取得します。ビデオセルフィでは、最初は遠め、そして近めの顔情報を取得します。ビデオセルフィによって取得されるのは、顔の特徴のみであり、ビデオや写真ではありません。

最後に、ウォレットの復号化キーをオンラインストレージに保存します。復号化キーの保存先にはiCloudやGoogle Driveを選ぶことができます。

ウォレットの復元例

ウォレットの復元の要領も、ウォレットの初回設定と似ています。

ウォレットを復元するために「Restore」をタップして、規約に同意するために「Agree」をタップすると復元手順が始まります。

最初に、ウォレットで利用していたメールアドレスを入力します。

確認番号が記載されたメールが送られるので、6桁の番号を入力します。

その後、顔情報を確認するためのプライバシーポリシーが表示されるので「Next」をクリック、さらに「Next」をタップしてビデオセルフィを実行します。ビデオセルフィでは、最初は遠め、そして近めの顔情報を取得します。ビデオセルフィによって取得されるのは、顔の特徴のみであり、ビデオや写真ではありません。

続いて「Enable Device Lock」をタップします。復号化キーを置いているオンラインストレージを選択して「Next」をタップすると、ウォレットが復元されます。

このように、Bitizenではウォレット復元でシードフレーズが使われません。使われるのは、メールアドレスと顔情報、復号化キーになります。

Bitizen Web3 Wallet に関する情報

 

スポンサーリンク
この記事を書いた人

TOKEN ECONOMISTのDirector。「ブロックチェーンによる少し先の未来を魅せる」をポリシーに、注目しているプロジェクトの紹介やインタビューを行っています。

Junya Katoをフォローする
TOKEN ECONOMIST(トークンエコノミスト)
タイトルとURLをコピーしました