DAT
الوثائق

الشهادة ​

تمثّل شهادة DAT في سلسلة واحدة النطاق الزمني والخوارزميات والمفاتيح اللازمة لإصدار الرموز والتحقق منها.

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

النطاق الزمني ​

  • تستطيع الشهادة إصدار DAT من start إلى start + duration، مع شمول اللحظتين.
  • يظل DAT الصادر صالحًا لمدة ttl بدءًا من وقت إصداره.
  • تظل الشهادة مطلوبة للتحقق حتى start + duration + ttl، ويمكنها التحقق عند تلك اللحظة بالضبط أيضًا.

إذا حُذفت الشهادة فور انتهاء فترة الإصدار، فلن يكون من الممكن التحقق من رموز DAT الصادرة مسبقًا. يتعامل المدير وCMS مع قابلية الإصدار وقابلية التحقق كلًا على حدة.

معرّف الشهادة وتدوير المفاتيح ​

cid هو العقد العام الذي يعرّف المفاتيح والنطاق الزمني. لا تستبدل مفاتيح cid قائم بمفاتيح أخرى. عند تدوير المفاتيح، أنشئ شهادة جديدة واستخدم cid جديدًا. تزامن الخدمات الشهادة الجديدة مسبقًا، وتزيل الشهادة السابقة بعد انتهاء صلاحية جميع رموز DAT الصادرة بها.

خوارزميات التوقيع ​

الاسمالاستخدامشهادة التحقق فقط
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 المفتاح نفسه للتوقيع والتحقق، لذا فإن إعطاء المفتاح إلى خادم التحقق يمكّنه من الإصدار أيضًا. وفي البيئات التي يجب أن تفصل صلاحية الإصدار، استخدم ECDSA وشهادات التحقق فقط.

خوارزميات التشفير ​

الاسمالمفتاح
IV-AES128-GCMAES-128
IV-AES256-GCMAES-256

أسماء الخوارزميات جزء من عقد wire. ولا تُستبدل بالأسماء المستعارة المستخدمة في JWT.

الشهادات الكاملة وشهادات التحقق فقط ​

تتضمن شهادة ECDSA الكاملة المفتاح الخاص اللازم للتوقيع. ولا تحتفظ شهادة التحقق فقط إلا بمفتاح ECDSA العام، لكنها تُبقي مفتاح AES اللازم لفك تشفير secure. لذلك تستطيع خدمة التحقق فقط فحص DAT وفك تشفيره، لكنها لا تستطيع إصدار DAT جديد.