1/168
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
L1 — What is security engineering?
Building systems that remain dependable in the face of malice, error, or mischance.
L1 — What three kinds of problems must security engineering handle?
Malice, error, and mischance.
L1 — How does security engineering differ from ordinary software engineering?
Software engineering focuses on making desired things happen; security engineering must also ensure undesired things do not happen.
L1 — Why are hostile adversaries a unique challenge?
Attackers deliberately search for unexpected weaknesses instead of behaving like random failures.
L1 — Why does security require continual vigilance?
Attackers can find new and unpredictable ways to exploit systems, so defenders must anticipate new failures.
L1 — Can perfect security be guaranteed?
No. The lecture emphasizes that no one knows how to build unbreakable security and claims of perfect security are wrong.
L2 — CIA Triad
Confidentiality, Integrity, Availability.
L2 — Confidentiality
Information is not disclosed to unintended or unauthorized parties.
L2 — Confidentiality question to ask
Who is allowed to see this information?
L2 — Example confidentiality violation
A private bank statement or password is exposed to an unauthorized person.
L2 — Integrity
Data cannot be modified in an unauthorized way, and the system functions as intended.
L2 — Integrity question to ask
Can I trust that the data or system has not been improperly changed?
L2 — Example integrity violation
A bank balance or file is changed without authorization.
L2 — Availability
A resource is accessible and usable by authorized users on demand.
L2 — Availability question to ask
Can authorized users access the resource when they need it?
L2 — Example availability violation
A DDoS attack makes a website or network unavailable.
L2 — Bank website cannot be accessed: which CIA property?
Availability.
L2 — Bank balance randomly changes: which CIA property?
Integrity.
L2 — Bank statements are sent to unintended people: which CIA property?
Confidentiality.
L2 — Why use risk assessment?
Not all security problems are equally serious, so risks must be prioritized.
L2 — What does DREAD stand for?
Damage, Reproducibility, Exploitability, Affected Users, Discoverability.
L2 — DREAD: Damage
How bad would the attack be?
L2 — DREAD: Reproducibility
How easy is it to reproduce the attack?
L2 — DREAD: Exploitability
How much work is required to launch the attack?
L2 — DREAD: Affected Users
How many users would be impacted?
L2 — DREAD: Discoverability
How easy is it to discover the threat or vulnerability?
L2 — Security through obscurity
Relying mainly on secrecy about a system's design or implementation as the security mechanism.
L2 — Why is security through obscurity a weak foundation?
If the hidden design becomes known, the protection can collapse; secrecy should not replace real security controls.
L2 — Can obscurity ever help?
It can be an additional layer on top of strong security practices, but it should not be the main defense.
L2 — Security by Design
Security should be built into the system from the beginning rather than added only after problems appear.
L2 — OWASP
Open Worldwide Application Security Project; a nonprofit foundation dedicated to improving software security.
L2 — OWASP Security by Design Principles in the posted slides
The quiz topic sheet names them, but the posted Lecture 2 slides only reference the OWASP principles and do not enumerate the full list.
L3 — Cryptography
The science of hiding secret data.
L3 — Cryptanalysis
The science of breaking secret messages.
L3 — Cryptology
The broader field containing both cryptography and cryptanalysis.
L3 — Symmetric-key cryptography
The same secret key is used for encryption and decryption.
L3 — Symmetric encryption notation
C = E_K(P), where P is plaintext, K is the secret key, and C is ciphertext.
L3 — Symmetric decryption notation
P = D_K(C), using the same secret key K.
L3 — Plaintext
The original readable message or data before encryption.
L3 — Ciphertext
The encrypted output produced from plaintext.
L3 — Cipher
An algorithm consisting of well-defined steps for encryption or decryption.
L3 — Substitution cipher
Replaces plaintext bits, characters, or blocks with different bits, characters, or blocks.
L3 — Transposition cipher
Scrambles the positions of characters without changing the characters themselves.
L3 — Permutation cipher
A type of transposition cipher that rearranges the order of plaintext symbols.
L3 — Stream cipher
Processes plaintext continuously, commonly a bit or byte at a time using a keystream.
L3 — Block cipher
Processes fixed-size blocks of plaintext and maps each plaintext block to a ciphertext block.
L3 — Substitution vs. transposition
Substitution changes what symbols are present; transposition changes where the symbols are located.
L3 — Open design
Security of the cipher should rely on the key being secret, not on the cipher algorithm being secret.
L3 — What should remain secret under open design?
The cryptographic key, not the algorithm.
L3 — XOR identity: X XOR X
0
L3 — XOR identity: X XOR 0
X.
L3 — One-time pad encryption
C = M XOR K.
L3 — One-time pad decryption
M = C XOR K because (M XOR K) XOR K = M.
L3 — OTP requirement 1
The key K must be uniformly random.
L3 — OTP requirement 2
The key K must be at least as long as the message M.
L3 — OTP requirement 3
The key K must be used only once.
L3 — OTP requirement 4
The key K must remain secret.
L3 — Why can the one-time pad provide perfect secrecy?
For a given ciphertext, every same-length plaintext is possible with exactly one corresponding key, so the ciphertext alone does not favor one plaintext.
L3 — What happens if an OTP key is reused?
C1 XOR C2 = M1 XOR M2, which leaks a strong relationship between the two plaintexts.
L3 — Why is a block-cipher mapping one-to-one?
Encryption must be reversible; if two plaintext blocks mapped to the same ciphertext block, decryption would be ambiguous.
L3 — Do block ciphers automatically provide integrity?
No. They are widely used for confidentiality, but confidentiality alone does not prove data is authentic or unchanged.
L3 — Pseudorandomness
Random-like behavior produced by a deterministic algorithm; the output is determined by the seed and algorithm.
L3 — Initialization vector (IV): main purpose
Introduce randomness so repeated or similar plaintext encrypted with the same key does not reveal obvious repeated ciphertext patterns.
L3 — Must an IV be secret?
No, but in the construction discussed in lecture it must be protected from unauthorized manipulation.
L3 — Big lesson from IV bit flipping
Confidentiality does not imply integrity.
L4 — DES
Data Encryption Standard; a symmetric-key block cipher.
L4 — DES block size
64 bits.
L4 — DES usable key size
56 bits.
L4 — DES number of rounds
16
L4 — DES major steps
Key generation, key schedule, initial permutation, round function, final permutation, decryption.
L4 — DES key schedule
Generates 16 round subkeys from the original 56-bit key.
L4 — DES round-subkey size
48 bits.
L4 — DES key schedule split
Split the 56-bit key into two 28-bit halves, circularly shift them, recombine them, then PC-2 selects/reorders 48 bits for the round key.
L4 — DES initial permutation
A fixed reordering of the 64 plaintext bits before the Feistel rounds.
L4 — DES structure
Feistel network.
L4 — DES Feistel round: first step
Split the 64-bit block into 32-bit left and right halves.
L4 — DES round: expansion
Expand the 32-bit right half to 48 bits.
L4 — DES round: key mixing
XOR the expanded 48-bit right half with the 48-bit round subkey.
L4 — DES round: substitution
Split the 48-bit result into eight 6-bit chunks; each S-box maps 6 bits to 4 bits, producing 32 bits total.
L4 — DES round: permutation
Permute the 32-bit S-box output using a fixed table.
L4 — DES round: combine with left half
XOR the permuted 32-bit result with the left half, then swap halves for the next round.
L4 — DES final permutation
After the last round, combine the halves and apply the inverse of the initial permutation.
L4 — DES decryption
Uses essentially the same Feistel process as encryption, but applies the round subkeys in reverse order.
L4 — Main weakness of DES
Its 56-bit key is too small for modern security requirements.
L4 — 2DES encryption
C = E_K2(E_K1(P)).
L4 — Why does 2DES not provide the expected 112-bit security?
It is vulnerable to a meet-in-the-middle attack.
L4 — Meet-in-the-middle attack against 2DES
Compute and store E_K1(P) for all K1 values, compute D_K2(C) for all K2 values, and look for matching intermediate values.
L4 — MITM matching condition
E_K1(P) = D_K2(C).
L4 — 2DES MITM complexity from lecture
Essentially O(2^56), rather than O(2^112), plus substantial storage.
L4 — Why use a second known plaintext-ciphertext pair in MITM?
To test candidate key pairs and eliminate false matches.
L4 — 3DES form
EDE: C = E_K3(D_K2(E_K1(P))).
L4 — 3DES security discussed in lecture
Approximately O(2^112) against the discussed meet-in-the-middle strategy.
L4 — Why is the middle 3DES step decryption?
The EDE structure increased security while preserving compatibility with legacy DES systems.
L5 — Confusion
Makes the relationship between the key and ciphertext difficult to see or predict.
L5 — Diffusion
Spreads the influence of each plaintext bit across many ciphertext bits.
L5 — Confusion memory cue
Key-to-ciphertext relationship becomes confusing.
L5 — Diffusion memory cue
A small plaintext change spreads across the ciphertext.
L5 — Avalanche effect
A small input change, ideally one bit, causes many ciphertext bits to change.
L5 — AES
Advanced Encryption Standard; a symmetric-key block cipher based on Rijndael.
L5 — AES block size
128 bits.