Cryptography-র মূল তত্ত্ব থেকে শুরু করে Hashing, Encoding, Symmetric/Asymmetric Encryption, Password Cracking, Brute Force, Dictionary Attack এবং রক্ষার উপায় — সব কিছু। From the fundamentals of Cryptography to Hashing, Encoding, Symmetric/Asymmetric Encryption, Password Cracking, Brute Force, Dictionary Attacks, and defenses — everything covered.
Cryptography হলো তথ্যকে এমনভাবে রূপান্তর করার বিজ্ঞান যাতে শুধু নির্দিষ্ট ব্যক্তি সেটা পড়তে পারে। এটা তথ্যের গোপনীয়তা (Confidentiality), অখণ্ডতা (Integrity) এবং প্রামাণিকতা (Authenticity) নিশ্চিত করে।Cryptography is the science of transforming information so that only authorized parties can read it. It ensures Confidentiality, Integrity, and Authenticity of data.
শুধু অনুমোদিত ব্যক্তি তথ্য পড়তে পারবে। Encryption দিয়ে নিশ্চিত করা হয়।Only authorized persons can read the data. Ensured through encryption.
তথ্য পথে পরিবর্তন হয়নি। Hashing দিয়ে নিশ্চিত করা হয়।Data wasn't altered in transit. Ensured through hashing.
তথ্য সঠিক উৎস থেকে এসেছে। Digital Signature দিয়ে নিশ্চিত করা হয়।Data came from the correct source. Ensured through digital signatures.
| যুগEra | পদ্ধতিMethod | বিবরণDescription |
|---|---|---|
| ~58 BC | Caesar Cipher | প্রতিটি অক্ষর N ঘর সরানো (ROT13)Shift each letter by N positions (ROT13) |
| 1467 | Vigenère Cipher | Keyword দিয়ে multiple Caesar shiftsMultiple Caesar shifts using a keyword |
| 1940s | Enigma Machine | WWII-তে German সামরিক cipherGerman military cipher in WWII |
| 1976 | DES | প্রথম standard symmetric cipherFirst standard symmetric cipher |
| 1977 | RSA | Public-key cryptography যুগের শুরুBeginning of the public-key era |
| 2001 | AES | আধুনিক standard — এখনো সবচেয়ে নিরাপদModern standard — still the most secure |
| EncodingEncoding | HashingHashing | EncryptionEncryption | |
|---|---|---|---|
| উদ্দেশ্যPurpose | Format রূপান্তরFormat conversion | Integrity যাচাইIntegrity check | গোপনীয়তাConfidentiality |
| Reversible?Reversible? | YES | NO | YES (with key) |
| Key? | No | No | Yes |
| উদাহরণExample | Base64, URL encoding | MD5, SHA-256, bcrypt | AES, RSA, ChaCha20 |
| নিরাপত্তাSecurity | None | Medium | High |
Base64 encryption নয় — এটা শুধু format পরিবর্তন। যে কেউ decode করতে পারবে। অনেক developer ভুল করে Base64-কে security মনে করে। Password কখনো Base64-এ store করো না।Base64 is NOT encryption — it's just a format change. Anyone can decode it. Many developers mistakenly think Base64 provides security. Never store passwords in Base64.
$2a$ prefix → bcrypt (crack করা কঠিনhard to crack)$6$ prefix → sha512crypt (Linux modern)| AES Type | Key Size | নিরাপত্তাSecurity | ব্যবহারUse |
|---|---|---|---|
| AES-128 | 128 bit | GOOD | সাধারণ ব্যবহারGeneral use |
| AES-192 | 192 bit | BETTER | সরকারি ব্যবহারGovernment use |
| AES-256 | 256 bit | BEST | Military gradeMilitary grade |
সম্ভব সব combination try করা। নিশ্চিত সফলতা কিন্তু অনেক সময় লাগে।Trying every possible combination. Guaranteed success but takes very long.
Wordlist থেকে একটা একটা করে try করা। দ্রুত এবং common password-এ কার্যকর।Trying passwords one by one from a wordlist. Fast and effective on common passwords.
Pre-computed hash table — hash দেখে সাথে সাথে password বলে দেয়। Salt থাকলে কাজ করে না।Pre-computed hash table — instantly reveals the password from its hash. Doesn't work with salting.
Data breach থেকে পাওয়া username/password অন্য site-এ try করা।Using username/password pairs from data breaches to try on other sites.
একটা common password দিয়ে অনেক account-এ try করা। Account lockout এড়াতে।Trying one common password across many accounts. Avoids account lockout.
Wordlist-এ rules apply করা — "password" → "P@ssw0rd!", "password1", "PASSWORD"Applying rules to a wordlist — "password" → "P@ssw0rd!", "password1", "PASSWORD"
| Mode (-a) | নামName | বিবরণDescription |
|---|---|---|
-a 0 | Dictionary | Wordlist থেকে crackCrack from wordlist |
-a 1 | Combination | দুটো wordlist combine করাCombine two wordlists |
-a 3 | Brute Force/Mask | Pattern দিয়ে সব tryTry all with pattern |
-a 6 | Hybrid (W+M) | Wordlist + MaskWordlist + Mask |
-a 7 | Hybrid (M+W) | Mask + WordlistMask + Wordlist |
--force flag শুধু VM-এ দরকার হয়only needed in VMs| Option | কাজFunction |
|---|---|
-l | Single usernameSingle username |
-L | Username list fileUsername list file |
-p | Single passwordSingle password |
-P | Password list filePassword list file |
-t 4 | 4 parallel threads4 parallel threads |
-V | Verbose — প্রতিটা attempt দেখাওVerbose — show each attempt |
-f | প্রথম সফলতায় থামোStop at first success |
-s PORT | Custom portCustom port |
-o out.txt | Output file-এ saveSave to output file |
-R | Interrupted session resumeResume interrupted session |
| Wordlist | আকারSize | অবস্থান (Kali)Location (Kali) | সেরা ব্যবহারBest Use |
|---|---|---|---|
| rockyou.txt | 14M | /usr/share/wordlists/rockyou.txt.gz | সবচেয়ে বেশি ব্যবহৃতMost commonly used |
| SecLists | Multiple | /usr/share/seclists/ | Web, username, passwordWeb, username, password |
| dirb/common.txt | 4.6K | /usr/share/dirb/wordlists/ | Web directoryWeb directory |
| kaonashi | 400M+ | GitHub download | Hard hashes crackHard hash cracking |
| CeWL generated | Custom | Target site থেকেFrom target site | Target-specificTarget-specific |
| Hash | দৈর্ঘ্যLength | চেনার উপায়How to Identify | Hashcat -m | অবস্থাStatus |
|---|---|---|---|---|
| MD5 | 32 | hex, 32 chars | 0 | BROKEN |
| SHA-1 | 40 | hex, 40 chars | 100 | DEPRECATED |
| SHA-256 | 64 | hex, 64 chars | 1400 | OK |
| SHA-512 | 128 | hex, 128 chars | 1700 | GOOD |
| NTLM | 32 | hex, 32 chars (Windows) | 1000 | WEAK |
| bcrypt | 60 | $2a$ or $2b$ prefix | 3200 | STRONG |
| sha512crypt | ~106 | $6$ prefix (Linux) | 1800 | GOOD |
| NetNTLMv2 | variable | Responder capture | 5600 | CRACKABLE |
| WPA2 | .hc22000 | WiFi handshake | 22000 | MEDIUM |
| Kerberos TGS | variable | $krb5tgs$ prefix | 13100 | CRACKABLE |
এই ডকুমেন্ট সম্পূর্ণ শিক্ষামূলক উদ্দেশ্যে। সবসময় authorized environment-এ practice করো। This document is entirely educational. Always practice in an authorized environment.
v1.0 — Password Attacks & Cryptography | Bilingual | 12 Chapters + Cheat Sheet