EECC study materials
EECC study resources

EECC flashcards

EECC · Build recall with a focused review session.

32 cards. Read the term and the definition here. The deck at the top of this page is optional.

Kerckhoffs's principle
A cryptosystem should remain secure even if everything about the system except the key is public knowledge. Security depends on key secrecy, not algorithm secrecy.
One-time pad
An encryption scheme XORing plaintext with a truly random key as long as the message, used once. It is information-theoretically secure but provides no integrity and is impractical at scale.
Confusion and diffusion
Shannon's design properties: confusion makes the relationship between key and ciphertext complex, while diffusion spreads plaintext influence across the ciphertext. Substitution supplies confusion; permutation supplies diffusion.
Frequency analysis
A ciphertext-only attack exploiting the non-uniform frequency of letters in natural language. It breaks monoalphabetic substitution ciphers but is much weaker against polyalphabetic ciphers.
AES key schedule
AES expands a 128, 192, or 256-bit key into round keys over 10, 12, or 14 rounds respectively. Each round applies SubBytes, ShiftRows, MixColumns, and AddRoundKey, with MixColumns omitted in the final round.
ECB mode weakness
Electronic Codebook encrypts each block independently with the same key, so identical plaintext blocks yield identical ciphertext blocks. It leaks data patterns and should not be used for multi-block data.
CBC mode
Cipher Block Chaining XORs each plaintext block with the previous ciphertext block before encryption. It requires a random unpredictable IV, is inherently sequential, and needs padding.
GCM nonce reuse
Reusing a nonce with the same AES-GCM key allows XOR recovery of plaintexts and forgery of the authentication tag. Nonces must be unique per key, ideally random or counter-based.
3DES effective strength
Triple DES applies DES encrypt-decrypt-encrypt with two or three keys. Two-key 3DES gives about 112 bits of strength; three-key gives about 168 bits. The 64-bit block size limits its modern use.
RSA key generation
Choose primes p and q, compute n = p*q and phi(n) = (p-1)(q-1), pick e coprime to phi(n), and compute d as the modular inverse of e modulo phi(n).
Diffie-Hellman key exchange
Two parties exchange g^a and g^b modulo p and each computes the shared secret g^(ab). Its security rests on the discrete logarithm problem; unauthenticated DH is vulnerable to man-in-the-middle.
RSA-OAEP padding
Optimal Asymmetric Encryption Padding randomizes RSA encryption and provides provable security against chosen-ciphertext attacks. Textbook RSA without padding is deterministic and insecure.
Hybrid encryption
A random symmetric session key is encrypted with the recipient's public key, and the payload is encrypted with that session key. This combines asymmetric key distribution with symmetric speed.
Elliptic curve cryptography
Public-key cryptography over elliptic curves whose security rests on the elliptic curve discrete logarithm problem. A 256-bit ECC key provides roughly the strength of a 3072-bit RSA key.
Hash collision resistance
The property that finding two distinct inputs with the same digest is computationally infeasible. For an n-bit hash, collision resistance is bounded by the birthday attack at about 2^(n/2) work.
HMAC construction
A keyed message authentication code built from a hash: H((K' XOR opad) || H((K' XOR ipad) || message)). It resists length-extension attacks and works with any cryptographic hash.
Length extension attack
Given H(m), an attacker can compute H(m || padding || x) for Merkle-Damgard hashes without knowing m. HMAC and sponge constructions such as SHA-3 are not vulnerable.
Password salt
A random value stored with a password hash and mixed into the computation. Salts defeat precomputed rainbow tables and ensure identical passwords produce different hashes.
X.509 certificate
A digitally signed structure binding a subject identity to a public key, issued by a certificate authority. It includes serial number, issuer, validity period, subject, public key, and extensions.
Certificate revocation
Mechanisms to invalidate certificates before expiry: CRLs are periodically published signed lists, while OCSP provides real-time status queries. OCSP stapling embeds a fresh response in the handshake.
Chain of trust
A hierarchy from an end-entity certificate through intermediate CAs to a trusted root in the local trust store. Validation checks signatures, validity dates, name match, and revocation status.
subjectAltName extension
An X.509 extension listing the DNS names, IP addresses, or URIs a certificate is valid for. Modern browsers match hostnames against subjectAltName rather than the common name.
ECDSA nonce reuse
Reusing the same random nonce k for two ECDSA signatures over different messages allows recovery of the private key from the two signatures. Nonces must be unique and unpredictable.
Forward secrecy
A property where compromise of a long-term key does not reveal past session keys. Ephemeral Diffie-Hellman (DHE/ECDHE) provides it; static RSA key transport does not.
HSM key storage
A hardware security module generates and stores private keys inside tamper-resistant hardware and performs cryptographic operations internally. Keys are never exported in plaintext.
Key escrow
A key management arrangement where a third party holds a copy of private keys or recovery data. It enables lawful or emergency recovery but introduces a high-value compromise target.
TLS 1.3 handshake
A one-round-trip handshake using (EC)DHE key exchange and AEAD ciphers only. It encrypts the certificate and removes RSA key transport and CBC modes present in TLS 1.2.
IPsec ESP versus AH
ESP provides confidentiality plus integrity and authentication, while AH provides integrity and authentication only, without encryption. Both can operate in transport or tunnel mode.
WPA3 SAE
Simultaneous Authentication of Equals replaces the WPA2 four-way handshake's PSK exchange with a password-authenticated key exchange. It resists offline dictionary attacks on captured handshakes.
Birthday attack
A cryptanalytic attack finding hash collisions in about 2^(n/2) operations for an n-bit hash, due to the birthday paradox. It halves the effective security level for collision resistance.
Padding oracle attack
An attack exploiting distinguishable error responses to CBC padding to decrypt ciphertext or forge messages without the key. Uniform error handling and AEAD modes mitigate it.
FIPS 140 validation
A U.S. government standard for validating cryptographic modules at security levels 1 through 4, covering design, implementation, and physical security. It is distinct from algorithm standards like FIPS 197.