Skip to content

About

RSA timing side-channel CTF challenge — Kocher-style Montgomery-reduction leak, teaching-scale (16-bit). Solution included, encrypted with the recovered secret as passphrase.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

Quartz Oracle — Timing Side-Channel Challenge

Category: Crypto / Side-channel Difficulty: Medium

A "custom HSM modular exponentiation engine" leaks its RSA private key through timing. Recover the secret number it's protecting.

Connecting

nc abhrankan.duckdns.org 9998

The server announces N and e on connect, then accepts hex-encoded ciphertexts, one per line, and responds with its own precisely-measured elapsed computation time for pow(c, d, N).

N=40723, e=65537.

Target ciphertext: 21494

Recover the secret number m such that pow(m, 65537, 40723) == 21494.

A note on scope

This is a teaching-scale challenge (16-bit modulus), not a production-strength crypto CTF. The oracle's design is a real, working Kocher-style timing side-channel -- extra computation time is spent whenever an intermediate value crosses N/2 during modular exponentiation, a simplified analogue of Montgomery multiplication's real data-dependent "extra reduction" step. That part is genuine and scales conceptually to real RSA key sizes.

What doesn't trivially scale is the specific recovery technique demonstrated in the solution: raw bit-by-bit timing recovery at this modulus size has a real, measured error rate well above 50% per bit in practice (confirmed during development, including on real network timing, not just theory) -- solving it requires an error-tolerant approach, not a clean single-pass recovery. That error-tolerant correction step, as implemented, does not remain tractable at realistic (64+ bit) key sizes without significantly more sophisticated statistics than what's demonstrated here. This challenge is scoped honestly to the size where the full technique is proven to work, not inflated to look like a "real" flag-length target.

Rules

Everything you need is in this repo. No live host beyond the challenge server itself.

Good luck.

About

RSA timing side-channel CTF challenge — Kocher-style Montgomery-reduction leak, teaching-scale (16-bit). Solution included, encrypted with the recovered secret as passphrase.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages