数日の間、Ethereum用のウォレットとしてMetaMaskを使ってみた感想。
まず、ブラウザの上でウォレットが動いているというのが新鮮で面白いなと思った。自分が最後にウォレットを見たのは、ビットコインの最初期の頃に試しに触ってみたお世辞にも出来が良いとは言えないやつで、ギークが頑張って作ったみたいなクオリティだったのだけれど、最近は世界が広がってきて、ブラウザでも動かせるウォレットができたのはすごいと思う。
自分の理解が正しければ、MetaMaskはブラウザ上でウォレットまわりの処理を完結しているので、実際のウォレットデータはどこかの会社にあるということはなさそう。LocalStorage
的な場所に秘密鍵を暗号化して保存し、取引に使っているのだろうと思う。その点、完全に自分のアカウントが自分の管理下にあるというのは面白い。自分はGoogleになんかの拍子にBANされたことがあるので、枢軸となるアカウントが自分の管理下にあるという状態に安心感がある。まあこのへんは思想だと思う。
次に、ウォレットログインの仕組みが面白いと思っている。この mirror.xyz もそうだけれど、ウォレットを使ってログインができるのだ。ウォレットとは要するに公開鍵ペアなので、これで署名を行わせることでユーザの同一性が保証できる。実際、ログインするときにはMetaMaskが「こいつに署名しようとしてるけど良い?」と尋ねてきていて、公開鍵暗号のプロセスが表面に出てきているのが面白いと思う。素直に、これはすごく面白いのでどこかで真似したい。サービス側では、どのフィンガープリントが誰なのかというデータだけ持っておけば良くて、あとはやってくるリクエストの署名をvalidateしていればよい。
MetaMaskとは直接は関係のない要素だけれど、ブラウザ上でスムーズに送金ができたのも面白かった。同僚に1円を試しに送り付けてみたところ、gas代として50円くらい消えていったのも面白かった。Ethereumにおいては、送金を含めた、Ethereumブロックチェーンに変更を強いる全ての操作にはコストが発生する。これをgasと呼ぶ。コストはそれを発生させた人が負担し、実際に計算と検証を行うEthereumノードが受益するという仕組みになっているのだけれど、この規模の送金にかかる費用は数十円で、もうちょっと安いと嬉しいような気もする。とはいえ、国際送金には5000円くらい取られるわけだから、あらゆる国に送金できることを考えるとよっぽど安いとは思う。送金スピードはかなり早くて、2分もかからなかった。
ところで、MetaMaskはEthereum系の暗号通貨専用のウォレットになっていて、ビットコインのウォレットになることができないのがちょっと不便だと思った。暗号通貨として最も普及しているのはビットコインなので、少し不便な感じがする。といっても、暗号通貨は通貨ごとにプロトコルがあるはずなので、実装コストとかを考えるとまあしょうがないのかもしれない。
Web3の素晴らしい脱中央集権的な未来!!みたいな文脈を全て捨象して、単純に便利な暗号通貨として見るならば、金とかと同じくらいに価格が安定してほしいという気持ちもある。メカニズム上そんなに価格は変動しないはずだけれど、投機ができるので激しい売買の対象となっていて、価格の乱高下が起こってしまっている。システムとして便利なのでこういう投機も簡単にできてしまい、結果的にボラティリティが大きいという状態になっている。強権を持った存在がいないので、価格安定のために強制的な力を持った行為はできない。あえて考えるなら、中央銀行のような組織を設立して、価格安定につとめるための資金を募るみたいになりそうだけれど、すぐ破綻すると思う。
もしカレー屋とかに同僚と一緒に行って、立て替えてくれたのを清算するために暗号通貨を使う、という未来があるとしたら何が大事になるか考えてみると、同僚はテックに詳しいはずなので、Kyashが使えるならEthereumもビットコインも使えるはずで、どうしてそうならないかというとやはり手数料とか送金速度、価格の安定性が障壁になると思う。それ以外は、例えばQRコードを表示して送金先を共有できたりと、使い勝手に関してはあまり大差ないと思った。
あとやはり日本円からEthereumに入金するのが手間で、自分はSBIネット銀行を使っているのでダイレクト入金を行うことができてbitFlyerを経由して素早くEthereumをゲットできたけど、普通の人はわざわざ交換所で暗号通貨を買って・・・みたいなことをするのは面倒だと思うから、そのへんのセブンイレブンとかでいきなりEthereumなりビットコインなりが買えたら面白いと思う。出金のために1000円かかるのもかなりダルかった。