LOGBOOK

HELP

1 / 14
Other keys: showSpace: good1-4: rate0: skip5: flag

Question

A common claim in cryptography is that key length is NOT the only security criterion. Why not — what else can break a system whose algorithm and key size are both strong?

Answer

A large, correct key only secures the math. Real systems still fall through side-channels, badly-protected keys, software (rather than hardware) key storage, a weak first key exchange, broken authentication protocols, and attacks that never touch the wire at all.

A 256-bit AES key or a 3072-bit RSA key makes brute force hopeless — but attackers rarely fight the math. Here is how a "strong-key" system still gets broken:

  • Side-channel attacks — timing, power draw or electromagnetic leakage reveal the key around the cipher, without breaking it.
  • Poorly protected keys — a 2048-bit RSA private key guarded by a 6-digit password is only as strong as those 6 digits.
  • Keys/algorithms in software, not a security module — if the crypto runs in the PC's memory instead of dedicated hardware (HSM, smartcard), the key can be read out.
  • A weak initial key exchange — "trust on first use" (TOFU) or plain FTP lets an attacker sit in the middle during setup, before any strong key is agreed.
  • Weak or wrong authentication protocols — if you can't be sure who holds the other key, its size is irrelevant.
  • Attacks off the communication path — the classic Alice–Bob model only considers on-the-wire attacks; the endpoint, the user, or the supply chain are often the real target.

A sharper version of the same point: the size of a brute-force attack says nothing about an algorithm's security. 104-bit RC4 is brute-force-proof, yet it can be broken on home equipment because the algorithm is weak. Security is the weakest link in the whole chain — never just the biggest number in it.

Go deeper:

An attempt to decode RSA key bits using power analysis. The left pulse represents the CPU power variations during the step of the algorithm without multiplication, the broader right pulse – step with multiplication, allowing an attacker to read bits 0, 1.
An attempt to decode RSA key bits using power analysis. The left pulse represents the CPU power variations during the step of the algorithm without multiplication, the broader right pulse – step with multiplication, allowing an attacker to read bits 0, 1.
Audriusa. Recorded by student in ETH (Zurich) during system security laboratory work. · GPL · Wikimedia Commons
or press any other key

Question

What minimum key sizes does the German BSI currently recommend for the main cryptographic algorithms, and what security level do they target?

Answer

AES 128+ bits, RSA/DH 3072+ bits, ECC 256+ bits, hash-for-signatures 256+ bits — all chosen to give roughly a 128-bit security level (the point where brute force is physically hopeless).

RSA vs ECC key size for the same security level

* For equal security, RSA/DH keys grow far faster than ECC keys (log scale). *

The BSI (Germany's Federal Office for Information Security) publishes yearly guidance in Technical Guideline TR-02102-1; these are its current recommendations. The unifying idea is that every row is dimensioned to the same ~128-bit security level — so the numbers look wildly different only because each problem (brute force vs. factoring vs. discrete log) resists attack differently.

Algorithm Minimum Key Size Security Level
AES 128 bits (192/256 better) 128 bits
RSA 3072 bits (since 2023) ~128 bits
DH / DSA 3072 bits ~128 bits
ECC 256 bits (384/512 better) ~128 bits
SHA-2/3 for signatures 256-bit output min. 240-bit hash → 120-bit collision
HMAC SHA-2 or SHA-3 min. 256-bit output

The hash rule has a subtle floor: since 2023 the minimum hash size is 240 bits, which knocks out 224-bit hashes (and 224-bit ECC, which can only sign a 224-bit hash) — so 256 bits is effectively the practical minimum.

Equivalence table:

Symmetric RSA/DH ECC
80 1024 160
128 3072 256
192 7680 384
256 15360 512

Key observation: Doubling the symmetric key size (128 → 256-bit security) takes RSA from 3072 → 15360 bits (≈5×) but ECC only from 256 → 512 bits (2×). This is why ECC scales much better.

Go deeper:

or press any other key