DUOLABS
ポートフォリオ

分散型ID認証サービス

通信キャリアの統合アカウント認証にブロックチェーン台帳を試験的に組み込んだ分散型本人認証サービスで、アプリ側の認証フローを作りました。中央サーバーが本人情報を管理していた構造を、ブロックチェーンによる検証に置き換えてみる試行事業でした。認証要求から検証結果まで、アプリ、サーバー、ブロックチェーン台帳がかみ合っているため、どこか一か所の処理状態がアプリの画面とずれると、ユーザーは認証が終わったのか分かりません。アプリは別の開発者と機能を分けて共同で作り、サーバー開発者と連携箇所を調整しました。

Launch
2018
Client
韓国の通信キャリア
Type
銀行・認証

01 / 04

中央サーバーの代わりにブロックチェーン台帳で確かめる本人情報

通信キャリアの統合アカウント認証サービスにブロックチェーン台帳を試験導入する事業で、認証フローとブロックチェーン台帳をつなぐアプリ機能を実装しました。分散型ID認証では、一社のデータベースが単独で身元を保証するのではなく、改ざんの難しいブロックチェーン台帳の記録と公開鍵署名で検証します。ユーザーの本人情報と認証状態がブロックチェーンによる検証の流れと結び付くよう、アプリ側の処理構造を組みました。分散型ID(DID)という言葉が広く使われる前に、中央管理の代わりに分散構造で本人を確認する方式を試した試行事業でした。

中央サーバーの代わりにブロックチェーン台帳で確かめる本人情報
02 / 04

認証要求から検証結果までアプリが示す段階

分散型本人認証アプリでは、ユーザーが認証を要求し、検証結果を確認します。その間のブロックチェーンの処理状態とサーバー応答をアプリの状態に結び付け、ユーザーが認証の進み具合と結果を画面で確かめられるようにしました。中央サーバー中心の認証とは異なる分散型の構造を、アプリの画面とロジックの両方に反映しました。

認証要求から検証結果までアプリが示す段階
03 / 04

公開鍵と署名で検証できる形につながる認証情報

分散型本人認証アプリでは、認証情報が単に送られて終わるのではなく、検証できる状態につながるよう、公開鍵ベースの構造でアプリのロジックを組みました。非対称鍵、署名、認証状態の検証のようにセキュリティに関わるロジックには、以前の生体認証プロジェクトで扱った公開鍵ベースの認証の経験を生かしました。このアプリのロジックは、サーバーとブロックチェーンの連携の流れに合わせて設計しました。

公開鍵と署名で検証できる形につながる認証情報
04 / 04

アプリ・サーバー・台帳がかみ合う箇所の共同調整

ブロックチェーン本人認証サービスは、サーバーの比重が大きい構造でした。サーバー開発者と、ブロックチェーン台帳の連携、認証の要求・応答、エラー状態の処理のように、アプリとサーバーがかみ合う箇所を一緒に調整しました。アプリはもう一方のプラットフォームの開発者と機能を分けて共同開発し、プラットフォームが違っても同じ認証ポリシーとユーザーの流れになるよう仕様を合わせました。

アプリ・サーバー・台帳がかみ合う箇所の共同調整

この仕事のポイント

01

認証要求から検証結果の確認までつながる分散型本人認証フロー

02

ブロックチェーンの処理状態とサーバー応答をアプリの状態へ移す連携

03

公開鍵・署名ベースのセキュリティロジックと認証状態の検証

インサイト

ブログをすべて見る