KR20200137302A - 장치를 탐색하는 전자 장치 및 그 방법 - Google Patents

장치를 탐색하는 전자 장치 및 그 방법 Download PDF

Info

Publication number
KR20200137302A
KR20200137302A KR1020190063425A KR20190063425A KR20200137302A KR 20200137302 A KR20200137302 A KR 20200137302A KR 1020190063425 A KR1020190063425 A KR 1020190063425A KR 20190063425 A KR20190063425 A KR 20190063425A KR 20200137302 A KR20200137302 A KR 20200137302A
Authority
KR
South Korea
Prior art keywords
electronic device
external electronic
random address
address
random
Prior art date
Application number
KR1020190063425A
Other languages
English (en)
Other versions
KR102643372B1 (ko
Inventor
이상윤
오해욱
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020190063425A priority Critical patent/KR102643372B1/ko
Priority to EP20813835.4A priority patent/EP3881581B1/en
Priority to PCT/KR2020/006530 priority patent/WO2020242111A1/en
Priority to US16/877,848 priority patent/US11290888B2/en
Publication of KR20200137302A publication Critical patent/KR20200137302A/ko
Application granted granted Critical
Publication of KR102643372B1 publication Critical patent/KR102643372B1/ko

Links

Images

Classifications

    • H04W12/0401
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • H04W12/001
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/037Protecting confidentiality, e.g. by encryption of the control plane, e.g. signalling traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/1201
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/121Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • H04W12/47Security arrangements using identity modules using near field communication [NFC] or radio frequency identification [RFID] modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/26Network addressing or numbering for mobility support
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information

Abstract

다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로, 상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서 및 상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치의 제 1 랜덤 주소(random address)를 생성하고, 상기 무선 통신 회로를 통해, 상기 제 1 랜덤 주소를 포함하는 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고, 상기 무선 통신 회로를 통해, 외부 전자 장치로부터 상기 제 1 애드버타이징 패킷에 대응하는 스캔 요청(scan request)을 수신하고, 상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소 및 제 2 랜덤 주소를 암호화한 제 2 암호화 랜덤 주소를 생성하고, 상기 무선 통신 회로를 통해, 상기 외부 전자 장치에게 상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고, 상기 무선 통신 회로를 통해, 상기 제 2 랜덤 주소를 포함하는 제 2 애드버타이징 패킷을 전송하도록 하는 인스트럭션들(instructions)을 저장할 수 있다.

Description

장치를 탐색하는 전자 장치 및 그 방법{ELECTRONIC DEVICE FOR PERFORMING DISCOVERY DEVICE AND METHOD THEREOF}
다양한 실시예들은 장치를 탐색하는 전자 장치 및 그 방법에 관한 것이다.
블루투스(Bluetooth)는 전자 장치들이 서로 연결해 정보를 교환하는 근거리 무선 기술 표준으로서, 특정 주파수의 무선 신호를 이용하여 전자 장치들 사이의 통신에 물리적인 케이블 없이 데이터를 송수신할 수 있도록 한다. 전자 장치가 블루투스를 이용하여 데이터를 송수신하기 위해서는, 다른 전자 장치와 블루투스 연결이 형성되어 있음을 전제로 한다.
블루투스 연결을 형성하기 위하여, 전자 장치(마스터 장치)가 다른 전자 장치(슬레이브 장치)를 탐색(discovery)하는 동작 및 연결(connection)하는 동작을 수행하여야 한다. 예를 들어, 전자 장치는 애드버타이징 패킷(advertising packet)을 브로드캐스팅(broadcasting)하고, 다른 전자 장치는 스캔(scan) 동작을 수행하여 애드버타이징 패킷을 전송한 장치에게 연결을 요청할 수 있다.
전자 장치와 다른 전자 장치가 상호간 인증된 장치인 경우, 인증된 장치인지 확인하기 위하여 전자 장치가 애드버타이징 패킷에 신뢰성 있는(예를 들어, 암호화된 데이터) 데이터를 포함시키거나 또는 다른 전자 장치가 스캔 동작을 수행함에 있어서 신뢰성 있는 데이터를 전송할 수도 있다.
그러나, 전자 장치와 다른 전자 장치가 블루투스 연결을 위한 동작을 수행하는 동안, 악의적인 사용자 장치(MITM, man in the middle attack)가 전자 장치에서 전송된 애드버타이징 패킷을 복사하여 재전송하는 경우, 다른 전자 장치는 애드버타이징 패킷만으로는 악의적인 사용자 장치가 인증된 장치인지 악의적인 장치인지 판단할 수 없는 문제점이 발생할 수 있다. 또는, 전자 장치와 다른 전자 장치가 블루투스 연결을 위한 동작을 수행하는 동안, 악의적인 사용자 장치가 다른 전자 장치에서 전송된 스캔 요청 패킷을 복사하여 재전송하는 경우, 전자 장치는 스캔 요청 패킷만으로 악의적인 사용자 장치가 인증된 장치인지 악의적인 장치인지 판단할 수 없는 문제점이 발생할 수 있다.
따라서, 악의적인 사용자 장치는 인증된 장치가 아님에도 불구하고, 단순히 데이터를 복사하여 재전송함으로써 전자 장치와 다른 전자 장치의 신뢰성을 깨뜨릴 수 있다. 뿐만 아니라, 한정적인 무선 주파수 환경에서 자원을 고갈시킴으로써 인증된 장치들간의 연결을 제한할 수도 있다.
다양한 실시예들은, 블루투스 연결을 위한 동작을 수행함에 있어서 랜덤 넘버를 생성하고, 생성된 랜덤 넘버와 인증키를 이용하여 연결을 수행하는 장치가 인증된 장치인지 판단할 수 있는 전자 장치 및 그 방법을 제공할 수 있다.
다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로, 상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서 및 상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 전자 장치의 제 1 랜덤 주소(random address)를 생성하고, 상기 무선 통신 회로를 통해, 상기 제 1 랜덤 주소를 포함하는 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고, 상기 무선 통신 회로를 통해, 외부 전자 장치로부터 상기 제 1 애드버타이징 패킷에 대응하는 스캔 요청(scan request)을 수신하고, 상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소 및 제 2 암호화 랜덤 주소를 생성하고, 상기 무선 통신 회로를 통해, 상기 외부 전자 장치에게 상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고, 상기 무선 통신 회로를 통해, 상기 제 2 랜덤 주소를 포함하는 제 2 애드버타이징 패킷을 전송하도록 하는 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로, 상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서 및 상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 프로세서가, 상기 무선 통신 회로를 통해, 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고, 상기 무선 통신 회로를 통해, 외부 전자 장치로부터 상기 전자 장치와 대응하는 제 1 랜덤 주소를 포함하는 스캔 요청(scan request)을 수신하고, 상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소를 생성하고, 상기 무선 통신 회로를 통해, 상기 외부 전자 장치에게 상기 제 1 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고, 상기 무선 통신 회로를 통해, 상기 외부 전자 장치로부터 연결 요청을 수신하도록 하는 인스트럭션들(instruction)을 저장할 수 있다.
다양한 실시예에 따라서, 전자 장치는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로, 상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서 및 상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리를 포함하고, 상기 메모리는, 실행 시에, 상기 프로세서가, 랜덤 넘버에 기반하여 제 1 랜덤 애드버타이징(advertising) 데이터를 생성하고, 상기 무선 통신 회로를 통해, 상기 제 1 랜덤 애드버타이징 데이터를 포함하는 제 1 애드버타이징 패킷(packet)을 전송하고, 상기 무선 통신 회로를 통해, 외부 전자 장치로부터 상기 제 1 애드버타이징 패킷에 대응하는 연결 개시자를 포함하는 연결 요청을 수신하고, 상기 연결 요청에 포함된 상기 제1 랜덤 애드버타이징 데이터에 기반하여 상기 외부 전자 장치의 인증 여부를 식별하고, 상기 외부 전자 장치의 인증이 식별된 경우, 상기 외부 전자 장치와 연결을 생성하도록 하는 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따라서, 전자 장치는 외부 전자 장치와 통신 연결을 수행하는 동안 악의적인 사용자 장치로부터의 공격을 방지하고, 장치간 상호 인증을 통한 통신 연결의 보안성을 향상시킬 수 있다.
도 1은 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 3a, 도 3b 및 도 3c는 다양한 실시예들에 따른, 애드버타이징 패킷을 설명하기 위한 도면들이다.
도 4a 및 도 4b는 다양한 실시예들에 따른, 스캔 응답 패킷을 설명하기 위한 도면들이다.
도 5는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 6은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 7은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 8은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 9는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 10은 다양한 실시예들에 따른, 스캔 요청 패킷을 설명하기 위한 도면이다.
도 11은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 12는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 13은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 14는 다양한 실시예들에 따른, 애드버타이징 데이터 패킷을 설명하기 위한 도면이다.
도 15는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 16a 및 도 16b는 다양한 실시예들에 따른, 연결 지시자 패킷을 설명하기 위한 도면들이다.
도 17은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 18은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
도 1 은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나, 하나 이상의 다른 구성 요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들은 하나의 통합된 회로로 구현될 수 있다. 예를 들면, 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)은 표시 장치(160)(예: 디스플레이)에 임베디드된 채 구현될 수 있다
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 로드하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서), 및 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 추가적으로 또는 대체적으로, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 장치(150)는, 예를 들면, 마이크, 마우스, 키보드, 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 장치(155)는, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있고, 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
표시 장치(160)는 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 표시 장치(160)는, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 표시 장치(160)는 터치를 감지하도록 설정된 터치 회로(touch circuitry), 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로(예: 압력 센서)를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108))간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성 요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성 요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 하나의 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC)이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다.
도 2 는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 도 2의 실시예는 도 3a, 도 3b, 도 4a 및 도 4b를 참조하여 더욱 상세하게 설명하도록 한다 . 도 3a 및 도 3b는 다양한 실시예들에 따른, 애드버타이징 패킷을 설명하기 위한 도면들이다. 도 4a 및 도 4b는 다양한 실시예들에 따른, 스캔 응답 패킷을 설명하기 위한 도면들이다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 201 동작에서, 전자 장치(101)의 제 1 랜덤 주소(예를 들어, AdvA1)를 생성할 수 있다. 예를 들어, 랜덤 주소는 전자 장치(101)의 주소를 나타내는 값들 중 적어도 일부의 값을 랜덤한 수로 나타내는 값을 의미할 수 있다. 예를 들어, 전자 장치(101)는, 애드버타이징 패킷을 전송할 때마다 전자 장치의 주소(AdvA)를 나타내는 랜덤 주소를 생성할 수 있다. 예를 들어, 전자 장치(101)는, 일회용 패스워드(OTP, one time password)와 같은 랜덤 넘버를 형성할 수 있으며, 랜덤 넘버를 애드버타이징 주소(advertising address)의 형태로 표현하여 랜덤 주소를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 203 동작에서, 제 1 랜덤 주소(advA1)를 포함하는 제 1 애드버타이징 패킷을 전송할 수 있다. 예를 들어, 전자 장치(101)는 제 1 랜덤 주소(AdvA1)와 애드버타이징 데이터(AdvData)를 포함하는 제 1 애드버타이징 패킷을 생성하여 제 1 외부 전자 장치(예: 전자 장치(102)) 에게 전송(또는 브로드캐스팅)할 수 있다. 예를 들어, 도 3a에 도시된 바와 같이, 애드버타이징 패킷(301)은, 16bits의 헤더(Header)(303) 및 1-255octets의 페이로드(Payload)(305)로 구성될 수 있다. 예를 들어, 도 3b에 도시된 바와 같이, 페이로드(305)의 6octets(313)는 전자 장치(101)의 주소를 나타내기 위하여 할당되고, 페이로드(305)의 0-31octets(315)는 애드버타이징 데이터를 나타내기 위하여 할당될 수 있다. 전자 장치(101)는, 표준(예: Bluetooth core specification v5.0)에 따라 랜덤 주소를 생성할 수 있다. 전자 장치(101)의 주소를 나타내는 6octets(313)는 제 1 랜덤 주소(AdvA1)일 수 있다. 그리고, 애드버타이징 데이터는, 도 3c와 같이, 서비스 고유 식별자(service UUID), 서비스 데이터, 및/또는 플래그에 대한 정보를 포함할 수 있다.
다시 도 2를 참조하여, 다양한 실시예들에 따라서, 전자 장치(101)는, 205 동작에서, 외부 전자 장치로부터 제 1 애드버타이징 패킷에 대응하는 스캔 요청을 수신할 수 있다. 예를 들어, 전자 장치(101)는, 외부 전자 장치로부터 외부 전자 장치의 주소(scanA)가 포함된 스캔 요청을 수신할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 207 동작에서, 제 1 랜덤 주소(AdvA1)를 암호화한 제 1 암호화 랜덤 주소 및 제 2 랜덤 주소(AdvA2)를 암호화한 제2 암호화 랜덤 주소를 생성할 수 있다. 일 실시예에 따르면, 전자 장치(101)는 제 1 외부 전자 장치와 미리 공유된 공유키를 저장하고 있으며, 공유키를 이용하여 제 1 랜덤 주소를 암호화할 수 있다. 예를 들어, 전자 장치(101)와 제1 외부 전자 장치는 근거리 통신 네트워크(예: 도 1의 제 1 네트워크(198)) 또는 원거리 통신 네트워크(예: 도 1의 제 2 네트워크(199))를 통해 공유 키를 공유할 수 있다. 전자 장치(101)와 제1 외부 전자 장치는 신뢰성 있는 방법을 통해 공유 키를 공유할 수 있으며, 근거리 무선 통신은 전자 장치(101)와 제1 외부 전자 장치 간에 공유 키를 공유하는 예시적인 방법으로 본원의 사상을 제한하지 않는다. 다른 예를 들어, 전자 장치(101)와 제 1 외부 전자 장치는 서버(예: 도 1의 서버(108))를 통해 공유 키를 공유할 수 있다. 일 실시예에서, 도 3b와 같이, 제 1 랜덤 주소(AdvA1)가 6octets인 경우, 전자 장치(101)는 제 1 랜덤 주소(AdvA1) 6octets 전체를 암호화하여 제 1 암호화 랜덤 주소를 생성할 수도 있고, 제 1 랜덤 주소(AdvA1) 6octets 중 일부(예를 들어, 3 octets)를 암호화하여 제 1 암호화 랜덤 주소를 생성할 수도 있다. 또한, 전자 장치(101)는, 제 1 랜덤 주소(AdvA1)를 생성한 것과 동일한 방식으로, 제 2 랜덤 주소(AdvA2)를 생성하고, 제2 랜덤 주소를 암호화하여 제2 암호화 랜덤 주소를 생성할 수 있다. 전자 장치(101)는, 제 2 랜덤 주소(AdvA2)를 포함하는 제 2 애드버타이징 패킷이 전송되는 시점까지, 제 1 랜덤 주소(AdvA1)가 유효한 것으로 관리할 수 있다.
다시 도 2를 참조하여, 다양한 실시예들에 따라서, 전자 장치(101)는, 209 동작에서, 제 1 암호화 랜덤 주소와 제 2 랜덤 주소(AdvA2)를 포함하는 스캔 응답을 외부 전자 장치에게 전송할 수 있다. 예를 들어, 도 4a에 도시된 바와 같이, 전자 장치(101)는 스캔 응답의 페이로드(401)의 6octets를 할당하여 전자 장치(101)의 주소(403)를 나타내고, 스캔 응답의 페이로드(401)의 0-31octets를 할당하여 스캔 응답 데이터(405)를 나타낼 수 있다. 예를 들어, 전자 장치(101)의 주소(403)는 애드버타이징 패킷을 전송하는 전자 장치(101)의 제 1 랜덤 주소(AdvA1)일 수 있고, 스캔 응답 데이터(405)는 제 1 암호화 랜덤 주소를 포함할 수 있다. 예를 들어, 전자 장치(101)가 6octets의 제 1 랜덤 주소(AdvA1) 중 3octets만을 암호화한 경우, 스캔 응답 데이터(405)는 도 4b와 같을 수 있다.
다시 도 2를 참조하여, 다양한 실시예들에 따라서, 전자 장치(101)는, 211 동작에서, 제 2 랜덤 주소(AdvA2)를 포함하는 제 2 애드버타이징 패킷을 전송(또는 브로드캐스팅)할 수 있다. 제 2 랜덤 주소(AdvA2)를 암호화한 제2 암호화 랜덤 주소가 209 동작에서 스캔 응답에 포함되어 외부 전자 장치에게 전송되었으므로, 외부 전자 장치는 제2 암호화 랜덤 주소를 복호화한 제 2 랜덤 주소를 미리 알 수 있다. 이에 따라, 전자 장치(101)와 외부 전자 장치는 제 2 랜덤 주소를 이용하여 블루투스 연결을 형성할 수 있다.
도 5 는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(예: 전자 장치(102))는, 501 동작에서, 제 1 랜덤 주소를 포함하는 제 1 애드버타이징 패킷을 수신할 수 있다. 예를 들어, 제 1 외부 전자 장치는, 제 1 애드버타이징 패킷을 전송하는 전자 장치(101)의 주소 중 적어도 일부가 랜덤 넘버인 제 1 랜덤 주소를 포함하는 제 1 애드버타이징 패킷을 수신할 수 있다. 제 1 애드버타이징 패킷은 애드버타이징 데이터를 더 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 503 동작에서, 스캔 주소를 생성 및 저장할 수 있다. 예를 들어, 제 1 외부 전자 장치는, 제 1 애드버타이징 패킷에 포함된 애드버타이징 데이터를 바탕으로 전자 장치(101)와 블루투스 연결을 형성할 것인지 판단할 수 있다. 전자 장치(101)와 블루투스 연결을 형성할 것으로 판단하면, 제 1 외부 전자 장치는, 제 1 외부 전자 장치의 주소인 스캔 주소(ScanA)를 생성하고 저장할 수 있다. 제 1 외부 전자 장치는 스캔 주소(ScanA)를 생성한 시점부터 전자 장치(101)와 블루투스 연결이 형성되는 시점까지 스캔 주소(ScanA)가 유효한 것으로 관리할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 505 동작에서, 스캔 주소(ScanA)를 포함하는 스캔 요청을 전자 장치(101)로 전송할 수 있다. 제 1 외부 전자 장치는, 스캔 주소(ScanA)를 포함하는 스캔 요청을 제 1 애드버타이징 패킷을 전송한 전자 장치(101)에게 전송함으로써, 전자 장치(101)에게 블루투스 연결을 형성하기 위하여 필요한 추가 정보를 요청할 수 있다. 또한, 스캔 주소(ScanA)는 생성된 시점부터 블루투스 연결이 형성되는 시점까지 유효하므로, 블루투스 연결이 형성되기 전에 제 2 애드버타이징 패킷이 수신되면, 제 1 외부 전자 장치는, 제 2 애드버타이징 패킷을 전송한 전자 장치(101)에게, 503 동작에서 생성된 스캔 주소(ScanA)와 동일한 스캔 주소(ScanA)를 포함하는 스캔 요청을 전송할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 507 동작에서, 전자 장치(101)로부터 제 1 암호화 랜덤 주소와 제2 암호화 랜덤 주소를 포함하는 스캔 응답을 수신할 수 있다. 제 1 암호화 랜덤 주소는 제 1 애드버타이징 패킷을 전송한 전자 장치(101)에서 제 1 랜덤 주소를 암호화한 값일 수 있으며, 제2 암호화 랜덤 주소는 제 2 랜덤 주소(AdvA2)를 암호화한 값일 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 509 동작에서, 제 1 암호화 랜덤 주소를 바탕으로 전자 장치(101)의 인증 여부를 식별하고, 제 2 암호화 랜덤 주소를 복호화하여 제2 랜덤 주소를 저장할 수 있다. 제 1 외부 전자 장치는, 제 1 애드버타이징 주소를 전송한 전자 장치(101)와 미리 공유된 공유키를 저장하고 있으며, 제1 외부 전자 장치는 공유키를 이용하여 제1 암호화 랜덤 주소가 암호화되기 이전의 제1 랜덤 주소와 제1 애드버타이징 패킷에 포함된 제1 랜덤 주소를 비교할 수 있다. 외부 전자 장치는 공유키를 이용하여 제 1 랜덤 주소(AdvA1)를 암호화한 결과를 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 비교할 수 있다. 제1 외부 전자 장치는 공유키를 이용하여 제 1 랜덤 주소(AdvA1)를 암호화한 결과가 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 일치하는 경우 전자 장치(101)를 인증된 장치로 판단할 수 있다. 전자 장치(101)가 인증된 장치인 것으로 확인된 경우, 제1 외부 전자 장치는 이후 단계에서 블루투스 연결을 형성하기 위하여 제 2 암호화 랜덤 주소를 복호화하여 제2 랜덤 주소를 메모리에 저장할 수 있다. 또는, 제1 외부 전자 장치는, 스캔 응답에 포함된 제1 암호화 랜덤 주소를 복호화하여, 동작 501에서 수신한 제1 랜덤 주소와 비교할 수 있다. 또는 제1 외부 전자 장치는, 스캔 응답에 포함된 제1 암호화 랜덤 주소를 복호화한 결과가 동작 501에서 수신한 제1 랜덤 주소와 일치하는 경우, 전자 장치(101)를 인증된 장치로 판단할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 511 동작에서, 전자 장치(101)로부터 제 2 랜덤 주소를 포함하는 제 2 애드버타이징 패킷을 수신할 수 있다. 제 2 애드버타이징 패킷에 포함된 제 2 랜덤 주소는 509 동작에서 저장한 제 2 랜덤 주소와 동일할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 513 동작에서, 전자 장치(101)에게 연결 요청을 전송할 수 있다. 509 동작에서 전자 장치(101)를 인증된 장치로 판단하였으므로, 제 1 외부 전자 장치는 별도의 인증 과정을 수행하지 않고(즉, 스캔 요청을 전송하고, 스캔 응답을 수신하는 동작을 수행하지 않고), 제 2 애드버타이징 패킷을 전송한 전자 장치(101)에게 연결 요청을 전송할 수 있다.
도 6 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 6은 전자 장치(101)와 제 1 외부 전자 장치(650) 가 미리 공유된 공유키를 저장하고 있는 상태임을 가정할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 601 동작에서, 전자 장치(101)의 제 1 랜덤 주소(AdvA1)를 생성할 수 있다. 전자 장치(101)는, 애드버타이징 패킷을 전송할 때마다 전자 장치의 주소(AdvA)를 나타내는 랜덤 주소를 생성할 수 있다. 예를 들어, 전자 장치(101)는, 일회용 패스워드(OTP, one time password)와 같은 랜덤 넘버를 형성할 수 있으며, 랜덤 넘버를 애드버타이징 주소(advertising address)의 형태로 표현하여 랜덤 주소를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 603 동작에서, 생성된 제 1 랜덤 주소(AdvA1)를 포함하는 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(650)(예: 전자 장치(102))에게 전송할 수 있다. 제 1 애드버타이징 패킷은, 서비스 고유 식별자를 나타내는 애드버타이징 데이터를 더 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(650)는, 605 동작에서, 제 1 외부 전자 장치(650)의 스캔 주소(ScanA)를 생성하고 저장할 수 있다. 예를 들어, 제 1 외부 전자 장치(650)는, 제 1 애드버타이징 패킷에 포함된 애드버타이징 데이터를 바탕으로 전자 장치(101)와 블루투스 연결을 형성할 것인지 판단할 수 있다. 전자 장치(101)와 블루투스 연결을 형성할 것으로 판단하면, 제 1 외부 전자 장치(650)는, 자신(650)의 주소인 스캔 주소(ScanA)를 생성하고 저장할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(650)는, 607 동작에서, 스캔 주소(ScanA)를 포함하는 스캔 요청을 전자 장치(101)에게 전송할 수 있다. 예를 들어, 스캔 요청은 제 1 애드버타이징 패킷에 포함된 제 1 랜덤 주소(AdvA1)를 더 포함할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 609 동작에서, 제 1 랜덤 주소(AdvA1)를 암호화한 제 1 암호화 랜덤 주소 및 제2 랜덤 주소(AdvA2)를 암호화한 제 2 암호화 랜덤 주소를 생성할 수 있다. 전자 장치(101)는 제1 랜덤 주소와 동일한 방식으로 제2 랜덤 주소를 생성할 수 있다. 예를 들어, 전자 장치(101)는 제 1 외부 전자 장치(650)와 미리 공유된 공유키를 이용하여 제 1 랜덤 주소(AdvA1)를 암호화하여 제1 암호화 랜덤 주소를 생성하고, 제2 랜덤 주소를 암호화하여 제2 암호화 랜덤 주소를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 611 동작에서, 제 1 암호화 랜덤 주소와 제 2 암호화 랜덤 주소를 포함하는 스캔 응답을 제 1 외부 전자 장치(650)로 전송할 수 있다. 예를 들어, 스캔 응답의 페이로드는 제 1 랜덤 주소와 스캔 응답 데이터를 포함할 수 있고, 스캔 응답 데이터는 제 1 암호화 랜덤 주소와 제 2 암호화 랜덤 주소를 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(650)는, 613 동작에서, 제 1 암호화 랜덤 주소를 바탕으로 전자 장치(101)의 인증 여부를 식별하고, 제2 암호화 랜덤 주소를 복호화하여 제 2 랜덤 주소(AdvA2)를 저장할 수 있다. 제 1 외부 전자 장치(650)는, 제 1 애드버타이징 주소를 전송한 전자 장치(101)와 미리 공유된 공유키를 이용하여 제 1 랜덤 주소(AdvA1)를 암호화한 결과를 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 비교할 수 있다. 제1 외부 전자 장치(650)는 제 1 랜덤 주소(AdvA1)를 암호화한 결과가 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 일치하는 경우 전자 장치(101)를 인증된 장치로 판단할 수 있다. 또는, 제1 외부 전자 장치는 공유 키를 이용하여 제1 암호화 랜덤 주소를 복호화할 수 있고, 제1 암호화 랜덤 주소를 복호화하여 생성된 제1 랜덤 주소와 제1 애드버타이징 패킷에 포함된 제1 랜덤 주소가 일치하는지 확인할 수 있다. 제 1 외부 전자 장치는, 확인된 제1 랜덤 주소와 제1 애드버타이징 패킷에 포함된 제1 랜덤 주소가 일치하면 전자 장치(101)를 인증된 장치로 판단할 수 있다. 전자 장치(101)가 인증된 장치이므로, 이후 단계에서 블루투스 연결을 형성하기 위하여 제2 암호화 랜덤 주소를 복호화하여 제 2 랜덤 주소를 저장할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 615 동작에서, 제 2 랜덤 주소(AdvA2)를 포함하는 제 2 애드버타이징 패킷을 제 1 외부 전자 장치(650)에게 전송할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(650)는, 617 동작에서, 전자 장치(101)에게 연결 요청을 전송할 수 있다. 예를 들어, 제 1 외부 전자 장치(650)는, 전자 장치(101)로부터 수신한 제 2 애드버타이징 패킷에 포함된 제 2 랜덤 주소(AdvA2)가 613 동작에서 저장한 제 2 랜덤 주소(AdvA2)와 동일하므로, 전자 장치(101)가 613 동작에서 인증 장치로 식별된 장치임을 알 수 있다. 이에 따라, 제 1 외부 전자 장치(650)는, 전자 장치(101)로부터 제 2 랜덤 주소(AdvA2)를 포함하는 제 2 애드버타이징 패킷이 수신되면, 별도의 인증을 수행하지 않고, 전자 장치(101)로 연결 요청을 전송할 수 있다. 이에 따라, 제 1 외부 전자 장치(650)는, 전자 장치(101)가 인증된 장치인 경우인지 판단할 수 있고, 전자 장치(101)가 인증된 장치인 경우에만 전자 장치(101)와의 블루투스 연결을 형성할 수 있다.
도 7 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 7은 제 2 외부 전자 장치(700)와 제 1 외부 전자 장치(750)가 미리 공유된 공유키를 저장하고 있지 않은 상태임을 가정할 수 있다. 한편, 도 7에서의 제 2 외부 전자 장치(700)는, 전자 장치(101)의 데이터 스트림을 복사하여 재전송하는 악의적인 사용자 장치(예를 들어, MITM(man in the middle attack)일 수 있다.
다양한 실시예들에 따라서, 제 2 외부 전자 장치(700)는, 701 동작에서, 전자 장치(101)가 전송한 애드버타이징 패킷을 복사한 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(750)에게 전송할 수 있다. 애드버타이징 패킷은 애드버타이징 패킷을 전송하는 장치의 주소와 애드버타이징 데이터를 포함할 수 있다. 이에 따라, 제 2 외부 전자 장치(700)가 복사하여 전송하는 애드버타이징 패킷은, 제 2 외부 전자 장치의 주소(AdvA')와 전자 장치(101)에서 전송한 애드버타이징 데이터를 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(750)는, 703 동작에서, 제 2 외부 전자 장치(700)에게 스캔 요청을 전송할 수 있다. 제 1 외부 전자 장치(750)는, 수신된 애드버타이징 패킷에 포함된 애드버타이징 데이터를 바탕으로 제 2 외부 전자 장치(700)와 블루투스 연결 동작을 수행할 것인지 판단할 수 있다. 제2 외부 전자 장치(700)가 전송한 애드버타이징 패킷에 포함된 애드버타이징 데이터는 전자 장치(101)에서 생성된 애드버타이징 데이터를 복사한 것이므로, 제 1 외부 전자 장치(750)는 제 2 외부 전자 장치(700)와 블루투스 연결 동작을 수행할 것으로 판단할 수 있다.
다양한 실시예들에 따라서, 제 2 외부 전자 장치(700)는, 705 동작에서, 전자 장치(101)가 보내는 스캔 응답 을 복사하여 제 1 외부 전자 장치(750)에게 스캔 응답을 전송할 수 있다. 스캔 응답은 스캔 응답을 전송하는 장치의 주소와 스캔 응답 데이터(ScanRspData)를 포함할 수 있다. 이에 따라, 제 2 외부 전자 장치(700)가 복사하여 전송하는 스캔 응답(ScanRspData)은, 제 2 외부 전자 장치(700)의 주소(AdvA')와 전자 장치(101)에서 전송한 스캔 응답 데이터(ScanRspData)를 포함할 수 있다. 전자 장치(101)에서 전송한 스캔 응답 데이터(ScanRspData)는 전자 장치(101)에서 생성된 제 1 랜덤 주소(AdvA1)를 암호화한 제 1 암호화 랜덤 주소와 제 2 랜덤 주소(AdvA2)를 암호화한 제2 암호화 랜덤 주소를 포함할 수 있다.
다양한 실시예에 따라서, 제 1 외부 전자 장치(750)는, 707 동작에서, 제 2 외부 전자 장치(700)의 인증 여부를 식별할 수 있다. 스캔 응답은 제 2 외부 전자 장치(700)의 주소(AdvA') 및 제 1 랜덤 주소(AdvA1)를 암호화한 제 1 암호화 랜덤 주소를 포함할 수 있다. 제 1 외부 전자 장치(750)는, 전자 장치(101)와 미리 공유된 공유키를 이용하여 제 2 외부 전자 장치(700)의 주소(AdvA')를 암호화한 결과를 확인할 수 있다. 제 1 암호화 랜덤 주소는 제 1 랜덤 주소(AdvA1)를 암호화한 값이고, 제 2 외부 전자 장치(700)의 주소(AdvA')를 암호화한 결과는 제 2 외부 전자 장치의 주소(AdvA')을 암호화한 값이므로, 두 값은 일치하지 않으므로, 제 1 외부 전자 장치(750)는, 제 2 외부 전자 장치(700)를 인증되지 않은 장치로 식별할 수 있다.
다양한 실시예에 따라서, 제 2 외부 전자 장치(700)는, 709 동작에서, 전자 장치(101)가 전송한 애드버타이징 패킷을 복사한 제 2 애드버타이징 패킷을 제 1 외부 전자 장치(750)에게 전송할 수 있다.
다양한 실시예에 따라서, 제 1 외부 전자 장치(750)는, 711 동작에서, 제 2 애드버타이징 패킷을 무시할 수 있다. 제 1 외부 전자 장치(750)는, 인증된 장치로 식별된 전자 장치(101)로부터 블루투스 연결을 형성할 전자 장치의 주소를 미리 수신하여 저장하거나, 전자 장치의 주소를 추정할 수 있는 주소의 일부분을 미리 수신하여 저장할 수 있다. 예를 들어, 제 2 외부 전자 장치(700)는 스캔 응답 데이터(ScanRspData)에 포함된 제 1 암호화 랜덤 주소와 제 2 암호화 랜덤 주소에 기반하여 전자 장치(101)의 주소를 추정할 수 있다. 제 2 애드버타이징 패킷에 포함된 제 1 외부 전자 장치의 주소(AdvA')는 블루투스 연결을 형성하기 위하여 미리 저장된 주소와 일치하지 않으므로, 제 1 외부 전자 장치(750)는, 제2 외부 전자 장치(700)로부터 수신된 제 2 애드버타이징 패킷을 무시할 수 있다. 이에 따라, 제 1 외부 전자 장치(750)와 미리 공유키를 공유하지 않은 제 2 외부 전자 장치(700)가, 미리 공유키를 공유한 전자 장치(101)의 애드버타이징 패킷 및 스캔 응답 패킷을 복사하여 재전송하더라도, 제 1 외부 전자 장치(750)는 제 2 외부 전자 장치(700)와 블루투스 연결을 형성하지 않을 수 있다.
도 8 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 801 동작에서 , 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(예: 전자 장치(102))에게 전송할 수 있다. 제 1 애드버타이징 패킷은 전자 장치(101)의 주소(AdvA)와 서비스 고유 식별자를 나타내는 애드버타이징 데이터(AdvData)를 포함할 수 있다. 또한, 전자 장치(101)는, 제 1 애드버타이징 패킷을 생성한 시점부터 블루투스 연결이 형성되는 시점까지 제 1 애드버타이징 패킷을 유효한 것으로 관리할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 803 동작에서, 제 1 랜덤 주소(ScanA1)를 포함하는 스캔 요청을 제 1 외부 전자 장치로부터 수신할 수 있다. 제 1 랜덤 주소(ScanA1)는, 스캔 요청을 전송하는 제 1 외부 전자 장치에서 생성될 수 있다. 전자 장치(101)가 스캔 요청을 수신하면, 제 1 외부 전자 장치의 주소(제 1 랜덤 주소(ScanA1))를 식별할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 805 동작에서, 제 1 랜덤 주소(ScanA1)를 암호화한 제 1 암호화 랜덤 주소를 생성할 수 있다. 전자 장치(101)는 제 1 외부 전자 장치와 미리 공유된 공유키를 저장할 수 있으며, 공유키를 이용하여, 스캔 요청에 포함된 제 1 랜덤 주소(ScanA1)를 암호화하여 제 1 암호화 랜덤 주소를 생성할 수 있다. 예를 들어, 제 1 랜덤 주소(ScanA1)가 6octets인 경우, 전자 장치(101)는 제 1 랜덤 주소(ScanA1) 6octets 전체에 대하여 암호화하거나, 제 1 랜덤 주소(ScanA1) 중 일부(예를 들어, 3octets)를 암호화하여 제 1 암호화 랜덤 주소를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 807 동작에서, 제 1 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 제 1 외부 전자 장치로 전송할 수 있다. 스캔 응답의 헤더(header)는 제 1 외부 전자 장치의 주소인 제 1 랜덤 주소(ScanA1)를 포함할 수 있다. 스캔 응답의 페이로드(payload)는 전자 장치(101)의 주소(AdvA)와 제 1 외부 전자 장치에게 전송할 정보들을 포함할 수 있다. 예를 들어, 전자 장치(101)는 생성된 제 1 암호화 랜덤 주소를 포함하는 응답 데이터(ScanRepData)를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 809 동작에서, 제 1 외부 전자 장치로부터 연결 요청을 수신할 수 있다. 예를 들어, 제 1 외부 전자 장치에 의하여 전자 장치(101)가 인증된 장치로 식별되면, 전자 장치(101)는, 제 1 외부 전자 장치로부터 연결 요청을 수신하여 블루투스 연결을 형성할 수 있다.
도 9 는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 도 9의 실시예는 도 10을 참조하여 더욱 상세하게 설명하도록 한다. 도 10은 다양한 실시예들에 따른, 스캔 요청 패킷을 설명하기 위한 도면이다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(예: 전자 장치(102))는, 901 동작에서, 전자 장치(101)로부터 제 1 애드버타이징 패킷을 수신할 수 있다. 제 1 애드버타이징 패킷은, 제 1 애드버타이징 패킷을 전송하는 장치(예: 전자 장치(101))의 주소(AdvA)와 서비스 고유 식별자를 나타내는 애드버타이징 데이터(AdvData)를 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 903 동작에서, 전자 장치(101)와 대응하는 제 1 랜덤 주소를 생성하여 저장할 수 있다. 제 1 외부 전자 장치는, 제 1 애드버타이징 패킷을 전송한 전자 장치(101)와 대응하는 제 1 랜덤 주소(ScanA1)를 생성할 수 있다. 예를 들어, 제 1 외부 전자 장치는, 일회용 패스워드(OTP)와 같은 랜덤 넘버를 생성할 수 있으며, 랜덤 넘버를 스캔 주소(scan address)의 형태로 표현하여 랜덤 주소를 생성할 수 있다. 제 1 외부 전자 장치는 표준(예: Bluetooth core specification v5.0)에 따라 랜덤 주소를 생성할 수 있다. 제 1 외부 전자 장치는, 서로 다른 장치들로부터 애드버타이징 패킷을 수신할 때마다 제 1 외부 전자 장치의 주소(ScanA)를 나타내는 랜덤 주소를 생성할 수 있다. 예를 들어, 제 2 외부 전자 장치로부터 제 2 애드버타이징 패킷을 수신한다면, 제 2 외부 전자 장치와 대응하는 제 2 랜덤 주소(ScanA2)를 생성할 수 있다. 제1 외부 전자 장치는, 애드버타이징 패킷을 전송한 장치와 각각의 장치에 대응하는 랜덤 주소를 매칭시켜 테이블을 생성하고, 생성된 테이블을 메모리에 저장할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 905 동작에서, 제 1 랜덤 주소를 포함하는 스캔 요청을 전자 장치(101)로 전송할 수 있다. 예를 들어, 도 10에 도시된 바와 같이, 제 1 외부 전자 장치는 스캔 요청의 페이로드(1001)의 6octets를 할당하여 제 1 외부 전자 장치의 주소(ScanA)(1003)를 나타내고, 스캔 요청의 페이로드(1001)의 0-6octets 를 할당하여 전자 장치(101)의 주소(AdvA)(1005)를 나타낼 수 있다. 예를 들어, 제 1 외부 전자 장치의 주소(ScanA)는 랜덤하게 생성된 제 1 랜덤 주소(ScanA1)일 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 907 동작에서, 제 1 암호화 랜덤 주소를 포함하는 스캔 응답을 전자 장치(101)로부터 수신할 수 있다. 제 1 암호화 랜덤 주소는 스캔 응답을 전송한 전자 장치(101)에서 제 1 랜덤 주소(ScanA1)를 암호화한 값일 수 있다. 제 1 외부 전자 장치는 전자 장치(101)를 대상으로 제 1 랜덤 주소(ScanA1)를 전송하였으므로, 제 1 랜덤 주소(ScanA1)와 제 1 암호화 랜덤 주소를 이용하여 수신한 스캔 응답이 전자 장치(101)에 의하여 전송된 것인지 악의적인 사용자 장치(예: 제 2 외부 전자 장치)에서 복사된 것이지 판단할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 909 동작에서, 제 1 암호화 랜덤 주소를 바탕으로 전자 장치(101)의 인증 여부를 식별할 수 있다. 제 1 외부 전자 장치는 전자 장치(101)와 미리 공유된 공유키를 저장하고 있으며, 공유키를 이용하여 903 동작에서 저장한 제 1 랜덤 주소(ScanA1)를 암호화하여 제 2 암호화 랜덤 주소를 생성할 수 있다. 제 1 외부 전자 장치는, 생성된 제 2 암호화 랜덤 주소와 스캔 응답에 포함된 제 1 암호화 랜덤 주소가 일치하면 전자 장치(101)를 인증된 장치로 판단할 수 있다. 전자 장치(101)가 인증된 장치인 것으로 식별되면, 제 1 외부 전자 장치는 전자 장치(101)에게 연결 요청을 전송하여 블루투스 연결을 형성할 수 있다.
도 11 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 11은 전자 장치(101)와 제 1 외부 전자 장치(1150)가 미리 공유된 공유키를 저장하고 있는 상태임을 가정할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 1101 동작에서, 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(1150)(예: 전자 장치(102))에게 전송할 수 있다. 제 1 애드버타이징 패킷은, 전자 장치(101)의 주소(AdvA)와 서비스 고유 식별자를 나타내는 애드버타이징 데이터를 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1150)는, 1103 동작에서, 전자 장치(101)와 대응하는 제 1 랜덤 주소를 생성하여 저장할 수 있다. 제 1 외부 전자 장치(1150)는, 제 1 애드버타이징 패킷을 전송한 전자 장치(101)와 대응하는 제 1 랜덤 주소(ScanA1)를 생성할 수 있다. 제 1 외부 전자 장치(1150)는, 서로 다른 장치들로부터 애드버타이징 패킷을 수신할 때마다 제 1 외부 전자 장치의 주소(ScanA)를 나타내는 랜덤 주소 를 생성할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1150)는, 1105 동작에서, 제 1 랜덤 주소(ScanA1)를 포함하는 스캔 요청을 전송할 수 있다. 스캔 요청은 전자 장치(101)의 주소(AdvA)를 더 포함할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1107 동작에서, 제 1 랜덤 주소(ScanA1)를 암호화한 제 1 암호화 랜덤 주소를 생성할 수 있다. 전자 장치(101)는 제 1 외부 전자 장치(1150)와 미리 공유된 공유키를 이용하여, 수신된 스캔 요청에 포함된 제 1 랜덤 주소(ScanA1)를 암호화하여 제 1 암호화 랜덤 주소를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1109 동작에서, 제 1 암호화 랜덤 주소를 포함하는 스캔 응답을 제1 외부 전자 장치(1150)로 전송할 수 있다. 스캔 응답의 헤더는(header)는 제 1 외부 전자 장치(1150)의 주소인 제 1 랜덤 주소(ScanA1)를 포함할 수 있다. 스캔 응답의 페이로드(payload)는 전자 장치(101)의 주소(AdvA)와 제 1 외부 전자 장치에게 전송할 정보들을 나타내는 스캔 응답 데이터(ScanRspData)를 포함할 수 있다. 예를 들어, 전자 장치(101)는 생성된 제 1 암호화 랜덤 주소를 포함하는 응답 데이터(ScanRepData)를 포함하는 스캔 응답을 전송할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1150)는, 1111 동작에서, 제 1 암호화 랜덤 주소를 바탕으로 전자 장치(101)의 인증 여부를 식별할 수 있다. 제 1 외부 전자 장치(1150)는 동작 1105에서 전송한 스캔 요청에 포함된 전자 장치의 주소(AdvA)와 스캔 응답에 포함된 전자 장치(101)의 주소(AdvA)가 일치하는지 판단할 수 있다. 그리고, 제 1 외부 전자 장치(1150)는 수신된 스캔 응답의 헤더에 포함된 제 1 랜덤 주소(ScanA1)와 1103 동작에서 저장한 제 1 랜덤 주소(ScanA1)가 동일한지 판단할 수 있다. 제 1 외부 전자 장치(101)는 스캔 요청을 전송하는 대상의 장치가 상이한 경우 서로 다른 랜덤 주소를 생성하여 전송하므로, 스캔 요청에 포함된 전자 장치의 주소(AdvA)와 스캔 응답에 포함된 전자 장치의 주소(AdvA)가 일치하고, 스캔 응답의 헤더에 포함된 제 1 랜덤 주소(ScanA1)와 1103 동작에서 저장한 제 1 랜덤 주소(ScanA1)가 일치한다는 것은, 스캔 요청을 수신한 전자 장치(101)가 스캔 응답을 전송한 전자 장치(101)와 동일한 장치라는 것을 의미할 수 있다. 스캔 요청을 수신한 전자 장치(101)가 스캔 응답을 전송한 전자 장치(101)와 동일한 장치라고 판단되면, 제 1 외부 전자 장치(1150)는 전자 장치(101)와 미리 공유된 공유키를 이용하여 1103 동작에서 저장한 제 1 랜덤 주소(ScanA1)를 암호화하여 제 2 암호화 랜덤 주소를 생성할 수 있다. 제 1 외부 전자 장치는, 생성된 제 2 암호화 랜덤 주소와 스캔 응답에 포함된 제 1 암호화 랜덤 주소가 일치하면 전자 장치(101)를 인증된 장치로 판단할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1150)는, 1113 동작에서, 전자 장치(101)로 연결 요청을 전송할 수 있다. 전자 장치(101)가 인증된 장치인 것으로 식별되면, 제 1 외부 전자 장치는 전자 장치(101)에게 연결 요청을 전송하여 블루투스 연결을 형성할 수 있다.
도 12 는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 12는 제 2 외부 전자 장치(1200)와 제 1 외부 전자 장치(1250)가 미리 공유된 공유키를 저장하고 있지 않은 상태임을 가정할 수 있다. 한편, 도 12에서의 제 2 외부 전자 장치(1200)는, 전자 장치(101)의 데이터 스트림을 복사하여 재전송하는 악의적인 사용자 장치(예를 들어, MIMT)일 수 있다.
다양한 실시예들에 따라서, 제 2 외부 전자 장치(1200)는, 1201 동작에서, 전자 장치(101)에서 송신된 애드버타이징 패킷을 복사한 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(1250)에게 전송할 수 있다. 애드버타이징 패킷은 애드버타이징 패킷을 전송하는 장치의 주소와 애드버타이징 데이터를 포함할 수 있다. 따라서, 제 2 외부 전자 장치(1200)가 복사하여 전송하는 애드버타이징 패킷은, 제 2 외부 전자 장치의 주소(AdvA')와 전자 장치(101)에서 전송한 애드버타이징 데이터(AdvData)를 포함할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1250)는, 1203 동작에서, 제 2 외부 전자 장치(1200)에 대응하는 랜덤 주소(ScanA2)를 생성하고, 제 2 외부 전자 장치(1200)에게 랜덤 주소(ScanA2)를 포함하는 스캔 요청을 전송할 수 있다. 한편, 제 1 외부 전자 장치(1250)는 전자 장치(101)로부터 애드버타이징 패킷을 수신하고, 전자 장치(101)에게 랜덤 주소(ScanA1)를 포함하는 스캔 요청을 전송할 수 있다.
다양한 실시예들에 따라, 제 2 외부 전자 장치(1200)는, 1205 동작에서, 전자 장치(101)에서 송신된 스캔 응답을 복사하여 제 1 외부 전자 장치(1250)에게 전송할 수 있다. 스캔 응답의 헤더(header)에는 스캔 응답을 수신하는 장치의 주소가 포함될 수 있고, 스캔 응답의 페이로드(payload)에는 스캔 응답을 전송하는 장치의 주소와 스캔 응답 데이터를 포함할 수 있다. 따라서, 제 2 외부 전자 장치(1200)가 복사하여 전송하는 스캔 응답의 헤더에는 1203 동작에서 수신한 랜덤 주소(ScanA2)가 포함되고, 스캔 응답의 페이로드에는 제 2 외부 전자 장치의 주소(AdvA') 및 전자 장치(101)에서 전송하는 스캔 응답 데이터(ScanRspData)를 포함할 수 있다. 전자 장치(101)에서 전송한 스캔 응답 데이터(ScanRspData)는 전자 장치(101)가 수신한 랜덤 주소(ScanA1)을 암호화한 제 1 암호화 랜덤 주소를 포함할 수 있다.
다양한 실시예에 따라서, 제 1 외부 전자 장치(1250)는, 1207 동작에서, 제 2 외부 전자 장치(1200)의 인증 여부를 식별할 수 있다. 제 1 외부 전자 장치(1250)는, 전자 장치(101)와 미리 공유된 공유키를 이용하여 스캔 응답의 헤더에 포함된 랜덤 주소(ScanA2)를 암호화하여 제 2 암호화 랜덤 주소를 생성할 수 있다. 생성된 제 2 암호화 랜덤 주소와 스캔 응답 데이터(ScanRspData)에 포함된 제 1 암호화 랜덤 주소가 일치하지 않는 경우, 제 1 외부 전자 장치(1250)는 제 2 외부 전자 장치(1200)가 인증되지 않은 장치인 것으로 판단할 수 있다. 이에 따라, 제 2 외부 전자 장치(1200)가, 전자 장치(101)와 제 1 외부 전자 장치(1250) 사이에 공유된 공유키로 암호화된 랜덤 주소를 복사하여 전송하더라도, 제 1 외부 전자 장치(1250)는 제 2 외부 전자 장치(1200)가 인증되지 않은 장치임을 판단할 수 있다.
도 13 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 도 13의 실시예는 도 14를 참조하여 더욱 상세하게 설명하도록 한다. 도 14는 다양한 실시예들에 따른, 애드버타이징 데이터 패킷을 설명하기 위한 도면이다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 1301 동작에서, 전자 장치(101)의 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성할 수 있다. 예를 들어, 전자 장치(101)는, 애드버타이징 패킷을 전송할 때마다 랜덤 넘버(random number)를 생성하여 애드버타이징 데이터의 일부로 설정함으로써 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성할 수 있다. 예를 들어, 도 14에서와 같이, 31bytes가 할당된 애드버타이징 데이터 중 28bytes는 사용자가 설정한 데이터인 경우, 전자 장치(101)는 애드버타이징 패킷을 전송할 때마다 애드버타이징 데이터 중 사용자가 설정한 데이터가 없는 3bytes에 랜덤 넘버를 생성하여 설정할 수 있다. 전자 장치(101)는, 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷이 생성된 시점부터 블루투스 연결이 형성되는 시점까지 제 1 애드버타이징 패킷을 유효한 것으로 관리할 수 있다.
다시 도 13을 참조하여, 다양한 실시예들에 따라서, 전자 장치(101)는, 1303 동작에서, 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(예: 전자 장치(102))에게 전송할 수 있다. 예를 들어, 1301 동작에서 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성한 경우, 전자 장치(101)는 전자 장치의 주소(AdvA)와 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 전송할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1305 동작에서, 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화한 개시자 주소 (initiator address, InitA) 를 포함하는 연결 요청을 수신할 수 있다. 예를 들어, 1301 동작에서 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성한 경우, 전자 장치(101)는 제 1 외부 전자 장치로부터 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화하여 생성된 개시자 주소(InitA)를 포함하는 연결 요청을 수신할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1307 동작에서, 연결 요청에 포함된 제 1 랜덤 애드버타이징 데이터(AdvData1) 중 하나를 바탕으로 제 1 외부 전자 장치의 인증 여부를 식별할 수 있다. 예를 들어, 1301 동작에서 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성한 경우, 전자 장치(101)는 제 1 외부 전자 장치와 미리 공유된 공유키를 이용하여 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화하여 제 1 암호화 랜덤 애드버타이징 데이터를 생성할 수 있다. 생성된 제 1 암호화 랜덤 애드버타이징 데이터와 수신된 개시자 주소(InitA)가 일치하면, 전자 장치(101)는 제 1 외부 전자 장치를 인증된 장치로 식별할 수 있다.다양한 실시예들에 따라서, 전자 장치(101)는, 1309 동작에서, 제 1 외부 전자 장치와의 연결을 생성하고, 연결 생성을 알리는 신호를 전송할 수 있다. 제 1 외부 전자 장치가 인증된 장치로 식별되면, 전자 장치(101)는, 연결 생성을 알리는 신호(예를 들어, connection data PDU(protocol data unit))를 전송하여 블루투스 연결을 형성할 수 있다.
도 15 는 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 도 15의 실시예는 도 16a 및 도 16b를 참조하여 더욱 상세하게 설명하도록 한다. 도 16a 및 도 16b는 다양한 실시예들에 따른, 연결 지시자 패킷을 설명하기 위한 도면들이다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(예: 전자 장치(102))는, 1501 동작에서, 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 수신할 수 있다. 예를 들어, 제 1 외부 전자 장치는, 제 1 랜덤 애드버타이징 데이터를 포함하는 제 1 애드버타이징 패킷을 수신할 수 있다. 다른 예를 들어, 전자 장치(101)의 주소(AdvA) 및 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 수신할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 1503 동작에서, 제 1 랜덤 애드버타이징 데이터를 암호화하여 개시자 주소(InitA)를 생성할 수 있다. 예를 들어, 1501 동작에서 전자 장치(101)의 주소(AdvA) 및 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 수신한 경우, 제 1 외부 전자 장치는, 전자 장치(101)와 미리 공유된 공유키를 이용하여 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화하여 개시자 주소(InitA)를 생성할 수 있다. 예를 들어, 개시자 주소(InitA, 1611)는, 도 16a와 같은 표준(예: Bluetooth core specification v5.0)에 정의된 블루투스 프라이빗 주소 패킷 포맷(Bluetooth private address packet format)일 수 있다. 블루투스 프라이빗 주소 패킷 포맷은, 48bits일 수 있다. 예를 들어, 블루투스 프라이빗 주소 패킷 포맷 48bits 중 최상위 비트(MSB, most significant bit) 24bits(1615)는 랜덤 숫자(24bit random part)로 구성되고, 48 bits 중 최하위 비트(LSB, least significant bit) 24bits(1613)는 공유키와 랜덤 숫자에 의해 생성된 해쉬(hash) 값으로 구성될 수 있다.
다시 도 15를 참조하여, 다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 1505 동작에서, 개시자 주소(InitA)를 포함하는 연결 요청을 전송할 수 있다. 예를 들어, 개시자 주소(InitA)를 포함하는 연결 요청은 연결 인디케이션(connect indication) 신호일 수 있다. 연결 인디케이션 신호의 페이로드(1601)는, 도 16b에서와 같이, 6octets를 할당하여 개시자 주소(InitA)(1603)를 나타내고, 6octets를 할당하여 전자 장치(101)의 주소(AdvA)(1605)를 나타내고, 22octets를 할당하여 링크 연결에 필요한 데이터(LLData)(1607)를 나타낼 수 있다.
다시 도 15를 참조하여, 다양한 실시예들에 따라서, 제 1 외부 전자 장치는, 1507 동작에서, 연결 생성을 알리는 신호를 수신할 수 있다. 연결 요청을 수신한 전자 장치(101)에 의하여, 제 1 외부 전자 장치가 인증된 장치로 식별되면, 제 1 외부 전자 장치는 연결 생성을 알리는 신호(예를 들어, connection data PDU)를 수신하여 블루투스 연결을 형성할 수 있다.
도 17 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 17의 실시예는 전자 장치(101)와 제 1 외부 전자 장치(1750)가 미리 공유된 공유키를 저장하고 있는 상태임을 가정할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 1701 동작에서, 전자 장치(101)의 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성할 수 있다. 예를 들어, 전자 장치(101)는 애드버타이징 데이터 중 사용자가 설정하지 않은 데이터를 랜덤 넘버로 설정하여 제 1 랜덤 애드버타이징 데이터를 생성할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1703 동작에서, 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 전송할 수 있다. 예를 들어, 1701 동작에서 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성한 경우, 전자 장치(101)는 전자 장치의 주소(AdvA)와 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 제 1 외부 전자 장치(1750)으로 전송할 수 있다.
다양한 실시예들에 따라서, 제 1 외부 전자 장치(1750)(예: 전자 장치(102))는, 1705 동작에서, 제 1 랜덤 애드버타이징 데이터를 암호화하여 개시자 주소(InitA) 를 생성할 수 있다. 예를 들어, 전자 장치(101)의 주소(AdvA) 및 제 1 랜덤 애드버타이징 데이터(AdvData1)를 포함하는 제 1 애드버타이징 패킷을 수신한 경우, 제 1 외부 전자 장치(1750)는, 전자 장치(101)와 미리 공유된 공유키를 이용하여 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화하여 개시자 주소(InitA)를 생성할 수 있다. 다양한 실시예들에 따라서, 제 1 외부 전자 장치(1750)는, 1707 동작에서, 개시자 주소 (InitA)를 포함하는 연결 요청을 전송할 수 있다. 예를 들어, 개시자 주소를 포함하는 연결 요청은 연결 인디케이션(connect indication) 신호일 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1709 동작에서, 연결 요청에 포함된 제 1 랜덤 애드버타이징 데이터(AdvData1)를 바탕으로 제1 외부 전자 장치(1750)의 인증 여부를 식별할 수 있다. 예를 들어, 1701 동작에서 제 1 랜덤 애드버타이징 데이터(AdvData1)를 생성한 경우, 전자 장치(101)는 제 1 외부 전자 장치(1750)와 미리 공유된 공유키를 이용하여 제 1 랜덤 애드버타이징 데이터(AdvData1)를 암호화하여 제 1 암호화 랜덤 애드버타이징 데이터를 생성할 수 있다. 생성된 제 1 암호화 랜덤 애드버타이징 데이터와 수신된 개시자 주소(InitA)가 일치하면, 전자 장치(101)는 제 1 외부 전자 장치(1750)를 인증된 장치로 식별할 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)는, 1711 동작에서, 제 1 외부 전자 장치(1750)와의 연결을 생성하고, 연결 생성을 알리는 신호를 전송할 수 있다. 제 1 외부 전자 장치가 인증된 장치로 식별되면, 전자 장치(101)는, 연결 생성을 알리는 신호(예를 들어, connection data PDU)를 전송하여 블루투스 연결을 형성할 수 있다. 이에 따라, 전자 장치(101)는, 제 1 외부 전자 장치(1750)가 인증된 장치인 경우인지 판단할 수 있고, 제 1 외부 전자 장치(1750)가 인증된 장치인 경우에만 제 1 외부 전자 장치(1750)와의 블루투스 연결을 형성할 수 있다.
도 18 은 다양한 실시예들에 따른, 탐색 방법을 설명하기 위한 흐름도이다. 일 실시예에 따라, 도 18의 실시예는 제 2 외부 전자 장치(1800) 는 전자 장치(101)와 미리 공유된 공유키를 저장하고 있지 않은 상태임을 가정할 수 있다. 한편, 도 18에서의 제 2 외부 전자 장치(1800)는, 전자 장치(101)와 미리 공유된 공유키를 저장하고 있는 제 1 외부 전자 장치(예: 도 17의 제 1 외부 전자 장치(1750))의 데이터 스트림을 복사하여 재전송하는 악의적인 사용자 장치(예를 들어, MITM(man in the middle attack)일 수 있다.
다양한 실시예들에 따라서, 전자 장치(101)(예: 프로세서(120))는, 1801 동작 에서, 제 2 랜덤 넘버를 포함하는 애드버타이징 패킷(ADV_IND(RAND2))을 전송할 수 있다. 전자 장치(101)는, 애드버타이징 패킷을 전송할 때마다 랜덤 넘버를 생성하여, 애드버타이징 패킷을 수신하는 복수의 장치들은 모두 상이한 랜덤 넘버를 포함하는 애드버타이징 패킷을 수신할 수 있다. 예를 들어, 전자 장치(101)는 제 1 외부 전자 장치(예: 전자 장치(102))에게 제 1 랜덤 넘버를 포함하는 애드버타이징 패킷(ADV_IND(RAND1))을 전송할 수 있다. 제 1 외부 전자 장치는, 전자 장치(101)와 미리 공유된 공유키를 저장한 장치일 수 있다.
다양한 실시예들에 따라서, 제 2 외부 전자 장치(1800)는, 1803 동작 에서, 제 1 외부 전자 장치가 전자 장치(101)로 전송한 연결 요청(CONNECT_IND(initA1))을 복사하여 전자 장치(101)에게 전송할 수 있다. 제 1 외부 전자 장치는 전자 장치(101)로부터 제 1 랜덤 넘버를 포함하는 애드버타이징 패킷(ADV_IND(RAND1))을 수신하였으므로, 제 1 외부 전자 장치에서 송신된 연결 요청(CONNECT_IND(initA1))은, 제 1 랜덤 넘버를 암호화한 개시자 주소(InitA1)을 포함할 수 있다.
다앙한 실시예들에 따라서, 전자 장치(101)는, 1805 동작 에서, 수신된 연결 요청(CONNECT_IND(initA1))을 이용하여 제 2 외부 전자 장치(1800)의 인증 여부를 식별할 수 있다. 전자 장치(101)는, 제 1 외부 전자 장치와 미리 공유된 공유키를 이용하여, 제 2 외부 전자 장치(1800)에게 전송한 제 2 애드버타이징 패킷(ADV_IND(RAND2))에 포함된 제 2 랜덤 넘버를 암호화하여 제 2 암호화 랜덤 넘버를 생성할 수 있다. 전자 장치(101)는, 제 2 암호화 랜덤 넘버와 연결 요청(CONNECT_IND(initA1))에 포함된 개시자 주소(InitA1)가 일치하지 않는 경우, 제 2 외부 전자 장치(1800)를 인증되지 않은 장치로 식별할 수 있다. 이에 따라, 제 2 외부 전자 장치(1800)가 제 1 외부 전자 장치(즉, 인증된 장치)로부터 수신된 연결 요청(CONNECT_IND(initA1))을 복사하여 전송하더라도, 전자 장치(101)는 제 2 외부 전자 장치(1800)와 블루투스 연결을 형성하지 않을 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로(예: 무선 통신 모듈(192)), 상기 무선 통신 회로(예: 무선 통신 모듈(192))와 작동적으로 연결되는 적어도 하나의 프로세서(예: 프로세서(120)) 및 상기 적어도 하나의 프로세서(예: 프로세서(120))와 작동적으로 연결되는 메모리(예: 메모리(130))를 포함하고, 상기 메모리(예: 메모리(130))는, 실행 시에, 상기 프로세서(예: 프로세서(120))가, 상기 전자 장치(101)의 제 1 랜덤 주소(random address)를 생성하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 제 1 랜덤 주소를 포함하는 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 외부 전자 장치(예: 전자 장치(102))로부터 상기 제 1 애드버타이징 패킷에 대응하는 스캔 요청(scan request)을 수신하고, 상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소 및 제2 랜덤 주소를 암호화한 제 2 암호화 랜덤 주소를 생성하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 외부 전자 장치(예: 전자 장치(102))에게 상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 제 2 랜덤 주소를 포함하는 제 2 애드버타이징 패킷을 전송하도록 하는 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 애드버타이징 패킷을 전송할 때 마다 랜덤 주소를 생성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 제 1 랜덤 주소는, 상기 제 1 랜덤 주소가 생성된 시점부터 상기 제 2 랜덤 주소를 포함하는 상기 제 2 애드버타이징 패킷을 전송하는 시점까지 유효할 수 있다.
다양한 실시예에 따라서, 상기 메모리(예: 메모리(130))는, 상기 외부 전자 장치(예: 전자 장치(102))와 대응하는 공유키를 저장하고, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 제 1 랜덤 주소 및 상기 공유키를 이용하여 상기 제 1 암호화 랜덤 주소를 생성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 제 2 애드버타이징 패킷에 대응하는 연결 요청을 상기 외부 전자 장치(예: 전자 장치(102))로부터 수신하고, 상기 연결 요청의 수신에 기반하여, 상기 외부 전자 장치(예: 전자 장치(102))와 블루투스 연결을 형성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 제2 애드버타이징 패킷의 전송에 대한 응답으로 상기 외부 전자 장치에 의하여 상기 전자 장치가 인증된 전자 장치로 식별됨에 기반하여,, 상기 외부 전자 장치로부터 상기 연결 요청을 수신할 수 있다.
다양한 실시예에 따라서, 상기 전자 장치(101)는, 상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소가 일치하는 경우, 상기 외부 전자 장치(102)에 의해 상기 인증된 전자 장치로 식별될 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로(예: 무선 통신 모듈(192)), 상기 무선 통신 회로(예: 무선 통신 모듈(192))와 작동적으로 연결되는 적어도 하나의 프로세서(예: 프로세서(120)) 및 상기 적어도 하나의 프로세서(예: 프로세서(120))와 작동적으로 연결되는 메모리(예: 메모리(130))를 포함하고, 상기 메모리(예: 메모리(130))는, 실행 시에, 상기 프로세서(예: 프로세서(120))가, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 외부 전자 장치(예: 전자 장치(102))로부터 상기 전자 장치(예: 전자 장치(101))와 대응하는 제 1 랜덤 주소를 포함하는 스캔 요청(scan request)을 수신하고, 상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소를 생성하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 외부 전자 장치(예: 전자 장치(102))에게 상기 제 1 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 외부 전자 장치(예: 전자 장치(102))로부터 연결 요청을 수신하도록 하는 인스트럭션들(instructions)을 저장할 수 있다.
다양한 실시예에 따라서, 상기 메모리(예: 메모리(130))는, 상기 외부 전자 장치(예: 전자 장치(102))와 대응하는 공유키를 저장하고, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 제 1 랜덤 주소 및 상기 공유키를 이용하여 상기 제 1 암호화 랜덤 주소를 생성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 연결 요청의 수신에 기반하여, 상기 외부 전자 장치(예: 전자 장치(102))와 블루투스 연결을 형성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 제1 랜덤 주소는 상기 전자 장치에 대응하도록 무작위로 생성될 수 있다.
다양한 실시예에 따라서, 상기 전자 장치(101)는, 상기 외부 전자 장치(102)에 의해 인증된 전자 장치로 식별됨에 기반하여, 상기 외부 전자 장치(102)로부터 상기 연결 요청을 수신할 수 있다.
다양한 실시예에 따라서, 상기 전자 장치는, 상기 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 상기 저장된 제 1 랜덤 주소를 암호화한 값이 일치함에 기반하여, 상기 외부 전자 장치에 의해 상기 인증된 전자 장치로 식별될 수 있다.
다양한 실시예에 따라서, 상기 전자 장치(101)는, 상기 스캔 요청에 포함된 상기 제 1 암호화 랜덤 주소와 상기 외부 전자 장치(102)에 저장된 공유키로 암호화한 값이 일치함에 기반하여, 상기 외부 전자 장치(102)에 의해 상기 인증된 전자 장치로 식별될 수 있다.
다양한 실시예에 따라서, 전자 장치(101)는, 적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로(예: 무선 통신 모듈(192)), 상기 무선 통신 회로(예: 무선 통신 모듈(192))와 작동적으로 연결되는 적어도 하나의 프로세서(예: 프로세서(120)) 및 상기 적어도 하나의 프로세서(예: 프로세서(120))와 작동적으로 연결되는 메모리(예: 메모리(130))를 포함하고, 상기 메모리(예: 메모리(130))는, 실행 시에, 상기 프로세서(예: 프로세서(120))가, 랜덤 넘버에 기반하여 제 1 랜덤 애드버타이징(advertising) 데이터를 생성하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 상기 제 1 랜덤 애드버타이징 데이터를 포함하는 제 1 애드버타이징 패킷(packet)을 전송하고, 상기 무선 통신 회로(예: 무선 통신 모듈(192))를 통해, 외부 전자 장치(예: 전자 장치(102))로부터 상기 제 1 애드버타이징 패킷에 대응하는 개시자 주소를 포함하는 연결 요청을 수신하고, 상기 연결 요청에 포함된 상기 제1 랜덤 애드버타이징 데이터에 기반하여 상기 외부 전자 장치의 인증 여부를 식별하고, 상기 외부 전자 장치의 인증이 식별된 경우, 상기 외부 전자 장치와 연결을 생성하도록 하는 인스트럭션(instruction)들을 저장할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 애드버타이징 패킷을 전송할 때마다 랜덤 주소 또는 랜덤 애드버타이징 데이터를 생성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 제 1 랜덤 애드버타이징 데이터를 우선하여 생성하고, 상기 제 1 랜덤 애드버타이징을 생성하지 못하는 조건이 만족되면 제 1 랜덤 주소를 생성하도록 할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 상기 프로세서(120)가, 상기 제 1 애드버타이징 패킷을 상기 외부 전자 장치(102)로 전송함에 대응하여, 상기 개시자(initiator) 주소는 상기 전자 장치(101)와 대응하는 공유키 및 상기 제 1 랜덤 주소 또는 상기 제 1 랜덤 애드버타이징 데이터 중 하나를 이용하여 상기 제 1 랜덤 주소 또는 상기 제 1 랜덤 애드버타이징 데이터 중 하나를 암호화하여 생성되는 수 있다.
다양한 실시예에 따라서, 상기 메모리(예: 메모리(130))는, 상기 외부 전자 장치(예: 전자 장치(102))와 대응하는 공유키를 저장하고, 상기 인스트럭션들은, 상기 프로세서(예: 프로세서(120))가, 상기 연결 요청을 수신함에 반응하여, 상기 연결 요청에 포함된 상기 제 1 랜덤 애드버타이징 데이터 및 상기 공유키를 바탕으로 상기 외부 전자 장치(예: 전자 장치(102))의 인증 여부를 식별할 수 있다.
다양한 실시예에 따라서, 상기 인스트럭션들은, 실행 시에, 상기 프로세서(예: 프로세서(120))가, 상기 공유키를 이용하여 상기 제 1 랜덤 애드버타이징 데이터를 암호화하고, 상기 암호화된 값과 상기 개시자 주소가 일치하면 상기 외부 전자 장치(예: 전자 장치(102))를 인증된 전자 장치로 식별할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치 (예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나" 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체 는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, 비일시적은 저장매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.

Claims (20)

  1. 전자 장치 에 있어서,
    적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로;
    상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리;를 포함하고,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 전자 장치의 제 1 랜덤 주소(random address)를 생성하고,
    상기 무선 통신 회로를 통해, 상기 제 1 랜덤 주소를 포함하는 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고,
    상기 무선 통신 회로를 통해, 외부 전자 장치 로부터 상기 제 1 애드버타이징 패킷에 대응하는 스캔 요청(scan request)을 수신하고,
    상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소 및 제 2 랜덤 주소를 암호화한 제 2 암호화 랜덤 주소를 생성하고,
    상기 무선 통신 회로를 통해, 상기 외부 전자 장치에게 상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고,
    상기 무선 통신 회로를 통해, 상기 제 2 랜덤 주소를 포함하는 제 2 애드버타이징 패킷을 전송하도록 하는 인스트럭션들(instructions)을 저장하는 전자 장치.
  2. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    애드버타이징 패킷을 전송할 때마다 랜덤 주소를 생성하도록 하는 전자 장치.
  3. 제1항에 있어서,
    상기 제 1 랜덤 주소는, 상기 제 1 랜덤 주소가 생성된 시점부터 상기 제 2 랜덤 주소를 포함하는 상기 제 2 애드버타이징 패킷을 전송하는 시점까지 유효한, 전자 장치.
  4. 제1항에 있어서,
    상기 메모리는, 상기 외부 전자 장치와 대응하는 공유키를 저장하고,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제 1 랜덤 주소 및 상기 공유키를 이용하여 상기 제 1 암호화 랜덤 주소를 생성하도록 하는 전자 장치.
  5. 제1항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제 2 애드버타이징 패킷에 대응하는 연결 요청을 상기 외부 전자 장치로부터 수신하고,
    상기 연결 요청의 수신에 기반하여, 상기 외부 전자 장치와 블루투스 연결을 형성하도록 하는 전자 장치.
  6. 제5항에 있어서,
    상기 제2 애드버타이징 패킷의 전송에 대한 응답으로, 상기 외부 전자 장치에 의하여 상기 전자 장치가 인증된 전자 장치로 식별됨에 기반하여,, 상기 외부 전자 장치로부터 상기 연결 요청을 수신하는 전자 장치.
  7. 제5항에 있어서,
    상기 연결 요청은,
    상기 제 1 암호화 랜덤 주소와 상기 제 2 암호화 랜덤 주소가 일치함에 기반하여, 상기 외부 전자 장치로부터 수신되는 전자 장치.
  8. 전자 장치 에 있어서,
    적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로;
    상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리;를 포함하고,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    상기 무선 통신 회로를 통해, 제 1 애드버타이징(advertising) 패킷(packet)을 전송하고 ,
    상기 무선 통신 회로를 통해, 외부 전자 장치 로부터 상기 전자 장치와 대응하는 제 1 랜덤 주소 를 포함하는 스캔 요청(scan request)을 수신하고 ,
    상기 스캔 요청이 수신됨에 대응하여, 상기 제 1 랜덤 주소를 암호화한 제 1 암호화 랜덤 주소를 생성하고 ,
    상기 무선 통신 회로를 통해, 상기 외부 전자 장치에게 상기 제 1 암호화 랜덤 주소를 포함하는 스캔 응답(scan response)을 전송하고 ,
    상기 무선 통신 회로를 통해, 상기 외부 전자 장치로부터 연결 요청을 수신 하도록 하는 인스트럭션들(instructions)을 저장하는 전자 장치.
  9. 제8항에 있어서,
    상기 메모리는, 상기 외부 전자 장치와 대응하는 공유키를 저장하고,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제 1 랜덤 주소 및 상기 공유키를 이용하여 상기 제 1 암호화 랜덤 주소를 생성 하도록 하는 전자 장치.
  10. 제8항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 연결 요청의 수신에 기반하여, 상기 외부 전자 장치와 블루투스 연결을 형성 하도록 하는 전자 장치.
  11. 제8항에 있어서,
    상기 제1 랜덤 주소는 상기 전자 장치에 대응하도록 무작위로 생성되는 전자 장치.
  12. 제11항에 있어서,
    상기 전자 장치는, 상기 외부 전자 장치에 의해 인증된 전자 장치로 식별됨에 기반하여, 상기 외부 전자 장치로부터 상기 연결 요청을 수신하는 전자 장치.
  13. 제12항에 있어서,
    상기 전자 장치는, 상기 스캔 응답에 포함된 제 1 암호화 랜덤 주소와 상기 외부 전자 장치에 저장된 제 1 랜덤 주소를 암호화한 값이 일치함에 기반하여, 상기 외부 전자 장치에 의해 상기 인증된 전자 장치로 식별되는 전자 장치.
  14. 제10항에 있어서,
    상기 전자 장치는, 상기 스캔 요청에 포함된 상기 제 1 암호화 랜덤 주소와 상기 외부 전자 장치에 저장된 공유키로 암호화한 값이 일치함에 기반하여, 상기 외부 전자 장치에 의해 상기 인증된 전자 장치로 식별되는 전자 장치.
  15. 전자 장치 에 있어서,
    적어도 하나의 RF(radio frequency) 신호를 송수신하는 무선 통신 회로;
    상기 무선 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서; 및
    상기 적어도 하나의 프로세서와 작동적으로 연결되는 메모리;를 포함하고,
    상기 메모리는, 실행 시에, 상기 프로세서가,
    랜덤 넘버에 기반하여 제 1 랜덤 애드버타이징(advertising) 데이터를 생성하고,
    상기 무선 통신 회로를 통해, 상기 제 1 랜덤 애드버타이징 데이터를 포함하는 제 1 애드버타이징 패킷(packet)을 전송하고,
    상기 무선 통신 회로를 통해, 외부 전자 장치 로부터 상기 제 1 애드버타이징 패킷에 대응하는 개시자 주소 를 포함하는 연결 요청을 수신하고,
    상기 연결 요청에 포함된 상기 제1 랜덤 애드버타이징 데이터에 기반하여 상기 외부 전자 장치의 인증 여부를 식별하고,
    상기 외부 전자 장치의 인증이 식별된 경우, 상기 외부 전자 장치와 연결을 생성하도록 하는 인스트럭션들(instructions)을 저장하는 전자 장치.
  16. 제15항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    애드버타이징 패킷을 전송할 때마다 랜덤 주소 또는 랜덤 애드버타이징 데이터를 생성하도록 하는 전자 장치.
  17. 제15항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제 1 랜덤 애드버타이징 데이터를 우선하여 생성하고, 상기 제 1 랜덤 애드버타이징을 생성하지 못하는 조건이 만족되면 제 1 랜덤 주소를 생성하도록 하는 전자 장치.
  18. 제15항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 제 1 애드버타이징 패킷을 상기 외부 전자 장치로 전송함에 대응하여, 상기 개시자(initiator) 주소는 상기 전자 장치와 대응하는 공유키 및 상기 제 1 랜덤 주소 또는 상기 제 1 랜덤 애드버타이징 데이터 중 하나를 이용하여 상기 제 1 랜덤 주소 또는 상기 제 1 랜덤 애드버타이징 데이터 중 하나를 암호화하여 생성되는 전자 장치.
  19. 제18항에 있어서,
    상기 메모리는, 상기 외부 전자 장치와 대응하는 공유키를 저장하고,
    상기 인스트럭션들은, 상기 프로세서가, 상기 연결 요청을 수신함에 기반하여, 상기 연결 요청에 포함된 상기 제 1 랜덤 애드버타이징 데이터 및 상기 공유키를 바탕으로 상기 외부 전자 장치의 인증 여부를 식별하도록 하는 전자 장치.
  20. 제19항에 있어서,
    상기 인스트럭션들은, 상기 프로세서가,
    상기 공유키를 이용하여 상기 제 1 랜덤 애드버타이징 데이터 중 하나를 암호화하고, 상기 암호화된 값과 상기 개시자 주소가 일치하는지에 기반하여 상기 외부 전자 장치를 인증된 전자 장치로 식별하도록 하는 전자 장치.
KR1020190063425A 2019-05-29 2019-05-29 장치를 탐색하는 전자 장치 및 그 방법 KR102643372B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190063425A KR102643372B1 (ko) 2019-05-29 2019-05-29 장치를 탐색하는 전자 장치 및 그 방법
EP20813835.4A EP3881581B1 (en) 2019-05-29 2020-05-19 Electronic device for discovering device and method thereof
PCT/KR2020/006530 WO2020242111A1 (en) 2019-05-29 2020-05-19 Electronic device for discovering device and method thereof
US16/877,848 US11290888B2 (en) 2019-05-29 2020-05-19 Electronic device for discovering device and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190063425A KR102643372B1 (ko) 2019-05-29 2019-05-29 장치를 탐색하는 전자 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20200137302A true KR20200137302A (ko) 2020-12-09
KR102643372B1 KR102643372B1 (ko) 2024-03-07

Family

ID=73549518

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190063425A KR102643372B1 (ko) 2019-05-29 2019-05-29 장치를 탐색하는 전자 장치 및 그 방법

Country Status (4)

Country Link
US (1) US11290888B2 (ko)
EP (1) EP3881581B1 (ko)
KR (1) KR102643372B1 (ko)
WO (1) WO2020242111A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024075998A1 (ko) * 2022-10-07 2024-04-11 삼성전자주식회사 다른 전자 장치의 등록을 위한 전자 장치, 방법, 및 비일시적 컴퓨터 판독가능 저장 매체

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102613405B1 (ko) 2019-02-12 2023-12-14 삼성전자주식회사 블루투스 통신 정보 공유 방법 및 전자 장치
KR20210042470A (ko) * 2019-10-10 2021-04-20 현대자동차주식회사 차량, 그와 통신하는 단말기 및 그 제어 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2884776A2 (en) * 2013-12-16 2015-06-17 Nokia Corporation Method, apparatus, and computer program product for service discovery in wireless short-range communication
KR101762411B1 (ko) * 2016-04-06 2017-07-28 아사아블로이코리아 주식회사 신속한 블루투스 통신 연결 방법
US20170272405A1 (en) * 2016-03-15 2017-09-21 Dialog Semiconductor B.V. Security Improvements in a Wireless Data Exchange Protocol
US20180172664A1 (en) * 2016-12-20 2018-06-21 Abbott Diabetes Care Inc. Systems, devices, and methods for wireless communications in analyte monitoring systems

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7213047B2 (en) * 2002-10-31 2007-05-01 Sun Microsystems, Inc. Peer trust evaluation using mobile agents in peer-to-peer networks
US8037202B2 (en) * 2002-10-31 2011-10-11 Oracle America, Inc. Presence detection using mobile agents in peer-to-peer networks
US8832777B2 (en) * 2009-03-02 2014-09-09 Headwater Partners I Llc Adapting network policies based on device service processor configuration
US8427991B2 (en) * 2009-10-11 2013-04-23 Research In Motion Limited Handling wrong WEP key and related battery drain and communication exchange failures
KR101621266B1 (ko) * 2010-09-10 2016-05-16 삼성전자주식회사 단일 블루투스 채널을 이용한 블루투스 기기간 연결 방법 및 상기 방법을 이용하는 블루투스 기기
US20140108084A1 (en) * 2012-10-12 2014-04-17 Crestron Electronics, Inc. Initiating Schedule Management Via Radio Frequency Beacons
US9288228B2 (en) * 2011-08-05 2016-03-15 Nokia Technologies Oy Method, apparatus, and computer program product for connection setup in device-to-device communication
US10776103B2 (en) * 2011-12-19 2020-09-15 Majen Tech, LLC System, method, and computer program product for coordination among multiple devices
US20130283351A1 (en) * 2012-04-18 2013-10-24 Nokia Corporation Method and apparatus for configuring services based on touch selection
US9258712B2 (en) * 2012-09-04 2016-02-09 Nokia Technologies Oy Method, apparatus, and computer program product for sharing wireless network configurations
US20140075523A1 (en) * 2012-09-10 2014-03-13 Nokia Corporation Method, apparatus, and computer program product for sharing wireless network credentials
US9706383B2 (en) * 2013-01-04 2017-07-11 Nokia Technologies Oy Method, apparatus, and computer program product for configuring a mobile wireless hotspot
US9241044B2 (en) * 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US9210192B1 (en) * 2014-09-08 2015-12-08 Belkin International Inc. Setup of multiple IOT devices
US9924513B2 (en) * 2014-07-23 2018-03-20 Belkin International Inc. Band-switching operations in a mesh network environment
US9424417B2 (en) * 2014-06-04 2016-08-23 Qualcomm Incorporated Secure current movement indicator
US9338635B2 (en) * 2014-07-01 2016-05-10 Nokia Technologies Oy Method, apparatus, and computer program product for device tracking
CA2954503A1 (en) * 2014-07-07 2016-01-14 Ascensia Diabetes Care Holdings Ag Methods and apparatus for improved device pairing with a dual use piezoelectric acoustic component and vibration sensor
US9763063B2 (en) * 2014-10-06 2017-09-12 Derek D. Kumar Secure broadcast beacon communications
EP3073704A1 (en) 2015-03-23 2016-09-28 Comarch Technologies Spólka z Ograniczona Odpowiedzialnoscia Method of data securing transmitted over bluetooth and transmitter device transmitting secured data over bluetooth
US10136246B2 (en) * 2015-07-21 2018-11-20 Vitanet Japan, Inc. Selective pairing of wireless devices using shared keys
CA3007504A1 (en) * 2015-12-07 2017-06-15 Capital One Services, Llc Electronic access control system
KR102484740B1 (ko) * 2016-01-21 2023-01-05 삼성전자 주식회사 안테나 장치 및 이를 포함하는 전자 장치
US10581601B2 (en) * 2016-03-24 2020-03-03 Vincent Ramoutar Secure wireless communication device and method
EP3497975B1 (en) 2016-08-10 2020-03-04 Telefonaktiebolaget LM Ericsson (publ) Packet forwarding in a wireless mesh network
US10158905B2 (en) * 2016-09-14 2018-12-18 Dts, Inc. Systems and methods for wirelessly transmitting audio synchronously with rendering of video
US20190313246A1 (en) * 2018-04-06 2019-10-10 Iot And M2M Technologies, Llc Device default wifi credentials for simplified and secure configuration of networked transducers
US11246026B2 (en) * 2018-11-23 2022-02-08 Stel Life, Inc. System for secure passive wireless communication with Bluetooth vitals devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2884776A2 (en) * 2013-12-16 2015-06-17 Nokia Corporation Method, apparatus, and computer program product for service discovery in wireless short-range communication
US20170272405A1 (en) * 2016-03-15 2017-09-21 Dialog Semiconductor B.V. Security Improvements in a Wireless Data Exchange Protocol
KR101762411B1 (ko) * 2016-04-06 2017-07-28 아사아블로이코리아 주식회사 신속한 블루투스 통신 연결 방법
US20180172664A1 (en) * 2016-12-20 2018-06-21 Abbott Diabetes Care Inc. Systems, devices, and methods for wireless communications in analyte monitoring systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024075998A1 (ko) * 2022-10-07 2024-04-11 삼성전자주식회사 다른 전자 장치의 등록을 위한 전자 장치, 방법, 및 비일시적 컴퓨터 판독가능 저장 매체

Also Published As

Publication number Publication date
KR102643372B1 (ko) 2024-03-07
US20200382951A1 (en) 2020-12-03
EP3881581A1 (en) 2021-09-22
EP3881581A4 (en) 2022-01-05
EP3881581B1 (en) 2024-03-20
US11290888B2 (en) 2022-03-29
WO2020242111A1 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
EP3531659B1 (en) Electronic device and method for sharing screen data
KR102632299B1 (ko) 블루투스 네트워크 환경에서 응답 메시지를 전송하기 위한 전자 장치 및 그에 관한 방법
KR20200017302A (ko) 블루투스 저전력을 이용하여 통신을 수행하는 장치 및 방법
KR102652380B1 (ko) 블루투스 네트워크 환경에서 응답 메시지를 전송하기 위한 전자 장치 및 그에 관한 방법
KR20210017083A (ko) 퓨즈된 키에 기반하여 증명 인증서를 생성하는 전자 장치 및 방법
US11290888B2 (en) Electronic device for discovering device and method thereof
KR20210020541A (ko) 블루투스 네트워크 환경에서 데이터를 재전송하기 위한 전자 장치 및 그에 관한 방법
EP3709205B1 (en) Electronic device including secure integrated circuit
KR20200104043A (ko) 사용자 식별 정보를 저장하기 위한 전자 장치 및 그에 관한 방법
US11647564B2 (en) Apparatus and method for performing data communication in NAN protocol-based network environment
US20220141893A1 (en) Electronic device for transmitting response message in bluetooth network environment and method therefor
KR20190095582A (ko) 다른 전자 장치의 인증을 수행하는 전자 장치와 이의 동작 방법
KR20210031168A (ko) 블루투스 네트워크 환경에서 데이터 패킷을 수신하기 위한 전자 장치 및 그에 관한 방법
KR20200131035A (ko) 블록체인에 저장된 푸시 메시지를 수신하는 전자 장치 및 방법
KR20210037314A (ko) 보안 집적 회로를 이용하여 펌웨어를 갱신하기 위한 전자 장치 및 그의 동작 방법
US20230345237A1 (en) Electronic device performing wireless communication with accessory device, and operating method thereof
KR20200054708A (ko) Ieee 802.11 표준에 정의된 tdls 세션을 이용하여 외부 전자 장치와 무선 통신 채널을 통해 연결되는 전자 장치
US11825235B2 (en) Electronic device for processing image and image processing method thereof
US11943079B2 (en) Method for sharing channel information in Bluetooth network, and electronic device therefor
KR20210032104A (ko) 주소 정보를 설정하기 위한 전자 장치 및 그 작동 방법
KR20210041927A (ko) 블루투스 네트워크 환경에서 데이터를 전송하기 위한 전자 장치 및 그에 관한 방법
KR20240003681A (ko) 암호화 서비스를 제공하는 전자 장치 및 그 동작 방법
KR20210039818A (ko) 블루투스 네트워크 환경에서 데이터 패킷을 전송하기 위한 전자 장치 및 그에 관한 방법
KR20210129498A (ko) 데이터를 전송하는 방법 및 이를 지원하는 전자 장치
KR20200099339A (ko) 컨텐츠를 업로드 및/또는 다운로드하기 위한 전자 장치와 시스템 및 그의 동작 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right