見出し画像

ブロックチェーンで自己主権型アイデンティティを実現するPolygon IDの解説

前提:ブロックチェーンで個人情報を扱うことの難しさ



ブロックチェーン技術は、その透明性と改ざんの難しさから、革命的な技術として認知されています。しかし、一方でその透明性がプライバシーの問題を引き起こす場合があります。具体的には、ブロックチェーン上の取引情報は公開されており、このアドレスと個人のリアルな情報を関連付けられてしまうと、その人の取引履歴や資産状況が広く公に知られるリスクがあります。

プライバシーに配慮した信頼性の高いデジタルアイデンティティを自分自身で管理する必要性は以前から叫ばれてきたものの、その実現は技術的にも制度的にも難しく、長らくそのようなサービスは普及しませんでした。

しかし、技術の進化と共に、この問題を解決するための新しい試みが現れてきました。現在、注目されているのが、「Polygon ID」というPolygonのブロックチェーンを活用したデジタルアイデンティティプロトコルです。今回の記事では、このPolygon IDの目的や仕組みに焦点を当て、その概要とどのような活用ができそうかを探ってみます。

1,Polygon IDの概要


Polygon IDは、ブロックチェーン技術を基盤とした分散型アイデンティティ管理システムです。このシステムは、分散型IDおよび自己主権型IDの実現を目指しており、ユーザーが自分のデジタルアイデンティティを完全にコントロールを持つことを可能にします。

Polygon IDはIden3とCircom ZKツールキットを使用したオープンソースプロトコルで作られていて、ユーザーのデジタルアイデンティティの安全性や信頼性を確保しています。特に、ゼロ知識証明という技術が直接組み込まれており、これによりユーザーは自身具体的な情報を相手に公開することなく、必要な証明や検証を行うことができます。例えば、自分が成人であることを証明したい場合、具体的な年齢を明かすことなく、成人であることだけを証明するといったことができます。

さらに、Polygon IDは、ブロックチェーンを活用したスケーラブルなアーキテクチャを持っているため、大量のユーザーやトランザクションにも柔軟に対応することができます。そして、その中でパーミッションレスのオンチェーン検証を提供します。現在の技術環境において、これらの条件を全て満たすID管理システムはPolygon IDだけであり、これがPolygon IDを他のシステムとは一線を画す要因となっています。

2,SSI/DIDについて理解する

2-1.自分の個人情報を自分で管理する時代


Polygon IDを理解するためにSSI、DIDの概念を理解する必要があります。

近年、Web3領域を中心にデジタル空間の個人情報の取り扱いについて議論が進んでいます。その中心にあるのが「SSI(Self-Sovereign Identity)」と「DID(Decentralized Identifier)」の2つのコンセプトです。

まず、SSI(自己主権的アイデンティティ)は、は「個人情報はその所有者である個人が最終的にコントロールするべき」という考え方です。従来、私たちの個人情報は行政やサービス事業者などの第三者機関が管理していましたが、SSIでは、各人が自分自身の情報を直接管理・コントロールすることが重視されます。次に、DID(分散型識別子)は個人のオンライン上のIDを、特定の企業や組織のサーバーに頼らず、ブロックチェーンで安全に管理する新しい形式のIDです。DIDを用いることで、ユーザーは自分の情報のアクセスや共有、修正などを自由に行うことができるようになるとされています。

SSIとDIDの登場により、「自分の個人情報を自分で管理する」という新しい時代が期待されていて、このコンセプトを実現しようとしているのがPolygon IDです。

2-2.デジタルアイデンティティを表現するもの


SSIの時代には、デジタルアイデンティティ情報を自分のweb3ウォレットで管理することが想定されます。そして、そのためにブロックチェーンで扱えるデジタルデータにする必要があり、その表現手段としてNFT、SBT、VCなどが想定されています。

・NFTにユーザーの情報を紐づけることも可能です。例えば、個人の特定のスキルや成果、所属などを示すバッジや証明書として活用することが可能です。

・SBTは、NFTを譲渡不可能な仕様にしたものです。NFTは譲渡が可能なため資格情報の転売が可能となりますが、SBTであれば永久に特定の個人に結びつけられる情報を持つことができます。これは、生体認証データや重要なパーソナルデータの保管に適しています。

・VC(検証可能なクレデンシャル)は、公的機関や信頼される組織が発行するデジタル証明書としての役割を果たします。例えば、大学の学位や資格認定などの情報を安全にデジタル化して、第三者に対してその真実性を証明する際に使用されることが期待されています。

3,Expressible claim standard(表現可能な資格規格)とは


Polygon IDでは多様な規格のデジタルアイデンティティを扱うことが可能ですが、公式ドキュメントでは前述した従来型のNFT、SBT、VCには欠点があるため、Polygon ID独自の
「Expressible claim standard(表現可能な資格規格)」が推奨されています。

NFTやSBTは、公開されたウォレットアドレスに関連付けられ、取引情報が公開されているため、プライバシーの観点からは不適切な場合があります。これに加えて、発行コストも高いという欠点もあります。また、従来型のVC は選択的開示とゼロ知識証明の活用によりある程度のプライバシーは守れますが、アプリケーションに必要な表現可能性とコンポーザビリティに限界があると指摘されています。また、ブロックチェーンでのVC 検証は非常にコストがかかるという欠点があります。このような背景からPolygon IDでは「Expressible claim standard(表現可能な資格情報)」と言われるPolygon IDに最適化されたデジタルアイデンティティ規格を選択することができます。

この独自規格は、ブロックチェーンで検証可能です。発行時にはコストがかかりますが、検証時にはかかりません。

4,ゼロ知識証明によるプライバシー保護


Polygon IDは、完全にプライバシー保護されたデジタルアイデンティティを実現するためにゼロ知識証明を利用しています。これによりアイデンティティの所有者は、その情報をサービス提供者などの検証者に明かさずにその情報が真実であることを証明することができます。これによりプライバシーを保護することはもちろん、KYCの効率性を高めることも期待されています。

Polygon IDでのゼロ知識証明の実装には、Circom2.0というツールキットが使用されています。Circom2.0は、zk-SNARKの回路をコンパイルする際の複雑さを大幅に簡略化できるため、ゼロ知識証明の開発と適用をより手軽に行うことができます。zk-SNARKは、非対話型のゼロ知識証明の一種で、非常に小さなサイズの証明を生成し、短時間で検証できる特長を持っています。

さらに、Polygon IDのオンチェーン検証には、zkProofリクエスト言語が使用されています。この言語を利用することで、ゼロ知識証明のプロセスが標準化されており、さまざまなアプリケーションやプラットフォームで使いやすくしています。

5,Polygon IDのアーキテクチャ

5-1.Polygon IDに関わる登場人物


Polygon IDの核心的なアーキテクチャは、検証者、ユーザーウォレット、そして発行者の3つの要素を中心に形成されています。これらは発行、管理、検証のプロセスを通じて密接に関わります。

1. ユーザーウォレット
ユーザーウォレットは、エンドユーザーのデジタルアイデンティティ情報を安全に保管する場所です。Polygon IDを使用することで、ユーザーは自分の情報を主権的にコントロールし、管理することが可能となります。

2. 発行者
発行者は、特定のデジタルアイデンティティ情報や資格をユーザーウォレットに提供する役割を果たします。この情報や資格は、大学、政府機関、企業などの信頼できる組織から発行されるものであり、ユーザーの資格や権限を証明するために用いられます。

3. 検証者
検証者は、ユーザーウォレットが持つデジタルアイデンティティ情報や資格が正当であるかを検証する役目を担います。ユーザーが特定のサービスや機能にアクセスする際に、その権限や資格が正当であるかの確認を行うのが検証者の役割です。

重要な点として、Polygon IDのデジタルアイデンティティ情報は、必ずしもブロックチェーン上に保存されるわけではありません。ブロックチェーンはその情報の検証やトラックのために使用されますが、プライバシー保護のため基本的にはアイデンティティ情報はオフチェーンで管理されます。

5-2.技術スタック


Polygon IDの技術スタックを以下に詳しく解説します。

・Polygon ID Wallet SDK:
これはデベロッパーがユーザーウォレットとの統合を簡単に行えるように設計されたソフトウェア開発キットです。ユーザーがPolygon IDを効果的に使用するためのインターフェースや機能が含まれており、アプリやウェブサイトにデジタルアイデンティティ関連の機能を組み込む際に役立ちます。

・Polygon ID Issuer Node:
発行者(Issuer)はデジタルアイデンティティの情報を正式に発行するエンティティを指します。Issuer Nodeは、これらの情報を発行、管理するためのバックエンドシステムです。これにより、機関や組織が効率的にデジタルIDを発行できるようになります。

・Polygon ID Verifier SDK:
検証者(Verifier)はデジタルアイデンティティの情報の真正性を確認する役割を持ちます。このSDKは、デジタルIDの検証プロセスを効率的に統合・実行するためのツールセットを提供します。

・Polygon ID JS SDK(ベータ版):
JavaScript向けのソフトウェア開発キットです。ウェブアプリケーションやブラウザベースのプラットフォームにPolygon IDの機能を統合する際に役立ちます。

・Schema Builder:
デジタルアイデンティティに関する情報の構造やフォーマットを定義するためのツールです。これにより、カスタムのデジタルIDスキーマを効率的に設計・実装できます。

・Query Builder:
デジタルアイデンティティ情報に対するクエリを作成・管理するためのインターフェースツールです。これにより、特定の情報や属性を効率的に検索・取得することができます。

これらの技術スタックを組み合わせることで、Polygon IDはデジタルアイデンティティの発行、検証、管理を効率的かつ安全に行うためのオープンソースを提供しています。

6,アイデンティティのクロスチェーンブリッジが可能


Polygon IDでは、クロスチェーンメッセージングプロトコルの「Rarimo」を採用しており、デジタルアイデンティティをマルチチェーンで相互運用することが可能になっています。

これにより、Polygon IDでは異なるブロックチェーンごとにデジタルアイデンティティを再発行することなく使うことができるため、ユーザーは一貫したデジタルアイデンティティをEVM互換チェーン全体で利用することができます。現在、Rarimoは、Ethereum、BNB Chain、Solana、NEAR Protocol、Avalancheに対応しており、Polygon IDもこれらのブロックチェーンで相互運用可能です。

Rarimoの詳しい解説記事はこちら
【デジタルアイデンティティの相互運用を可能にするプロトコルRarimoの概要】

7,Polygon IDにより実現可能なこと


最後に、Polygon IDによりどのようなWeb3の世界が実現できるかを解説します。

7-1. プライバシーが保護された身分証明


Polygon IDを使用することで、個人情報を保護しながら、身分を証明することが可能になります。従来の中央集権型のアイデンティティシステムでは、第三者の機関が個人の情報を保有していることが多いため、情報の漏洩リスクが常に存在しました。しかし、Polygon IDではゼロ知識証明などの暗号技術を活用して、個人情報の詳細を公開せずに、その情報の正当性だけを証明することができます。これにより、ユーザーのプライバシーが確保され、安全にアイデンティティ情報を利用することができます。

7-2.パスワードレスログイン


Polygon IDの技術を活用することで、パスワードを使用せずに安全にログインすることが可能になります。従来のログイン方法では、ユーザーがパスワードを忘れたり、パスワードが漏洩するリスクがありました。しかし、Polygon IDを使用すると、ブロックチェーン上のデジタルアイデンティティを認証手段として使用できるため、パスワードのような外部情報を必要とせず、より安全にログインすることが可能になります。

7-3.dApps間のシームレスなKYC


Polygon IDを使用することで、dApps間でのKYCの共有が容易になります。一度Polygon IDで身分を証明すれば、その情報を他のdAppsでも利用することができるため、ユーザーは複数のdAppsで繰り返しKYCプロセスを行う必要がなくなります。

7-4.パーソナライズカスタムサービス


Polygon IDのデジタルアイデンティティを活用することで、ユーザーに合わせたカスタムサービスを提供することができます。ユーザーのプロフィールや好み、活動履歴などの情報を基に、サービスや商品の提案、カスタマイズされたUI/UXを提供することが可能となります。もちろんこれらは従来型のWeb2とは違い、顧客情報をサービス提供者に渡すことなく実現可能です。

7-5.Botの排除


Polygon IDを利用することで、Botや不正アクセスを効果的に排除することができます。従来のシステムでは、Botによる不正アクセスを防ぐためのCAPTCHAなどの手段が必要でしたが、Polygon IDでは、ブロックチェーン上のアイデンティティを用いてユーザーが人間である正当性を確認することができるため、自動的にBotの排除が可能となります。

8,感想:自己主権アイデンティティがなぜ重要だと思うか

Polygon IDのリサーチは面白かったです。前回のRarimoの技術がPolygon IDも使われてるとのことで勉強し始めたんですが、もうこれ早く普及してくれって思いました。

Web3ネットワークで個人情報を検証できるようになると、これまで実現できなかった様々なサービスの提供が可能となりますし、web3の社会実装を考えてもzkKYCは重要な要素だなとも思います。 
さらに踏み込んだ話をすると、現在のweb3は「分散化」が十分に機能してるとは言い難い状況で、分散的な仕組みに欠陥があったり、それを避けるために中央集権的な側面が残っているのが現実です。そのためweb3でサービスを利用しようとする際にはある程度の集権性を許容されているのが現実で、この状況は今後も一朝一夕で変わるものではないでしょう。おそらく中央集権か分散化かの二元論ではなく、目的や場面に応じた手段として適時適切に使い分ける必要があるためWeb3と言えど、集権性を完全に排除することは適切ではないのかもしれないというのが、最近考えてる僕の仮説です。(この辺りもいずれ詳しく書いてみたいと思ってます。)そのため、今後は、透明性の強化、ユーザーの適格性の検証、自己主権性の実装といった要素は、web3の集権的な側面を僕らがある程度許容するために、より一層重要になっていくのではないでしょうか。

このような考えから、SSI関連のプロジェクトに興味を持っていくつかリサーチしていましたが、その中でも個人的にPolygon IDは、よくできたプロダクトだなと感じました。まだまだネットにも情報が少なく、今回は公式ドキュメントの情報を基にリサーチを行ったため、Polygon IDに関して客観的な意見や評価については興味のあるところです。ぜひ詳しい方のご意見を聞いてみたいです。

この記事が気に入ったらサポートをしてみませんか?