DAT Rust Bibliothèque

GitHub crates.io

Installation

toml

Démarrage rapide

Ce flux complet récupère les certificats depuis le CMS, crée un DAT contenant des données JSON et le vérifie.

rust

Étape par étape

1. Se connecter au CMS

Un service d’émission utilise un token donnant accès aux certificats complets. Une synchronisation immédiate au démarrage évite toute émission avant la disponibilité des certificats.

rust

2. Émettre un DAT

Cet exemple place le JSON public dans plain et les informations utilisateur protégées, également en JSON, dans secure.

rust

3. Vérifier un DAT

parse vérifie l’expiration et la signature, puis déchiffre secure. N’utilisez qu’un payload renvoyé après une vérification réussie.

rust

Fonctions principales

FonctionRôle
sync().awaitSynchronise immédiatement les certificats.
issue(plain, secure)Crée un DAT avec le certificat d’émission actuel.
parse(dat)Vérifie un DAT et renvoie son payload.
last_error().awaitRenvoie la dernière erreur de synchronisation.

Zones de données

  • plain: bytes signés mais non chiffrés.
  • secure: bytes chiffrés.
  • payload: ne lui faites confiance qu’après la réussite de parse.

Autres options que JSON

Les exemples utilisent le format JSON courant. Pour accélérer le traitement, les données binaires peuvent éviter la sérialisation et l’analyse JSON tout en réduisant la taille des données.

Stockez les valeurs simples sous forme de texte, ou placez des données structurées dans des formats binaires comme Protobuf ou MessagePack dans plain et secure.

rust

Comme issue accepte actuellement des chaînes, encodez les bytes arbitraires en Base64Url ou Hex, puis décodez-les après la vérification.

Services verify-only

Un service qui n’émet pas de DAT utilise l’option verify-only et un token verify-only, et appelle uniquement parse.

Arrêt et erreurs

La tâche de synchronisation automatique se termine lorsque le dernier Arc est supprimé.

Utilisez les codes d’erreur et classifications de retry plutôt que les messages d’erreur.