コンテンツにスキップ

セキュリティ

Tri-CertFrameworkのセキュリティに関するガイドラインとベストプラクティスです。

セキュリティアーキテクチャ

多層防御

flowchart TB
    subgraph hw["🔒 Hardware Security"]
        hw_desc["Ledger Hardware Wallet"]
    end
    subgraph crypto["🔐 Cryptographic Layer"]
        crypto_desc["ZK-SNARK, WebAuthn, SHA3-512"]
    end
    subgraph app["📱 Application Layer"]
        app_desc["Input Validation, Access Control"]
    end
    subgraph transport["🌐 Transport Layer"]
        transport_desc["HTTPS, CORS"]
    end

    hw --> crypto
    crypto --> app
    app --> transport

    style hw fill:#fef3c7,stroke:#d97706,stroke-width:2px
    style crypto fill:#e0e7ff,stroke:#4f46e5,stroke-width:2px
    style app fill:#d1fae5,stroke:#059669,stroke-width:2px
    style transport fill:#dbeafe,stroke:#2563eb,stroke-width:2px

暗号技術

ゼロ知識証明 (ZK-SNARK)

項目仕様
プロトコルGroth16
曲線BN128
ハッシュSHA3-512 (PDF), SHA3-256 (VKey)
ライブラリsnarkjs, circom

WebAuthn署名

項目仕様
アルゴリズムECDSA
曲線P-256 (secp256r1)
ハッシュSHA-256
標準FIDO2 / WebAuthn

Ledgerハードウェア署名

項目仕様
アルゴリズムECDSA
曲線P-256
アプリEthereum App
DerivationBIP-44

ベストプラクティス

Executive Console

推奨設定:

  • Ledger Nano S Plus / X を使用
  • ファームウェアを最新に保つ
  • 署名前にデバイス画面で内容を確認
  • PINは推測困難なものを設定

Registrar Console

データ保護:

  • issuance-log.json は暗号化してバックアップ
  • students/ ディレクトリへのアクセスを制限
  • 定期的なアクセスログの監査

運用:

  • 専用端末での使用を推奨
  • 画面ロックを有効化
  • 操作ログの保存

Prover / Verifier UI

ブラウザセキュリティ:

  • HTTPS環境でのみ動作
  • 最新ブラウザの使用を推奨
  • 拡張機能の最小化

個人情報保護

公開情報と非公開情報

情報公開保護レベル
activation_hashハッシュ化済み
student_id_hashハッシュ化済み
issuer情報公開情報
氏名ローカルのみ
生年月日ローカルのみ
saltローカルのみ

ハッシュからの逆算

SHA-512ハッシュは一方向関数であり、ハッシュ値から元の情報を復元することは計算上不可能です。

インシデント対応

秘密鍵の漏洩が疑われる場合

  1. 即座に使用を停止
  2. Ledgerデバイスを新しいものに交換
  3. 新しいVKを生成・配布
  4. 影響範囲を調査
  5. 関係者に通知

個人情報ファイルの漏洩が疑われる場合

  1. 即座にアクセスを遮断
  2. 漏洩範囲を特定
  3. 関係者への通知(法的要件に従う)
  4. セキュリティ強化策の実施
  5. 再発防止策の策定

監査

ログの保存

コンポーネントログ内容保存期間
Executive ConsoleVK生成・署名無期限
Registrar Console発行履歴無期限

定期監査項目

  • GitHubに個人情報がコミットされていないか
  • Ledgerファームウェアが最新か
  • アクセスログに不審な活動がないか
  • バックアップが正常に実行されているか

コンプライアンス

準拠予定の標準

  • W3C Verifiable Credentials (VC)
  • FIDO2 / WebAuthn
  • GDPR(個人情報保護)

プライバシーバイデザイン

  • データ最小化: 必要最小限の情報のみ収集
  • 目的限定: 収集目的以外での使用禁止
  • 透明性: 処理内容の明示
  • セキュリティ: 適切な技術的保護措置