Tech

NFT卒業証書はシステムとして成立するのか、作って確かめてみた


NFT卒業証書はシステムとして成立するのか、作って確かめてみた

こんにちは。開発エンジニアのロサリノです。

今回は「NFT卒業証書」というテーマについて、Verifiable CredentialsVC)などの文脈で耳にすることが増えてきたこの仕組みが、実際にシステムとして成り立つのかを確かめるために、最小構成のプロトタイプ(MVP)を作ってみました。この記事では、「こうあるべき」という理想論ではなく、実際に作ってみて、動かしてみて、分かったことを整理して共有します。

目次

  1. なぜ作って確かめてみようと思ったのか
  2. どんな考えで仕組みを設計したか
  3. 実際に作ってみて大変だったところ
  4. 動かしてみて確認できたこと
  5. 作ってみて分かったこと
  6. おわりに

1. なぜ作って確かめてみようと思ったのか

NFT卒業証書という言葉を聞くと、「ブロックチェーンに証明書を載せるもの」というイメージを持つ人も多いと思います。
一方で、そうした説明を目にするたびに、実際の運用まで含めて、本当に成立する仕組みなのかは、あまり具体的に語られていないようにも感じていました。

  • 誰が発行するのか
  • どうやって内容を確認するのか
  • 毎回、学校に問い合わせないといけないのか

こうした部分が曖昧なままでは、実際の証明書として使うのは難しいはずです。
そこで今回は、卒業証書をデジタルで発行し、第三者が自分で内容を確認できる仕組みが作れるか という点を、実際に作って確かめてみることにしました。今回は、「発行 → 学生が持つ → 第三者が確認する」という一連の流れを、最初から最後まで通せるかを検証のゴールとして設定します。

2. どんな考えで仕組みを設計したか

このMVPで一番大事にしたのは、「その証書が本当に正しいものかを、第三者が確認できること」です。PDFの卒業証書は、見た目はそれっぽくても、中身を書き換えようと思えば簡単にできてしまいます。中央のデータベースで管理する方法もありますが、その場合は確認のたびに発行元に頼る必要があります。一方で、ブロックチェーンに直接書き込む方法もありますが、個人情報の扱いや、あとから修正・失効する難しさなど、運用面で気になる点も多くあります。

そこで今回は、決まった形式で書かれたデジタル証明書に、発行元の署名を付けて確認できる仕組みを使うことにしました。
構成としては、

  • 管理者が証書を発行する画面
  • 裏側で証書に署名する仕組み
  • データはブロックチェーンには載せず、別で管理
  • 誰でもアクセスできる確認用の画面
structure of this prototype

という、できるだけシンプルな形です。
ブロックチェーン連携については検討しましたが、今回は「卒業証書として成立するか」を確かめるのが目的だったため、後から追加できる要素として、あえて入れていません。

3. 実際に作ってみて大変だったところ

実装してみて一番時間がかかったのは、卒業証書に書かれている情報を、システムが理解できる形でどう表現するかという部分でした。
例えば

  • 学籍番号
  • 学位
  • 専攻
  • 卒業年月

といった項目は、人が見る分には分かりやすいですが、そのままでは「どういう意味のデータなのか」をシステム側が判断できません。
そのため、

  • 既に使われている表現で置き換えられないか
  • 置き換えられない場合は、意味をきちんと説明する定義を用意する

といった作業を、一つずつ確認する必要がありました。
「自由に項目を追加できる」と思っていた部分も、実際には決まりごとをきちんと揃えないと動かない、というのが正直な感想です。

a picture of backend logic

4. 動かしてみて確認できたこと

作成した証書については、確認用のURLにアクセスするだけで、内容が正しいかどうかを確認できるところまで動かせました。

a picture of top page UI of prototype
  • 発行元に連絡しなくても確認できる
  • 特別なウォレットを持っていなくても確認できる

という点は、卒業証書として使うことを考えると、かなり重要だと感じました。一方で、少し項目を変えただけで確認に失敗するケースも多く、書き方や構造がかなりシビアだということも分かりました。このあたりは、使う側が意識しなくていいように、画面側でうまく隠してあげる必要がありそうです。

5. 作ってみて分かったこと

今回のMVPを通して感じたのは、

  • NFT卒業証書は、アイデアだけでなく実際に作れる
  • 重要なのは「ブロックチェーンを使っているか」ではなく、
  • 見た目以上に、データの書き方や管理のルールが大事

第三者が中身を確認できる仕組みになっているかという点でした。一方で、どこまでを仕組みで担保するか、どこを運用でカバーするかなど、実際に使うにはまだ考えることも多いと感じています。

6. おわりに

NFT卒業証書は、言葉で説明するより、作って動かしてみる方が早いテーマだと思います。今回のMVPは、「卒業証書をデジタルで発行し、第三者が自分で確認できる形にできるか」を一度、最後までやってみた記録です。NFT卒業証書という仕組みが、少なくともシステムとして成立し得ること、そしてそのために考えるべき点がどこにあるのかは、実際に作ってみることで具体的に見えてきました。本記事が、同じテーマを検討する際の参考材料の一つになればと思います。