今日は9月21日、昨日の夕方に関東圏で外歩いていた方居ますか?30分間ぐらいだったと思うんですが、局地的なゲリラ豪雨に見舞われて靴もズボンもずぶ濡れになるというなんとも萎えな件がありました。しかも傘買って歩いて、店入って出たら雨止んでるし、地上歩かなくても地下で繋がってたという、、笑笑
ちなみにまだ昨日のOhayoを読んでいない方はぜひこちらから↓
今回お話しようと思うのはまたまたfriend.techがちょいと絡んでまして、触ってみた方たちなら分かると思うんですが、あれ自分のウォレット接続はできなくて基本的にアカウントに紐づいて新規ウォレットが内部で作られる仕組みでしたよね。
そこで使われているサービスがありまして、タイトルにもある「Privy」ってやつ。今日はこのPrivyについて類似サービスと比較しながら紹介していきます。内容的に今回はサービス設計者目線で書いています。
ブロックチェーンに触れたことはないがインターネットを十分に使いこなせる環境にある、いわゆるWeb2ユーザーをどのようにWeb3的な環境にオンボーディングするかはずっと課題として残されています。
まずネックな部分はブロックチェーンに関する知識が一定数必要だということ。例えば従来のパスワードとは一味違う特性を持った「秘密鍵」ベースのアカウント管理をや、同じトークンでも「ネットワーク」が異なると送受信できないなど。その中でも秘密鍵の部分に付随する「ウォレット」生成、管理のハードルは次の10億人をオンボーディングするために超えなければいけない壁として立ちはだかっていました。
そこを解決したのがソーシャルログイン(Google、X、LINEなど)でウォレットが秘密鍵を管理しなくても生成できる「Wallet-as-a-Service(WaaS)」です。有名どころのプロダクトだと「Web3Auth」や「Magic」などが挙げられます。
今回紹介する「Privy」も提供しているサービスの大枠はおんなじで、Googleなどのアカウントを利用してウォレットを作成可能です。ではどんな点がユニークなのでしょうか?早速PrivyのDocsを順番に見てみましょう。
Privyとはメールアドレスはもちろん、電話番号認証を用いたSMS、ウォレット、ソーシャルアカウントでのログインインターフェースを提供しているサービスです。開発者はSDKを使うことで約10分で導入可能らしく、Web3ユーザーはもちろん、Web2ユーザーのオンボーディングを簡単に行うことができます。
ログイン認証時に表示されるモーダルもカスタマイズ性が高くサービスのロゴを使用することも可能で、FiatからのOn-rampやトークンゲート、ホワイトリスト機能も有料ですが利用できます。
対応しているチェーンは、Arbitrum、Arbitrum Goerli、Avalanche C-Chain、Avalanche Fuji、Base、Base Goerli、Celo、Celo Alfajores、Ethereum、Ethereum Goerli、Ethereum Sepolia、Linea、Linea Testnet、Optimism、Optimism Goerli、Polygon、Polygon Mumbaiとテスト、メインネット共に幅広く対応しています。
次は違いがあるかもな秘密鍵管理の裏側の仕組みを、
秘密鍵と公開鍵をクライアント側で生成
秘密鍵をシャミアの秘密分散法(Shamir Secret Sharing)を用いて3つに分割
ユーザーデバイス
Privy(認証トークンによってゲート済みのもの)
回復デバイス
署名時にはサイト上のiframeを使用して計算し署名を生成、この時アプロケ^ション側から情報を閲覧したり秘密鍵にアクセスすることはできません
ユーザーが新しいデバイスからログインしたり既存のデバイスを紛失した場合でも、ウォレットの復元は可能
大枠の部分は他のサービスと変わりないですね、ちなみにシャミアの秘密分散法などのしきい値秘密分散法を用いて秘密鍵管理を行うウォレットのことはMPC(Multi-Party Computation)ウォレットと呼ばれています。
仕組みの違いがあまりなかったので料金部分もちょいと見ておきますか。
無料枠
Web3Auth: 1,000MAW
Magic: 1,000MAW
Privy: 300MAW
廉価プラン
Web3Auth: 69ドル(3,000MAW以降は0.03ドル/MAW)
Magic: なし
Privy: 99ドル(2,500MAWまで)
高価プラン
Web3Auth: 399ドル(10,000MAW以降は0.025ドル/MAW)
Magic: なし
Privy: 299ドル(10,000MAWまで)
従量課金プラン
Web3Auth: 0.04ドル/MAW
Magic: 0.05ドル/MAW(5,000MAWまで)、以降0.1ドル/MAW
Privy: なし
よって以下のような使い方がベストですね。
少人数ユーザーで最大限に無料版を試したい場合
→ Web3Auth、Magic
2,000~3,000MAWを想定する場合
→ Web3Auth
10,000MAW以内を想定する場合
→ Privy
10,000MAW以上の大規模な利用の場合
→ Web3Auth
最後の大規模な利用の場合は各社ともにエンタープライズ版を問い合わせて見積もり価格での提供をしているようで、大口だとかなりディスカウントが効く場合があり、一概にWeb3Authが良いとは言えませんが公開価格ではMAWあたりの価格としては最安値で利用できます。資金調達を豊富にしているMagcが割高なのはびっくり。
他にもWaaS系は増えてきているので、ぜひサービス設計時の参考に少しでもなると嬉しいです!ではでは今日はここらへんで、、!
メールアドレスを登録すると朝晩のリサーチをいまなら毎日無料で受け取れます。ぜひこれを機に登録をお願いします!まだ昨日の夜のニュースレターを見ていない方はぜひこちらから見てみてください↓