ডিটারমিনিস্টিক অথেনটিকেটেড এনক্রিপশন উইথ অ্যাসোসিয়েটেড ডেটা (ডিটারমিনিস্টিক AEAD) প্রিমিটিভ একটি ডিটারমিনিস্টিক প্রোপার্টি সহ এনক্রিপশন প্রদান করে: একই ডেটা এনক্রিপ্ট করলে সর্বদা একই সাইফারটেক্সট পাওয়া যায়। এই ধরণের এনক্রিপশন কী মোড়ানোর জন্য বা এনক্রিপ্ট করা ডেটা অনুসন্ধানের জন্য কিছু স্কিমের জন্য কার্যকর (আরও তথ্যের জন্য RFC 5297, বিভাগ 1.3 দেখুন)। এর ডিটারমিনিস্টিক প্রোপার্টির কারণে, এই প্রিমিটিভের বাস্তবায়ন গোপনীয়তা হারাতে পারে কারণ আক্রমণকারীকে কেবল সেই বার্তার অন্যান্য উদাহরণ সনাক্ত করার জন্য একটি প্রদত্ত বার্তার জন্য সাইফারটেক্সট খুঁজে বের করতে হবে।
ডিটারমিনিস্টিক AEAD এর নিম্নলিখিত বৈশিষ্ট্য রয়েছে:
- গোপনীয়তা : সরলপাঠ সম্পর্কে কিছুই জানা যায়নি, কেবল এর দৈর্ঘ্য এবং পুনরাবৃত্ত সরলপাঠের সমতা ছাড়া।
- সত্যতা : সিফারটেক্সটের অন্তর্নিহিত এনক্রিপ্ট করা প্লেইনটেক্সট সনাক্ত না করে পরিবর্তন করা অসম্ভব।
- সিমেট্রিক : প্লেইনটেক্সট এনক্রিপ্ট করা এবং সাইফারটেক্সট ডিক্রিপ্ট করা একই কী দিয়ে করা হয়।
- ডিটারমিনিস্টিক : যতক্ষণ পর্যন্ত প্রাথমিক কী পরিবর্তন না করা হয়, একই প্যারামিটার দিয়ে একটি প্লেইনটেক্সট দুবার এনক্রিপ্ট করলে একই সাইফারটেক্সট তৈরি হয়।
সম্পর্কিত তথ্য
নির্দিষ্ট সম্পর্কিত ডেটার সাথে সিফারটেক্সট সংযুক্ত করার জন্য ডিটারমিনিস্টিক AEAD ব্যবহার করা যেতে পারে। ধরুন আপনার কাছে user-id এবং encrypted-medical-history ফিল্ড সহ একটি ডাটাবেস আছে। এই পরিস্থিতিতে, encrypted-medical-history এনক্রিপ্ট করার সময় user-id সংযুক্ত ডেটা হিসাবে ব্যবহার করা যেতে পারে। এটি আক্রমণকারীকে একজন ব্যবহারকারী থেকে অন্য ব্যবহারকারীতে চিকিৎসা ইতিহাস স্থানান্তর করতে বাধা দেয়।
সংশ্লিষ্ট ডেটা ঐচ্ছিক। যদি নির্দিষ্ট করা থাকে, তবে ডিক্রিপশন কেবল তখনই সফল হবে যদি একই সংশ্লিষ্ট ডেটা এনক্রিপ্ট এবং ডিক্রিপ্ট উভয় কলেই প্রেরণ করা হয়।
একটি কী টাইপ বেছে নিন
আমরা সকল ব্যবহারের ক্ষেত্রে AES256_SIV কী টাইপ সুপারিশ করি।
নিরাপত্তার নিশ্চয়তা
- কমপক্ষে ৮০-বিট প্রমাণীকরণ শক্তি।
- প্লেইনটেক্সট এবং সংশ্লিষ্ট ডেটার দৈর্ঘ্য ইচ্ছামত হতে পারে (০..২ ৩২ বাইটের মধ্যে)।
- কী পুনরুদ্ধার আক্রমণের বিরুদ্ধে ১২৮-বিট নিরাপত্তা স্তর, এবং ২ ৩২ কী পর্যন্ত মাল্টি-ইউজার আক্রমণের ক্ষেত্রেও - এর অর্থ হল যদি কোনও প্রতিপক্ষ ২ ৩২ কী-এর অধীনে এনক্রিপ্ট করা একই বার্তার ২ ৩২টি সাইফারটেক্সট পায়, তবে একটি একক কী পেতে তাদের ২ ১২৮ টি গণনা করতে হবে।
- ২,৩৮টি বার্তা নিরাপদে এনক্রিপ্ট করার ক্ষমতা, যদি প্রতিটির দৈর্ঘ্য ১MB এর কম হয়।
ব্যবহারের উদাহরণ
দেখুন আমি ডেটা নির্ধারকভাবে এনক্রিপ্ট করতে চাই এবং আমি সিফারটেক্সটকে এর প্রসঙ্গে আবদ্ধ করতে চাই।