모바일 6

[Wifi Network Study] 암호화 방식 별 특징

오늘은 Wifi Network의 암호화 방식을 학습할 예정이다. Wifi Network는 비밀번호가 있는 경우와 없는 경우 두가지가 있는 것 같지만사실 발전하는 보안 방식에 의해 여러가지의 암호화 방식이 존재한다. 이 암호화 방식은 Wifi가 나온 초기부터 당시엔 신경을 써서 도입하였지만,방식별로 새롭게 계속 등장하는 공격 방법을 억제하기 위해 새로운 보안 방식이 계속 등장했다. 그래서 이 암호화 방식을 시대 별로 나열하고 각각 어떤 특징이 있으며,어떻게 발전해왔는지 확인해보도록 하겠다.   1. WEP 와이파이의 암호화 설명 순서는 등장한 시대순으로 나열했다.각 암호화의 기능과 한계를 살펴보면서 보안 성능을 어떻게 발전해왔는지에 초점을 두고 설명하겠다.가장 먼저 무선 네트워크의 첫 보안 방안으로 199..

모바일 2024.11.12

Wifi Network Authentication - 4-way Handshake process

요즘 회사 퇴근하고 블로그 쓰는데 쓰고나면 기분이 좋다. 챌린지끝나고도 쓰고 싶은데, 나 언제까지 갈 수 있을까..?  오늘은 Wifi 네트워크의 인증 절차 중 아주 중요한 요소인 4-way handshake의 과정에 대해 설명하려 한다. 지금까지 Web 개발을 공부하면서 3 ways handshake는 많이 들었다.TCP 통신 시 양 단의 소켓을 생성하는 과정이었던걸로 기억하는데..(확실히는 아직도 잘 모르겠다) Wifi에서 무선 네트워크 통신 시 누군가 패킷을 훔쳐 데이터를 확인하더라도데이터를 알아볼 수 없게 난수화하여 데이터를 보내게 된다. 이 데이터는 해석할 수 있는 key를 가지고 있어야만 복호화 함수에 적용하여 데이터를 추출해낼 수 있는데이 비밀 Key를 생성하고 주고 받는 과정이 4-Way ..

모바일 2024.11.11

Wifi Network - IEEE 802.1X Authentication process

오늘은 지난 10월에 세미나를 통해 학습했던 내용 중 WIFI WPA2/3 의 인증 과정 중 하나인 IEEE 802.1X의 패킷 분석 내용에 대해 설명하려고 한다.   802.1X Authentication Protocol   먼저 802.1X란 WIFI의 수많은 통신 프로토콜인 802.11x와 매우 유사한 이름을 가지고 있지만, 그 특성 자체는 전혀 다른 종류의 프로토콜이다. 이 프로토콜은 WPA2 이후의 암호화 방식에서 Enterprise 모드의 더 고급화된 암호화 방식을 추가하기 위해 생겨난 방식이다. web에서 TLS를 활용하여 HTTPS로 통신 패킷을 보안하듯이 이 보안 방식 또한 TLS 터널링이라는 과정을 포함하여 패킷을 보안하여, 이후 암호화 과정에서 통신을 수행할 때 사용하는 Key를 안전..

모바일 2024.11.10

WiFi Enable process 분석 - Wifi Scanning (3)

블챌 3일차! 오늘은 어제 분석해보았던 WifiScan 요청의 시작의 흐름을 이어서 Wifi 탐색 요청을 어떻게 수행하는지그리고 주변 Wifi AP를 탐색한 결과를 Android Framework가 어떻게 받아오는지를 알아보자.     WifiManager.startScan() - Scan 요청의 시작  지난 포스팅에서 마지막으로 WifiManager의 startScan()으로 Wifi의 스캔 요청을 수행한다고 설명했다. 그리고 Android Framework에서는 사용자 측면에서 기기의 설정을 제어하기 위해 Manager를 사용하는데이는 권한문제때문에 Service 클래스와 격리되어있다. 그래서 Manager는 사용자 측면에서 요청을 대리로 수행하고, 권한이 필요한 내부 동작은 Manager가 Serv..

모바일 2024.11.09

WiFi Enable process 분석 - Wifi Scanning (2)

오블완 챌린지 2일차! 언제까지 유지되나 함 보자 싶지만,오늘까지는 일단써보자 (대충 내일 일기 쓸 궁리중) 오늘은 어제 리뷰한 State Machine을 사용해서 Wifi가 연결하기 위해 주변 AP를 Scanning하는 코드를 분석하겠다. 하면서 항상 느끼지만 나처럼 이런 내용을 분석해주는 사람이 단 한명도 없어서 골머리를 앓고 있는데누가 나대신 분석해서 이렇게 친절히 정리좀 해줬으면 좋겠음.    Wifi Scanning   Wifi Scanning을 하기 위해 이전 Wifi 버튼을 ON해서 따라오던 흐름으로 돌아가보자. WIFI_TOGGLED 명령어를 전달하여 Controller의 StateMachine에 전달되는데,이때 WifiController의 State가 당연히 아직 Wifi가 꺼져있었기 때..

모바일 2024.11.08

WiFi Enable process 분석 - StateMachine이란 ? (1)

나는 디바이스 제조 기업에서 무선통신 기능을 구현하는 Wireless team Engineer로 근무중이다.티스토리 블챌이 시작되서 참여하는김에 안드로이드 프레임워크의 Wifi 기능 코드를 분석한 내용을 리뷰하겠다.코드 분석한 내용은 'WiFi를 사용자가 켰을때 어떤 동작이 수행되는가'로 초점하였다.사용자가 Wifi를 켜는 순간 실행되는 코드  Wifi의 toggle이 onClick 이벤트를 발생시켜 STATE_ENABLE 상태로 전환된다. 그리고 Android의 wifiManager를 통해 setWifiEnabled가 실행된다.   WifiManager는 Binder를 통해 곧장 Framework layer의 WifiServiceImpl과 연결되어 있다. 이 연결 과정은 총 두가지인데, Manager ..

모바일 2024.11.07