오늘은 Wi-Fi 무선 구간에서의 유저데이터(Unicast) 암호화(encryption) 및 무결성 확인(integrity check)을 위한 알고리즘인 AES(CCMP) 에 대한 설명입니다.
요즘 무선 AP 설정을 보면 WPA, WPA2, TKIIP, AES등이란 말들이 나오는데요. 정리하자면 다음과 같습니다.
단말과 AP간에 "유저 데이터 암호화/무결성 체크"를 위해 Key를 주고 받는 프로토콜에는 WPA, WPA2라는 방식이 있으며,
실제 "암호화"를 위해 사용하는 알고리즘이 TKIP, AES입니다.
즉, WPA, WPA2는 프로토콜이고, TKIP, AES는 알고리즘입니다.
아래 그림은 WPA2 프로토콜을 사용하여 Key를 주고 받고, 유저 데이터 암호화를 위한 알고리즘으로는 AES(아래 그림에서 "CRT mode AES")을 사용하는 예입니다.
그래서 반드시 WPA는 TKIP, WPA2는 AES라고 1:1로 매핑이 되는것은 아니고, WPA 프로토콜로 Key를 주고 받고 알고리즘으로는 TKIP이나 AES를 사용할 수도 있고, 또한 WPA2 프로토콜로 Key를 주고 받고 알고리즘으로는 TKIP이나 AES를 사용할 수 있습니다.
무선 구간 암호화를 위해 단말과 AP간에 WPA2-PSK를 위한 4 way handshake를 수행하는데, 여기서 4 way handshake란 단말과 AP간에 EAPoL-Key 메시지를 4번 주고 받아(아래 그림에서는 2번만 표시됨) 양측에 암호화를 위한 key를 setup하는 절차입니다.
아래 그림과 같이 처음 2번은 유니캐스트 패킷에 대한 암호화를 위한 절차(이 절차가 끝나면 유니캐스트 패킷은 TK로 암호화함)이고, 그림에 표시되지 않은 나머지 2번은 멀티캐스트/브로드캐스트 패킷에 대한 암호화를 위한 절차(이 절차가 끝나면 멀티캐스트/브로드캐스트 패킷은 GTK로 암호화함)가 있습니다.
그리고 802.11n(현재 표준 중에 가장 속도가 빠름, 이론상 up to 600Mbps)에서는 AES를 권장하는데요. 이 알고리즘이 가장 보안성이 우수하기 때문이라고 합니다. 그래서 이게 표준인지 벤더 구현인지 통신사업자 권고인지는 모르겠지만, 만약 단말이 802.11n에서 암호화를 WEP나 TKIP을 사용하게 되는 경우, AP는 단말에게 802.11n의 최대 속도를 지원하지 않고 최대 54Mbps로 속도를 제한한다고 하네요. 왜냐면 취약한 암호화 알고리즘을 사용하여 빠른 속도로 유저와 AP간에 통신을 하면 그 만큼 많은 데이터가 무선에 노출되어 빠른 시간안에 해킹(암호화된 데이터는 풀어버림) 당할 수 있기 때문이라네요.
Netmanias.2012.02.03-WPA2-AES(large).gif
좋은 글에 댓글이 없으니..
하지만 좋은 글임에 틀림없는 것은, 읽는 누구나 알것같습니다.
좋은 글 잘 보고 갑니다. 감사합니다.
매번 좋은 글 잘 읽고 갑니다~
도움된 글입니다!
와... 어렸을 때 왜 속도 저하가 있나 했더니 이래서...