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.