激しい仕様変更を乗り越える!産学連携で挑む実装の裏側と展望
──実際の共同研究・開発はどのように進められましたか。
萱間:毎週水曜日に2~3時間のミーティングを行っていました。当初は4時間ほどかけていましたが、現在は効率化されています。1週間を一区切りとするスプリントのような形式です。
当初は厳密なスクラム開発を目指しましたが、有志による活動であるため、メンバーが週に割ける時間を確認し、それに応じてタスクを割り振る柔軟なスタイルに落ち着きました。
竹村:私にとっては本格的なチーム開発への参加は初めてでした。初期段階で丁寧なチームビルディングを行っていただき、スクラム開発の進め方を学べたことで、その後の開発が非常にスムーズに進みました。
──開発していく中で苦労したポイントについて教えてください。
萱間:メンバーの時間を調整するのが一番の難所でした。固定された稼働時間がない中で、いかに全員が「作りたいもの」に集中できる環境を作るか、今も試行錯誤を続けています。
竹村:時間調整でいうと、卒業論文の時期と重なり時間の確保が難しい場面もありました。技術面では、VCの標準仕様や周辺プロトコルが現在進行形で更新されているため、最新の動向をキャッチアップし続けるのが大変でした。
また、ウォレット側をモジュール化して差し替え可能な設計にしていますが、プロトコル自体が密結合な部分もあり、分離の境界線をどこに引くべきか悩みました。これらは黎明期の技術ならではの挑戦だったと感じています。
萱間:開発開始以来、標準仕様が何度も変更されました。苦労して実装した機能が仕様から消えてしまうこともありましたが、その変化に波乗りするように対応していくダイナミックな開発は、非常にエキサイティングでした。
しかし、学生のみなさんの熱意には圧倒されました。純粋な学問的好奇心から技術を追求し、ソフトウェアを開発する姿勢は、私自身も「すごく良いプロダクトを作りたい」と強く刺激を受けました。ピュアな熱は、すごく大事だなと今回感じました。
──竹村さんは研究者の視点から、こだわったポイントはありますか。
竹村:単にSDKを作るだけでなく、具体的なアプリとライブラリを同時並行で開発する手法を採りました。その過程で「プライバシーの観点から、この実装は譲れない」という議論が学生側から活発に出ましたね。
「利便性は高いが、現在のVC技術ではプライバシーに課題が残る」といった発見は、そのままアカデミアの研究テーマになります。実際に私の研究室では、共同研究で見つかった課題に取り組む学生が増えており、産学連携ならではの素晴らしい成果だと感じています。

──今後の「Trust Knots」および「VC Knots」の展望を教えてください。
萱間:VC Knotsを公開後の反響はまだあまり多くはないのが現状です。積極的な情報発信が必要な段階だと認識しています。
竹村:いかに広めていくかが今後のチャレンジです。研究室では、学部1、2年生が最初に取り組む教材としてこのライブラリを活用しています。身近にメンテナンスされたライブラリがあり、開発した先輩が身近にいる環境は、世界的にも非常に恵まれていると思います。
萱間:今後のVC Knotsに関しては、相互運用性が非常に重要だと思っています。VCそのものを発展させることは、私たちが独りよがりにできるものではなく、さまざまな企業や団体と協力して初めて実現するものです。
そのためVC Knotsは、他のプロダクトとしっかり相互接続性、相互運用性を確認していきたいと思っています。相互接続の確認には2つの観点があります。1つは、OpenID for Verifiable Credentials(OID4VC)が提供しているコンフォーマンステストに準拠すること。もう1つは、各プロダクトを持っている企業とコンタクトを取って、実際にVC Knotsを使っていただき、うまくつながるかどうかを一緒に確認することです。
Trust Knots全体としては、企業や学生を交えたアイデアソンを計画しています。ビジネス現場でのVC活用アイデアをVC Knotsでプロトタイプ化し、実社会の実装へ近づけたいです。そこで浮き彫りになった課題を標準化団体や政府へフィードバックし、セキュリティやプライバシーの観点から提言を行うサイクルを回していきたいと考えています。
──最後に、読者に向けてメッセージをお願いします。
萱間:一番はGitHubにアクセスしていただきたいです。もし敷居が高いと感じる方は、まずは「VC」について検索してみてください。身近な課題と技術の接点に気づいていただければ嬉しいです。
竹村:VCの普及によって、世の中がより安全になる世界を目指しています。そのために、まずはこの技術を知っていただき、ご自身のプロジェクトや業務で活用できないか、検討していただけますと幸いです。

