Bluetooth Mesh 개인 비콘

기술 개요

릴리스 : 1.0.0
문서 버전 :   1.0
마지막 업데이트 : 2023년 9월 19일
저자 :   

마틴 울리, Bluetooth SIG
옴카르 쿨카르니, 노르딕 세미컨덕터

개정 내역

Version

Date

Author

Changes

1.0.0

September 19, 2023

Martin Woolley, Bluetooth SIG
Omkar Kulkarni, Nordic Semiconductor

Initial version

 

참고

Bluetooth Mesh 프로필 사양의 이름이 변경되어 이제 Bluetooth Mesh 프로토콜 사양으로 불립니다. 이 문서와 관련 문서에서 버전 1.1 사양을 언급할 때는 이 이름을 사용하지만, 버전 1.0 사양은 계속해서 Bluetooth Mesh Profile 사양이라고 합니다.

 

1. 배경

1.1 개인정보 및 디바이스 추적

정적 정보를 정기적으로 전송하는 디바이스는 네트워크에서 이동하는 디바이스를 추적하여 디바이스, 디바이스 사용자, 나아가 네트워크 전체에 대한 정보를 추론할 수 있으므로 디바이스 또는 네트워크 사용자에게 개인정보 보호 위험을 초래할 수 있습니다.

1.2 보안 네트워크 비콘

Bluetooth Mesh 는 보안 네트워크 비콘으로 알려진 비콘 메시지 유형을 정의합니다. 보안 네트워크 비콘은 두 가지 중요한 절차, 즉 키 새로 고침 절차와 IV 업데이트 절차 중에 사용됩니다.

보안 네트워크 비콘에는 서브넷을 식별하는 정적 정보와 암호화된 인증 값이 포함되어 있습니다. 보안 네트워크 비콘 메시지의 정적 네트워크 정보는 암호화되지 않은 상태로 전송됩니다.

Bluetooth Mesh 보안에 사용되며 네트워크의 모든 노드가 공유하는 중요한 값인 IV 인덱스 필드는 보안 네트워크 비콘에서 전송되는 정적 네트워크 정보의 예입니다.

1.3 프록시 노드

프록시 노드는 Bluetooth® LE와 GAP 및 GATT, Bluetooth Mesh 를 모두 지원합니다. 프록시는 중개자 역할을 하며 스마트폰과 같은 디바이스의 애플리케이션이 프록시에 대한 GATT 연결을 통해 네트워크와 mesh 메시지를 주고받을 수 있게 해줍니다.

프록시 노드는 Bluetooth LE 광고를 사용하여 다른 디바이스 및 애플리케이션에서 자신을 검색할 수 있도록 하고, 서비스 UUID라는 필드에 GATT Mesh 프록시 서비스에 대한 지원을 표시합니다.   

1.4 네트워크 및 노드 ID

프록시 노드는 광고 패킷의 서비스 데이터 필드에 두 가지 유형 중 하나의 신원 정보를 광고합니다. 노드의 신원이 광고되거나 노드가 속한 서브넷의 신원이 광고됩니다. 이 두 가지를 각각 사설 네트워크 신원 광고와 사설 노드신원 광고 라고 합니다.

2. 프라이빗 비콘 정보

2.1 기능 및 이점

비공개 비콘은 Bluetooth Mesh 버전 1.1에 도입된 비콘 유형으로, 정적 정보를 포함하지 않습니다. Bluetooth Mesh 비공개 비콘은 비콘 메시지에 포함된 데이터를 사용하여 디바이스를 추적할 수 있는 가능성을 제거함으로써 네트워크 보안을 향상시킵니다.

2.2 기술적 주요 사항

2.2.1 Bluetooth Mesh 개인 비콘

표 1은 Bluetooth® Mesh 프로토콜 사양에서 재현한 것으로, Bluetooth Mesh 비공개 비콘의 내용을 보여줍니다.

필드

크기(옥텟)

묘사

비콘 유형

1

0x02 - Bluetooth Mesh 비공개 비콘

랜덤

13

Bluetooth Mesh 비공개 비콘의 난독화 및 인증을 위해 엔트로피로 사용되는 난수입니다.

난독화된 개인 비콘 데이터

5

키 새로 고침 및 IV 업데이트 작업의 상태와 네트워크의 IV 인덱스 값을 나타내는 플래그입니다.

인증 태그

8

비콘용 인증 태그

표 1 - Bluetooth Mesh 비공개 비콘 형식

Bluetooth Mesh 비공개 비콘은 PrivateBeaconKey라는 키와 임의의 13옥텟 숫자를 사용해 정적 네트워크 데이터를 암호화하여 난독화합니다. PrivateBeaconKey는 기본 네트워크 키에서 파생되므로 난독화된 데이터는 동일한 네트워크의 일부인 노드에서만 해독할 수 있습니다. 또한 Bluetooth LE 패킷의 난수와 Bluetooth® 디바이스 주소(BD_ADDR)는 주기적으로 동시에 변경되므로(기본적으로 10분마다) 난독화된 데이터도 변경됩니다. 이러한 조치의 조합으로 디바이스 추적 가능성을 방지할 수 있습니다.

2.2.2 프라이빗 프록시 노드

더 나은 개인정보 보호를 위해 프록시 기능이 개선되었습니다. 새로운 기능을 활성화한 프록시 노드를 비공개 프록시 노드라고 합니다.

2.2.2.1 비공개 네트워크 신원 광고

프라이빗 프록시 노드는 프라이빗 네트워크 신원 광고라는 새로운 형태의 네트워크 신원 광고를 사용하여 자신의 가용성을 알릴 수 있습니다. 사설 네트워크 ID 광고는 Bluetooth Mesh 사설 비콘과 유사한 방식으로 네트워크 ID를 난독화하여 노드의 개인정보를 보호합니다. 난수는 난독화 함수에 대한 입력 중 하나이며, 이 난수는 서비스데이터 필드에 포함됩니다. 난독화 함수는 8옥텟 해시값을 생성합니다. 난독화 데이터를 수신하는 노드는 해당 노드가 속한 각 서브넷( 회원, 회원사 )에 대한 해시 값을 생성하고 계산된 해시 값을 광고 패킷의 ServiceData 필드에 있는 해시 값과 비교하여 어떤 네트워크와 연관되어 있는지 확인할 수 있습니다.

난수 값과 디바이스 BD_ADDR 값은 각각 10분마다 동시에 변경되어야 합니다. 이러한 방식으로 광고 프록시 노드의 개인정보가 보호됩니다.

2.2.2.2 프라이빗 노드 신원 광고

프라이빗 노드 신원 광고라는 새로운 형태의 노드 신원 광고도 정의되었습니다. 이는 프라이버시 없이 사용되는 0x01 값 대신 0x03 값을 식별 유형 필드에 포함한다는 점을 제외하면 기존 노드 신원 광고와 동일합니다. 새로운 식별 유형 값의 목적은 프록시 클라이언트가 프록시 서버에 연결한 후 처음 수신하게 될 비콘 메시지 유형을 프록시 클라이언트에 표시하기 위한 것입니다. 비공개 노드 신원 광고는 비콘 메시지가 보안 네트워크 비콘임을 의미하며, 비공개 노드 신원 광고는 비콘 메시지가 Bluetooth Mesh 비공개 비콘임을 의미합니다. 따라서 Bluetooth® Mesh 프로필 버전 1.0을 준수하는 프록시 클라이언트는 식별 유형을 사용하여 검색된 각 프록시 서버 노드와 호환되는지 여부를 결정할 수 있습니다.

2.2.3 모델

Bluetooth Mesh 비공개 비콘 클라이언트 모델과 Bluetooth Mesh 비공개 비콘 서버 모델이라는 두 가지 모델은 Bluetooth Mesh 비공개 비콘의 사용을 지원합니다. 서버 모델에는 Bluetooth Mesh 비공개 비콘으로 전송하는 기능을 활성화 또는 비활성화하고 난수 값의 업데이트 주기를 구성할 수 있는 상태가 포함되어 있습니다.

프록시 노드는 프록시 권유라는새로운 기능을 사용하여 광고를 시작하라는 메시지가 표시될 수 있습니다 ( Bluetooth® Mesh 기능 개선 사항 참조): 자세한 내용은 버전 1.1 릴리스 개요 백서 참조). 온디맨드 비공개 프록시 클라이언트 및 서버 모델을 사용하면 프록시 요청을 지원하는 프록시 노드의 기능을 활성화 또는 비활성화할 수 있습니다.

3. 닫기

Bluetooth Mesh 비공개 비콘은 비콘 메시지에서 정적 데이터 사용을 제거하여 Bluetooth® Mesh 보안을 향상시킵니다.

도움말 받기