DAT Rust Biblioteca

GitHub crates.io

Instalação

toml

Início rápido

Este fluxo completo obtém certificados do CMS, cria um DAT com dados JSON e o verifica.

rust

Passo a passo

1. Conectar ao CMS

Um serviço emissor usa um token para certificados completos. A sincronização imediata na inicialização evita a emissão antes que os certificados estejam disponíveis.

rust

2. Emitir um DAT

Este exemplo coloca JSON público em plain e informações protegidas do usuário em formato JSON em secure.

rust

3. Verificar um DAT

parse confere a expiração e a assinatura e depois descriptografa secure. Use apenas um payload retornado após uma verificação bem-sucedida.

rust

Funções principais

FunçãoFinalidade
sync().awaitSincroniza os certificados imediatamente.
issue(plain, secure)Cria um DAT com o certificado emissor atual.
parse(dat)Verifica um DAT e retorna seu payload.
last_error().awaitRetorna o último erro de sincronização.

Áreas de dados

  • plain: bytes assinados, mas não criptografados.
  • secure: bytes criptografados.
  • payload: confie nele somente depois que parse for bem-sucedido.

Opções além de JSON

Os exemplos usam o conhecido JSON. Para um processamento mais rápido, dados binários podem evitar a serialização e o parse de JSON, além de reduzir o tamanho dos dados.

Armazene valores simples como texto ou coloque dados estruturados em formatos binários como Protobuf ou MessagePack em plain e secure.

rust

Como issue atualmente aceita strings, codifique bytes arbitrários como Base64Url ou Hex e decodifique-os novamente após a verificação.

Serviços exclusivos para verificação

Um serviço que não emite DAT usa a opção verify-only e um token verify-only, e chama apenas parse.

Encerramento e erros

A tarefa de sincronização automática termina quando o último Arc é descartado.

Use os códigos de erro e as classificações de nova tentativa em vez das mensagens de erro.