Identify the cipher type
Gather the ciphertext
Look for patterns, repeats, and word lengths
Determine the language of the plaintext
Check for common symbols, digraphs, and trigraphs
Use frequency analysis
Test likely shifts, substitutions, or transpositions
Compare against common words and letter combinations
Apply known-plaintext or crib clues if available
Reconstruct partial mappings or keys
Verify each candidate decryption for consistency
Refine the key or mapping iteratively
Confirm the final plaintext by context and readability
