DAT 证书是用于控制 DAT(Data Authentication Token)的签发权限,并管理令牌的签名及加密算法与密钥(Key)信息的规范。
每张证书均拥有唯一的 ID(CID),通过强制约束 DAT 的可签发时间段以及所生成令牌的默认有效期(TTL),安全地管理令牌的生命周期。
CID : Hex (uint64)
CID 字段映射,在验证时决定使用哪张证书。DAT颁发开始时间 : uint64 (Unix Time)
DAT颁发期限 : uint64 (Seconds)
DAT颁发开始时间 起经过本期限(秒)后,将无法再使用该证书签发新的 DAT。DAT TTL (有效时间) : uint64 (Seconds)
expire 值将设置为签发时间(当前时间)加上 dat-ttl 的结果。签名算法 : String / Enum
signature 字段的签名算法。加密算法 : String / Enum
secure 字段的加密算法。签名密钥 : Base64Url (Binary)
加密密钥 : Base64Url (Binary)
secure 字段加解密的加密密钥数据。用于防止 DAT 被篡改的签名算法列表。
支持对称密钥与非对称密钥两种方式。
ECDSA-P256
ECDSA-P384
ECDSA-P521
HMAC-SHA256-MFS
HMAC-SHA384-MFS
HMAC-SHA512-MFS
MFS(Maximum Fixed Secret): 使用与哈希算法输出(Output)位数相同的固定长度密钥的方式。
用于保护 DAT 内部机密数据(secure 字段)的已认证加密(Authenticated Encryption)算法列表。
加密结果以 IV 与加密数据相结合的形式呈现,以防止解密及重放攻击(Replay Attack)。
IV-AES128-GCM
IV-AES256-GCM
IV(Initialization Vector)内置化: 为防止重放攻击(Replay Attack),每次加密时生成的唯一 96 位 NONCE(IV)以前缀(Prefix)形式拼接在加密结果数据之前,包含于二进制数据中。解密时,先将前 96 位分离作为 IV,再执行解密操作。