Mất máy tính xách tay được mã hóa LUKS vào cuối năm 2019 và hiện đang cố gắng tìm ra khả năng kẻ tấn công rất tinh vi có thể đột nhập.
Vùng chứa LUKS được tạo vào giữa năm 2017 với cài đặt mặc định LUKS1.
CPU tôi sử dụng hồi đó là một Intel Core i7-6700K mà tôi vẫn còn.
Tôi đã chạy một số điểm chuẩn với điểm chuẩn cryptsetup
đã tạo ra giá trị sau cho PBKDF2-sha1.
PBKDF2-sha1 1659139 lần lặp mỗi giây cho khóa 256 bit
Tôi không thể nhớ chính xác mật khẩu mình đã sử dụng (tôi có quá nhiều) ngoại trừ thực tế là nó dài ít nhất 14 ký tự và chứa [a-z0-9] và nó không có trong bất kỳ từ điển nào (đã kiểm tra rockyou2021.txt).
Tôi đã tìm thấy một bảng điểm chuẩn trên GitHub bằng cách sử dụng Nvidia GeForce RTX 3090.
Hashmode: 12000 - PBKDF2-HMAC-SHA1 (Số lần lặp lại: 999)
Tốc độ.#1.........: 9240,9 kH/s (47,48ms) @ Gia tốc:16 Vòng lặp:499 Thr:1024 Vec:1
Hashmode: 12001 - Atlassian (PBKDF2-HMAC-SHA1) (Lặp lại: 9999)
Tốc độ.#1.........: 923,3 kH/s (72,49ms) @ Gia tốc:8 Vòng lặp:1024 Thr:1024 Vec:1
Hashmode: 22600 - Mật mã ứng dụng Telegram Desktop (PBKDF2-HMAC-SHA1) (Lặp lại: 3999)
Tốc độ.#1.........: 328,7 kH/s (63,58ms) @ Gia tốc:8 Vòng lặp:128 Thr:1024 Vec:1
Dựa trên những con số này, tôi kết luận rằng GPU có thể tính toán 9249 kH/s cho 1000 lần lặp.
Nếu số lần lặp tăng từ 1659 lên 1659139, điều đó có nghĩa là tốc độ GPU sẽ giảm xuống: $\frac{9249 kH/s}{1659}$ = 5575 H/s. Điều đó có nghĩa là kẻ tấn công chỉ có thể kiểm tra hiệu quả 5575 mật khẩu mỗi giây với một GPU đó.
Các mật khẩu có thể có dựa trên bộ ký tự ([a-z0-9], độ dài=14) là: $36^{14}$.
Để đơn giản, chúng ta hãy cắt nó làm đôi để lại cho chúng ta một trường hợp trung bình là: $\frac{36^{14}}{2}=3*10^{21}$.
Điều đó có nghĩa là trung bình một kẻ tấn công sẽ $\frac{3*10^{21}}{5575}=5*10^{17}$ giây để tìm đúng mật khẩu tương đương với $3*10^{9}$ năm. Điều đó có nghĩa là ngay cả khi kẻ tấn công có 1 triệu GPU đó, vẫn sẽ mất 300 năm để bẻ khóa mật khẩu.
Câu hỏi của tôi là:
- Ở mức độ nào thì số lần lặp lại tương đối cao sẽ bù đắp cho entropy tương đối yếu của mật khẩu của tôi khi xem xét một cuộc tấn công từ điển hoặc từ điển vào GPU hiện đại?
- Tôi có bỏ sót chi tiết quan trọng nào trong phân tích của mình không?