Verifiable Credential Rendering Methods(VCの表示方法に関する標準)について その2

ニュース原文:https://www.w3.org/TR/vc-render-method/#templaterendermethod

2025年10月にW3Cから公開された 「Verifiable Credential Rendering Methods v1.0」 は、Verifiable Credential(VC)を「人間に見える形」にするための標準仕様です。これまでのVC仕様はデータ構造の標準化が中心でしたが、今回の仕様は “どう表示するか(Rendering)” に焦点を当てています。

その概要については前回の記事でご紹介したので、今回は少し踏み込んで、実際に標準化を検討されている仕様の内部に迫りたいと思います。

前回の記事はこちら:

Verifiable Credential Rendering Methods(VCの表示方法に関する標準)について その1

ニュース原文: Verifiable Credential Rendering Methods v1.0 http://www.w3.org 2025/10/30にVCを表現するための標準規格のドラフトの初版が公開されま […]

VCの表現方法を定義する新たなプロパティ

今回の仕様書では、renderMethodという名前のプロパティが新たに定義されています。その定義を見てみましょう。

The value of the renderMethod property MUST specify one or more rendering methods that can be used by software to express the verifiable credential using a visual, auditory, or haptic mechanism. Each renderMethod value MUST specify its type, for example, TemplateRenderMethod. The precise contents of each rendering hint is determined by the specific renderMethod type definition.

ということで、renderMethodは、typeプロパティを含むプロパティで、VCの視覚的、聴覚的な表現方法を定義します。各ウォレットはVCを描画する際にこの項目を見てどのようなユーザビリティとするのかを決定するという形です。

type①:TemplateRenderMethod

先ほどご紹介したrenderMethodのtypeの1つがTemplateRenderMethodとなります。TemplateRenderMethodはVCをHTML・SVG・PDFなどのテンプレートに「埋め込んで可視化」する方法を定義します。

たとえば、大学の卒業証書VCを発行する場合には、

  • 大学ロゴ入りのデザインテンプレート(SVGやPDF)を用意
  • そのテンプレート内の {{name}}{{degree}} といったタグに、
    実際のVCデータ(例:「山田太郎」「Bachelor of Science」)を差し込む

という仕組みが標準化されています。

仮にtypeでTemplateRenderMethodを取った場合、renderMethodには以下のようなプロパティが入ります。

プロパティ説明
idテンプレートのURL。ダウンロード可能な形式で指定
type必須。常に "TemplateRenderMethod"
renderSuite必須。 使用する表現方法を指定(例: "svg-mustache""pdf-mustache""nfc")
name / descriptionユーザーに提示するための名前や説明
renderPropertyレンダリングメソッドを使用する際に、どのプロパティをテンプレートに公開するかを制御(セキュリティ・プライバシー上重要)
templateテンプレートそのもの。URL参照またはBase64で埋め込み可能。mediaTypedigestMultibase で整合性を保証可能。文字列の場合はURL, マップの場合はidを必須項目とし、mediaType, digestMultibaseを持てる
digestMultibaseidが指定された場合にダウンロードしたテンプレートが改ざんされてないかを検知するハッシュ

3種類のrenderSuite

上述したrenderSuiteがVCの表示方法を定めるプロパティになっていて、仕様書では3種類の方法が記載されています。VCをどう表現するんだという問題や、これまで紙を電子化するソリューションとしてpdfが利用されていたという点も加味されている設計になっているように感じました。

NFCで送信するという仕様も定義されていて、そんな体験もあるのだなと非常に勉強になります。

名称説明
svg-mustacheSVGをベースにMustacheテンプレートを埋め込む方式
軽量でブラウザ表示に最適
デジタル証明書や学生証など「画面表示型VC」に向いている
pdf-mustachePDFテンプレートにMustache構文を埋め込む方式
印刷やオフライン配布に適した表現方法
nfcNFC経由でデータを送る特殊なレンダリング
スマホで「タップして送信(Tap to send)」などの利用を想定
表示ではなく通信向けのレンダリングモードです

type②:OpenAttestationEmbeddedRenderer

こちらの方式は、VCを iframe内のウェブアプリ でレンダリングする仕組みで、HTMLテンプレートを使った「動的なVC表示」や「選択的開示」に対応します。先の例のように、このtypeをとるときのプロパティを見てみましょう。

プロパティ説明
idレンダリングを行うWebアプリのURL(例: https://demo-renderer.opencerts.io
type"OpenAttestationEmbeddedRenderer"
rendererNameWebアプリ側で選択されるテンプレート名(例: "GOVTECH_DEMO")

仕様書を読み進めると、2.3.1以降はよりOpenAttestationEmbeddedRendererでの通信方式についての記載が始まります。基本的にはホストアプリ(Host)iframe 内のテンプレートレンダラー(Frame)双方向通信を使って連携します。

実際の通信方式までは細かくなりすぎてここでは書きませんが、この方式はシンガポール政府 が開発・採用した技術体系の一部らしく、OpenAttestation(OA) というオープンソース仕様のレンダリング・検証フレームワークに基づいています。

githubのリファレンスもありましたので、またどこかの機会で触ってみたいと思います。

GitHub - Open-Attestation/decentralized-renderer-react-components

Contribute to Open-Attestation/decentralized-renderer-react-components development by creating an account on GitHub.

★特別なお知らせ★

デジタルアイデンティティの最新トレンドを毎週お届け!
業界の最前線をまとめた「DID/VC Weeklyレポート」を毎週無料で配信中です。こちらから簡単に登録できますので、ぜひ情報収集や新規事業のタネ探しにご活用ください。