menuDAT

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

1. পরিচিতি (Introduction)

DAT সার্টিফিকেট হলো DAT (Data Authentication Token) জারির অধিকার নিয়ন্ত্রণ করতে এবং টোকেনের স্বাক্ষর ও এনক্রিপশন অ্যালগরিদম এবং কী (Key) তথ্য পরিচালনার জন্য একটি বিবরণী।

প্রতিটি সার্টিফিকেটের একটি অনন্য ID (CID) রয়েছে এবং DAT জারির সম্ভাব্য সময়কাল এবং তৈরি হওয়া টোকেনের ডিফল্ট বৈধতাকাল (TTL) বাধ্যতামূলক করে টোকেনের জীবনচক্র নিরাপদে পরিচালনা করে।


2. সার্টিফিকেট কাঠামো (Structure)

Structure
Example refresh

2.1. ফিল্ড অনুযায়ী বিস্তারিত বিবরণ

CID : Hex (uint64)

  • সার্টিফিকেট সনাক্ত করার অনন্য সার্টিফিকেট ID। DAT-এর CID ফিল্ডের সাথে ম্যাপ করা হয় এবং যাচাইকরণের সময় কোন সার্টিফিকেট ব্যবহার করবে তা নির্ধারণ করে।

DAT ইস্যু শুরুর সময় : uint64 (Unix Time)

  • এই সার্টিফিকেট ব্যবহার করে DAT জারি করা যাবে এমন শুরুর সময় সেকেন্ড (Seconds) একক ভিত্তিক নির্দেশ করে।

DAT ইস্যু মেয়াদ : uint64 (Seconds)

  • সার্টিফিকেটের জারির বৈধতাকালDAT ইস্যু শুরুর সময় থেকে এই মেয়াদ (সেকেন্ড) পার হওয়ার পর এই সার্টিফিকেট দিয়ে নতুন DAT জারি করা যাবে না।

DAT TTL (বৈধতার সময়) : uint64 (Seconds)

  • এই সার্টিফিকেট দ্বারা জারি করা DAT-এর ডিফল্ট বৈধতাকাল (Time To Live)। DAT তৈরির সময় expire মান জারির সময় (বর্তমান সময়) থেকে dat-ttl যোগ করে নির্ধারিত হয়।

স্বাক্ষর অ্যালগরিদম : String / Enum

  • DAT-এর signature ফিল্ড তৈরি ও যাচাইয়ের সময় ব্যবহৃত স্বাক্ষর অ্যালগরিদম

এনক্রিপশন অ্যালগরিদম : String / Enum

  • DAT-এর secure ফিল্ড এনক্রিপ্ট ও ডিক্রিপ্ট করার সময় ব্যবহৃত এনক্রিপশন অ্যালগরিদম

স্বাক্ষর কী : Base64Url (Binary)

  • স্বাক্ষর ও যাচাইকরণে ব্যবহৃত কী ডেটা। (অ্যালগরিদম অনুযায়ী অসম কীর Public/Private Key বা সম কী হতে পারে।)

এনক্রিপশন কী : Base64Url (Binary)

  • secure ফিল্ড এনক্রিপশন ও ডিক্রিপশনে ব্যবহৃত এনক্রিপশন কী ডেটা।

3. অ্যালগরিদম

স্বাক্ষর অ্যালগরিদম

DAT-এর জালিয়াতি ও পরিবর্তন রোধের জন্য স্বাক্ষর অ্যালগরিদমের তালিকা।

সম কী ও অসম কী উভয় পদ্ধতি সমর্থিত।


ECDSA-P256

  • উপবৃত্তাকার বক্ররেখা ডিজিটাল স্বাক্ষর অ্যালগরিদম (NIST secp256r1)

ECDSA-P384

  • উপবৃত্তাকার বক্ররেখা ডিজিটাল স্বাক্ষর অ্যালগরিদম (NIST secp384r1)

ECDSA-P521

  • উপবৃত্তাকার বক্ররেখা ডিজিটাল স্বাক্ষর অ্যালগরিদম (NIST secp521r1)

HMAC-SHA256-MFS

  • 256-bit নির্দিষ্ট আকারের গোপন কী (MFS) ভিত্তিক Keyed-Hashing

HMAC-SHA384-MFS

  • 384-bit নির্দিষ্ট আকারের গোপন কী (MFS) ভিত্তিক Keyed-Hashing

HMAC-SHA512-MFS

  • 512-bit নির্দিষ্ট আকারের গোপন কী (MFS) ভিত্তিক Keyed-Hashing

MFS (Maximum Fixed Secret): হ্যাশ অ্যালগরিদমের আউটপুট (Output) আকারের সমান বিট সংখ্যার নির্দিষ্ট আকারের গোপন কী ব্যবহার করার পদ্ধতি।


এনক্রিপশন অ্যালগরিদম

DAT-এর অভ্যন্তরীণ গোপনীয় ডেটা (secure ফিল্ড) সুরক্ষার জন্য প্রমাণীকৃত এনক্রিপশন (Authenticated Encryption) অ্যালগরিদমের তালিকা।

এনক্রিপশনের ফলাফল ডিক্রিপশন ও পুনর্ব্যবহার আক্রমণ প্রতিরোধের জন্য IV এবং এনক্রিপ্ট করা ডেটা একত্রিত আকারে থাকে।


IV-AES128-GCM

  • IV(96bit) + এনক্রিপশন_ফলাফল(Binary)
  • 128-bit কী ব্যবহারকারী AES-GCM মোড

IV-AES256-GCM

  • IV(96bit) + এনক্রিপশন_ফলাফল(Binary)
  • 256-bit কী ব্যবহারকারী AES-GCM মোড

IV (Initialization Vector) অন্তর্নির্মিতকরণ: Replay Attack প্রতিরোধের জন্য প্রতিটি এনক্রিপশনে তৈরি হওয়া অনন্য 96-বিট আকারের NONCE (IV) এনক্রিপশনের ফলাফল ডেটার আগে প্রিফিক্স (Prefix) আকারে যুক্ত করে বাইনারিতে অন্তর্ভুক্ত করা হয়। ডিক্রিপশনের সময় প্রথম 96 বিটকে IV হিসেবে আলাদা করে ডিক্রিপশন সম্পাদন করা হয়।