PTK = Pairwise Transient Key
Trong chuẩn IEEE 802.11i / WPA2 / WPA3, PTK (Pairwise Transient Key) là khóa phiên đối xứng được sinh ra trong quá trình 4-way handshake giữa Supplicant (client) và Authenticator (AP/Controller) để mã hóa và bảo toàn toàn vẹn lưu lượng unicast giữa client và AP.
Quy trình sinh PTK (WPA2-Personal/Enterprise)
- PMK (Pairwise Master Key):
- Personal: PMK = PBKDF2(PSK, SSID, 4096 rounds) – PSK là mật khẩu Wi-Fi.
- Enterprise: PMK do RADIUS server phân phối sau EAP authentication (MSK → PMK).
- 4-way Handshake:
- AP → Client: ANonce (random).
- Client → AP: SNonce (random) + MIC (Message Integrity Code).
- AP → Client: ANonce + Key Data (GTK) + MIC.
- Client → AP: ACK + MIC.
- KDF (Key Derivation Function):
PTK = PRF-512(PMK, "Pairwise key expansion", MAC_AP || MAC_Client || ANonce || SNonce)
PTK 512-bit được chia thành 5 khóa con:- KCK (Key Confirmation Key) – 128-bit: Tính MIC cho handshake.
- KEK (Key Encryption Key) – 128-bit: Mã hóa GTK trong message 3.
- TK (Temporal Key) – 128-bit: Dùng cho CCMP (AES-CCMP) hoặc TKIP (RC4) để mã hóa/giải mã frame dữ liệu unicast.
- 2 khóa dự phòng (không dùng trong CCMP).
PTK vs GTK
| Khóa | Phạm vi | Dùng cho | Thay đổi khi |
|---|---|---|---|
| PTK | Unicast (1 client ↔ AP) | Mã hóa dữ liệu, MIC unicast | Reassociation, Reauthentication, PMKSA caching timeout |
| GTK (Group Temporal Key) | Broadcast/Multicast (AP → all clients) | Mã hóa broadcast/multicast | Client rời mạng, timer hết hạn, key rotation policy |
Tại sao PTK quan trọng?
- Đảm bảo Perfect Forward Secrecy (nếu PMK bị lộ sau này, PTK cũ không bị suy ra – nhờ ANonce/SNonce ngẫu nhiên).
- Mỗi client có PTK riêng → cô lập lưu lượng giữa các client (client isolation).
- Cơ chế chống replay attack (packet number PN trong CCMP).
Lưu ý thường nhầm lẫn
- PTK ≠ PSK (Pre-Shared Key). PSK là mật khẩu Wi-Fi bạn nhập. PTK là khóa phiên sinh ra từ PSK + handshake.
- PTK ≠ PMK. PMK là khóa gốc, PTK dẫn xuất từ PMK.
- PTK ≠ Phi Theta Kappa (hội sinh viên), ≠ Protein Tyrosine Kinase (sinh học), ≠ Permission To Kill (game).
WPA3 – SAE (Simultaneous Authentication of Equals)
WPA3-Personal thay 4-way handshake bằng SAE (Dragonfly) – PAKE (Password Authenticated Key Exchange). Vẫn sinh ra PTK (và PMK) nhưng chống offline dictionary attack, forward secrecy tốt hơn.