The risk of sharing a symmetric key

Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.

The risk of sharing a symmetric key

Name:
Date:
Class:

Quick Questions

Shade in the A or B circle for each question.

1. Alice sends her symmetric key to Bob over the same network she uses to send the encrypted messages. Is this safe?
A Yes, the key is encrypted by the network automatically
B No, an attacker could intercept the key as well as the data
2. An attacker intercepts a symmetric key while it is being shared. What can they do?
A Only decrypt the one message that was sent with the key
B Decrypt every message that uses that key
3. Which statement about symmetric encryption is correct?
A The encryption is defeated if the key is intercepted
B The encryption stays secure even if the key is intercepted
4. Why is sharing a symmetric key a weakness?
A The key must be sent to the receiver, so it could be intercepted
B The key is too short to be used for encryption
5. An attacker has intercepted the shared key but has not yet seen any messages. What happens when messages are sent later?
A The attacker can decrypt them using the stolen key
B The attacker cannot read them because they missed the key exchange

Match the Pairs

Draw a line connecting each item on the left to its match on the right.

Left columnRight column
1send(key) over the same network as the data Aplaintext = decrypt(ciphertext, stolenKey)
2attacker.copy(key) BThe key is sent along the same route as the encrypted messages, so an attacker watching the network could capture both
3The weakness of sharing a symmetric key leads to asymmetric encryption, where the public key can be shared openly CWrong: the key itself is not protected by encrypting the data, so an attacker who intercepts it can still decrypt the messages
4If the key is intercepted, the attacker can decrypt the intercepted data DAn attacker intercepts the shared key, so they can decrypt every message that uses it and the encryption is defeated
5send(key) openly; "The key is safe because the data is encrypted" EWrong: the same key is used for every message, so an intercepted key lets the attacker decrypt all of them
6attacker steals key; "Only one message is at risk" Fencrypt(message, publicKey)

Definitions

key interception

Fill in the Blanks

Complete each line of code by filling in the missing parts.

1.
ciphertext ← ENCRYPT(message, ___) SEND key OVER network SEND ciphertext OVER network
2.
SEND key OVER network attacker ← INTERCEPT(_______)
3.
message ← _______(ciphertext, stolenKey) OUTPUT message
4.
IF attackerHasKey = TRUE ____ encryptionDefeated ← TRUE ENDIF
5.
SEND publicKey OVER network KEEP __________ ON recipientDevice

Spot the Error

Shade in the letter of the line that contains an error.

Question 1
A key ← 'K42'
B SEND(key, network)
C SEND(cipher, network)
D attacker: CANNOT READ cipher
Question 2
A key ← 'K42'
B cipher ← DECRYPT(msg, key)
C SEND(cipher, network)
D SEND(key, network)
Question 3
A key ← 'K42'
B SEND(key, network)
C attackerKey ← NULL
D OUTPUT attackerKey = key
Question 4
A sharedKey ← 'K42'
B SEND(sharedKey, network)
C risk ← 'key cannot be seen'
D fix ← 'use asymmetric keys'
Question 5
A pubKey ← SHARE(network)
B cipher ← ENCRYPT(msg, privKey)
C SEND(cipher, network)

Answer Key

The risk of sharing a symmetric key
Section A: Quick Questions
Q1
B — No, an attacker could intercept the key as well as the data
Q2
B — Decrypt every message that uses that key
Q3
A — The encryption is defeated if the key is intercepted
Q4
A — The key must be sent to the receiver, so it could be intercepted
Q5
A — The attacker can decrypt them using the stolen key
Section B: Match the Pairs
Q1
send(key) over the same network as the data → The key is sent along the same route as the encrypted messages, so an attacker watching the network could capture both
Q2
attacker.copy(key) → An attacker intercepts the shared key, so they can decrypt every message that uses it and the encryption is defeated
Q3
The weakness of sharing a symmetric key leads to asymmetric encryption, where the public key can be shared openly → encrypt(message, publicKey)
Q4
If the key is intercepted, the attacker can decrypt the intercepted data → plaintext = decrypt(ciphertext, stolenKey)
Q5
send(key) openly; "The key is safe because the data is encrypted" → Wrong: the key itself is not protected by encrypting the data, so an attacker who intercepts it can still decrypt the messages
Q6
attacker steals key; "Only one message is at risk" → Wrong: the same key is used for every message, so an intercepted key lets the attacker decrypt all of them
Section C: Definitions
Q1
key interception — If an attacker intercepts a symmetric key while it is being shared, they can decrypt every message that uses that key, so the encryption is defeated.
Section D: Fill in the Blanks
Q1
ciphertext ← ENCRYPT(message, key) SEND key OVER network SEND ciphertext OVER network
Q2
SEND key OVER network attacker ← INTERCEPT(network)
Q3
message ← DECRYPT(ciphertext, stolenKey) OUTPUT message
Q4
IF attackerHasKey = TRUE THEN encryptionDefeated ← TRUE ENDIF
Q5
SEND publicKey OVER network KEEP privateKey ON recipientDevice
Section E: Spot the Error
Q1
D — The key was sent over the same network as the cipher, so the attacker has intercepted it. They can decrypt the cipher with it. The line should be attacker: DECRYPT(cipher, key).
Q2
B — The sender must ENCRYPT the plaintext msg to make the cipher. DECRYPT is for turning ciphertext back into plaintext.
Q3
C — The key travels over the network, so an attacker can copy it. The line should be attackerKey ← COPY(network). Setting it to NULL ignores the risk.
Q4
C — Sending the key over the network means it can be intercepted and copied. That is the risk of sharing a symmetric key. The line should say the key can be copied.
Q5
B — Asymmetric encryption avoids the key-sharing risk. The sender encrypts with the recipient's public key. The private key is never shared. The line should use pubKey.