Lesson 4: Basic Cryptography Concepts Flashcards
plaintext (or cleartext)
unencrypted message
ciphertext
an encrypted message
cipher
process (or algorithm) used to encrypt and decrypt a message
cryptanalysis
art of breaking or “cracking” cryptographic systems
cryptography
- “secret writing”
- historically, operated using simple substitution or transposition ciphers
security through obscurity
- to keep something secret by hiding it
- attempts to hide details of cipher (secret algorithm)
transport encryption
confidentiality means that a message cannot be deciphered without having the appropriate cipher and key (or alternatively the means to crack the cipher)
non-repudiation
- concept that the sender cannot deny sending message
- linked to identification and authentication
T or F. Cryptography can be used to design highly resilient control systems
True
control system
system with multiple parts, such as sensors, workstations, and servers, and complex operating logic
obfuscation
- art of making a message difficult to understand
- term used in conjunction with source code used to design computer applications
- obfuscated source code is rewritten in a way that does not affect the computer compiles or executes code, but makes it difficult for a person reading the code to understand how it works
white box cryptography
- attempts to protect an embedded key while preserving the functionality of the code have all been broken
- would offer much better Digital Rights Management (DRM) protection for copyright content such as music, video, and books
substitution ciper
- involves replacing units (a letter or blocks of letters) in the plaintext with different ciphertext
- simple substitution ciphers rotate or scramble letters of the alphabet
- example:
ROT13 (an example of Caesarian cipher) rotates each letter 13 places (so A becomes N for instance)
“Uryyb Jbeyq” means “Hello World”
transposition cipher
- units stay the same in plaintext and ciphertext, but their order is changed
- example: “HLOOLELWRD”
rail fence cipher
if you’re having trouble with the transposition cipher, try arranging groups of letters into columns
key
- most ciphers use a key to increase the security of the encryption process
- example: if you consider the Caesar cipher ROT13, you should realize that the key is 13
- key is important, because it means that even if the algorithm or cipher method is known, a message still cannot be decrypted without knowledge of the specific key
T or F. Most modern ciphers are made stronger by being open to review (cryptanalysis) by third-party researchers
True
keyspace
range of key values available to use with a particular cipher
- roughly equivalent to two to the power of the size of key
- some keys within the keyspace may be considered easy to guess (“weak”) and should not be used
- using a longer keys (2048 bits rather than 1024 bits, for instance) makes the encryption scheme stronger
T or F. Basic substitution and transposition ciphers are vulnerable to cracking by frequency analysis
True
frequency analysis
depends on the fact that some letters and groups of letters appear more frequently in natural language than others
T or F. A secure cipher must exhibit the properties of confusion and diffusion
True
confusion
- key should not be derivable from the ciphertext
- if one bit in key changes, many bits in ciphertext should change (each plaintext bit should have a 50% chance of flipping)
- same key should not be used by the algorithm in a predictable way when outputting ciphertexts from different plaintexts
- achieved by using complex substitutions, employing both whole key parts of the key to output ciphertext blocks
- confusion prevents attackers from selectively generating encrypted versions of plaintext messages and looking for patterns in their relationship to try to derive the key
diffusion
- means that predictable features of the plaintext should not be evident in the ciphertext
- if one bit of the plaintext is changed, many bits in the ciphertext should change as a result
- obtained through transposition
- prevents attackers from selectively determining parts of the message
- modern ciphers must use both substitution and diffusion to resist cryptanalysis attacks
trapdoor functions
basis of mathematical ciphers is to use an operation that is simple to perform one way (when all the values are known) but difficult to reverse
one-time pad
- an unbreakable encryption mechanism
- encryption key
- consists of exactly the same number of characters as the plaintext and must be generated by a truly random algorithm
- if used properly, one-time pads are unbreakable
XOR
- bitwise operation
- produces 0 if both values are the same and 1 if the values are different, or, put another way, an XOR operation outputs to truly only if one input is true and the other input is false
- advantage of XOR compared to an AND or an OR operation is that XOR has a 50% chance of outputting one or zero, whereas AND is more likely to output zero and OR is more likely to output one
- makes the ciphertext harder to analyze
nonce
principal characteristic of a nonce that it is never reused (“number used once”)
initialization vector (IV)
random (or pseudo-random)
salt
random (or pseudo-random) number or string
weak cipher suites and implementations
- critical vulnerability for an organization
- data that is being stored and processed is not secured