skills/kiwamizamurai/cctf/crypto-analysis

crypto-analysis

SKILL.md

Crypto Analysis Skill

Quick Workflow

Progress:
- [ ] Try Ciphey auto-decrypt first
- [ ] Identify crypto type (RSA/AES/XOR/classical)
- [ ] Check for known weaknesses
- [ ] Implement attack
- [ ] Decrypt flag

Step 1: Auto-Decrypt (Try First!)

ciphey -t "ENCODED_TEXT"    # Auto-detects and decrypts
ciphey -f encrypted.txt     # From file

Step 2: Identify Crypto Type

Pattern Crypto Type Reference
n, e, c variables RSA reference/rsa-attacks.md
16/32 byte key, IV AES reference/aes-attacks.md
XOR operations XOR/Stream reference/classical.md
Polynomial mod Lattice reference/lattice.md

RSA Attack Decision Tree

├── e small (≤5)?     → Direct eth root
├── e very large?     → Wiener's Attack
├── Multiple n,e,c?   → Hastad's Broadcast
├── Same n, diff e?   → Common Modulus
├── GCD(n1,n2) > 1?   → Common Factor
├── p ≈ q?            → Fermat Factorization
├── dp/dq leaked?     → Partial Key Recovery
└── Default           → FactorDB / yafu

Full implementations: reference/rsa-attacks.md

Quick Commands

# Auto-decrypt
ciphey -t "text"

# XOR analysis
xortool encrypted.bin
xortool -c 20 encrypted.bin  # Expect spaces

# Factor large n
yafu "factor(<n>)"

# RSA tool
python3 RsaCtfTool.py -n <n> -e <e> --uncipher <c>

# Lattice (SageMath)
sage solve.sage

Reference Files

  • RSA Attacks: Small e, Wiener, Hastad, Common Modulus, Fermat, FactorDB
  • AES Attacks: ECB detection, CBC flip, Padding Oracle
  • Classical/XOR: Ciphey, xortool, frequency analysis, Vigenère
  • Lattice: Coppersmith, LLL, HNP
Weekly Installs
7
GitHub Stars
5
First Seen
Feb 1, 2026
Installed on
opencode6
gemini-cli5
github-copilot5
codex5
amp5
kimi-cli5