DAT Ruby Biblioteca

GitHub RubyGems

Instalación

bash

Inicio rápido

Este flujo completo obtiene certificados de CMS, crea un DAT con datos JSON y lo verifica.

ruby

Paso a paso

1. Conectar con CMS

Un servicio emisor usa un token para certificados completos. La sincronización inmediata al iniciar evita emitir antes de que los certificados estén disponibles.

ruby

2. Emitir un DAT

Este ejemplo guarda JSON público en plain e información protegida del usuario en formato JSON en secure.

ruby

3. Verificar un DAT

parse comprueba la caducidad y la firma, y después descifra secure. Usa únicamente el payload devuelto tras una verificación correcta.

ruby

Funciones principales

FunciónPropósito
sync_or_raiseSincroniza los certificados inmediatamente.
issue(plain, secure)Crea una string DAT.
parse(dat)Verifica un DAT y devuelve un DatPayload.
last_errorDevuelve el último error de sincronización.

Áreas de datos

  • plain: bytes firmados pero no cifrados.
  • secure: bytes cifrados.
  • payload: confía en él únicamente cuando parse termine correctamente.

Opciones además de JSON

Los ejemplos usan el conocido formato JSON. Para procesar más rápido, los datos binarios pueden evitar la serialización y el análisis de JSON, además de reducir el tamaño de los datos.

Guarda valores simples como texto o coloca datos estructurados en formatos binarios como Protobuf o MessagePack dentro de plain y secure.

ruby

Pasa strings binarias y recupéralas mediante plain_bytes y secure_bytes.

Servicios exclusivos para verificación

Un servicio que no emite DAT usa la opción verify-only y un token verify-only, y solo llama a parse.

Cierre y errores

Cuando la sincronización automática esté activa, llama a stop para detener el hilo en segundo plano.

Usa los códigos de error y las clasificaciones de reintento en lugar de los mensajes de error.