본문 바로가기

Bluetooth

Secure Simple Pairing

BT v2.1+EDR Spec의 New Feature중 하나인 Secure Simple Pairing에 대해 Headset Device 입장에서 간단히 정리해보았습니다.

Secure Simple Pairing 은 사용자에게 편리한 Pairing 과정을 제공하는 것과
Passive Eavesdropping 및 MITM(Man-In-The-Middle) 공격에 대한 보안성 강화의
2가지 목적에 의해 고려되었습니다.

Secure Simple Pairing 은 총4개의 association model 들을 제공하는데
①Numeric Comparison, ②Just Works, ③Out Of Band, ④Passkey Entry 입니다.

이중 제품인 BT Headset 인 경우에는 “Just Works” Model이 해당됩니다.
“Just Works” Model은 Display 가 없는 장치, 즉 예를 들어 BT Headset, BT Mouse 등이 해당됩니다.
Display 가 있는 장치의 경우는 Numeric Comparison Model이 해당되게 됩니다.

Display 나 숫자입력기능의 여부에 따라 Model 이 갈라지는 이유는 새로 도입되는 Secure Simple Pairing 의 인증과정이 기존과는 달라졌기 때문입니다.

기존에는 사용자의 입장에서 검색 -> PIN Code Exchange -> 인증완료 및 연결 과정이었는데,
Secure Simple Pairing 이 적용되면 검색 -> 연결 로 단순화 되었기 때문입니다.

물론 내부적으로는 인증과정을 거치는데 아래와 같습니다.

① 폰과 헤드셋이 서로의 Public Key를 교환하고,
② 각자 128bit의 Random 변수를 생성하고,
③ 헤드셋에서 폰의 Public Key와 자신의 Public Key 그리고 자신의 Random 변수의 조합으로 알고리즘에 의한 변수를 생성하여 폰에 전달하고,
④ 폰과 헤드셋이 서로의 128bit Random 변수를 교환하고,
⑤ 폰에서 자신의 Public Key와 헤드셋의 Public Key 그리고 헤드셋의 Random 변수의 조합으로 알고리즘에 의한 변수를 생성하여 헤드셋에서 받은 값과 비교한다.

여기까지는 Just Work Model의 과정이나 Numeric Comparison Model의 경우는 한단계가 더 추가됩니다.

⑥ 2개의 Device가 현재까지 서로 교환한 2개의 Public Key와 2개의 128bit Random 변수를 조합하여 각자 6 자리의 숫자를 생성하여
각자의 Display에 숫자를 띄우고 사용자의 확인을 거쳐 인증과정이 완료됩니다.

이 한 단계의 차이로 MITM 공격에 대한 방어여부가 결정됩니다.
Nemeric Comparison Model 의 이 마지막 단계로 인해 MITM 공격에 대한 보안이 적용되며,
문서에 의하면 이때의 MITM 공격성공율은 약 0.000001 에 달한다고 합니다.

더 자세한 사항은 Spec 참고바랍니다.