प्रमाणपत्र ​

DAT प्रमाणपत्र टोकन जारी और सत्यापित करने के लिए आवश्यक समय-सीमाएँ, algorithms और कुंजियाँ एक string में व्यक्त करता है।

cid
uint64
.
start
uint64
.
duration
uint64
.
ttl
uint64
.
sig-alg
name
.
crypto-alg
name
.
sig-key
Base64Url
.
crypto-key
Base64Url
प्रमाणपत्र भी निश्चित क्रम में बिंदु से अलग ASCII फ़ील्ड से बनता है।
text
cid.start.duration.ttl.sig-alg.crypto-alg.sig-key.crypto-key

समय-सीमाएँ ​

  • प्रमाणपत्र start से start + duration तक, दोनों endpoints सहित, DAT जारी कर सकता है।
  • जारी DAT अपने issuance time से ttl तक मान्य रहता है।
  • प्रमाणपत्र start + duration + ttl तक सत्यापन के लिए आवश्यक है और उस ठीक समय पर भी सत्यापित किया जा सकता है।

जारी करने की अवधि समाप्त होते ही प्रमाणपत्र हटाने से पहले से जारी DAT सत्यापित नहीं हो पाएँगे। मैनेजर और CMS issuability तथा verifiability को अलग रखते हैं।

प्रमाणपत्र ID और कुंजी परिवर्तन ​

cid वह सार्वजनिक अनुबंध है जो कुंजी और उसकी समय-सीमाओं की पहचान करता है। मौजूदा cid को अलग कुंजियों से कभी overwrite न करें। कुंजियाँ बदलने के लिए नए cid वाला नया प्रमाणपत्र बनाएँ। सेवाएँ नए प्रमाणपत्र को पहले सिंक्रनाइज़ करती हैं और पुराने को तभी हटाती हैं जब उसके जारी किए सभी DAT समाप्त हो जाएँ।

Signature algorithms ​

नामउद्देश्यVerify-only प्रमाणपत्र
HMAC-SHA256-MFSHMAC SHA-256समर्थित नहीं
HMAC-SHA384-MFSHMAC SHA-384समर्थित नहीं
HMAC-SHA512-MFSHMAC SHA-512समर्थित नहीं
ECDSA-P256ECDSA P-256समर्थित
ECDSA-P384ECDSA P-384समर्थित
ECDSA-P521ECDSA P-521समर्थित

HMAC एक ही कुंजी से हस्ताक्षर और सत्यापन करता है, इसलिए वह कुंजी सत्यापन सर्वर को देने से जारी करने का अधिकार भी मिल जाता है। जहाँ issuance authority अलग रखनी हो वहाँ ECDSA और verify-only प्रमाणपत्र उपयोग करें।

Encryption algorithms ​

नामकुंजी
IV-AES128-GCMAES-128
IV-AES256-GCMAES-256

Algorithm names wire contract का हिस्सा हैं। उन्हें JWT aliases से न बदलें।

पूर्ण और verify-only प्रमाणपत्र ​

पूर्ण ECDSA प्रमाणपत्र में हस्ताक्षर के लिए आवश्यक private key होती है। verify-only प्रमाणपत्र में केवल ECDSA public key रहती है, लेकिन secure decrypt करने वाली AES key भी रखी जाती है। इसलिए verify-only सेवा DAT सत्यापित और decrypt कर सकती है, पर नए DAT जारी नहीं कर सकती।