A DAT Certificate is a specification for controlling the authority to issue DAT (Data Authentication Token) and for managing the signing and encryption algorithm and key information used by tokens.
Each certificate has a unique ID (CID) and safely manages the token lifecycle by enforcing the issuance period of DATs and the default time-to-live (TTL) of generated tokens.
CID : Hex (uint64)
CID field of a DAT to determine which certificate to use during validation.DAT Issuance Start : uint64 (Unix Time)
DAT Issuance Duration : uint64 (Seconds)
DAT Issuance Start, no new DATs can be issued using this certificate.DAT TTL (Time To Live) : uint64 (Seconds)
expire value is set to the issuance time (current time) plus dat-ttl.Signature Algorithm : String / Enum
signature field of a DAT.Crypto Algorithm : String / Enum
secure field of a DAT.Signature Key : Base64Url (Binary)
Crypto Key : Base64Url (Binary)
secure field.A list of signing algorithms used to prevent forgery and tampering of DATs.
Both symmetric and asymmetric key methods are supported.
ECDSA-P256
ECDSA-P384
ECDSA-P521
HMAC-SHA256-MFS
HMAC-SHA384-MFS
HMAC-SHA512-MFS
MFS (Maximum Fixed Secret): A method that uses a fixed-size secret key whose bit length equals the output size of the hash algorithm.
A list of Authenticated Encryption algorithms used to protect confidential data (the secure field) inside a DAT.
The encryption output is structured as a combination of the IV and the encrypted data to prevent decryption and Replay Attacks.
IV-AES128-GCM
IV-AES256-GCM
IV (Initialization Vector) Embedding: To prevent Replay Attacks, a unique 96-bit NONCE (IV) generated for each encryption operation is prepended as a prefix to the encrypted result data and included in the binary output. During decryption, the first 96 bits are separated and used as the IV to perform decryption.