DAT Rust ライブラリ

GitHub crates.io

インストール

toml

クイックスタート

この完全なフローでは、CMS から証明書を取得し、JSON データを含む DAT を作成して検証します。

rust

手順

1. CMS に接続

発行サービスは完全な証明書用のトークンを使います。起動時にすぐ同期することで、証明書を利用できる前の発行を防ぎます。

rust

2. DAT を発行

この例では公開 JSON を plain に、保護されたユーザー情報を JSON で secure に格納します。

rust

3. DAT を検証

parse は有効期限と署名を確認し、secure を復号します。検証に成功した後に返されたペイロードのみを使用してください。

rust

主要関数

関数用途
sync().await証明書をすぐに同期します。
issue(plain, secure)現在の発行証明書で DAT を作成します。
parse(dat)DAT を検証してペイロードを返します。
last_error().await最後の同期エラーを返します。

データ領域

  • plain: 署名されるが暗号化されないバイト。
  • secure: 暗号化されたバイト。
  • payload: parse の成功後にのみ信頼してください。

JSON 以外の選択肢

例では一般的な JSON を使います。より高速に処理するには、バイナリデータを使うと JSON の直列化と解析を省き、データサイズも削減できます。

単純な値はテキストで保存するか、Protobuf や MessagePack などのバイナリ形式の構造化データを plain と secure に格納します。

rust

issue は現在文字列を受け取るため、任意のバイトを Base64Url または Hex でエンコードし、検証後に再度デコードします。

検証専用サービス

DAT を発行しないサービスは、検証専用オプションと検証専用トークンを使い、parse だけを呼び出します。

終了とエラー

最後の Arc が drop されると自動同期タスクは終了します。

エラーコードと再試行分類をエラーメッセージの代わりに使用します。