Certificados ​

Un certificado DAT representa en una sola cadena el intervalo temporal, los algoritmos y las claves necesarios para emitir y verificar tokens.

cid
uint64
.
start
uint64
.
duration
uint64
.
ttl
uint64
.
sig-alg
name
.
crypto-alg
name
.
sig-key
Base64Url
.
crypto-key
Base64Url
Un certificado también contiene campos ASCII separados por puntos en un orden fijo.
text
cid.start.duration.ttl.sig-alg.crypto-alg.sig-key.crypto-key

Intervalos temporales ​

  • El certificado puede emitir DAT desde start hasta start + duration, incluidos ambos extremos.
  • Un DAT emitido es válido durante ttl desde su momento de emisión.
  • El certificado es necesario para verificar hasta start + duration + ttl. También puede verificar exactamente en ese momento.

Si el certificado se elimina en cuanto termina el periodo de emisión, los DAT ya emitidos dejan de poder verificarse. El gestor y CMS tratan por separado la aptitud para emitir y la aptitud para verificar.

ID del certificado y rotación de claves ​

cid es el contrato público que identifica las claves y el intervalo temporal. Nunca se sobrescribe un cid existente con claves diferentes. Para rotar las claves, crea un certificado nuevo y usa un nuevo cid. Los servicios sincronizan el certificado nuevo con antelación y conservan el anterior hasta que hayan caducado todos los DAT emitidos con él.

Algoritmos de firma ​

NombreUsoCertificado exclusivo para verificación
HMAC-SHA256-MFSHMAC SHA-256No compatible
HMAC-SHA384-MFSHMAC SHA-384No compatible
HMAC-SHA512-MFSHMAC SHA-512No compatible
ECDSA-P256ECDSA P-256Compatible
ECDSA-P384ECDSA P-384Compatible
ECDSA-P521ECDSA P-521Compatible

HMAC usa la misma clave para firmar y verificar, de modo que entregar la clave a un servidor verificador también le permite emitir. En entornos que deben separar el permiso de emisión, utiliza ECDSA y certificados exclusivos para verificación.

Algoritmos de cifrado ​

NombreClave
IV-AES128-GCMAES-128
IV-AES256-GCMAES-256

Los nombres de los algoritmos forman parte del contrato de wire. No se sustituyen por los alias usados en JWT.

Certificados completos y exclusivos para verificación ​

Un certificado ECDSA completo incluye la clave privada necesaria para firmar. Un certificado exclusivo para verificación conserva únicamente la clave pública ECDSA, pero mantiene la clave AES necesaria para descifrar secure. Por ello, un servicio exclusivo para verificación puede comprobar y descifrar DAT, pero no puede emitir otros nuevos.