Tracking Protocol v1
サプライチェーン・トレーサビリティとは
製品がどこで生産され、どのような経路で届けられたのか——この「モノの流れ」を追跡・証明できる仕組みがサプライチェーン・トレーサビリティです。
近年、以下のような理由からトレーサビリティの重要性が高まっています:
- 食品安全: 産地偽装の防止、リコール時の迅速な対応
- サステナビリティ: 環境に配慮した原材料の証明
- コンプライアンス: 規制対応や認証の証明
- ブランド保護: 偽造品・模倣品の排除
ブロックチェーンを使う理由
従来のトレーサビリティシステムでは、各企業が個別にデータを管理していたため、企業間でのデータ連携や改ざん防止に課題がありました。
ブロックチェーンを活用することで:
| 課題 | ブロックチェーンによる解決 |
|---|---|
| データの改ざん | 一度記録したデータは変更不可能 |
| 企業間の信頼 | 第三者を介さず、誰でも検証可能 |
| システムの分断 | 共通の台帳で情報を共有 |
Tracking Protocol v1 の特長
アキュムレーターによる効率化
大量のアイテムを追跡する場合、すべてのIDをブロックチェーンに記録するとデータサイズが膨大になります。
Tracking Protocol v1では、アキュムレーターという暗号技術を使用して、この問題を解決しています。
アキュムレーターの特徴:
- 固定サイズ: 100個でも10,000個でも、データサイズは一定
- 検証可能: 特定のアイテムが含まれているかを証明できる
- 追加・削除: アイテムの追加や削除が可能
RSAアキュムレーター
本プロトコルではRSAアキュムレーターを採用しています。これは以下の理由によります:
- アイテム数に関係なくサイズが一定
- アイテムの順番を考慮する必要がない
- 包含証明・非包含証明の両方が可能
ユースケース:カカオ豆の追跡
具体的な例として、カカオ豆の流通追跡を見てみましょう。
シナリオ
- Ivan Farm(カカオ農家)がカカオ豆 A, B, C を出荷
- Dave Trade(輸出業者)が受け取り、各加工業者へ配送
- 加工業者 A社、B社、C社 がそれぞれ受け取り
ブロックチェーンへの記録
各ステップでトランザクションが発行され、アキュムレーター値が記録されます:
| ステップ | 内容 | 記録されるアキュムレーター |
|---|---|---|
| 1 | Ivan → Dave | Acc(A, B, C) |
| 2 | Dave → A社, B社(Cは保留) | Acc(A), Acc(B), Acc(C) |
| 3 | Dave → C社 | Acc(C) |
トレース(追跡)
後から「アイテムAはどこから来たのか?」を確認したい場合:
- アイテムAのIDを元にトランザクションを検索
- トランザクションチェーンをたどる
- 各アキュムレーターを検証し、経路を証明
これにより、誰でもアイテムの流通経路を検証可能な形で確認できます。
技術詳細
以下は開発者向けの技術詳細です。
トラッキングトランザクション
トラッキングトランザクションは、通常のトランザクションに加えて、輸送情報を記録するトラッキングペイロードを含みます。
OP_RETURN < Tracking Payload >
ペイロード構造
| フィールド | サイズ | 内容 |
|---|---|---|
| マーカー | 2バイト | 0x5450(”TP” = Tracking Protocol) |
| バージョン | 1バイト | 0x01 |
| ペイロードサイズ | CompactSize | ペイロードのサイズ |
| ペイロード | 可変 | アキュムレーター値 |
トレースルール
輸送元の決定
- 新規出荷: トランザクションの先頭インプットのアドレス
- 中継: トラッキングペイロードが適用されるUTXOのアドレス
輸送先の決定
- トラッキングペイロードの直後のUTXOが輸送先
消費
- 輸送先が指定されないアイテムは「消費済み」として扱われる
RSAアキュムレーターの動作
セットアップ
- 大きな素数 p, q を選択し、N = p × q を計算
- RSA群のジェネレーター g を選択
- 初期アキュムレーター: A₀ = g
要素の追加
要素 x を追加する場合:
x' = Hp(x) // 素数を出力するハッシュ関数
A₁ = g^x' mod N
メンバーシップ証明
A₁ に x が含まれることを証明:
- witness として A₀ を提供
- 検証者は A₀^x’ = A₁ を確認
非メンバーシップ証明
ベズー係数を用いて、要素が含まれていないことを証明可能です。
まとめ
Tracking Protocol v1は、ブロックチェーンの特性を活かしながら、アキュムレーター技術によってデータ効率を最適化した、実用的なトレーサビリティソリューションです。
- 透明性: 誰でも検証可能
- 効率性: アキュムレーターによるデータ圧縮
- 信頼性: 改ざん不可能な記録
より高度な秘匿性が必要な場合は、Tracking Protocol v2をご覧ください。