The effectiveness of account lockout is measured by the time \(T_{\text{attack}}\) required to test \(N\) credentials versus the lockout duration \(T_{\text{lockout}}\) after \(n\) failed attempts.
\[T_{\text{attack}} = N \times \left(\frac{1}{r} + \frac{T_{\text{lockout}}}{n}\right)\]
where \(r\) is the attempt rate (attempts/second) and \(n\) is the lockout threshold.
Working through an example:
Given: IoT access control system with: - 4-digit PIN space: \(N = 10^4 = 10,000\) possible PINs - Lockout threshold: \(n = 3\) failed attempts - Lockout duration: \(T_{\text{lockout}} = 60\) seconds - Attacker attempt rate (network limited): \(r = 10\) attempts/second
Step 1: Calculate time to test all PINs WITHOUT lockout
\[T_{\text{no lockout}} = \frac{N}{r} = \frac{10,000}{10} = 1,000 \text{ seconds} \approx 16.7 \text{ minutes}\]
Step 2: Calculate time to test all PINs WITH lockout (3 attempts, then 60s wait)
Number of lockout cycles needed:
\[\text{Cycles} = \frac{N}{n} = \frac{10,000}{3} \approx 3,333 \text{ cycles}\]
Total time including lockouts:
\[T_{\text{with lockout}} = \frac{N}{r} + \text{Cycles} \times T_{\text{lockout}} = 1,000 + 3,333 \times 60 = 201,000 \text{ seconds} \approx 55.8 \text{ hours}\]
Step 3: Calculate security improvement factor
\[\text{Improvement} = \frac{T_{\text{with lockout}}}{T_{\text{no lockout}}} = \frac{201,000}{1,000} = 201\times\]
Result: A 3-attempt lockout with 60-second penalty increases brute force attack time from 17 minutes to 56 hours – a 201x improvement, making the attack impractical for most scenarios.
In practice: Brute force attacks against IoT device PINs or passwords can be defeated with minimal lockout durations. However, lockout durations must balance security (longer is better) with usability (legitimate users who mistype need reasonable retry windows). For high-security systems, escalating lockouts (60s after 3 failures, 300s after 6 failures, 3600s after 9 failures) provide strong protection while allowing legitimate users to recover from mistakes.