সার্টিফিকেট ​

একটি 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 পর্যন্ত, উভয় প্রান্তসহ, DAT ইস্যু করতে পারে।
  • ইস্যু করা DAT ইস্যুর সময় থেকে ttl পর্যন্ত বৈধ।
  • start + duration + ttl পর্যন্ত যাচাইয়ের জন্য সার্টিফিকেট প্রয়োজন এবং ঠিক সেই সময়েও যাচাইযোগ্য থাকে।

ইস্যুর সময় শেষ হলেই সার্টিফিকেট মুছলে ইতিমধ্যে ইস্যু করা DAT যাচাই অসম্ভব হয়। ম্যানেজার ও CMS ইস্যুযোগ্যতা ও যাচাইযোগ্যতা আলাদাভাবে বিবেচনা করে।

সার্টিফিকেট ID ও কী পরিবর্তন ​

cid হলো কী এবং তার সময়সীমা শনাক্তকারী পাবলিক চুক্তি। বিদ্যমান cid কখনও ভিন্ন কী দিয়ে overwrite করবেন না। কী পরিবর্তনে নতুন cid-সহ নতুন সার্টিফিকেট তৈরি করুন। সার্ভিসগুলো আগেই নতুন সার্টিফিকেট সিঙ্ক্রোনাইজ করে এবং তার ইস্যু করা সব DAT শেষ হলেই পুরোনোটি সরায়।

স্বাক্ষর 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 একই কী দিয়ে স্বাক্ষর ও যাচাই করে, তাই যাচাইকারী সার্ভারকে সেই কী দিলে ইস্যুর ক্ষমতাও দেওয়া হয়। যেখানে ইস্যুর ক্ষমতা আলাদা রাখতে হবে সেখানে ECDSA ও verify-only সার্টিফিকেট ব্যবহার করুন।

এনক্রিপশন algorithms ​

নামকী
IV-AES128-GCMAES-128
IV-AES256-GCMAES-256

Algorithm names wire contract-এর অংশ। JWT alias দিয়ে এগুলো বদলাবেন না।

পূর্ণ ও verify-only সার্টিফিকেট ​

পূর্ণ ECDSA সার্টিফিকেটে স্বাক্ষরের private key থাকে। verify-only সার্টিফিকেটে শুধু ECDSA public key থাকে, তবে secure decrypt করার AES key বজায় থাকে। তাই verify-only সার্ভিস DAT যাচাই ও decrypt করতে পারে, কিন্তু নতুন DAT ইস্যু করতে পারে না।