WPA2 and WPA3 security in Computer Networks - Time & Space Complexity
When we look at WPA2 and WPA3 security, we want to understand how the time it takes to secure or break a network changes as the network or attack size grows.
We ask: How does the effort needed grow when more devices or data are involved?
Analyze the time complexity of the handshake process in WPA2 and WPA3.
// Simplified handshake process
function handshake(devices) {
for (const device of devices) {
generateNonce(device);
exchangeKeys(device);
verifyAuthentication(device);
}
}
This code shows how each device in a network goes through steps to establish a secure connection.
Look for repeated actions that take time.
- Primary operation: The handshake steps for each device.
- How many times: Once per device in the network.
As the number of devices increases, the total handshake work grows too.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 | 10 handshakes |
| 100 | 100 handshakes |
| 1000 | 1000 handshakes |
Pattern observation: The work grows directly with the number of devices.
Time Complexity: O(n)
This means the time to complete all handshakes grows in a straight line as more devices join.
[X] Wrong: "Adding more devices won't affect the total handshake time much because each handshake is quick."
[OK] Correct: Even if each handshake is fast, doing many handshakes adds up, so total time grows with device count.
Understanding how security steps scale with network size shows you can think about real-world system performance, a useful skill in many tech roles.
What if the handshake process included a nested verification step for each device that checked all other devices? How would the time complexity change?