মূল কনটেন্টে যান
অনুশীলন (৯)
Information SecurityCryptography Basics

Symmetric/Asymmetric Cryptography, Digital Signature ও SQL Injection

পড়তে প্রায় ১১ মিনিটসংস্করণ ১সর্বশেষ আপডেট: ২১ অক্টোবর, ২০২৬৯টি অনুশীলন প্রশ্ন

সংক্ষেপে মনে রাখুন

দ্রুত রিভিশনের জন্য মূল কথা

মূল কথা
  • CIA Triad (Confidentiality, Integrity, Availability) ও Non-repudiation ব্যাখ্যা করা
  • Symmetric ও Asymmetric key cryptography এবং Hashing-এর পার্থক্য চেনা
  • Digital Signature কীভাবে কাজ করে এবং SQL Injection ও XSS প্রতিরোধের উপায় জানা

CIA Triad ও ক্রিপ্টোগ্রাফির মূল কথা

  • Confidentiality (গোপনীয়তা): অননুমোদিত কেউ তথ্য পড়তে না পারা (Encryption দ্বারা নিশ্চিত হয়)।
  • Integrity (অখণ্ডতা): তথ্য পথে পরিবর্তিত হয়েছে কি না তা যাচাই করা (Cryptographic Hash / MAC দ্বারা নিশ্চিত হয়)।
  • Availability (লভ্যতা): অনুমোদিত ব্যবহারকারীর কাছে সেবা সবসময় সচল থাকা (DDoS আক্রমণ এটি ব্যাহত করে)।

Symmetric বনাম Asymmetric Encryption এবং Hashing

  • Symmetric Key (একই গোপন চাবি): Encrypt ও Decrypt করতে একই Secret Key ব্যবহৃত হয়। এটি দ্রুতগতির, বড় ডেটা এনক্রিপশনে ব্যবহৃত হয়। উদাহরণ: AES (128/192/256-bit key, 128-bit block), DES (56-bit কার্যকর key, 64-bit block), 3DES, Blowfish, RC4। n জন ব্যবহারকারীর পরস্পর গোপন যোগাযোগের জন্য মোট n(n − 1) / 2 টি key প্রয়োজন।
  • Asymmetric / Public-Key (দুটি ভিন্ন চাবি: Public ও Private): গোপনীয়তার (Confidentiality) জন্য প্রাপকের Public Key দিয়ে encrypt এবং প্রাপকের Private Key দিয়ে decrypt করা হয়। উদাহরণ: RSA, Diffie-Hellman (Key Exchange), ECC (Elliptic Curve Cryptography), ElGamal।
  • Hashing (একমুখী ফাংশন - One-way): যেকোনো আকারের ইনপুট থেকে নির্দিষ্ট দৈর্ঘ্যের ডাইজেস্ট তৈরি করে; এটি Decrypt করা যায় না। উদাহরণ: SHA-256 (256-bit আউটপুট), SHA-512, bcrypt / Argon2 (পাসওয়ার্ড সংরক্ষণে ব্যবহৃত)। MD5 (128-bit) ও SHA-1 (160-bit)-এ collision পাওয়া যাওয়ায় বর্তমানে অনিরাপদ।

Digital Signature কীভাবে কাজ করে?

Digital Signature নিশ্চিত করে Authentication, Integrity ও Non-repudiation (প্রেরক পরে অস্বীকার করতে পারবে না):

  1. প্রেরক মেসেজের একটি Hash তৈরি করেন এবং নিজের Private Key দিয়ে সেই হ্যাশটিকে encrypt করেন—এটিই Digital Signature।
  2. প্রাপক প্রেরকের Public Key দিয়ে সিগনেচারটি decrypt করে হ্যাশ মেলান।

SQL Injection ও XSS প্রতিরোধ

  • SQL Injection (SQLi): ইউজার ইনপুট সরাসরি SQL কুয়েরিতে জোড়া লাগালে আক্রমণকারী ' OR '1'='1 দিয়ে লগইন বাইপাস বা ডেটা চুরি করতে পারে। প্রতিরোধ: Prepared Statements (Parameterized Queries) ব্যবহার করা।
  • XSS (Cross-Site Scripting): ওয়েব পেজে ক্ষতিকর JavaScript ইনজেক্ট করা। প্রতিরোধ: Output encoding/escaping এবং Content Security Policy (CSP) ব্যবহার করা।

পরের ধাপ

এই টপিকে ৫টি প্রশ্ন অনুশীলন করুন

পড়া মনে আছে কি না, ছোট একটি সেটে দেখে নিন। প্রতিটি উত্তরের সাথে ব্যাখ্যা থাকবে, আর ভুল প্রশ্নগুলো রিভিশনের তালিকায় যাবে