KR20220110732A - UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법 - Google Patents

UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법 Download PDF

Info

Publication number
KR20220110732A
KR20220110732A KR1020227015742A KR20227015742A KR20220110732A KR 20220110732 A KR20220110732 A KR 20220110732A KR 1020227015742 A KR1020227015742 A KR 1020227015742A KR 20227015742 A KR20227015742 A KR 20227015742A KR 20220110732 A KR20220110732 A KR 20220110732A
Authority
KR
South Korea
Prior art keywords
sts
electronic device
information
slot
drbg
Prior art date
Application number
KR1020227015742A
Other languages
English (en)
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 삼성전자주식회사
Publication of KR20220110732A publication Critical patent/KR20220110732A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • H04L9/0668Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator producing a non-linear pseudorandom sequence
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/0209Systems with very large relative bandwidth, i.e. larger than 10 %, e.g. baseband, pulse, carrier-free, ultrawideband
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3297Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 개시는 UWB(ultra wide band) 통신을 수행하는 전자 장치의 방법에 관한 것이다.
일 실시 예에 따른 방법은 UCI(UWB Command Interface)를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신하는 단계; 슬롯 카운트 정보 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 획득하는 단계; 및 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보에 기초하여 정적(static) STS 생성을 수행하는 단계를 포함할 수 있다.

Description

UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법
본 개시는 UWB 통신 시스템에서 STS를 생성하기 위한 장치 및 방법에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 IoT (Internet of Things, 사물 인터넷) 망으로 진화하고 있다. 클라우드 서버 등과의 연결을 통한 빅데이터 (Big data) 처리 기술 등이 IoT 기술에 결합된 IoE(Internet of Everything) 기술도 대두되고 있다. IoT를 구현하기 위해서는, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술, 및 보안 기술과 같은 기술 요소 들이 요구된다. 최근에는 사물간의 연결을 위한 센서 네트워크(sensor network), 사물 통신 (Machine to Machine, M2M), MTC(Machine Type Communication) 등의 기술이 연구되고 있다.
IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT(Internet Technology) 서비스가 제공될 수 있다. IoT는, 기존의 IT(information technology) 기술과 다양한 산업 간의 융합 및 복합을 통하여, 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.
무선 통신 시스템의 발전에 따라 다양한 서비스를 제공할 수 있게 됨으로써, 이러한 서비스들을 효과적으로 제공하기 위한 방안이 요구되고 있다. 예를 들어, 매체 접근 제어(medium access control, MAC)에 있어서, UWB(Ultra Wide Band)를 이용하여 전자 장치들 간의 거리를 측정하는 레인징(ranging) 기술이 사용될 수 있다. UWB는, 무선 반송파를 사용하지 않고 기저 대역에서 수 GHz이상의 매우 넓은 주파수 대역을 사용하는 무선 통신 기술이다.
미리 약속된 전자 장치들 간에서 UWB 레인징이 수행되는 도중에 외부 공격자가 UWB 통신에 접근할 경우에 보안 문제가 발생할 수 있다. UWB 통신의 보안을 강화하기 위하여 암호, 난수 생성 및 기타 기법을 통해 외부 공격자가 WUB 통신에 접근하거나 조작하는 것을 막아주는 스크램블드 타임스탬프 시퀀스(Scrambled Timestamp Sequence: STS) 기능이 사용될 수 있다.
한편, UWB 통신 시스템에서 전자 장치는 STS를 효과적으로 생성할 필요가 있다.
일 실시예에 의하면, UWB 통신 시스템에서 정적 STS 생성(static STS generation)을 수행하는 전자 장치 및 방법이 제공될 수 있다.
도 1은 일반적인 D2D(Device-to-Device) 통신 절차를 설명하는 도면이다.
도 2는 복수의 전자 장치들의 통신 과정을 도시한 도면이다.
도 3은 컨트롤러와 컨트롤리를 포함하는 UWB 레인징 시스템의 동작 방법을 도시한다.
도 4는 레인징 시스템에서 이용될 수 있는 블록 및 라운드 구조의 일 예를 도시한다.
도 5는 STS 의 생성을 위한 DRBG의 구조를 나타내는 도면이다.
도 6은 본 개시의 일 실시예에 따라 동적 STS 생성을 위해 이용되는 파라미터를 설명하기 위한 도면이다.
도 7은 STS를 사용하는 레인징과 STS를 사용하지 않는 레인징을 비교 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 정적 STS 생성을 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 순서도이다.
도 10은 일 실시예에 따른 전자 장치의 블록도이다.
발명의 실시를 위한 최선의 형태
본 개시의 일 실시 예에 따라 UWB(Ultra Wide Band) 통신을 수행하는 전자 장치에 의해 수행되는 방법은 UCI(UWB Command Interface)를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신하는 단계; 슬롯 카운트 정보 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 획득하는 단계; 및 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보에 기초하여 정적(static) STS 생성을 수행하는 단계를 포함할 수 있다.
일 실시예에 따르면, 상기 상위 비트 정보는 벤더(vendor)의 식별자를 나타내는 파라미터를 포함할 수 있다.
일 실시예에 따르면, 상기 슬롯 카운트 정보는 매 슬롯마다 '1'의 값만큼 증가하는 카운트 값을 포함할 수 있다.
일 실시예에 따르면, 상기 카운트 값은 매 라운드(round)마다 초기화될 수 있다.
일 실시예에 따르면, 상기 정적(static) STS 생성을 위해 DRBG(Deterministic Random Bit Generator)가 사용되며, 상기 DRBG의 입력은 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 DRBG의 상기 입력은 상기 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함할 수 있다.
일 실시예에 따르면, 상기 STS 카운트 정보는 매 슬롯마다 초기화될 수 있다.
일 실시예에 따르면, 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고, 제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일할 수 있다.
본 개시의 일 실시 예에 따라 UWB(Ultra Wide Band) 통신을 수행하는 전자 장치는 UCI(UWB Command Interface)를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신하고, 슬롯 카운트 정보 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 획득하며, 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보에 기초하여 정적(static) STS 생성을 수행하는 적어도 하나의 프로세서를 포함할 수 있다.
일 실시예에 따르면, 상기 상위 비트 정보는 벤더(vendor)의 식별자를 나타내는 파라미터를 포함할 수 있다.
일 실시예에 따르면, 상기 슬롯 카운트 정보는 매 슬롯마다 '1'의 값만큼 증가하는 카운트 값을 포함할 수 있다.
일 실시예에 따르면, 상기 카운트 값은 매 라운드(round)마다 초기화될 수 있다.
일 실시예에 따르면, 상기 적어도 하나의 프로세서는 상기 정적(static) STS 생성을 위한 DRBG(Deterministic Random Bit Generator)를 포함하고, 상기 DRBG의 입력은 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 DRBG의 상기 입력은 상기 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함하고, 상기 STS 카운트 정보는 매 슬롯마다 초기화될 수 있다.
일 실시예에 따르면, 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고, 제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일할 수 있다.
발명의 실시를 위한 형태
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 개시의 실시 예를 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 또한, 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에서 사용되는 용어는, 본 개시에서 언급되는 기능을 고려하여 현재 사용되는 일반적인 용어로 기재되었으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 다양한 다른 용어를 의미할 수 있다. 따라서 본 개시에서 사용되는 용어는 용어의 명칭만으로 해석되어서는 안되며, 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 해석되어야 한다.
또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 구성 요소들은 이 용어들에 의해 한정되어서는 안 된다. 이 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용된다.
또한, 본 개시에서 사용된 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것이며, 본 개시를 한정하려는 의도로 사용되는 것이 아니다. 단수의 표현은 문맥상 명백하게 단수를 뜻하지 않는 한, 복수의 의미를 포함한다. 또한, 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.
본 명세서 전반에 걸쳐 사용된 “상기” 및 이와 유사한 지시어는 단수 및 복수 모두를 지시하는 것일 수 있다. 또한, 본 개시에 따른 방법을 설명하는 단계들의 순서를 명백하게 지정하는 기재가 없다면, 기재된 단계들은 적당한 순서로 행해 질 수 있다. 기재된 단계들의 기재 순서에 따라 본 개시가 한정되는 것은 아니다.
본 명세서에서 다양한 곳에 등장하는 "일 실시 예에서" 등의 어구는 반드시 모두 동일한 실시 예를 가리키는 것은 아니다.
본 개시의 일 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어 질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어 질 수 있다.
일반적으로 무선 센서 네트워크 기술은 인식 거리에 따라 크게 무선랜(WLAN; Wireless Local Area Network; WLAN) 기술과 무선 사설망(Wireless Personal Area Network; WPAN) 기술로 구분된다. 이 때 무선랜은 IEEE 802.11에 기반한 기술로서, 반경 100m 내외에서 기간망(backbone network)에 접속할 수 있는 기술이다. 그리고 무선 사설망은 IEEE 802.15에 기반한 기술로서, 블루투스(Bluetooth), 지그비(ZigBee), 초광대역 통신(ultra wide band, UWB) 등이 있다. 이러한 무선 네트워크 기술이 구현되는 무선 네트워크는 다수 개의 통신 전자 장치들로 이루어질 수 있다. 이 때 다수 개의 통신 전자 장치들은 단일 채널을 이용하여 액티브 구간(ACTIVE period)에서 통신을 수행한다. 즉 통신 전자 장치들은 액티브 구간에서, 패킷을 수집할 수 있고, 수집된 패킷을 전송할 수 있다.
UWB는 기저 대역 상태에서 수 GHz 이상의 넓은 주파수 대역, 낮은 스펙트럼 밀도 및 짧은 펄스 폭(1~4 nsec)을 이용하는 단거리 고속 무선 통신 기술을 의미할 수 있다. UWB는 UWB 통신이 적용되는 대역 자체를 의미할 수도 있다. 이하에서는 전자 장치들간의 레인징 방법을 UWB 통신 방식에 기초하여 설명하나, 이는 하나의 예시에 불과하고 실제로는 다양한 무선 통신 기술들이 이용될 수 있다.
본 개시의 실시 예들에 따른 전자 장치는 컴퓨터 장치로 구현되는 고정형 단말이거나 이동형 단말을 포함할 수 있으며, 무선 또는 유선 통신방식을 이용하여 다른 장치 및/또는 서버와 통신할 수 있다. 예를 들어, 전자 장치는, 스마트 폰(smart phone), 이동 단말기, 노트북 컴퓨터(laptop computer), 디지털 방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 슬레이트 PC(slate PC), 태블릿PC(tablet PC), 데스크탑 컴퓨터, 디지털 TV, 냉장고, 인공 지능 스피커, 웨어러블 디바이스, 프로젝터, 스마트 키, 스마트 카, 프린터, 자동차 콘솔, 자동차의 적어도 일부 기능을 제어하는 제어 장치 등을 포함할 수 있으며, 이러한 예에 제한되지 않는다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 일반적인 D2D(Device-to-Device) 통신 절차를 설명하는 도면이다.
D2D 통신이란 기지국과 같은 인프라를 거치지 않고 지리적으로 근접한 전자 장치들이 직접적으로 통신하는 방식을 말한다. 도 1에 도시된 바와 같이, 전자 장치들은 1:1, 1:다(多), 다(多):다(多)로 통신할 수 있다. D2D 통신은 UWB(Ultra Wide Band), 와이파이 다이렉트(Wi-Fi Direct), 블루투스(bluetooth)와 같이 비면허 주파수 대역을 사용할 수 있다. 또는, D2D 통신은 면허 주파수 대역을 활용하여 셀룰러 시스템의 주파수 이용 효율을 향상시킬 수도 있다. D2D 통신은 사물과 사물 간의 통신이나 사물 지능 통신을 지칭하는 용어로 제한적으로 사용되기도 하지만, 본 개시에서의 D2D 통신은 통신 기능이 장착된 단순한 전자 장치는 물론, 스마트 폰이나 개인용 컴퓨터와 같이 통신 기능을 갖춘 다양한 형태의 전자 장치들 간의 통신을 모두 포함할 수 있다.
도 2는 복수의 전자 장치들의 통신 과정을 도시한 도면이다.
제1 전자 장치(201)와 제2 전자 장치(202)는, 장치 탐색 과정(203), 링크 생성 과정(204) 및 데이터 통신 과정(205)을 통해 통신을 수행할 수 있다.
장치 탐색 과정(203)에서, 제1 전자 장치(201)와 제2 전자 장치(202) 각각은, 자신의 주변에 있는 전자 장치들 중 D2D 통신이 가능한 다른 전자 장치들을 탐색할 수 있다. 이를 통해, 제1 전자 장치(201)와 제2 전자 장치(202) 각각은 D2D 통신을 하기 위한 링크 생성 여부를 결정할 수 있다. 예를 들어, 제1 전자 장치(201)는 제2 전자 장치(202)가 제1 전자 장치(201)를 탐색할 수 있도록 탐색 신호를 송신할 수 있다. 또한, 제1 전자 장치(201)는 제2 전자 장치(202)가 송신하는 탐색 신호를 수신하여 D2D 통신이 가능한 다른 전자 장치들이 D2D 통신 범위 내에 있음을 확인할 수 있다.
링크 생성 과정(204)에서, 제1 전자 장치(201)와 제2 전자 장치(202) 각각은 장치 탐색 과정(203)에서 발견한 전자 장치들 중 데이터를 전송하고자 하는 전자 장치와 데이터 전송을 위한 링크를 생성할 수 있다. 예를 들어, 제1 전자 장치(201)는 장치 탐색 과정(203)에서 발견된 제2 전자 장치(202)와 데이터 전송을 위한 링크를 생성할 수 있다.
데이터 통신 과정(205)에서, 제1 전자 장치(201)와 제2 전자 장치(202) 각각은 링크 생성 과정(204)에서 링크를 생성한 장치들과 데이터를 서로 송수신할 수 있다. 예를 들어, 제1 전자 장치(201)는 링크 생성 과정(204)에서 생성된 링크를 통해 제2 전자 장치(202)와 데이터를 서로 송수신할 수 있다.
도 3은 컨트롤러와 컨트롤리를 포함하는 UWB 레인징 시스템의 동작 방법을 도시한다.
두 전자 디바이스들 간에 레인징이 수행됨에 있어서, 두 전자 디바이스들 중 하나는 컨트롤러가 되고, 다른 하나는 컨트롤리가 될 수 있다. 예를 들어, 도 2의 제1 전자 장치(201) 및 제2 전자 장치(202)는 각각 도 3의 컨트롤러(310) 및 컨트롤리(320)에 대응될 수 있다.
단계 302에서 컨트롤러(310)는, 레인징 제어 메시지를 컨트롤리(320)에게 전송함으로써 레인징을 제어하고, 레인징 파라미터들을 정의할 수 있다. 레인징 제어 메시지는 Advanced Ranging Control IE(ARC IE)를 운반하는 데이터 프레임일 수 있다. 컨트롤리(320)는, 컨트롤러(310)로부터 수신한 레인징 제어 메시지 내의 레인징 파라미터들을 이용하는 디바이스일 수 있다.
단계 304에서 컨트롤러(310)는, 레인징 개시 메시지를 컨트롤리(320)에게 전송할 수 있다. 레인징 개시 메시지는, 레인징 교환(ranging exchange)을 시작하기 위하여 전송되는 첫번째 메시지일 수 있다.
단계 306에서 컨트롤리(320)는 컨트롤러(310)로부터 수신되는 레인징 개시 메시지에 응답하는 레인징 응답 메시지를 컨트롤러(310)에게 전송할 수 있다.
비록 도면에 도시되지 않았지만, 컨트롤러(310)는 컨트롤리(320)에게 레인징 종료 메시지를 전송함으로써 레인징 개시 메시지에 따른 레인징 교환을 종료시킬 수 있다.
레인징 개시 메시지를 전송하는 디바이스가 개시자(initiator)라고 지칭되고, 레인징 시작 메시지에 응답하는 디바이스가 응답자(responder)라고 지칭될 수 있다. 컨트롤러(310)가 전송하는 레인징 제어 메시지에 따라서 컨트롤러(310) 및 컨트롤리(320) 중 하나가 개시자가 되고, 다른 하나가 응답자가 될 수 있다. 따라서, 도 3에서는 컨트롤러(310)가 개시자인 경우를 예로 들어 도시하였지만 실시예는 이에 제한되지 않는다. 컨트롤리(320)가 개시자가 되고, 컨트롤러(310)가 응답자가 될 수도 있다.
레인징 블록은 레인징을 위한 주기(period)를 의미한다. 레인징 블록은 복수의 레인징 라운드들들로 구성된다. 레인징 라운드는, 레인징 교환(ranging exchange)에 참여하고 있는 한 쌍의 레인징 디바이스들 간의 하나의 온전한 거리 측정(range measurement) 사이클이 완료되는 데 소요되는 기간(period)을 나타낸다. 레인징 라운드는 복수의 레인징 슬롯들로 구성된다. 레인징 슬롯은 하나의 레인징 프레임 전송을 위한 기간을 나타낸다.
예를 들어, 전술한 레인징 제어 메시지의 전송(302), 레인징 개시 메시지의 전송(304) 및 레인징 응답 메시지의 수신(304)은 레인징 라운드 내에서 수행될 수 있다. 이하 블록(block), 라운드(round) 및 슬롯(slot)은 각각 레인징 블록, 레인징 라운드 및 레인징 슬롯을 지칭한다.
도 4는 레인징 시스템에서 이용될 수 있는 블록 및 라운드 구조의 일 예를 도시한다.
도 4를 참조하면, 블록(402)은, N 개의 라운드들(412, 414, 416, 418)을 포함할 수 있으며, 라운드 각각은 M개의 슬롯들을 포함할 수 있다. 예를 들어, 제1 라운드(412)는 M개의 슬롯들(422, 424, 426, 428)을 포함할 수 있다. 이 때, N 및 M은 자연수이다.
컨트롤러와 컨트롤리가 UWB 통신을 수행하는 경우에, 컨트롤리는 컨트롤러의 제어에 의해 동작할 수 있다. 만약 허가된 컨트롤러가 아닌 외부 공격자가 UWB 통신에 접근하여 컨트롤리를 제어할 경우에 외부 공격자가 컨트롤러와 컨트롤리 간 UWB 레인징을 조작하는 문제가 발생할 수 있다. 따라서, 컨트롤러와 컨트롤리 간 UWB 레인징이 외부 공격자에 의해 교란되는 문제를 방지할 수 있도록 UWB 통신 시스템의 보안이 담보되어야 한다.
구체적으로, 제1 전자 장치(201) 및 제2 전자 장치(202)가 각각 UWB 통신 시스템의 컨트롤러 및 컨트롤리로서 동작하는 경우에, 제1 전자 장치(201)와 제2 전자 장치(202)가 상호 허가된 장치임을 인증하기 위한 절차가 필수적으로 요구된다.
일 실시예에 따르면, 제1 전자 장치(201) 및 제2 전자 장치(202)는 UWB 보안 레인징을 통해 전술한 인증 절차를 수행할 수 있다. UWB 보안 레인징을 위해 제1 전자 장치(201) 및 제2 전자 장치(202)는 각각 스크램블드 타임스탬프 시퀀스(Scrambled Timestamp Sequence: STS)를 생성할 수 있다. 예를 들어, 도 4의 M개의 슬롯들(422, 424, 426, 428) 마다 상이한 STS가 생성될 수 있다.
STS는 외부 침입자가 UWB 통신에 접근하여 UWB 시스템을 교란하는 것을 방지하기 위해 사용되는 난수를 의미한다. 예를 들어, 제1 전자 장치(201) 및 제2 전자 장치(202)는 난수 생성기를 사용하여 각각 제1 STS 및 제2 STS를 생성할 수 있다. 예를 들어, 일 실시예에 따르면 난수 생성기로서 결정론적 난수 발생기(Deterministic Random Bit Generator: DRBG)가 이용될 수 있다. 제1 전자 장치(201)는 생성된 제1 STS에 대한 정보를 제2 전자 장치(202)에게 전송할 수 있으며, 제2 전자 장치(202)는 수신된 제1 STS 에 대한 정보에 기초하여 제1 STS와 제2 전자 장치(202)에 의해 생성된 제2 STS를 비교할 수 있다.
설명의 편의를 위해 제1 전자 장치(201) 및 제2 전자 장치(202)가 각각 STS 송신자 및 STS 수신자인 경우로 설명하지만, 제1 전자 장치(201) 및 제2 전자 장치(202)가 각각 STS 수신자 및 STS 송신자일 수도 있다.
제1 STS와 제2 STS가 동일한 값을 갖는 경우에, 제2 전자 장치(202)는 제1 전자 장치(201)를 허가된 장치로 식별하고, 제1 전자 장치(201)와 UWB 레인징을 수행할 수 있다. 한 번 전송되어 검증에 사용된 STS는 재사용되지 않으며, 제1 전자 장치(201)와 제2 전자 장치(202)는 STS를 전송하는 매 시점에 다시 DRBG를 이용하여 새로운 STS를 생성해야 한다.
STS 의 생성은, UWB 레인징 제어 및 위치 추정에 관한 IEEE 802.15.4z 에 개시된 바에 따라 DRBG를 사용하여 수행될 수 있으며, 이하 도 5를 참조하여 DRBG의 구조에 대해 설명한다.
도 5는 STS 의 생성을 위한 DRBG의 구조를 나타내는 도면이다.
도 5를 참조하면, DRBG는 phyHrpUwbStsVCounter(504), phyHrpUwbStsVUpper96 (502) 및 phyHrpUwbStsKey(500)에 기초하여 STS를 생성할 수 있다. DRBG는 매 반복마다 128bit 길이의 난수를 나타내는 128-bit pseudo random number(540)를 생성하고, 128-bit pseudo random number(540)는 STS의 수도 랜덤화된 128개의 펄스들(pseudo randomized pulses) 을 형성하기 위해 사용될 수 있다.
구체적으로, DRBG는 STS의 생성을 위해 필요한 정보를 나타내는 씨드(seed) 및 씨드에 기초하여 STS를 생성할 수 있다. 예를 들어, DRBG는 씨드를 기초로 STS를 생성하기 위한 알고리즘으로서 AES-128(Advanced Encryption Standard 128, AES-128) 알고리즘(530)을 이용할 수 있다. 오직 유효한 전자 장치들만이 올바른 씨드 값을 알 수 있으며, 씨드는 STS 생성을 위한 128bit 길이의 데이터를 나타내는 128-bit value V(520) 및 128bit 길이의 키 (key)를 나타내는 phyHrpUwbStsKey(500)를 포함할 수 있다. 후술하는 바와 같이, phyHrpUwbStsKey(500)는 동적 STS 생성인지 고정된(fixed) STS 생성인지 여부에 따라 상이한 값으로 설정될 수 있다.
DRBG는 128-bit value V(520) 및 phyHrpUwbStsKey(500)를 AES-128 알고리즘(530)의 입력 값으로 사용하여 128-bit pseudo random number(540)를 생성할 수 있으며, 128-bit pseudo random number(540)를 기초로 STS가 생성될 수 있다.
128-bit value V(520)는 32bit 길이의 phyHrpUwbStsVCounter(504) 및 96bit 길이의 phyHrpUwbStsVUpper96(502)를 포함할 수 있다. phyHrpUwbStsVUpper96(502)는 128-bit value V(520)의 상위 96 비트들에 대응되며, phyHrpUwbStsVCounter(504)는 128-bit value V(520)의 하위 32 비트들에 대응될 수 있다. 후술하는 바와 같이, phyHrpUwbStsVCounter(504) 및 phyHrpUwbStsVUpper96(502)는 동적 STS 생성인지 고정된 STS 생성인지 여부에 따라 상이한 값으로 설정될 수 있다.
128-bit pseudo random number(540)가 출력될 때마다, 즉 DRBG의 매 반복마다 32 bit counter(510)는 phyHrpUwbStsVCounter(504)의 값을 증가시킬 수 있다. DRBG는, 후속 STS를 생성할 때에는, 현재 STS를 생성하기 위해 이용된 값보다 증가된 값을 포함하는 phyHrpUwbStsVCounter(504)를 AES-128 알고리즘(530)의 입력으로 사용할 수 있다.
일 실시예에 따르면, 제1 전자 장치(201) 및 제2 전자 장치(202)는 각각 동적 STS 생성(dynamic STS generation)을 수행할 수 있다. STS의 생성은 제1 전자 장치(201) 및 제2 전자 장치(202)에서 모두 수행될 수 있으며, 이하의 전자 장치는 제1 전자 장치(201) 및 제2 전자 장치(202)를 모두 지칭할 수 있다. 전자 장치는 앞서 도 5를 참조하여 설명한 DRBG를 사용하여 동적 STS 생성을 수행할 수 있으며, 이하 도 6을 참조하여 동적 STS 생성에 대해 구체적으로 설명한다.
도 5에서는 DRBG의 입력으로서 phyHrpUwbStsVCounter(504), phyHrpUwbStsVUpper96 (502) 및 phyHrpUwbStsKey(500)가 이용되어 STS를 생성하는 경우를 예로 들어 도시하였다. 그러나, 파라미터에 대해 사용되는 용어는 도 5에 도시된 예에 제한되지 않으며, 각 파라미터들을 구분하기 위한 명칭에 불과하며, 다른 명칭을 가지더라도 동일한 기능을 수행하는 구성은 본 개시의 범위에서 벗어나지 않는다.
도 6은 본 개시의 일 실시예에 따라 동적 STS 생성을 위해 이용되는 파라미터를 설명하기 위한 도면이다.
도 6에 도시된 바와 같이, 도 5의 phyHrpUwbStsVCounter(504), phyHrpUwbStsVUpper96 (502) 및 phyHrpUwbStsKey(500)는 도 6의 phyStsVCounter(604), phySlotCount(606), phyVUpper64(608) 및 phyStsKey(602)로 나타내어질 수 있다.
동적 STS 생성을 위한 DRBG의 입력은 phyStsVCounter(604), phySlotCount(606), phyVUpper64(608) 및 phyStsKey(602)를 포함할 수 있다. phyStsVCounter(604)는 DRBG의 매 반복마다 증가되는 카운터 값을 나타내는 파라미터로서 도 5를 참조하여 전술한 phyHrpUwbStsVCounter (504)에 맵핑될 수 있다. phyStsVCounter(604)는 phyHrpUwbStsVCounter (504)와 마찬가지로 32 비트의 데이터를 포함할 수 있다.
phyStsVCounter(604), phySlotCount(606), phyVUpper64(608) 및 phyStsKey(602)는 각 인자들을 구분하기 위한 명칭에 불과하며, 다른 명칭을 가지더라도 동일한 기능을 수행하는 구성은 본 개시의 범위에서 벗어나지 않는다.
phySlotCount(606)는 매 슬롯마다 증가되는 카운터 값을 나타내는 파라미터이며, 32 비트의 데이터를 포함할 수 있다. 동적 STS 생성의 경우에, phySlotCount(606)의 카운터 값은 레인징 세션(ranging session)의 시점에 미리 정해진 값으로 초기화된 이후에, 매 슬롯마다 증가될 수 있다. phySlotCount(606)는 cryptoStsIndex로 지칭될 수도 있다.
phyVUpper64(608)는 미리 결정된 값으로 설정된 파라미터일 수 있으며, 64 비트의 데이터를 포함할 수 있다. 예를 들어, phyVUpper64(608)는 마지막 키 추출 프로세스(key derivation process) 동안 생성된 파라미터인 secDerivedAuthenticationIv[127-64]로 설정될 수 있다.
phyVUpper64(608)와 phySlotCount(606)의 연속된 값을 포함하는 96 비트의 데이터는 도 5를 참조하여 전술한 phyHrpUwbStsVUpper96 (502)에 맵핑될 수 있다. phyVUpper64(608)는 phyHrpUwbStsVUpper96 (502)의 상위 64 비트에 대응되며, phySlotCount(606)는 phyHrpUwbStsVUpper96 (502)의 하위 32 비트에 대응될 수 있다.
phyStsKey(602)는 미리 생성된 키 값을 나타내는 파라미터일 수 있으며, 128 비트의 데이터를 포함할 수 있다. 예를 들어, 전자 장치는, 전자 장치 내에 제한된 애플리케이션의 접근만을 허용하는 보안 요소(security element)를 포함하고, 보안 레인징을 위하여 보안 요소에서 키 값을 생성할 수 있다. phyStsKey(602)는 보안 요소에 의해 수행된 키 추출 프로세스를 통해 생성된 키 값을 포함하는 파라미터인 secDerivedAuthenticationKey에 대응되도록 설정될 수 있다. phyStsKey(602)는 도 5를 참조하여 전술한 phyHrpUwbStsKey(500)에 맵핑될 수 있다.
phyStsVCounter(604)는 phyHrpUwbStsVCounter(504)에 맵핑되고, phySlotCount(606) 및 phyVUpper64(608)는 phyHrpUwbStsVUpper96(502)에 맵핑되며, phyStsKey(602)는 phyHrpUwbStsKey(500)에 맵핑될 수 있으며, 전자 장치는 전술한 맵핑 관계에 따라 매핑된 값으로 DRBG의 입력 값을 초기화 한 이후 도 5에 따른 DRBG를 사용하여 동적 STS 생성을 수행할 수 있다.
동적 STS의 경우에, 보안 요소를 통해 생성된 키 값을 사용하여 STS를 생성하기 때문에 보다 강력한 보안을 제공할 수 있다. 또한, phySlotCount(606)는 슬롯마다 증가되는 카운터 값을 나타내며, 동적 STS의 경우에, phySlotCount(606)의 카운터 값은 새로운 라운드가 시작되더라도 초기화되지 않으므로, 라운드에 관계없이 슬롯 마다 상이한 STS를 생성할 수 있으므로, 보안이 더욱 강화될 수 있다.
다만, 전자 장치의 보안 요소가 STS 생성을 위해 매번 키 값을 생성하기 위해서는 많은 오버헤드(overhead)가 발생할 수 있으며, 전자 장치의 복잡도가 증가되며 성능은 저하되는 문제가 발생할 수 있다. 또한, 라운드와 무관하게 매 슬롯마다 증가되는 phySlotCount(606)에 따라 라운드 별로 생성되는 STS가 상이하기 때문에 처리(processing)에 소요되는 시간이 증가하는 문제가 발생할 수 있다.
한편, 보안 요소를 포함하지 않는 전자 장치의 경우, UWB 레인징을 위해 STS를 사용하지 않고 프리앰블(preamble)을 사용할 수 있다. 다만 STS를 사용하지 않는 UWB 레인징의 경우에 STS를 사용한 UWB 레인징에 비해 레인징의 신뢰성이 낮은 문제가 있다.
도 7은 STS를 사용하는 레인징과 STS를 사용하지 않는 레인징을 비교 설명하기 위한 도면이다.
도 7을 참조하면, STS를 사용하지 않고, 프리앰블을 사용한 제1 레인징의 경우(702)에 매 슬롯마다 동일한 프리앰블 코드인 SYNC Code C0을 사용할 수 있다. 반면에 STS를 사용한 제2 레인징의 경우(704)에, 매 슬롯마다 상이한 STS 코드를 사용할 수 있다. 예를 들어, 제2 레인징의 경우(704)에 N개의 슬롯들에 대해 각각 제1 STS 코드 내지 제N-1 코드(STS Code Co 내지 STS Code CN-1)을 사용할 수 있다.
제1 디바이스(Device 1)과 제2 디바이스(Device 2)가 UWB 레인징을 수행하는 경우에, 제1 디바이스(Device 1)로부터 제2 디바이스(Device 2)에게 직접적인 경로(Direct path)를 통해 UWB 레인징 신호가 전송될 수도 있으며, UWB 레인징 신호가 벽에 반사되어 제2 디바이스(Device 2)에게 전송될 수도 있다.
제2 디바이스(Device 2)는 다중 경로를 통해 제1 디바이스(Device 1)로부터 전송된 UWB 신호를 수신할 수 있다. 다중 경로는 제1 디바이스(Device 1)로부터 송신된 UWB 신호가 장애물에 반사되지 않고 제2 디바이스(Device 2)에게 직접적으로 전송되는 경로인 LOS(Line Of Sight) 경로(752)와 제1 디바이스(Device 1)로부터 송신된 UWB 신호가 장애물에 반사된 이후에 제2 디바이스(Device 2)에게 전송되는 경로인 반사 경로(754)를 포함할 수 있다. LOS 경로는 direct path로 지칭될 수도 있다.
제2 디바이스(Device 2)는 주기적으로 일정 구간 동안 수신된 신호들 간의 상관관계(correlation)에 기초하여 수신된 신호들 중에서 LOS 경로(752)를 통해 수신된 신호를 결정하고, 결정된 신호에 대응되는 거리를 결정할 수 있다.
구체적으로, 제2 디바이스(Device 2)는 수신된 신호들 간 상관관계에 기초하여 적어도 하나의 채널 임펄스 응답(channel impulse response: CIR)을 획득할 수 있으며, 획득된 채널 임펄스 응답의 크기(amplitude) 및 채널 임펄스 응답이 발생한 시점에 기초하여 LOS 경로(752)를 통해 수신된 신호를 결정할 수 있다. 만약 복수의 채널 임펄스 응답들이 획득된 경우에 제2 디바이스(Device 2)는 채널 임펄스 응답의 크기가 소정의 임계치 이상인 채널 임펄스 응답들 중에서 가장 먼저 발생한 채널 임펄스 응답에 대응하는 신호를 LOS 경로(742)를 통해 수신된 신호로 식별할 수 있다. 제2 디바이스(Device 2)는 식별된 신호에 대응하는 채널 임펄스 응답이 발생한 시점 및 빛의 속도에 기초하여 제1 디바이스(Device 1)와 제2 디바이스(Device 2) 간 거리를 결정할 수 있다.
도 7에서 보는 바와 같이, STS를 사용하지 않는 레인징의 경우(702)에, 슬롯 마다 동일한 코드 값을 사용한다. 예를 들어, 하나의 슬롯의 길이는 1016ns일 수 있으며, 매 슬롯마다 동일한 코드 값인 SYNC Code Co가 사용될 수 있으며, LOS 경로(752)를 통해 수신된 신호와 반사 경로(754)를 통해 수신된 신호는 모두 매 슬롯마다 SYNC Code Co로서 동일한 코드 값을 포함할 수 있다.
따라서, 제1 디바이스(Device 1)과 제2 디바이스(Device 2) 사이에 장애물이 없고, 와이파이에 의한 간섭이 없는 환경에서도, 이전 슬롯(또는 제1 슬롯, 소정 슬롯)에서 전송되어 반사 경로(754)를 통해 수신된 신호가 현재 슬롯(또는 제2 슬롯, 다음 슬롯)에서 전송되어 LOS 경로(752)를 통해 수신된 신호로 식별되는 문제가 발생한다. 이를 페이크 퍼스트 패스(fake first path)가 검출되는 문제로 지칭할 수 있다. 위와 같이 실제로 반사 경로(754)를 통해 수신된 신호가 LOS 경로(742)를 통해 수신된 신호로 식별될 경우에, 식별된 신호에 따라 계산되는 거리는 실제 제1 디바이스(Device 1)과 제2 디바이스(Device 2) 간 거리보다 짧게 계산될 수 있다.
STS를 사용하지 않는 레인징에 대한 채널 임펄스 응답을 나타내는 그래프(720)를 참조하면, 전자 장치는 채널 임펄스 응답의 크기가 소정의 임계값 이상인 제1 임펄스 응답(722)에 대응하는 신호 및 제2 임펄스 응답(724)에 대응하는 신호를 검출할 수 있다. 제1 임펄스 응답(722)에 대응하는 신호는 STS를 사용하지 않음에 따라 검출되는 신호로서, 전자 장치는 시간적으로 앞서 발생하는 제1 임펄스 응답(722)에 대응하는 신호를 LOS 경로(754)를 통해 수신된 신호로 판단하여 페이크 퍼스트 패스가 검출되는 문제가 발생한다.
STS를 사용하는 레인징의 경우(704)에, 슬롯마다 상이한 코드 값을 사용하므로, 이전 슬롯에서 전송되어 반사 경로(754)를 통해 수신된 신호와 현재 슬롯에서 전송되어 LOS 경로를 통해 수신된 신호(752)가 동일한 STS 코드를 사용하지 않는다. 따라서, STS를 사용하는 레인징의 경우(704)에, 페이크 퍼스트 패스(fake first path)가 검출되지 않으므로, STS를 사용하지 않는 레인징의 경우(702)에 비해 레인징의 신뢰성이 높은 장점이 있다.
STS를 사용한 레인징에 대한 채널 임펄스 응답을 나타내는 그래프(730)를 참조하면, 전자 장치는 채널 임펄스 응답의 크기가 소정의 임계값 이상인 하나의 임펄스 응답(732)에 대응하는 신호를 검출할 수 있으며, 페이크 퍼스트 패스가 발생하지 않는다.
본 개시의 일 실시예에 따르면, 전자 장치는 고정된(fixed) STS 생성을 수행함으로써 동적 STS의 문제점과 STS를 사용하지 않는 레인징의 문제점을 보완할 수 있다. 고정된 STS 생성은 정적(static) STS 생성으로 지칭될 수도 있으며, 이하 정적 STS 생성으로 기술한다.
구체적으로, 정적 STS의 경우에 STS를 기초로 UWB 레인징을 수행하므로 앞서 도 7을 참조하여 전술한 프리엠블을 사용한 레인징과 비교하여 정확도 및 신뢰성이 향상될 수 있다.
정적 STS의 경우에, 동적 STS와는 달리 STS의 생성을 위해 보안 요소에 의해 생성된 키 값을 사용하지 않고, 미리 정해진 키 값을 패칭(fetching)하여 사용할 수 있다. 예를 들어, 정적 STS에서 사용되는 키 값은 FIRA 표준에 따라 미리 결정된 값 또는 BLE(Bluetooth Low Energy) advertising 패킷(packet)에 포함된 값이거나 QR(Quick Response) 코드(code)를 통해 얻어진 값일 수 있다. 정적 STS의 경우에 별도의 보안 요소를 필요로 하지 않으므로, 보안 요소로 인해 발생하는 전자 장치의 복잡도 및 성능 저하를 방지할 수 있다.
또한, 정적 STS의 경우에 동적 STS와는 달리 슬롯(slot)마다 상이한 STS를 생성하기 위한 슬롯 카운트 정보를 매 라운드마다 초기화할 수 있다. 그 결과, 제1 라운드에 대한 제1 STS들의 집합과 제2 라운드에 대한 제2 STS들의 집합이 서로 동일해짐으로써 보다 신속한 처리가 가능해질 수 있다.
구체적으로, 복수의 라운드들 각각에 대응하는 STS 집합들이 서로 동일한 경우에, 컨트롤리가 매 슬롯마다 증가되는 카운트 값을 포함하는 물리적 STS 인덱스 정보를 필요로 하지 않으며, 초기 라운드에 대한 STS 집합에 기초하여 후속 라운드들에 대한 STS 패턴을 미리 결정할 수 있기 때문에 신속한 처리가 가능한 것이다.
또한, 정적 STS의 경우에, UCI(UWB Command Interface)를 통해 벤더(vendor)와 연관된 정보를 수신하여 STS를 생성할 수 있다. 정적 STS의 경우에 미리 설정된 키 값을 사용하므로, 외부 공격자가 키 값을 용이하게 알 수 있으므로, 벤더에 따라 미리 설정된 값을 기초로 STS를 생성함으로써 보안을 강화할 수 있다. 구체적으로, 벤더에 따라 벤더와 연관된 정보가 달라지고, 정적 STS 생성을 위한 입력 값이 달라지므로 상이한 STS가 생성됨으로써 미리 설정된 키 값을 사용하더라도 보안이 담보될 수 있다. 예를 들어, 미리 설정된 키 값은 전술한 바와 같이 FIRA 표준에 따라 미리 결정된 값 또는 BLE advertising 패킷에 포함된 값이거나 QR 코드를 통해 얻어진 값일 수 있다.
이하 도 8을 참조하여 일 실시예에 따른 정적 STS 생성에 대한 구체적인 내용을 설명한다.
도 8은 일 실시예에 따른 정적 STS 생성을 설명하기 위한 도면이다.
도 8은 도 5를 참조하여 전술한 DRBG의 입력인 phyHrpUwbStsVCounter(504), phyHrpUwbStsVUpper96 (502) 및 phyHrpUwbStsKey(500)과 정적 STS 생성을 위한 입력인 phyStsVCounter(804), phySlotCount(806), phyVUpper64(808) 및 phyStsKey(802)의 맵핑 관계를 나타낸다.
전자 장치는 앞서 도 5를 참조하여 설명한 DRBG를 사용하여 정적 STS 생성을 수행할 수 있다. 정적 STS 생성을 위한 DRBG의 입력은 DRBG의 출력 횟수와 연관된 STS 카운트 정보 나타내는 phyStsVCounter(804), 슬롯(slot)마다 상이한 STS(Scrambled Timestamp Sequence)를 생성하기 위한 슬롯 카운트 정보를 나타내는 phySlotCount(806), UCI(UWB Command Interface)를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 나타내는 phyVUpper64(808) 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 나타내는 phyStsKey(802)를 포함할 수 있다.
phyStsVCounter(804), phySlotCount(806), phyVUpper64(808) 및 phyStsKey(802)는 각 인자들을 구분하기 위한 명칭에 불과하며, 다른 명칭을 가지더라도 동일한 기능을 수행하는 구성은 본 개시의 범위에서 벗어나지 않는다.
phyStsVCounter(804)는 DRBG의 매 반복마다 증가되는 카운터 값을 나타내는 파라미터로서 도 5의 phyHrpUwbStsVCounter (504)에 맵핑될 수 있다. phyStsVCounter(804)는 phyHrpUwbStsVCounter (504)와 마찬가지로 32 비트의 데이터를 포함할 수 있다. 일 실시예에 따르면, phyStsVCounter(804)는 매 슬롯마다 초기화될 수 있다.
phySlotCount(806)는 매 슬롯마다 증가되는 카운터 값을 나타내는 파라미터이며, 32 비트의 데이터를 포함할 수 있다. 정적 STS 생성의 경우에, phySlotCount(806)의 카운터 값은 레인징 세션(ranging session)의 시점에 미리 정해진 초기 값으로 초기화된 이후에, 매 슬롯마다 증가될 수 있으며, 매 라운드마다 초기화될 수 있다. phySlotCount(806)는 cryptoStsIndex[31:0]로 지칭될 수도 있다.
일 실시예에 따르면, 정적 STS 생성의 경우에, 동적 STS 생성과는 달리, phySlotCount(806)가 매 라운드마다 초기화됨으로써 복수의 라운드들 각각에 대응하는 STS들의 집합들이 서로 동일할 수 있다. 따라서, 동적 STS에 비하여 처리가 용이할 수 있다.
phyVUpper64(808)는 UCI를 통해 수신되는 정보일 수 있다. 예를 들어, 전자 장치는 UCI를 통해 호스트 디바이스(host device)로부터 phyVUpper64(808)를 수신할 수 있으며, 호스트 디바이스는 각종 애플리케이션과 연관된 서비스를 제공하는 장치일 수 있다. phyVUpper64(808)는 vUpper64으로 지칭될 수도 있다.
phyVUpper64(808)는 64 비트의 적어도 하나의 파라미터들을 포함할 수 있다. 도 8을 참조하면, phyVUpper64(808)는 서비스와 연관된 파라미터(812), 벤더와 연관된 파라미터(814) 및 레인징 장치들의 식별자에 대한 파라미터(816)을 포함할 수 있다.
서비스와 연관된 파라미터(812)는 제1 전자 장치(201)와 제2 전자 장치(202) 간의 UWB 레인징과 연관된 애플리케이션에 대한 정보를 나타낼 수 있다. 예를 들어, 제1 전자 장치(201)와 제2 전자 장치(202) 간의 UWB 레인징이 위치 추적 애플리케이션의 실행을 통해 수행되는 경우에, 서비스와 연관된 파라미터(812)는 위치 추적 애플리케이션을 식별할 수 있도록 하는 식별 정보를 나타낼 수 있다. 예를 들어, 서비스는 위치 추적 뿐만 아니라, 친구 찾기(find my friend), 파일 공유(file share), 로컬리제이션(localization) 등을 포함할 수 있다.
벤더와 연관된 파라미터(814)는 벤더의 식별자(identification)를 나타낼 수 있다. 예를 들어, 제1 전자 장치(201)와 제2 전자 장치(202) 간의 UWB 레인징이 위치 추적 애플리케이션의 실행을 통해 수행되는 경우에, 벤더와 연관된 파라미터(814)는 위치 추적 애플리케이션의 벤더의 ID(identification)를 나타낼 수 있다. 예를 들어, 벤더와 연관된 파라미터는 VENDOR_ID를 포함할 수 있다.
VENDOR_ID는 벤더에 대해 유니크(unique)한 ID이며, static STS를 위한 vUpper64[15:0]을 설정하기 위해 사용되는 파라미터일 수 있다. phyVUpper64(808)는 STATIC_STS_IV를 더 포함할 수 있으며, STATIC_STS_IV는 static STS configuration을 위해 벤더에 의해 정의된 임의의 값(arbitrary value)일 수 있다. STATIC_STS_IV는 vUpper64[63:16]을 설정하기 위해 사용되는 파라미터일 수 있다.
레인징 장치들의 식별자에 대한 파라미터(816)는 UWB 레인징을 수행하는 장치들 간 미리 정해진 identification(predefined ID)를 나타낼 수 있다. 예를 들어, 제1 전자 장치(201)와 제2 전자 장치(202)가 UWB 레인징을 수행하는 경우에, 레인징 장치들의 식별자에 대한 파라미터(816)는 제1 전자 장치(201)에 대한 식별자 및 제2 전자 장치(202)에 대한 식별자를 나타낼 수 있다. 레인징 장치(ranging device)는 RDEV로 지칭될 수도 있다.
phyVUpper64(808)와 phySlotCount(806)의 연속된 값을 포함하는 96 비트의 데이터는 도 5의 phyHrpUwbStsVUpper96 (502)에 맵핑될 수 있다. 예를 들어, phyVUpper64(808)는 phyHrpUwbStsVUpper96 (502)의 상위 64 비트에 대응되며, phySlotCount(806)는 phyHrpUwbStsVUpper96 (502)의 하위 32 비트에 대응될 수 있다.
phyStsKey(802)는 고정된(fixed) 키 값 또는 일정한(constant)한 키 값을 나타내는 파라미터일 수 있으며, 128 비트의 데이터를 포함할 수 있다. 동적 STS와는 달리, 정적 STS의 phyStsKey(802)는 보안 요소에 의해 생성되는 키 값이 아니라 FIRA 표준에서 정의된 키 값 또는 BLE advertising 패킷에 포함된 값이거나 QR 코드를 통해 얻어진 값을 의미할 수 있다. 구체적으로, 도 6을 참조하여 설명한 실시예에 따르면 보안 요소에서 매번 새롭게 생성되는 키 값을 이용하여 동적 STS가 생성되었지만, 도 8에 도시된 실시예에 따르면, 미리 정의된 키 값을 이용하여 정적 STS가 생성될 수 있다. 예를 들면, FIRA 표준에서 정의된 키 값이 이용될 수 있다.
phyStsKey(802)는 도 5의 phyHrpUwbStsKey(500)에 맵핑될 수 있다.
일 실시예에 따르면, 전자 장치는 보안 요소를 사용하지 않고 STS를 생성함으로써, 보안 요소로 인해 전자 장치의 복잡도가 증가하고 성능이 저하되는 문제를 해결할 수 있다.
일 실시예에 따르면, 보안 요소를 사용하지 않고, 미리 정해진 키 값을 사용하는 경우에 보안이 약화될 수 있는 문제는 슬롯마다 증가하는 카운터 값을 나타내는 슬롯 카운트 정보에 의해 방지될 수 있다. 슬롯 카운트 정보에 포함된 카운터 값의 초기 값을 외부에서 알기 어렵기 때문에 매 슬롯마다 증가되는 카운터 값을 사용하여 STS를 생성함으로써 미리 정해진 키 값을 사용함에 따라 예상되는 보안 문제를 방지할 수 있다.
뿐만 아니라, 전자 장치는 UCI를 통해 수신된 정보를 사용하여 STS를 생성할 수 있다. UCI를 통해 수신된 정보에 포함된 값은 벤더 또는 벤더에 의해 제공되는 서비스의 종류에 따라 변화할 수 있다. 따라서, 동시에 복수의 애플리케이션들을 실행하여 레인징을 수행하는 경우에 복수의 애플리케이션들 각각에 대응하는 UWB 레인징들이 구별될 수 있다.
phyStsVCounter(804)는 phyHrpUwbStsVCounter(504)에 맵핑되고, phySlotCount(806) 및 phyVUpper64(808)는 phyHrpUwbStsVUpper96(502)에 맵핑되며, phyStsKey(802)는 phyHrpUwbStsKey(500)에 맵핑될 수 있으며, 전자 장치는 전술한 맵핑 관계에 따라 맵핑된 값으로 DRBG의 입력 값을 초기화 한 이후 도 5에 따른 DRBG를 사용하여 정적 STS 생성을 수행할 수 있다.
본 개시의 일 실시예에 따르면, 전자 장치는 phyStsVCounter(804), phySlotCount(806), phyVUpper64(808) 및 phyStsKey(802)에 기초하여 정적 STS 생성을 수행할 수 있다.
UCI를 통해 호스트 디바이스로부터 수신된 phyVUpper64(808) 및 FIRA 표준에 의해 미리 정해진 값 또는 BLE advertising 패킷에 포함된 값이거나 QR 코드를 통해 얻어진 값인 phyStsKey(802)는 상수(constant value)일 수 있다. DRBG의 매 반복마다 증가하는 카운터 값을 포함하는 phyStsVCounter(804) 및 매 슬롯마다 증가하는 카운터 값을 포함하는 phySlotCount(806)는 변수(variable value)일 수 있다.
전자 장치는 변수에 해당하는 phyStsVCounter(804)의 경우에 매 슬롯마다 초기화할 수 있으며, 변수에 해당하는 phySlotCount(806)의 경우에 매 라운드마다 초기화할 수 있다. 전자 장치는 DRBG의 입력에 해당하는 파라미터들 중 변수에 해당하는 파라미터를 주기적으로 초기화함으로써 하나의 라운드에 포함된 복수의 슬롯들 마다 상이한 STS를 생성하는 동시에 복수의 라운드들 각각에 대응하는 STS 집합이 동일하도록 STS를 생성할 수 있다.
구체적으로, DRBG의 입력들 중에서 phyVUpper64(808) 및 phyStsKey(802)는 상수이며 phyStsVCounter(804)는 매 슬롯마다 초기화되므로, phyVUpper64(808), phyStsKey(802) 및 phyStsVCounter(804)는 매 슬롯마다 동일한 값을 가질 수 있다. phySlotCount(806)은 매 슬롯마다 증가하는 카운터 값을 포함하므로, 전자 장치에 의해 수행되는 정적 STS 생성은 phySlotCount(806)에 따라 매 슬롯마다 상이한 STS를 제공할 수 있다. 따라서, 하나의 라운드에 포함된 복수의 슬롯들에 각각 대응하는 복수의 제1 STS들은 서로 상이할 수 있다.
phySlotCount(806)은 매 라운드마다 초기화되므로 제1 라운드에 포함된 복수의 슬롯들에 각각 대응하는 복수의 제1 STS들의 집합은 제2 라운드에 포함된 복수의 슬롯들에 각각 대응하는 복수의 제2 STS들의 집합과 동일할 수 있다.
본 개시의 일 실시예에 따르면, 정적 STS 생성에 따라 라운드에 포함된 복수의 슬롯들 마다 상이한 STS가 생성될 수 있으므로, 신뢰성 있는 레인징이 담보될 수 있다. 또한, 복수의 라운드들 각각에 대응하는 STS 집합들이 서로 동일하므로, 보다 신속한 처리가 가능할 수 있다. 또한, 보안 요소 없이 미리 정해진 키 값을 사용하여 STS를 생성하므로 적은 비용 대비 높은 성능으로 레인징을 수행할 수 있다.
본 발명의 다른 일 실시예에 따르면, phySlotCount(806)는 고정된 값을 포함할 수 있다. 예를 들어, phySlotCount(806)는 슬롯마다 증가되는 카운터 값이 아니라 미리 정해진 값으로서 상수일 수 있다. 일 실시예에 따르면, DRBG의 입력들 중에서 phyVUpper64(808), phyStsKey(802) 및 phySlotCount(806)은 상수이며 phyStsVCounter(804)는 매 슬롯마다 초기화되므로, phyVUpper64(808), phyStsKey(802), phySlotCount(806) phyStsVCounter(804)는 매 슬롯마다 동일한 값을 가질 수 있다. 따라서, 전자 장치가 STS를 생성하기 위한 동작의 단순화가 극대화될 수 있다.
도 9는 본 개시의 일 실시예에 따른 전자 장치의 동작 방법을 나타내는 순서도이다.
단계 902에서, 전자 장치는 UCI를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신할 수 있다. 예를 들어, 상위 비트 정보는 벤더의 식별자를 나타내는 파라미터를 포함할 수 있다. 상위 비트 정보는 phyVUpper64를 포함할 수 있으며, 벤더의 식별자를 나타내는 파라미터는 VENDOR_ID를 포함할 수 있다.
단계 904에서, 전자 장치는 슬롯마다 상이한 STS를 생성하기 위한 슬롯 카운트 정보 및 일정한 키 값을 포함하는 키 정보를 획득할 수 있다. 슬롯 카운트 정보는 매 슬롯마다 '1'의 값만큼 증가하는 카운트 값을 포함할 수 있으며, 카운트 값은 매 라운드마다 초기화될 수 있다. 예를 들어, 슬롯 카운트 정보는 phySlotCount 또는 cryptoStsIndex 중 적어도 하나를 포함할 수 있다. 또한, 키 정보는 phyStsKey를 포함할 수 있다. 일정한 키 값을 포함하는 키 정보는 FIRA 표준에 의해 미리 정해진 값 또는 BLE advertising 패킷에 포함된 값이거나 QR 코드를 통해 얻어진 값을 포함할 수 있다. BLE advertising 패킷에 포함된 값 및 QR 코드를 통해 얻어진 값은 각각 UCI를 통해 호스트 디바이스와 전자 장치를 연결하는 제1 경로 및 제2 경로를 통해 각각 전송될 수 있다.
단계 906에서, 전자 장치는 상위 비트 정보, 슬롯 카운트 정보 및 키 정보에 기초하여 정적(static) STS 생성을 수행할 수 있다. 정적 STS 생성을 위해 DRBG가 사용되며, DRBG의 입력은 상위 비트 정보, 슬롯 카운트 정보 및 키 정보를 포함할 수 있다. DRBG의 입력은 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함할 수 있으며, STS 카운트 정보는 매 슬롯마다 초기화될 수 있다. 예를 들어, STS 카운트 정보는 phyStsVCounter를 포함할 수 있다.
본 개시의 일 실시예에 따른 전자 장치가 정적 STS 생성을 수행함에 따라 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고, 제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일할 수 있다.
도 10은 일 실시예에 따른 전자 장치의 블록도이다.
전자 장치(1002)는 프로세서(1004), 통신부(1006) 및 메모리(1008)을 포함할 수 있다. 그러나, 도 10에 도시된 구성 요소보다 많거나 적은 구성 요소에 의해 전자 장치(1002)가 구현될 수 있다.
도 10에서는 전자 장치(1002)가 하나의 프로세서를 포함하는 것으로 도시되었으나, 실시 예는 이에 제한되지 않으며, 전자 장치(1002)는 복수의 프로세서들을 포함할 수 있다. 이하, 서술되는 프로세서(1004)의 동작 및 기능들의 적어도 일부는 복수의 프로세서들에 의해 수행될 수 있다. 도 10에 도시된 전자 장치(1002)는, 본 개시의 다양한 실시 예들에 따른 동작 방법을 수행할 수 있으며, 도 1 내지 도 9에 대한 설명들이 적용될 수 있다.
본 개시의 일 실시 예에 따른 통신부(1006)는, 다른 디바이스 또는 네트워크와 유무선 통신을 수행할 수 있다. 이를 위해, 통신부(1006)는 다양한 유무선 통신 방법 중 적어도 하나를 지원하는 통신 모듈을 포함할 수 있다. 예를 들어, 통신 모듈은 칩셋(chipset)의 형태일 수도 있고, 또는 통신에 필요한 정보를 포함하는 스티커/바코드(e.g. NFC tag를 포함하는 스티커)등일 수도 있다.
무선 통신은, 예를 들어, 셀룰러 통신, Wi-Fi(Wireless Fidelity), Wi-Fi Direct, 블루투스(Bluetooth), UWB(Ultra Wide Band) 또는 NFC(Near Field Communication) 중 적어도 하나를 포함할 수 있다. 유선 통신은, 예를 들어, USB 또는 HDMI(High Definition Multimedia Interface) 중 적어도 하나를 포함할 수 있다.
일 실시 예에서 통신부(1006)는 근거리 통신(short range communication)을 위한 통신 모듈을 포함할 수 있다. 예를 들어, 통신부(1006)는 위에서 설명한 UWB, Wi-Fi, Wi-Fi Direct, 블루투스, NFC 외에 적외선 통신, MST(Magnetic Secure Transmission, 마그네틱 보안 통신과 같은 다양한 근거리 통신을 수행하기 위한 통신 모듈을 포함할 수 있다.
본 개시의 일 실시 예에 따른 통신부(1006)는 제1 통신 방식 또는 제2 통신 방식을 이용하여, 제2 전자 장치와 통신할 수 있다. 예를 들어, 제2 통신 방식은 UWB 통신 방식이고, 제1 통신 방식은 제2 통신 방식과 상이한 통신 방식일 수 있다. 예를 들어, 제1 통신 방식은 블루투스 통신 방식일 수 있으나, 이에 제한되지 않는다.
일 실시예에 따르면, 통신부(1006)는 UCI를 포함할 수 있으며, UCI를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신할 수 있다. 예를 들어, 상위 비트 정보는 벤더의 식별자를 나타내는 파라미터를 포함할 수 있다. 상위 비트 정보는 phyVUpper64를 포함할 수 있으며, 벤더의 식별자를 나타내는 파라미터는 VENDOR_ID를 포함할 수 있다.
본 개시의 일 실시 예에 따른 프로세서(1004)는, 메모리(1008)에 저장된 프로그램을 실행함으로써 전자 장치(1002)의 전체적인 동작을 제어하며, CPU, GPU 등과 같은 프로세서를 적어도 하나 이상 포함할 수 있다. 프로세서(1004)는 UWB 레인징을 수행하기 위하여 전자 장치(1002)에 포함된 다른 구성들을 제어할 수 있다.
일 실시예에 따르면, 프로세서(1004)는 슬롯마다 상이한 STS를 생성하기 위한 슬롯 카운트 정보 및 일정한 키 값을 포함하는 키 정보를 획득할 수 있다. 슬롯 카운트 정보는 매 슬롯마다 '1'의 값만큼 증가하는 카운트 값을 포함할 수 있으며, 카운트 값은 매 라운드마다 초기화될 수 있다. 예를 들어, 슬롯 카운트 정보는 phySlotCount 또는 cryptoStsIndex 중 적어도 하나를 포함할 수 있다. 또한, 키 정보는 phyStsKey를 포함할 수 있다.
프로세서(1004)는 상위 비트 정보, 슬롯 카운트 정보 및 키 정보에 기초하여 정적(static) STS 생성을 수행할 수 있다. 정적 STS 생성을 위해 DRBG가 사용되며, DRBG의 입력은 상위 비트 정보, 슬롯 카운트 정보 및 키 정보를 포함할 수 있다. DRBG의 입력은 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함할 수 있으며, STS 카운트 정보는 매 슬롯마다 초기화될 수 있다. 예를 들어, STS 카운트 정보는 phyStsVCounter를 포함할 수 있다.
본 개시의 일 실시예에 따른 프로세서(1004)가 정적 STS 생성을 수행함에 따라 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고, 제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일할 수 있다.
개시된 실시 예들은 컴퓨터로 읽을 수 있는 저장 매체(computer-readable storage media)에 저장된 명령어를 포함하는 S/W 프로그램으로 구현될 수 있다.
컴퓨터는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 개시된 실시 예에 따른 동작이 가능한 장치로서, 개시된 실시 예들에 따른 영상 전송 장치 및 영상 수신 장치를 포함할 수 있다.
컴퓨터로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
또한, 개시된 실시 예들에 따른 전자 장치 또는 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 단말(예로, 영상 전송 장치 또는 영상 수신 장치)로 구성되는 시스템에서, 서버의 저장매체 또는 단말의 저장매체를 포함할 수 있다. 또는, 서버 또는 단말과 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 단말 또는 제3 장치로 전송되거나, 제3 장치로부터 단말로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 단말 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시 예들에 따른 방법을 수행할 수 있다. 또는, 서버, 단말 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시 예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 단말이 개시된 실시 예들에 따른 방법을 수행하도록 제어할 수 있다.
또 다른 예로, 제3 장치가 컴퓨터 프로그램 제품을 실행하여, 제3 장치와 통신 연결된 단말이 개시된 실시 예에 따른 방법을 수행하도록 제어할 수 있다. 구체적인 예로, 제3 장치는 영상 전송 장치 또는 영상 수신 장치를 원격 제어하여, 패킹 영상을 전송 하거나 수신하도록 제어할 수 있다.
제3 장치가 컴퓨터 프로그램 제품을 실행하는 경우, 제3 장치는 서버로부터 컴퓨터 프로그램 제품을 다운로드하고, 다운로드된 컴퓨터 프로그램 제품을 실행할 수 있다. 또는, 제3 장치는 프리로드된 상태로 제공된 컴퓨터 프로그램 제품을 실행하여 개시된 실시 예들에 따른 방법을 수행할 수도 있다.
본 개시의 다양한 실시예들이 전술되었다. 전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시의 실시예들은 개시된 실시예들에 한정되는 것은 아니다. 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. UWB(Ultra Wide Band) 통신을 수행하는 전자 장치에 의해 수행되는 방법에 있어서,
    UCI(UWB Command Interface)를 통해 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신하는 단계;
    슬롯 카운트(slot count) 정보 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 획득하는 단계; 및
    상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보에 기초하여 정적(static) STS(Scrambled Timestamp Sequence) 생성을 수행하는 단계를 포함하는 방법.
  2. 제1 항에 있어서, 상기 상위 비트 정보는
    벤더(vendor)의 식별자를 나타내는 파라미터를 포함하는 방법.
  3. 제1 항에 있어서, 상기 슬롯 카운트 정보는
    매 슬롯(slot)마다 증가하는 카운트 값을 포함하는 방법.
  4. 제3 항에 있어서,
    상기 카운트 값은
    매 라운드(round)마다 초기화되는 방법.
  5. 제1 항에 있어서, 상기 정적 STS 생성을 위해 DRBG(Deterministic Random Bit Generator)가 사용되며,
    상기 DRBG의 입력은 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보를 포함하는 방법.
  6. 제5 항에 있어서, 상기 DRBG의 상기 입력은
    상기 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함하는 방법.
  7. 제6 항에 있어서,
    상기 STS 카운트 정보는 매 슬롯마다 초기화되는 방법.
  8. 제1 항에 있어서, 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고,
    제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일한 방법.
  9. UWB(Ultra Wide Band) 통신을 수행하는 전자 장치에 있어서,
    UCI(UWB Command Interface)를 통해, 미리 설정된 적어도 하나의 파라미터를 포함하는 상위 비트 정보를 수신하고,
    슬롯 카운트 정보 및 일정한(constant) 키(key) 값을 포함하는 키 정보를 획득하며,
    상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보에 기초하여 정적(static) STS(Scrambled Timestamp Sequence) 생성을 수행하는
    적어도 하나의 프로세서를 포함하는 전자 장치.
  10. 제9 항에 있어서, 상기 상위 비트 정보는
    벤더(vendor)의 식별자를 나타내는 파라미터를 포함하는 전자 장치.
  11. 제9 항에 있어서, 상기 슬롯 카운트 정보는
    매 슬롯(slot)마다 증가하는 카운트 값을 포함하는 전자 장치.
  12. 제11 항에 있어서,
    상기 카운트 값은
    매 라운드(round)마다 초기화되는 전자 장치.
  13. 제9 항에 있어서, 상기 적어도 하나의 프로세서는 상기 정적 STS 생성을 위한 DRBG(Deterministic Random Bit Generator)를 포함하고,
    상기 DRBG의 입력은 상기 상위 비트 정보, 상기 슬롯 카운트 정보 및 상기 키 정보를 포함하는 전자 장치.
  14. 제13 항에 있어서, 상기 DRBG의 상기 입력은
    상기 DRBG의 출력 횟수와 연관된 STS 카운트 정보를 더 포함하고,
    상기 STS 카운트 정보는 매 슬롯마다 초기화되는 전자 장치.
  15. 제9 항에 있어서, 복수의 라운드들 각각에 포함된 복수의 슬롯들 각각에 대응되는 STS들은 서로 상이하고,
    제1 라운드와 연관된 복수의 제1 STS들과 제2 라운드와 연관된 복수의 제2 STS들은 동일한 전자 장치.
KR1020227015742A 2019-12-10 2020-12-04 UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법 KR20220110732A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962945989P 2019-12-10 2019-12-10
US62/945,989 2019-12-10
PCT/KR2020/017682 WO2021118175A1 (ko) 2019-12-10 2020-12-04 UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20220110732A true KR20220110732A (ko) 2022-08-09

Family

ID=76330155

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227015742A KR20220110732A (ko) 2019-12-10 2020-12-04 UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법

Country Status (4)

Country Link
US (1) US11936771B2 (ko)
EP (1) EP4054114A4 (ko)
KR (1) KR20220110732A (ko)
WO (1) WO2021118175A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3866524B1 (en) * 2020-02-14 2023-11-15 Nxp B.V. Uwb communication node and system for facilitating a secure localization of uwb communication nodes
CN114222247B (zh) * 2022-01-28 2023-08-29 Oppo广东移动通信有限公司 Uwb测距方法、装置、终端设备及存储介质
US20230327854A1 (en) * 2022-04-12 2023-10-12 Huawei Technologies Co., Ltd. Methods, apparatuses, and computer-readable storage media for data authentication and error correction using error-tolerant message authentication code
CN117336662A (zh) * 2022-06-27 2024-01-02 华为技术有限公司 一种发起设备、响应设备和信息传输方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050100102A1 (en) 2003-08-04 2005-05-12 Gazdzinski Robert F. Error-corrected wideband holographic communications apparatus and methods
US7738569B2 (en) 2006-04-13 2010-06-15 Dell Products L.P. Ultra-wideband (UWB) secure wireless device pairing and associated systems
KR20090083957A (ko) * 2006-12-07 2009-08-04 인터디지탈 테크날러지 코포레이션 트레이닝 신호와 정보 비트들을 할당하기 위한 무선 통신 방법 및 장치
US8441393B2 (en) * 2010-02-10 2013-05-14 Tialinx, Inc. Orthogonal frequency division multiplexing (OFDM) radio as radar
US20180049196A1 (en) * 2016-08-09 2018-02-15 Qualcomm Incorporated Combination of single-tone and multiple-tone signaling in sidelink communications
EP3425867B1 (en) 2017-07-05 2021-01-13 Nxp B.V. Communication devices and associated method
US11223956B2 (en) * 2019-09-27 2022-01-11 Apple Inc. Dynamic data sequence puncturing

Also Published As

Publication number Publication date
EP4054114A4 (en) 2022-12-28
US11936771B2 (en) 2024-03-19
WO2021118175A1 (ko) 2021-06-17
EP4054114A1 (en) 2022-09-07
US20230014199A1 (en) 2023-01-19

Similar Documents

Publication Publication Date Title
KR20220110732A (ko) UWB(Ultra Wide Band) 통신 시스템에서 STS(Scrambled Timestamp Sequence)를 생성하기 위한 장치 및 방법
EP2807498B1 (en) Method, apparatus, and computer program product for short-range communication based direction finding
US10341979B2 (en) Secure fine timing measurement protocol
US20170289113A1 (en) Multi-Broadcast Beacon Signals
TWI724019B (zh) 用於測試低功率射頻(rf)資料封包信號收發器之方法
JP2020017947A (ja) 超広帯域セキュア測距
KR20210071540A (ko) UWB(Ultra Wide Band)를 통해 레인징을 수행하는 전자 디바이스 및 전자 디바이스의 동작 방법
CN105144641A (zh) 用于检测并解决冲突的系统和方法
CN113079508B (zh) 基于区块链网络的数据传输方法、装置及设备
KR20220104187A (ko) Uwb (ultra wideband)를 통해 데이터를 송수신하는 디바이스의 동작 방법 및 장치
KR20170014479A (ko) 사용자 디바이스와 페어링을 수행하기 위한 네트워크 장치 및 그 페어링 방법
CN109068284B (zh) 基于物联网设备之间群组连接的物理层认证方法及系统
CN105491562B (zh) 一种无线传感器网络抗攻击加密定位方法和装置
Yaseen et al. Marc: A novel framework for detecting mitm attacks in ehealthcare ble systems
CN108966232B (zh) 基于服务网络的无线物联网物理层混合认证方法及系统
CN109348477B (zh) 基于服务网络的无线物联网物理层认证方法
CN110460363B (zh) 用于灵活安全飞行时间测量的装置和方法
CN110662263B (zh) 用于采用相位跟踪传输安全测距分组的装置和方法
CN106576311B (zh) 用长程无线通信接口实现接近操作
US20220369103A1 (en) Method and apparatus for performing uwb secure ranging
Gullberg Denial of service attack on bluetooth low energy
US20200084606A1 (en) Method, apparatus and system of configuring wireless network node
KR20210007781A (ko) 무선 통신 시스템에서 UWB(Ultra Wide Band)를 통해 레인징을 수행하는 전자 디바이스 및 전자 디바이스의 동작 방법
EP4318351A1 (en) Payment method and device using ultra-wideband communication
US20220397659A1 (en) Method and device for performing uwb ranging

Legal Events

Date Code Title Description
A201 Request for examination