こんにちは。えいきち(@Eikichi_WLI)です。
Internet ComputerにあるDApps(分散型アプリケーション)で遊ぶためには、Internet Identityが必要です。
Internet Identityを使えば、たった1つのIDでInternet Computer上にある様々なアプリに、指紋認証、顔認証、YubiKeyなどのハードウェア・セキュリティ・モジュールで簡単にログインすることができます。
この仕組には、WebAuthn(ウェブオースン)と呼ばれる技術が活用されていてアプリごとにパスワードを用意しなくてもOK。
ユーザーはいよいよパスワード地獄から開放され、アプリを提供する企業はユーザーのパスワード流出を守るためにコストをかけなくても良くなります。
そこで、公式記事”Hou to use Internet Identity”をもとに、Internet Identityを新規登録する方法、追加登録する方法、そして、Internet Identity管理の注意点4つについて解説します。
Identity Anchorは単にIDだけで無く、自分の財布としての役割も持ちます。
要するに、自分の銀行口座の番号や暗証番号のような機能面もある。
なので、「アプリケーションからログアウトされて、二度と入れなくなった!」なんてことにならないように、公式の推奨設定やリカバリーメカニズムの設定についても解説しますね。
目次
Internet Identity登録前の事前準備
Internet Identityはパスワードの代わりに、指紋認証、顔認証、セキュリティモジュールでのログインが必要です。
そのため、あなたが保有しているデバイスが指紋認証や顔認証機能がなければ、yubikeyなどが必要になります。
詳しくは次のとおり。
基本はセキュリティモジュールが無くてもログインできますが、Windows(Windows Hello認証が無い)パターンであれば必要になります。
公式には”a portable HSM, such as a YubiKey or Ledger wallet”と書かれており、YubiKeyや、ハードウェアウォレットのLedger walletが、セキュリティモジュールとして紹介されています。
価格が安いのはYubiKeyだったので、こっちにしました。
Yubikeyは今回初めて購入したのですが、アメリカ国防総省へ販売実績、グーグルでのフィッシング詐欺0の成果など、実績は十分。
USB-Aのタイプで、NFCやOTP(ワンタイムパスワード機能)が付いているタイプのものがこちらで、僕はこれを購入しました。
USB-Cタイプのものが良ければ別の機種になるため注意です。
ツイッターを見ていると、同じくUSB-Aタイプで少し安価のこちらを選んでいる方もいました。
これにもNFCが付いていてスマホでも使えますね。
セキュリティキーが届けば、次のStepへ行きましょう。
Internet Identityを新規登録しよう
まずは、Internet Identityの新規登録方法を解説します。
※スマホの画面で解説しますが、PCでも基本的な流れは同じです。
①Internet Identityページへ行く。
②「New?Create an Internet Identity Anchor]をおす

③Device nameへ「スマホ」など、適当な名前を入力してCreateをおす

③指紋認証(や顔認証)で認証する。
④画面のとおり英数字を入力したあと、Confirmをおす

「Congratulations!」と出れば無事に作成完了です。
Identity AnchorのログインIDのようなもの。
忘れると一生ログインできなくなるので、メモ必須です!
⑤Continueを押す

⑥「Add a recovery mechanism to an Identity Anchor」を押して、リカバリーメカニズムを登録を開始する


iOSの場合は画面のような注意書きが出てきます。
「ウェブサイトデータや履歴をクリアしてしまうと、Internet Identityでログインできなくなります。複数のデバイス登録や、リカバリーメカニズムの登録を推奨します。」
怖すぎますので、色々遊ぶ前に必ずリカバリーメカニズムや、Internet Identityの追加登録をしておきましょう!
Internet Identityのリカバリーメカニズムを設定しよう
というわけで、続いてInternet Identityのリカバリーメカニズムを設定していきましょう。
リカバリーメカニズムは2つの方法を選べます。
✓Seed Phrase(シードフレーズ) によるリカバリー
✓セキュリティキー(Yubikeyなど)によるリカバリー
より安全なのはセキュリティキーです。
このタイミングでどちらを選んでも、後から設定追加もできます。
Seed Phraseによるリカバリー
①Seed Phraseをおす

②Your seed phraseに書かれた内容をメモして、Copy⇒Continueをおす。

これで完了です。
めちゃ簡単ですね。
ちなみに、ブロックチェーンは黎明期で規制が整っていない範囲も多く、世界のあちこちでハッキングをよく聞きますし、ハッキングにあったときに補填してもらえるサービスもまだまだ少ない印象です。
なので、Seed Phraseは必ずオフラインにて管理をしましょう!
セキュリティキーによるリカバリー
セキュリティキーはYubikeyで解説します。
①Security Key をUSBポートに差す
②Security Keyをおす

③USBセキュリティーキーを選択する。

④セキュリティーキーで設定したPINを入力して、次へをおす
※PINの初期設定についてはYubikeyの公式サポートをどうぞ。

④セキュリティキーにタッチする。
以上で、セキュリティキーの登録ができました。
Internet Identityを追加登録しよう
では、Internet Identityの追加登録の方法を解説します。
まず、新規登録で登録済みしたデバイス(デバイスA)と、新たに追加登録したいデバイス(デバイスB)の2種類準備しましょう。
登録済みデバイス:デバイスA
新たに追加登録したいデバイス:デバイスB
両方を操作しながら登録追加をしていきます。
まずは、デバイスAの操作から。
①デバイスAで、Internet Identityページへ行く
②使用するIdentity Anchorを入力し、Authenticate(証明)をおす

③ADD NEW DEVICEをおす

④新たなデバイス追加のため、Remote Deviceをおす。

この画面になれば、デバイスBの操作へ移ります。
15分以内に操作完了しないとやり直しになります。

⑤デバイスBでInternet Identityページへ行く。
⑥Already have an anchor but using a new device?をおす

⑦②と同じIdentity Anchorを入力し、Continueをおす

⑦デバイス名(例:Macなど)を入力し、Continueをおす

⑧Device Verification Codeをメモする。

⑨デバイスAの画面が自動で切り替わるので、Verification Codeを入力しVerify Deviceをおす

これで完了です。

既存のデバイスと連携しないと、新たなアカウントを追加作れない仕組みですね。
アカウント番号だけ盗み見られても、アカウントが乗っ取られないようになっていますね。
【必見!】Internet Identity管理の注意点を知ろう
Internet Identityは新しい仕組みなだけに、今までのパスワード管理とは全く別の注意点があります。
最悪自分のInternet Identityを失う危険性もあるため、公式FAQで推奨されている管理方法や今までのパスワード管理と大きく変わることについて解説します。
複数のデバイスでIdentity Anchorを登録しておこう
必ず複数のデバイスでアカウントを作りましょう。
「If I lose my device, can I still use Internet Identity?」のとおり、Internet Identityをたった1つのデバイスのみに関連付けている場合、そのデバイスを紛失すると二度とログインできません。
また、ウェブサイトデータや履歴を削除することで、すべてのデバイスからログアウトされると、シードフレーズを入力してアカウント回復を設定しない限り、ログインできなくなります。
必ず、複数デバイスでのアカウント作成をしておきましょう!
シードフレーズを忘れたら誰からも教えてもらえない
シードフレーズは自分が忘れたら、誰からも教えてもらえません。
シードフレーズをInternet Computer側が管理していないため、今までのパスワード以上に自分での管理が重要になります。
自分が失ってしまうと、誰からも助けてもらえません。
従来のアカウントのようにパスワードの再発行のように、Identity Anchorを再発行する仕組みはないんですよね。
個人情報が流出しないメリットがある反面、自分でパスワードにあたるシードフレーズをきちんと管理していくことが求められます。
シードフレーズは絶対的に安全ではない
「 Is a recovery phrase as safe as a recovery FIDO device?」によると、シードフレーズをデバイスで入力するときはブラウザを経由することになるため、ブラウザやOSによって盗まれる可能性は0ではないとのこと。
なので、少なくともシードフレーズはオフライン管理が大切。
iCloudにあるメモや、グーグルドライブでは無く、普通に紙で記載がいいと思います。
Internet Identityに入れている金額(財布の中身)によっては、ラミネートで字が消えないように保管するなど、より厳重な安全管理をしておくのが無難だと思います。
さらに、より安全に管理するためには、YubikeyやLedgerNanoのようなセキュリティモジュールを使う方法になります。
これを使用すると秘密鍵がデバイスから出ることが無く、実際のFIDOデバイスが物理的に盗まれない限り、アカウントをハックされることは無いとのこと。
アプリケーションによってIDは追跡されない
「Does Internet Identity share my anchor or personal information with DApps?」に書かれているとおり、アプリケーションにIDが追跡されない仕組みを使っているようです。
なので、アプリ側に趣味嗜好が全て見られるなんてことはありません。
安心して1つのアカウント(Identity Anchor)を使いこなせますね。
ICPのアプリケーションを触ってみよう
さてさて、無事に新規・追加登録できましたでしょうか?
同一IDでパスワードも必要無く次々とサインインできるのは、地味に感動しませんか?
Phoneのパスワードレス機能「Passkeys」が先日発表されましたが、WebAuthn技術はここにも使われているようです。
アップルやマイクロソフトなどビックテックも積極的に取り入れようとしている技術より、実はInternet Computerの方が世の中の一歩先を進んでいます。
ユーザー側、提供者側の双方にとってメリットがあるので、このパスワードレスの流れは世の中へ浸透してくでしょう。
「パスワードさよなら」と言える時代がもうすぐ来そうで楽しみですね。
ではでは、ICPにてInternet Identity体験してみてください。
icApppsというICPのアプリまとめサイトや、産学研究PJ『C3F』がまとめてくださった総合リンク集から色々覗いてみると面白いと思います。
✓スマホ ⇒ 指紋認証や顔認証でログイン
✓Mac OS ⇒ Touch IDにて、指紋認証でログイン
✓Windows (Windows Hello認証アリ) ⇒ Windows Hello認証でログイン
✓Windows(Windows Hello認証ナシ) ⇒ セキュリティモジュールが必要