KR20210071815A - 전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법 - Google Patents

전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법 Download PDF

Info

Publication number
KR20210071815A
KR20210071815A KR1020200117043A KR20200117043A KR20210071815A KR 20210071815 A KR20210071815 A KR 20210071815A KR 1020200117043 A KR1020200117043 A KR 1020200117043A KR 20200117043 A KR20200117043 A KR 20200117043A KR 20210071815 A KR20210071815 A KR 20210071815A
Authority
KR
South Korea
Prior art keywords
key
secure
domain
electronic device
instance
Prior art date
Application number
KR1020200117043A
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 삼성전자주식회사
Priority to PCT/KR2020/017591 priority Critical patent/WO2021112603A1/en
Priority to CN202080082009.5A priority patent/CN114762290B/zh
Priority to EP23216092.9A priority patent/EP4312448A3/en
Priority to EP20896778.6A priority patent/EP4052414B1/en
Priority to US17/113,969 priority patent/US11563730B2/en
Publication of KR20210071815A publication Critical patent/KR20210071815A/ko
Priority to US18/100,251 priority patent/US20230155996A1/en

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/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/0827Key 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) involving distinctive intermediate devices or communication paths
    • 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/0825Key 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 asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3247Cryptographic 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 digital signatures
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/3271Cryptographic 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 challenge-response
    • H04L9/3273Cryptographic 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 challenge-response for mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/63Location-dependent; Proximity-dependent
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

일 실시예에 따라 전자 디바이스가 복수의 서비스들에 접근하기 위한 키(key)들을 관리하는 방법은, 상기 전자 디바이스의 보안 영역(Secure Area, SA)내의 보안 도메인(Secure Domain, SD)이 복수의 서비스 제공자(Service Provider, SP)들에게 상기 보안 도메인의 인증서를 전송하는 단계; 상기 전자 디바이스에 설치된 애플리케이션이 상기 복수의 SP들로부터 각 SP의 인증서를 수신하는 단계; 상기 애플리케이션이 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터(signed data)를 수신하는 단계; 상기 애플리케이션이 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계; 상기 보안 도메인이 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하는 단계; 및 상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 단계를 포함할 수 있다.

Description

전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법{METHOD AND ELECTRONIC DEVICE FOR MANAGING DIGITAL KEYS}
본 개시는 UWB 통신 방식을 이용하여 레인징을 수행하는 전자 디바이스 및 전자 디바이스의 동작 방법에 관한 것이다.
인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 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이상의 매우 넓은 주파수 대역을 사용하는 무선 통신 기술이다.
한편, 스마트 폰, 태블릿 PC와 같은 개인화된 전자 기기가 보급됨에 따라, 디지털 키를 이용한 보안, 인증 등을 수행하기 위한 기술이 개발되고 있다. 이러한 디지털 키 기술의 한 방안으로, NFC(Near Field Communication)와 같은 무선 통신 기술을 사용하여 디지털 키를 모바일 디바이스, 예를 들어, 스마트 폰에 통합되는 형태의 기술이 개발되고 있다. 즉, 디지털화 된 가상의 키, 즉. 디지털 키가 모바일 디바이스에 삽입되고, 모바일 디바이스의 사용자는 이러한 디지털 키를 이용함으로써 사용자는 문 개폐, 제어 및 액세스 등을 위해서 물리적인 키를 디지털 키로 대체할 수 있을 것이다.
이와 같이, 디지털 키의 사용은 사용자 편의 및 산업적 효과에 있어 큰 개선을 가져올 수 있는 반면, 보안에 대한 우려 역시 제기되고 있다. 즉, 디지털 키는 기본적으로 전자 디바이스와의 결합을 필요로 하므로, 전자 디바이스에 대한 해킹 등과 같은 악의적인 사용에 노출될 수 있다. 따라서, 디지털 키를 전자 디바이스에 안전하게 저장하고 접근하기 위한 기술이 필요하다.
업체별로 관리하고 있는 디지털 키들을 통합 관리함으로써 상호 호환성을 향상시키되 보안성을 확보할 수 있는 디지털 키들을 관리하는 방법이 요구된다.
본 개시의 일 실시예에 따라 전자 디바이스가 복수의 서비스들에 접근하기 위한 키들을 관리하는 방법은, 상기 전자 디바이스의 보안 영역(Secure Area, SA)내의 보안 도메인(Secure Domain, SD)이 복수의 서비스 제공자(Service Provider, SP)들에게 상기 보안 도메인의 인증서를 전송하는 단계; 상기 전자 디바이스에 설치된 프레임워크가 상기 복수의 SP들로부터 각 SP의 인증서를 수신하는 단계; 상기 프레임워크가 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터(signed data)를 수신하는 단계; 상기 프레임워크가 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계; 상기 보안 도메인이 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하는 단계; 및 상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 단계를 포함할 수 있다.
본 개시의 다른 일 실시예에 따른 전자 디바이스는, 상기 전자 디바이스가 복수의 서비스들에 접근하기 위한 키들을 저장하는 보안 영역; 및 상기 보안 영역에 연결되고, 메모리에 저장된 프로그램 명령어들을 실행하는 프로세서를 포함하고, 상기 보안 영역 내의 보안 도메인이 복수의 서비스 제공자들에게 상기 보안 도메인의 인증서를 전송하고, 상기 프로세서는, 상기 전자 디바이스에 설치된 프레임워크가 상기 복수의 SP들로부터 각 SP의 인증서를 수신하고, 상기 프레임워크가 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터를 수신하고, 상기 프레임워크가 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하도록, 상기 프레임워크를 제어하고, 상기 보안 도메인은, 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하고, 상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 것을 특징으로 할 수 있다.
본 개시의 일 실시예에 따라 전자 디바이스가 복수의 서비스들에 접근하기 위한 키들을 관리하는 방법을 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체에 있어서, 상기 방법은, 상기 전자 디바이스의 보안 영역 내의 보안 도메인이 복수의 서비스 제공자들에게 상기 보안 도메인의 인증서를 전송하는 단계; 상기 전자 디바이스에 설치된 프레임워크가 상기 복수의 SP들로부터 각 SP의 인증서를 수신하는 단계; 상기 프레임워크가 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터를 수신하는 단계; 상기 프레임워크가 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계; 상기 보안 도메인이 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하는 단계; 상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 단계를 포함할 수 있다.
도 1은 접근 서비스 제공에 있어서 발생할 수 있는 보안 위협을 도시한다.
도 2는 업체별로 별도의 키 및 별도의 보안 영역을 이용하는 디지털 키 관리 시스템을 도시한다.
도 3은 기존의 인스턴스 생성 방법과 본 개시의 일 실시예에 따른 인스턴스 생성 방법의 차이점을 설명하기 위한 도면이다.
도 4a는 본 개시의 일 실시예에 따른 키 관리 시스템의 보안 영역의 구성을 도시한다.
도 4b는 본 개시의 일 실시예에 따른 키 관리 시스템의 구성을 도시한다.
도 5는 본 개시의 일 실시예에 따른 키 관리 시스템의 동작 방법의 흐름도를 도시한다.
도 6은 본 개시의 일 실시예에 따른 전자 디바이스가 키들을 관리하는 방법의 흐름도를 도시한다.
도 7은 본 개시의 일 실시예에 따른 전자 디바이스의 동작 방법의 구체적인 흐름도를 도시한다.
도 8은 본 개시의 일 실시예에 따른 전자 디바이스의 동작 방법의 구체적인 흐름도를 도시한다.
도 9는 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스를 생성하는 방법의 흐름도를 도시한다.
도 10은 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스에 저장되는 컨텐츠를 관리하는 방법의 흐름도를 도시한다.
도 11은 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스에 저장되는 컨텐츠를 관리하는 방법의 흐름도를 도시한다.
도 12는 기존의 CASD(Controlling Authority Security Domain)를 이용하여 키를 관리하는 방법과 본 개시의 일 실시예에 따른 키 관리 방법의 차이점을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 키 관리 시스템이 보안 레인징을 수행하는 방법의 흐름도를 도시한다.
도 14는 본 개시의 일 실시예에 따른 전자 디바이스의 블록도를 도시한다.
도 15는 본 개시의 일 실시예에 따른 보안 영역의 블록도를 도시한다.
도 16은 본 개시의 일 실시예에 따른 전자 디바이스의 동작을 설명하기 위한 도면이다.
아래에서는 첨부한 도면을 참조하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 개시의 실시 예를 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 또한, 도면에서 본 개시를 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에서 사용되는 용어는, 본 개시에서 언급되는 기능을 고려하여 현재 사용되는 일반적인 용어로 기재되었으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 다양한 다른 용어를 의미할 수 있다. 따라서 본 개시에서 사용되는 용어는 용어의 명칭만으로 해석되어서는 안되며, 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 해석되어야 한다.
또한, 제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) 등이 있다.
이러한 무선 네트워크 기술이 구현되는 무선 네트워크는 다수 개의 통신 전자 장치들로 이루어질 수 있다. 이 때 다수 개의 통신 전자 장치들은 단일 채널(channel)을 이용하여 액티브 구간(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, 데스크탑 컴퓨터, 냉장고, 프로젝터, 자동차, 스마트 카, 프린터 등을 포함할 수 있으며, 이러한 예에 제한되지 않는다.
본 개시의 다양한 실시 예들은 D2D(Device-to-Device) 통신에 기초한 매체 접근 제어(medium access control, MAC)에 관한 기술이다.
D2D 통신이란 기지국과 같은 인프라를 거치지 않고 지리적으로 근접한 전자 디바이스들이 직접적으로 통신하는 방식을 말한다. 전자 디바이스들은 1:1, 1:다(多), 다(多):다(多)로 통신할 수 있다. D2D 통신은 와이파이 다이렉트(Wi-Fi Direct), 블루투스(bluetooth)와 같이 비면허 주파수 대역을 사용할 수 있다. 또는, D2D 통신은 면허 주파수 대역을 활용하여 셀룰러 시스템의 주파수 이용 효율을 향상시킬 수도 있다. D2D 통신은 사물과 사물 간의 통신이나 사물 지능 통신을 지칭하는 용어로 제한적으로 사용되기도 하지만, 본 개시에서의 D2D 통신은 통신 기능이 장착된 단순한 전자 디바이스는 물론, 스마트 폰이나 개인용 컴퓨터와 같이 통신 기능을 갖춘 다양한 형태의 전자 디바이스들 간의 통신을 모두 포함할 수 있다.
본 개시의 다양한 실시 예들은 상술한 D2D 통신에 기초한 매체 접근 제어에 관한 것으로서, 매체 접근 제어를 위해서는 전자 디바이스들 간의 거리가 측정될 필요가 있다. 이때, 전자 디바이스들 간의 거리를 측정하기 위하여 UWB 레인징(ranging) 기술이 사용될 수 있다. 예를 들어, 차량 문의 개폐를 위해 스마트 폰에 저장된 디지털 키를 이용하는 경우, 차량은 UWB 통신 모듈을 활용해 스마트폰과 차량과의 거리를 각각 측정한 후, 측정 결과에 기초하여 스마트 폰의 위치를 추정할 수 있다. 차량과 스마트 폰은 멀티캐스트 레인징 또는 브로드캐스트 레인징을 이용할 수 있다.
이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.
도 1은 접근 서비스 제공에 있어서 발생할 수 있는 보안 위협을 도시한다.
도 1에 도시된 바와 같이, 정당 사용자(Legitimate user)(10)와 접근 서비스 제공 디바이스(20)는 D2D 통신을 이용하여 인증을 수행하고 레인징을 수행할 수 있다. 이 때, 정당 사용자(10)와 접근 서비스 제공 디바이스(20)의 레인징 결과 값에 의해 자격(authentication)이 보장되는 경우, 보안 공격(security attack) 가능성이 존재한다는 문제점이 있다. 구체적으로, 공격자(Attacker)(30)는 정당 사용자(10)로부터 전송되는 신호를 기록(record)하여 접근 서비스 제공 디바이스(20)에게 재생(replay)함으로써, 레인징 과정을 공격할 수 있다. 공격자(30)는 기록된 신호를 재생함으로써, 마치 정당 사용자(10)가 접근 권한이 부여되는 범위(range) 내에 존재하는 것처럼 접근 서비스 제공 디바이스(20)가 착각하게 하여, 접근 서비스 제공 디바이스(20)에 대한 접근 권한을 획득할 수 있다.
따라서, 접근 서비스 제공에 있어서 발생할 수 있는 보안 위협을 줄이기 위하여, 미리-공유된 키(pre-shared key)에 기초한 보안 프로토콜을 구성하는 것이 요구될 수 있다. 미리-공유된 키에 기초한 보안 프로토콜에 따르면, 미리-공유된 키를 이용하여 암호화된 데이터를 주고받음으로써, 레인징 보안 레벨을 향상시킬 수 있다.
접근 서비스 제공자(Access service provider)들 각각은 독자적인 대칭 키(symmetric key) 기반의 보안 채널(secure channel) 생성 방식을 보유함으로써 보안성을 확보할 수 있다. 따라서, 보안 채널을 생성하기 위해 이용되는 보안 키는 다른 엔티티(예를 들어, 다른 접근 서비스 제공자, 다른 업체, 다른 서버 등)와 공유하여서는 안되는 핵심 자산으로 여겨진다.
모바일 디바이스 기반의 접근 서비스를 안전하게 제공하기 위하여, 모바일 디바이스는 모바일 디바이스 내의 보안 영역(예를 들어, 보안 요소(secure element), TEE(Trusted Execution Environment) 등)내에 중요 정보(예를 들어, 보안 채널을 생성하기 위해 이용되는 키)를 저장한다. TEE는, 일반 영역(normal area)과 보안 영역(secure area)이 분리된 프로세서에서, 보안 영역이 제공하는 안전한 실행 환경을 의미할 수 있다. 종래에는 접근 서비스와 관련된 중요 정보가 저장되는 보안 영역은, 해당 접근 서비스를 제공하는 제공자의 애플리케이션의 접근만을 허용하였다. 따라서, 종래에는, 모바일 디바이스가 다수 개의 접근 서비스들을 이용하여야 하는 경우, 모바일 디바이스가 각 접근 서비스 별로 애플리케이션을 설치해야 한다는 번거로움이 있었다.
한편, 보안 채널을 이용한 통신 방식은, 모바일 디바이스가 접근 서비스에 안전하게 접근하기 위한 방법으로서, 해당 통신 구간을 보호하기 위한 키 값을 외부에 노출시키지 않은 상태로 빠르고 안전한 보안 세션을 생성하는 것이 필요하다.
예를 들어, UWB 보안 레인징을 위해서, UWB 세션 키를 포함하는 주요 UWB 파라미터들이 블루투스 레벨의 보안 채널을 통해 교환될 수 있다. 보안 채널을 생성하기 위해 이용되는 키 값은 접근 서비스 제공에 있어서 중요 자산으로 분류되므로, 접근 서비스 제공자들에 따라 자체적인 보안 채널 생성 방식을 보유할 수 있다.
도 2는 업체별로 별도의 키 및 별도의 보안 영역을 이용하는 일반적인 디지털 키 관리 시스템을 도시한다.
A 회사의 백엔드(Backend) 서버(21)는, 모바일 디바이스(200)의 보안 영역(210) 내의 보안 영역(203)에 키를 발행하여 저장할 수 있다. 이 때, A 회사가 제공하는 전용 애플리케이션(201)만이 A 회사가 제공하는 애플릿(또는, 신뢰할 수 있는 애플리케이션(Trusted Application, TA))가 설치된 보안 영역(203)에 접근하여 저장된 키를 이용할 수 있다.
모바일 디바이스(200)의 보안 영역(210)은 보안 영역(203)에 저장된 키를 이용하여 A 회사와 관련된 접근 서비스를 제공하는 디바이스(23)와 보안 통신을 수행할 수 있다.
한편, B 회사의 백엔드 서버(22)는, 모바일 디바이스(200)의 보안 영역(210) 내의 별도의 보안 영역(204)에 별도의 키를 발행하여 저장할 수 있다. B 회사가 제공하는 전용 애플리케이션(202)만이 B 회사가 제공하는 애플릿(또는, TA)가 설치된 보안 영역(204)에 접근하여 저장된 키를 이용할 수 있다.
모바일 디바이스(200)의 보안 영역(210)은 보안 영역(204)에 저장된 키를 이용하여 B 회사와 관련된 접근 서비스를 제공하는 디바이스(24)와 보안 통신을 수행할 수 있다.
A 회사와 B 회사는 각각 별도의 보안 영역을 활용하여 별도의 키를 관리하기 때문에, B 회사 애플리케이션(202)은 A회사의 백엔드 서버(21)가 생성한 보안 영역(203)에 접근할 수 없다. 따라서, A 회사와 B 회사는 각각 별도의 보안 영역을 활용함으로써 보안성을 확보할 수 있다.
다만, 도 2에 도시된 바와 같이, 업체 별로 별도의 애플릿을 이용하여 키를 관리할 경우, 소정 회사가 제공하는 애플리케이션(또는, 프레임워크)이 다른 회사가 제공하는 서비스와 관련된 보안 영역에 접근할 수 없어 사용성이 저하될 수 있다는 문제점이 있다.
도 3은 기존의 인스턴스 생성 방법과 본 개시의 일 실시예에 따른 인스턴스 생성 방법의 차이점을 설명하기 위한 도면이다.
도 3의 보안 영역(310)에 도시된 바와 같이, 서비스 제공자들이 서로 다른 보안 도메인들(SD A, SD B) 각각에 각 서비스 제공자의 애플릿을 설치할 경우, 하나의 보안 도메인에 대해서는 하나의 애플리케이션만이 접근 가능하다. 따라서, 하나의 애플리케이션이 다른 보안 도메인 내의 인스턴스에 저장된 키에 접근할 수 없으므로, 하나의 애플리케이션을 통해 복수의 접근 서비스들에 접근하는 것은 불가능하여 호환성이 떨어진다.
반면에, 호환성을 높이기 위하여 서비스 제공자들이 발행한 키들을 같은 보안 영역 내에 저장할 경우, 예를 들어, plaintext recovery attack과 같은 보안상 문제점이 발생할 수 있다. 악의적인 서비스 제공자의 애플릿과 정직한 서비스 제공자의 애플릿이 같은 보안 영역 내에 저장될 경우, 악의적인 서비스 제공자가 정직한 서비스 제공자의 암호화 메시지를 가로챔으로써 암호화 메시지 내에 숨겨진 비밀 쿼리(secret query)를 추측하는 데 성공할 가능성이 있다.
따라서, 호환성과 보안성을 모두 확보하기 위하여, 본 개시의 일 실시예에 따르면, 하나의 보안 도메인에 대해 동일한 코드를 기반으로 복수의 인스턴스들을 생성하고, 각 인스턴스에 할당된 별도의 보안 영역에 키를 저장하여 관리할 수 있는 방법이 제공된다.
도 3의 보안 영역(340)에 도시된 바와 같이, 일 실시예에 따른 보안 영역(340)은, eSE(320) 및/또는 TEE(330)를 포함할 수 있다. 일 실시예에 따른 eSE(320) 내에, 하나의 보안 도메인 내에 설치된 애플릿에 대해 동일한 애플릿(또는, 코드)를 기반으로 복수의 인스턴스들이 생성되고, 각 인스턴스에 할당된 별도의 보안 영역에 키들이 저장되고 관리될 수 있다. 일 실시예에 따른 TEE(320) 내에, 하나의 보안 도메인 내에 설치된 TA에 대해 동일한 TA(또는, 코드)를 기반으로 복수의 프로세스들이 생성되고, 각 프로세스에 할당된 별도의 보안 영역에 키들이 저장되고 관리될 수 있다.
또한, 본 개시의 일 실시예에 따르면, 접근 서비스 업체 별로 관리하고 있는 보안 키를 활용하여 안전하게 보안 채널을 생성하되, 각 업체별 보안 키에 접근할 수 있는 하나의 애플리케이션(또는, 프레임워크)이 제공됨으로써, 키 관리의 호환성을 높일 수 있는 방법이 제공된다. 또한, 본 개시의 일 실시예에 따르면, 각 접근 서비스 제공자들 별로 별도의 보안 영역을 제공함으로써, 보안 채널이 안전하게 구성될 수 있는 방법이 제공된다. 또한, 본 개시의 일 실시예에 따르면, 보안 채널을 통해 UWB 보안 레인징이 안전하게 수행될 수 있는 방법이 제공된다.
도 4a는 본 개시의 일 실시예에 따른 키 관리 시스템의 보안 영역의 구성을 도시한다.
도 4a에 도시된 바와 같이, 일 실시예에 따른 보안 영역(430)은, 종류에 따라 보안 요소(SE) 및 신뢰 실행 환경(TEE)으로 나뉠 수 있다. 일 실시예에 따른 보안 요소(SE) 내에는, 애플릿이 설치되고, 애플릿 내에 적어도 하나의 인스턴스가 생성되어 키를 저장할 수 있다. 일 실시예에 따른 신뢰 실행 환경 내에는, 신뢰할 수 있는 어플리케이션(Trusted Application, TA)가 설치되고, TA 내에 적어도 하나의 프로세스(또는, 인스턴스)가 생성되어 키를 저장할 수 있다.
도 4a에 도시된 바와 같이, SE와 TEE는 특징이 다를 뿐, 구조적으로 동일한 보안 영역일 수 있다. 이하에서는, 설명의 편의를 위하여 전자 디바이스가 보안 영역으로서 SE를 포함하는 경우를 예로 들어 설명한다. 그러나 본 개시는 SE에서 키를 관리하는 실시예에 제한되지 않으며, TEE 내에 설치된 TA에서 키를 관리하는 경우에도 동일하게 적용될 수 있다. 따라서, 이하의 설명에서 SE 및 SE의 애플릿에서 수행되는 동작은 TEE 및 TA에서 수행될 수 있고, 중복되는 설명은 생략한다.
도 4b는 본 개시의 일 실시예에 따른 키 관리 시스템의 구성을 도시한다.
본 개시의 일 실시예에 따른 키 관리 시스템에 포함되는 서비스 제공 서버(Provisioning Server)(41)는, 프레임워크(411)를 통해 보안 영역(430) 내에 보안 도메인을 설치하고, 공통의 애플릿(또는, TA)(431)을 기반으로 업체별로 인스턴스를 할당함으로써 내부적으로 보안 영역들을 분리할 수 있다. 본 개시의 일 실시예에 따른 프레임워크(411)는 공통의 애플릿(또는, TA)(431)에 할당된 보안 영역들에 공통적으로 접근할 수 있다. 각 업체는, 인스턴스에 할당된 보안 영역 내에 중요 정보(예를 들어, 보안 채널용 키)를 자체적으로 저장함으로써, 분리된 보안 영역을 사용할 수 있다.
프레임워크(411)는, 모바일 어플리케이션이 동작할 수 있는 기능을 API(Application Programming Interface) 형태로 제공하는 S/W 및/또는 H/W 환경을 의미한다. 예를 들어, 프레임워크(411)는, 안드로이드에 탑재되는 SDK(System Development Kit) 혹은 애플리케이션일 수 있다. 프레임워크(411)는 디지털 키 관리 서비스를 제공하는 애플리케이션일 수 있다. 프레임워크(411)는, 외부 엔티티(예를 들어, 제공 서버, 소정 업체의 백엔드 서버, 서비스 제공자 서버 등)가 접근할 수 있는 API를 제공하고, 보안 영역(430)에 접근(access)을 위한 엑세스 컨트롤 및 명령어(command) 변환 등과 같은 기능을 제공할 수 있다.
예를 들어, 본 개시의 일 실시예에 다른 전자 디바이스(400)의 보안 영역(430) 내에는, 디지털 키 관리를 위하여 FiRa 컨소시엄에서 제시하는 공통의 애플릿(또는 TA)가 설치될 수 있다. 인스턴스는, 애플릿이 보안 도메인에 의해 설치(install) 및 등록(register) 되어 실제로 동작하는 프로그램을 의미할 수 있다. 애플릿이 실제로 레지스트리(registry)에 등록 및 설치되어 동작하면, 애플릿을 인스턴스라고 지칭할 수 있다. 일반적으로 애플릿 하나에 대하여 인스턴스 하나가 로드(load) 되나, 본 발명에서는 공통의 애플릿에 대해서 복수의 인스턴스들을 할당함으로써 안전하게 복수의 키들을 관리할 수 있다.
본 개시의 일 실시예에 따른 보안 도메인은, 보안 영역에 설치되어 애플릿에 대한 통제, 관리, 보안 등을 담당하는 애플리케이션을 의미한다. 본 개시의 일 실시예에 따른 전자 디바이스(400)는, 각 인스턴스에 대해 저장된 중요 정보를 기반으로, 접근 서비스 제공 디바이스들(43, 45) 각각과 보안 통신 및 보안 레인징을 수행할 수 있다. 접근 서비스 제공 디바이스들(43, 45)은, 예를 들어, 도어락과 같이, 물리적 접근 서비스를 제공하는 실제 단말일 수 있다. 전자 디바이스(400)는, 블루투스 통신 모듈(413)을 이용하여 접근 서비스 제공 디바이스들(43, 45) 중 하나와 보안 통신을 수행하고, UWB 통신 모듈(415)을 이용하여 접근 서비스 제공 디바이스들(43, 45) 중 하나와 보안 레인징을 수행할 수 있다. 전자 디바이스(400)가 보안 레인징을 수행함에 있어서, SUS(Secure UWB Service) 애플릿(433)은 UWB 모듈(415)과 보안 영역(430) 사이의 암호화 통신을 지원할 수 있다.
도 5는 본 개시의 일 실시예에 따른 키 관리 시스템의 동작 방법의 흐름도를 도시한다.
단계 S510에서 본 개시의 일 실시예에 따르면, 보안 영역 발급자(secure area issuer)는 전자 디바이스의 보안 영역 내에 보안 도메인을 설치하고, 복수의 서비스 제공자(Service Provider, SP)들에 대응하는 복수의 인스턴스들을 생성할 수 있다. 보안 영역 발급자는, 예를 들어, TEE 관리자(TEE administrator) 및/또는 보안 요소 발급자(Secure Element Issuer, SEI)를 포함할 수 있다.
서비스 제공자는, 전자 디바이스의 보안 영역 내에 설치되는 애플릿을 활용하는 주체로서, 접근 서비스를 제공하는 업체의 백엔드 서버를 의미할 수 있다. 서비스 제공자는, 전자 디바이스에게 접근 서비스를 제공하기 위하여 전자 디바이스에 설치되는 애플리케이션을 제공하는 애플리케이션 제공자 서버일 수도 있다.
단계 S520에서 본 개시의 일 실시예에 따르면, 각 서비스 제공자는 각 인스턴스에 저장되는 컨텐츠를 관리할 수 있다. 각 인스턴스에 저장되는 컨텐츠는, 예를 들어, 서비스 제공자가 발행하는 보안 키를 포함할 수 있다. 요소 내에 설치된 공통의 애플릿 내에 할당된 복수의 인스턴스들 각각에 서비스 제공자로부터 발행된 키가 저장될 수 있다.
단계 S530에서 전자 디바이스의 보안 영역 내에 설치된 애플릿과 접근 서비스 제공 디바이스 간에 보안 채널이 셋업될 수 있다. 예를 들어, 전자 디바이스는, 인스턴스에 저장된 키를 이용하여 인스턴스와 접근 서비스 제공 디바이스 간에 상호 인증을 수행하고 블루투스 레벨의 보안 채널을 셋업할 수 있다.
단계 S540에서 전자 디바이스의 보안 영역 내의 인스턴스와 접근 서비스 제공 디바이스 간에 UWB 세션 키가 셋업될 수 있다. 단계 S530에서 생성된 보안 채널을 활용하여 UWB 세션 키가 생성될 수 있다. UWB 세션 키의 생성과 관련된 구체적인 실시예는 도 7 및 도 8을 참조하여 후술한다.
이하에서는, 도 6을 참조하여 본 개시의 일 실시예에 따른 전자 디바이스가 복수의 서비스들에 접근하기 위한 키들을 관리하는 구체적인 방법을 설명한다.
단계 S610에서 일 실시예에 따른 전자 디바이스(400)의 보안 영역 내에 설치된 보안 도메인은, 복수의 서비스 제공자들에게 보안 도메인의 인증서를 전송할 수 있다.
보안 도메인이 보안 도메인의 인증서를 전송하기에 앞서, 일 실시예에 따른 전자 디바이스(400)에 설치된 프레임워크는, 보안 영역 내에 보안 도메인을 설치할 수 있다. 프레임워크는, 보안 영역 발급자로부터 수신된 정보에 기초하여, 보안 영역 내에 보안 도메인을 생성할 수 있다. 프레임워크는, 보안 도메인을 인스턴스화(instantiate) 함으로써 복수의 인스턴스들을 생성할 수 있다. 복수의 인스턴스들은 복수의 SP들에 대응할 수 있다. 인스턴스를 생성하는 구체적인 방법은 도 9를 참조하여 후술한다.
일 실시예에 따른 전자 디바이스(400)는, 보안 도메인의 공개 키를 포함하는 인증서를 복수의 서비스 제공자들에게 전송할 수 있다.
단계 S620에서 일 실시예에 따른 전자 디바이스(400)에 설치된 프레임워크는 복수의 SP들로부터 각 SP의 인증서를 수신할 수 있다.
일 실시예에 따른 전자 디바이스(400)는, 복수의 SP들 각각으로부터 각 SP의 공개 키를 포함하는 인증서를 수신할 수 있다.
단계 S630에서 일 실시예에 따른 전자 디바이스(400)에 설치된 프레임워크는 복수의 SP들 중 제1 SP로부터 제1 서명 데이터(signed data)를 수신할 수 있다.
제1 SP로부터 수신되는 제1 서명 데이터는, 보안 도메인의 공개 키를 이용하여 암호화된 제1 SP 키, 및 제1 SP의 개인 키를 이용한 서명을 포함할 수 있다. 제1 SP는, 미리 저장되어 있던 보안 도메인의 공개 키를 이용하여 제1 SP 키를 암호화 하고, 암호화된 제1 SP 키에 대해서 제1 SP의 개인 키를 이용하여 서명할 수 있다. 제1 SP 키는, 1 제1 SP가 보안 채널을 통해 접근 서비스를 제공하기 위해 이용하는 대칭 키일 수 있다.
단계 S640에서 일 실시예에 따른 전자 디바이스(400)에 설치된 프레임워크는 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 제1 서명 데이터를 인증하고, 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득할 수 있다.
일 실시예에 따른 프레임워크는, 제1 SP의 공개 키를 이용하여 제1 서명 데이터를 인증하고, 인증된 데이터로부터 암호화된 제1 SP 키를 획득할 수 있다.
단계 S650에서 일 실시예에 따른 전자 디바이스(400)의 보안 영역 내의 보안 도메인은, 프레임워크로부터 암호화된 제1 SP 키를 수신하고, 보안 도메인의 개인 키를 이용하여 암호화된 제1 SP 키를 암호해독할 수 있다.
단계 S660에서 일 실시예에 따른 전자 디바이스(400)의 보안 영역 내의 보안 도메인은, 보안 도메인의 복수의 인스턴스들 중 제1 SP에 대응하는 제1 인스턴스에 할당된 보안 영역에 암호 해독된 제1 SP 키를 저장할 수 있다.
일 실시예에 따른 전자 디바이스(400)는, 서비스 제공자 별로 인스턴스를 생성하며, 각 인스턴스에 대응되는 서비스 제공자의 키를 저장할 수 있다. 서비스 제공자들 각각은, 전자 디바이스의 인스턴스에 키를 전달함으로써, 안전하게 키를 관리할 수 있다.
일 실시예에 따른 프레임워크는, 복수의 SP들 중 제2 SP로부터 제2 서명 데이터를 수신할 수 있다. 프레임워크는 제2 SP로부터 수신된 제2 SP 인증서를 이용하여, 제2 서명 데이터를 인증하고, 제2 서명 데이터로부터 암호화된 제2 SP 키를 획득할 수 있다. 보안 도메인은, 프레임워크로부터 암호화된 제2 SP 키를 수신하고, 보안 도메인의 개인키를 이용하여 암호화된 제2 SP 키를 암호해독할 수 있다. 보안 도메인은, 보안 도메인의 복수의 인스턴스들 중 제2 SP에 대응하는 제2 인스턴스에 할당된 보안 영역에 암호 해독된 제2 SP 키를 저장할 수 있다.
상술한 바와 같이, 본 개시의 일 실시예에 따른 키 관리 시스템은, 각 서비스 제공자들 별로 인스턴스를 할당함으로써, 전자 디바이스의 보안 영역 내의 별도의 보안 영역을 확보함으로써 보안성을 보장할 수 있다.
따라서, 본 개시의 일 실시예에 따른 전자 디바이스(400)는, 제1 인스턴스에 저장된 제1 SP 키를 이용하여, 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업할 수 있다. 예를 들어, 전자 디바이스(400)와 제1 디바이스는 블루투스 통신 방식을 이용하여 보안 채널을 셋업할 수 있다.
전자 디바이스(400)의 제1 인스턴스는, 제1 SP키를 이용하여 세션 키를 생성하고, 보안 채널을 통해 제1 디바이스와 세션 키를 교환할 수 있다. 또한, 전자 디바이스(400)의 제1 인스턴스는, 블루투스 보안 채널을 통해 세션 키와 더불어 UWB 파라미터를 교환할 수 있다.
본 개시의 일 실시예에 따른 전자 디바이스(400)는, UWB 세션 키 생성을 위한 입력 값으로서 세션 키를 활용함으로써 UWB 레인징의 보안 레벨을 높일 수 있다. 일 예로서, 전자 디바이스(400)는, 제1 SP 키를 이용하여 생성된 세션 키를 이용하여, UWB 세션 키를 직접 생성할 수 있다. 다른 예로서, 전자 디바이스(400)는, 제1 SP 키를 이용하여 생성된 세션 키에 기초하여 제1 디바이스에서 생성된 UWB 세션 키를 수신할 수 있다.
전자 디바이스(400)는, UWB 세션 키를 이용하여 생성된 STS(scrambled timestamp sequence) 코드를 포함하는 레인징 프레임을 송수신함으로써 레인징을 수행할 수 있다. 전자 디바이스(400)는, UWB 통신 방식을 이용하여 레인징 프레임을 송수신할 수 있다.
STS는, 레인징에 참여하는 두 전자 디바이스들 만이 아는 암호화 시퀀스(cipher sequence)이다. 두 전자 디바이스들은, 난수생성기 (Deterministic Random Bit Generator; DRBG)를 이용하여 UWB 세션키로부터 각각 STS를 계산할 수 있다. 트랜스미터(transmitter) 역할을 하는 전자 디바이스가 STS를 포함한 레인징 프레임을 전송하게 되면, 리시버(receiver) 역할을 하는 전자 디바이스는, 수신된 STS와 직접 계산한 STS가 동일한 값인지 검증할 수 있다. 수신된 STS와 직접 계산한 STS가 동일한 값인 것으로 검증되는 경우, 리시버 역할을 하는 전자 디바이스는 수신된 정보를 신뢰하고, 레인징에 사용함으로써 보안 레인징을 수행할 수 있다.
도 7은 본 개시의 일 실시예에 따른 전자 디바이스의 동작 방법의 구체적인 흐름도를 도시한다.
단계 711에서 보안 영역 발급자에 의해 전자 디바이스(400)의 보안 영역 내에 보안 도메인이 설치될 수 있다. 단계 713에서 전자 디바이스(400)의 프레임워크는, 보안 도메인에서 사용할 키 값을 보안 영역 발급자로부터 수신하여 보안 도메인에 저장할 수 있다. 단계 715에서 보안 영역 발급자에 의해 전자 디바이스(400)의 보안 영역 내의 보안 도메인 내에 복수의 인스턴스들이 생성될 수 있다. 단계 717에서 서비스 제공자 또는 보안 도메인 제공자는, 보안 도메인의 인스턴스에 대한 개인화를 수행할 수 있다. 서비스 제공자 또는 보안 도메인 제공자는, 개인화를 위하여, 단계 715에서 생성된 인스턴스 위에 데이터를 저장할 수 있다. 이 때, 개인화 단계에서 저장되는 데이터는 보호해야 할 중요한 값들 이외의 값들을 저장함으로써 해당 값들을 초기화할 수 있다.
단계 721에서 보안 도메인은 프레임워크로부터 암호화 데이터를 수신하고, 단계 723에서 암호화된 데이터를 암호해독할 수 있다. 단계 725에서 인스턴스는 암호해독된 데이터를 저장할 수 있다. 예를 들어, 암호해독된 데이터는 보안 채널을 생성하기 위한 키를 포함할 수 있다.
단계 731에서 일 실시예에 따른 전자 디바이스(400)는, 외부 디바이스(예를 들어, 도어락과 같은 접근 서비스 제공 디바이스)로부터 보안 채널 생성 요청을 수신할 수 있다.
단계 733에서 일 실시예에 따른 전자 디바이스(400)는, 보안 영역의 인스턴스에 저장된 키를 기반으로 외부 디바이스와 상호 인증을 수행할 수 있다. 일 실시예에 따른 전자 디바이스(400)는, 외부 디바이스와 블루투스 통신 방식을 이용하여 APDU(Application Protocol Data Unit)을 주고받음으로써 상호 인증을 수행하여 보안 채널을 생성할 수 있다.
단계 735에서 일 실시예에 따른 전자 디바이스(400)는, 세션키를 생성하고, 단계 736에서 UWB 세션키를 생성할 수 있다. 단계 741에서 일 실시예에 따른 전자 디바이스(400)의 UWB 통신 모듈은 STS 코드를 생성하고, 생성된 STS 코드를 이용하여 단계 743에서 보안 레인징을 수행할 수 있다.
도 8은 본 개시의 일 실시예에 따른 전자 디바이스의 동작 방법의 구체적인 흐름도를 도시한다.
도 7의 단계 711 내지 단계 735는 도 8의 단계711 내지 단계 735와 동일하므로 중복되는 설명은 생략한다. 도 7에 도시된 실시예와 달리, 도 8에 도시된 실시예에 따르면 전자 디바이스(400)는, UWB 세션 키를 직접 생성하지 않고, 외부 디바이스로부터 UWB 세션 키를 수신할 수 있다.
단계 737에서 일 실시예에 따른 전자 디바이스(400)는 세션 키를 이용하여 보안 채널 기반 데이터 교환을 수행하고, 단계 739에서 외부 디바이스로부터 UWB 세션 키를 수신할 수 있다. 이 때, 수신되는 UWB 세션 키는, 교환된 세션 키에 기초하여 생성된 것일 수 있다. 단계 741에서 일 실시예에 따른 전자 디바이스(400)의 UWB 통신 모듈은 STS 코드를 생성하고, 생성된 STS 코드를 이용하여 단계 743에서 보안 레인징을 수행할 수 있다.
도 9는 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스를 생성하는 방법의 흐름도를 도시한다.
전자 디바이스(400)의 프레임워크(411)가 보안 영역 발급자 (41)에게 보안 도메인의 설치를 요청한다. 보안 영역 발급자(41)는, 보안 도메인을 설치할 수 있는 권한을 가지는 최상위 권한 주체로서 보안 영역의 모든 동작의 책임자일 수 있다. 예를 들어, 보안 영역 발급자(41)는 소정 서비스를 제공하는 서비스 제공 서버 또는 백엔드 서버의 형태로 구현될 수 있다. 보안 영역 발급자(41)는 보안 도메인 설치와 관련된 코드(applet) 및 주요 키 값을 프레임워크에게 전달한다. 프레임워크에게 전달되는 주요 키값은, 예를 들어, 보안 도메인의 대칭 키(KS.SD), 보안 도메인의 인증서(CERT.SD), 보안 도메인의 개인 키(SK.SD) 등을 포함할 수 있다.
프레임워크(411)는, 보안 영역 발급자(41)로부터 전달받은 값을 기반으로 보안 영역 내에 보안 도메인을 설치하고, 애플릿 및 주요 키 값을 설치한다. 프레임워크(411)는 보안 영역 발급자(41)로부터 전달받은 보안 도메인의 대칭 키(KS.SD)를 이용하여 보안 채널을 셋업함으로써, 보안 도메인과 보안 통신을 수행할 준비를 한다. 프레임워크(411)는, 보안 도메인의 대칭 키(KS.SD)를 이용하여 보안 도메인 내에 인스턴스를 생성할 수 있다. 프레임워크(411)는, 보안 도메인 내에 인스턴스를 생성하기 위하여, 보안 도메인의 대칭 키(KS.SD)에 기초하여 명령어(INSTALL/REGISTER)를 필요한 만큼 반복해서 보안 도메인에게 전송한다.
도 10은 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스에 저장되는 컨텐츠를 관리하는 방법의 흐름도를 도시한다.
보안 도메인은 서비스 제공자들(1001, 1002)에게 보안 도메인의 인증서(CERT.SD)를 전송할 수 있다. 보안 도메인의 인증서에는 보안 도메인의 공개 키(Pub.SD)가 포함될 수 있다. 서비스 제공자들(1001, 1002)은 보안 도메인의 공개 키를 저장할 수 있다.
제1 서비스 제공자(1001)는 프레임워크(411)에게 제1 서비스 제공자(1001)의 인증서(CERT.SP-1)를 전송하고, 프레임워크(411)는 인증서에 포함되는 제1 SP의 공개 키(Pub.SP-1)를 저장 할 수 있다. 제2 서비스 제공자(1002) 역시 프레임워크(411)에게 제2 서비스 제공자(1002)의 인증서(CERT.SP-2)를 전송하고, 프레임워크(411)는 인증서에 포함되는 제2 SP의 공개 키(Pub.SP-2)를 저장 할 수 있다.
도 10에 도시된 바와 같이, 보안 도메인과 서비스 제공자 간에는 상호 인증서 교환을 통해 미리 신뢰 범위(trusted boundary)가 구성될 수 있다. 따라서, 보안 도메인과 서비스 제공자는, 추후 발생하는 보안 통신이 교환된 인증서에 기반하는 값일 때, 해당 통신을 신뢰할 수 있다.
도 11은 본 개시의 일 실시예에 따른 키 관리 시스템이 인스턴스에 저장되는 컨텐츠를 관리하는 방법의 흐름도를 도시한다.
서비스 제공자는, 도 10에 도시된 과정에서 교환했던 인증서를 기반으로 인스턴스에 키를 전달할 수 있다.
제1 SP(1001)는 보안 도메인의 공개 키(Pub.SD)를 이용하여 제1 SP 키(KS.SP-1)를 암호화하고, 제1 SP(1001)의 개인 키(SK.SP-1)를 이용하여 암호화 데이터를 서명할 수 있다. 제1 SP(1001)는 프레임워크(411)에게 서명된 데이터를 전달할 수 있다. 프레임워크(411)는, 제1 SP(1001)로부터 수신된 제1 서명 데이터를 미리 저장되어 있던 제1 SP(1001)의 공개 키(Pub.SP-1)를 이용하여 인증할 수 있다. 프레임워크(411)는, 인증된 제1 서명 데이터로부터 제1 암호화 데이터를 획득할 수 있다.
제2 SP(1002)는 보안 도메인의 공개 키(Pub.SD)를 이용하여 제2 SP 키(KS.SP-2)를 암호화하고, 제2 SP(1002)의 개인 키(SK.SP-2)를 이용하여 암호화 데이터를 서명할 수 있다. 제2 SP(1002)는 프레임워크(411)에게 서명된 데이터를 전달할 수 있다. 프레임워크(411)는, 제2 SP(1002)로부터 수신된 제2 서명 데이터를 미리 저장되어 있던 제2 SP(1002)의 공개 키(Pub.SP-2)를 이용하여 인증할 수 있다. 프레임워크(411)는, 인증된 제2 서명 데이터로부터 제2 암호화 데이터를 획득할 수 있다.
프레임워크(411)는, 보안 도메인의 대칭 키(KS.SD)를 이용하여 셋업된 보안 채널을 통해, 서명 데이터로부터 획득된 암호화 데이터를 전달할 수 있다. 보안 도메인은 보안 도메인의 개인 키(SK.SD)를 이용하여 암호화 데이터를 암호해독할 수 있다. 보안 도메인은 제1 암호화 데이터를 암호해독함으로써, 제1 암호화 데이터로부터 제1 SP(1001)의 대칭 키(KS.SP-1)를 획득할 수 있다. 보안 도메인은 제2 암호화 데이터를 암호해독함으로써, 제2 암호화 데이터로부터 제2 SP(1002)의 대칭 키(KS.SP-2)를 획득할 수 있다.
보안 도메인은, 암호해독된 키를 대응되는 인스턴스에 저장할 수 있다. 예를 들어, 제1 SP(1001)의 대칭 키(KS.SP-1)는 제1 SP(1001)에 대해 할당된 제1 인스턴스 내에 저장될 수 있다. 제2 SP(1002)의 대칭 키(KS.SP-2)는 제2 SP(1002)에 대해 할당된 제2 인스턴스 내에 저장될 수 있다.
도 12는 기존의 CASD(Controlling Authority Security Domain)를 이용하여 키를 관리하는 방법과 본 개시의 일 실시예에 따른 키 관리 방법의 차이점을 설명하기 위한 도면이다.
도 12의 블록도(1201)에 도시된 방법에 따르면, CASD는 SP들로부터 수신된 데이터를 암호해독하고, 암호해독된 값들(예를 들어, 키 값들)을 애플릿들에게 전달한다. 애플릿들은 전달받은 데이터를 저장한다. 따라서, CASD가 모든 암호화된 값들을 열람할 수 있어야 하므로, 모든 서비스 제공자들이 CASD를 신뢰하여야 하고, 효율적이지 못하다는 단점이 있다.
반면에, 도 12의 블록도(1203)에 도시된 새롭게 제안되는 방법에 따르면, 하나의 프레임워크가 복수의 인스턴스들에 저장된 키들을 통합 관리함으로써 호환성을 향상시킬 수 있다. 또한, 서비스 제공자가 개별적으로 관리하고 있는 키가 암호화된 상태로 보안 도메인까지 전달되어 별도의 보안 영역에 저장됨으로써 보안성을 향상시킬 수 있다.
도 13은 본 개시의 일 실시예에 따른 키 관리 시스템이 보안 레인징을 수행하는 방법의 흐름도를 도시한다.
일 실시예에 따른 전자 디바이스(400)는, 접근 제어 서비스 제공 디바이스들(1301, 1302)과의 보안 레인징을 수행하기 위하여, 세션 키를 생성할 수 있다.
제1 SP와 관련된 접근 제어 서비스를 제공하고, 제1 SP와 관련된 키(KS.SP-1)를 저장하고 있는 제1 디바이스(1301)는, 제1 SP로부터 제공받은 키(KS.SP-1)를 저장하고 있는 제1 인스턴스에게 보안 채널 생성을 요청할 수 있다. 제1 인스턴스는, 저장된 키(KS.SP-1)를 기반으로 제1 디바이스(1301)와 상호 인증을 수행하고 세션 키를 생성할 수 있다. 제1 인스턴스는 제1 디바이스(1301)와 랜덤 값(예를 들어, cryptogram)을 교환하고, 저장된 키(KS.SP-1)와 랜덤 값을 기반으로 세션 키(Session Key SP-1)를 생성할 수 있다. 예를 들어, 제1 인스턴스 및 제1 디바이스(1301)는 보안 프로토콜 SCP03을 통해 세션 키를 생성할 수 있다.
본 개시의 일 실시예에 따르면, 세션마다 생성된는 세션 키가 UWB 세션 키를 생성하기 위해 입력되는 값으로서 활용될 수 있다. 제1 인스턴스는 SUS 애플릿(433)에게 세션 키 값(Session Key SP-1)을 전달하고, SUS 애플릿(433)은 세션 키 값(Session Key SP-1)을 UWB 통신 모듈(예를 들어, UWB 칩셋(UWBC))(415)에게 전달할 수 있다. UWB 통신 모듈(415)은 세션 키 값(Session Key SP-1)을 기반으로 UWB 세션 키를 구성할 수 있다. 또는, 제1 인스턴스는, 세션 키 값(Session Key SP-1)에 기초하여 UWB 세션 키를 생성하고, 생성된 UWB 세션 키를 UWB 통신 모듈(415)에게 전달할 수 있다. UWB 통신 모듈(415)은, UWB 세션 키에 기초하여 STS 코드를 생성할 수 있다. UWB 통신 모듈(415)은 STS 코드가 포함된 레인징 프레임을 송수신함으로써 보안 레인징을 구현할 수 있다.
상술한 바와 동일한 방식으로 제2 디바이스(1302)와 제2 인스턴스 간에도 보안 채널이 생성되고, 생성된 보안 채널에 기초하여 UWB 보안 레인징이 수행될 수 있다. 예를 들어, 제2 SP와 관련된 접근 제어 서비스를 제공하고, 제2 SP와 관련된 키(KS.SP-2)를 저장하고 있는 제2 디바이스(1302)는, 제2 SP로부터 제공받은 키(KS.SP-2)를 저장하고 있는 제2 인스턴스에게 보안 채널 생성을 요청할 수 있다. 제2 인스턴스는, 저장된 키(KS.SP-2)를 기반으로 제2 디바이스(1302)와 상호 인증을 수행하고 세션 키를 생성할 수 있다. 제2 인스턴스는 제2 디바이스(1302)와 랜덤 값(예를 들어, cryptogram)을 교환하고, 저장된 키(KS.SP-2)와 랜덤 값을 기반으로 세션 키(Session Key SP-2)를 생성할 수 있다.
도 14는 본 개시의 일 실시예에 따라 복수의 키들을 관리하는 전자 디바이스(400)의 구성을 나타내는 도면이다.
본 개시의 일 실시예에 따른 전자 디바이스(400)는 개인화된 모바일 디바이스를 포함할 수 있으나 이에 한정되지 않고, 다양한 종류의 전자 디바이스를 포함할 수 있다. 예를 들어, 전자 디바이스(400)는 스마트폰, 태블릿 PC, PC, 카메라 및 웨어러블 장치 등을 포함할 수 있다.
도 14를 참조하면, 전자 디바이스(400)는 통신부(410), 메모리(420), 보안 영역(430) 및 프로세서(440)와 각 구성을 연결하는 버스(450)를 포함할 수 있다.
통신부(410)는, 다른 디바이스 또는 네트워크와 유무선 통신을 수행할 수 있다. 이를 위해, 통신부(410)는 다양한 유무선 통신 방법 중 적어도 하나를 지원하는 통신 모듈을 포함할 수 있다. 예를 들어, 통신 모듈은 칩셋(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) 중 적어도 하나를 포함할 수 있다.
일 실시예에서 통신부(410)는 근거리 통신(short range communication)을 위한 통신 모듈을 포함할 수 있다. 예를 들어, 통신부(410)는 위에서 설명한 Wi-Fi, Wi-Fi Direct, 블루투스, NFC 외에 적외선 통신, MST(Magnetic Secure Transmission, 마그네틱 보안 통신과 같은 다양한 근거리 통신을 수행하기 위한 통신 모듈을 포함할 수 있다.
메모리(420)에는 애플리케이션과 같은 프로그램 및 파일 등과 같은 다양한 종류의 데이터가 설치 및 저장될 수 있다. 프로세서(440)는 메모리(420)에 저장된 데이터에 접근하여 이를 이용하거나, 또는 새로운 데이터를 메모리(420)에 저장할 수도 있다. 일 실시예에서, 메모리(420)에는 디지털 키의 관리를 위한 프로그램(예를 들어, 프레임워크) 및 데이터가 설치 및 저장될 수 있다.
예를 들어, 메모리(420)는, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
일 실시예에 따른 전자 디바이스(400)는 보안 영역을 포함하며, 보안 영역은 외부 디바이스를 제어하거나 접근하기 위한 디지털 키를 생성, 삭제, 관리 등의 처리를 수행할 수 있으며, 디지털 키에 대한 인증을 수행할 수 있다. 나아가, 보안 영역은 서비스 제공자 서버와 같은 외부 엔티티의 디지털 키에 대한 접근에 대해서 인증하고, 권한을 확인하여 디지털 키를 안전하게 관리할 수 있는 기능을 제공할 수 있다. 예를 들어, 보안 영역은, SE, 및/또는 TEE를 포함할 수 있다.
보안 영역(430)은 전자 디바이스(400)의 독립된 보안 저장 장치로, 인증된 애플리케이션만 접근 가능한 보안 영역이다. 보안 영역(430)은 다른 하드웨어 구성과 물리적으로 분리(isolate)되도록 구성될 수 있다. 일 실시예에 따르면, 디지털 키의 관리를 위한 프로그램 및 데이터(예를 들어, 보안 도메인, 애플릿 등)가 보안 영역(430)에 설치 및 저장될 수도 있다.
프로세서(440)는 전자 디바이스(400)의 전체적인 동작을 제어하며, CPU, GPU 등과 같은 프로세서를 적어도 하나 이상 포함할 수 있다. 프로세서(440)는 디지털 키의 관리를 위한 동작을 수행하도록 전자 디바이스(400)에 포함된 다른 구성들을 제어할 수 있다. 예를 들어, 프로세서(440)는 메모리(420) 및 보안 영역(430)에 저장된 프로그램을 실행시키거나, 저장된 파일을 읽어오거나, 새로운 파일을 저장할 수도 있다.
일 실시예에 따르면 프로세서(440)는 프레임워크를 이용하여 외부 디바이스 또는 애플리케이션으로부터 디지털 키의 처리 요청을 수신하고, 디지털 키의 처리 요청과 프레임워크에 저장된 인증 정보를 보안 영역의 보안 도메인 및/또는 인스턴스로 전달할 수 있다. 프로세서(440)는, 보안 영역(430)에서 실행되는 애플릿을 이용하여, 디지털 키의 처리 요청, 프레임워크로부터 전달 받은 인증 정보 및 보안 영역에 저장된 인증 정보를 기초로 디지털 키의 처리를 수행할 수 있다. 여기서, 디지털 키의 처리는, 디지털 키의 생성, 삭제 및 관리 중 적어도 하나 이상의 동작을 포함할 수 있다.
일 실시예에 따른 프로세서(440)는, 프레임워크를 이용하여 보안 영역 발급자로부터 수신된 정보에 기초하여, 보안 영역(430) 내에 보안 도메인을 생성할 수 있다. 프로세서(440)는, 보안 도메인을 인스턴스화 함으로써 복수의 인스턴스들을 생성할 수 있다. 프로세서(440)는, 복수의 SP 들에 대응하는 복수의 인스턴스들을 생성할 수 있다.
일 실시예에 따른 보안 영역(430)은 복수의 서비스 제공자들에게 보안 도메인의 인증서를 전송할 수 있다. 보안 도메인의 인증서는, 보안 도메인의 공개 키를 포함할 수 있다.
일 실시예에 따른 프로세서(440)는, 전자 디바이스(400)에 설치된 프레임워크를 이용하여 복수의 SP들로부터 각 SP의 인증서를 수신할 수 있다. 각 SP의 인증서는, 각 SP의 공개 키를 포함할 수 있다.
프로세서(440)는, 프레임워크를 이용하여, 복수의 SP들 중 제1 SP로부터 제1 서명 데이터를 수신하고, 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 제1 서명 데이터를 인증할 수 있다. 제1 SP로부터 수신되는 제1 서명 데이터는, 보안 도메인의 공개 키를 이용하여 암호화된 제1 SP 키, 및 제1 SP의 개인 키를 이용한 서명을 포함할 수 있다.
프로세서(440)는, 프레임워크를 이용하여, 인증된 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하고, 보안 영역(430)의 보안 도메인에게 전달할 수 있다.
일 실시예에 따른 보안 영역(430)의 보안 도메인은, 보안 도메인의 개인 키를 이용하여 암호화된 키를 암호해독하고, 보안 도메인의 복수의 인스턴스들 중 하나의 인스턴스에 할당된 보안 영역에 암호 해독된 키를 저장할 수 있다.
예를 들어, 보안 영역(430)의 보안 도메인은, 보안 도메인의 개인 키를 이용하여 암호화된 제1 SP 키를 암호해독하고, 보안 도메인의 복수의 인스턴스들 중 제1 SP에 대응하는 제1 인스턴스에 할당된 보안 영역에 암호 해독된 제1 SP 키를 저장할 수 있다.
프로세서(440)는, 프레임워크를 이용하여, 복수의 SP들 중 제2 SP로부터 제2 서명 데이터를 더 수신하고, 제2 SP로부터 수신된 제2 SP 인증서를 이용하여, 제2 서명 데이터를 인증할 수 있다. 제2 SP로부터 수신되는 제2 서명 데이터는, 보안 도메인의 공개 키를 이용하여 암호화된 제2 SP 키, 및 제2 SP의 개인 키를 이용한 서명을 포함할 수 있다.
프로세서(440)는, 프레임워크를 이용하여, 인증된 제2 서명 데이터로부터 암호화된 제2 SP 키를 획득하고, 보안 영역(430)의 보안 도메인에게 전달할 수 있다.
일 실시예에 따른 보안 영역(430)의 보안 도메인은, 보안 도메인의 개인 키를 이용하여 암호화된 제2 SP 키를 암호해독하고, 보안 도메인의 복수의 인스턴스들 중 제2 SP에 대응하는 제2 인스턴스에 암호 해독된 제2 SP 키를 저장할 수 있다.
일 실시예에 따른 보안 영역(430)의 보안 도메인은, 제1 인스턴스에 저장된 제1 SP 키를 이용하여, 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업할 수 있다. 예를 들어, 전자 디바이스(400)와 제1 디바이스는 블루투스 통신 방식을 이용하여 보안 채널을 셋업할 수 있다.
본 개시의 일 실시예에 따른 전자 디바이스(400)는, UWB 세션 키 생성을 위한 입력 값으로서 세션 키를 활용할 수 있다. 일 예로서, 전자 디바이스(400)는, 제1 SP 키를 이용하여 생성된 세션 키를 이용하여, UWB 세션 키를 직접 생성할 수 있다. 다른 예로서, 전자 디바이스(400)는, 제1 SP 키를 이용하여 생성된 세션 키에 기초하여 제1 디바이스에서 생성된 UWB 세션 키를 수신하여 이용할 수 있다.
일 실시예에 따른 전자 디바이스(400)의 통신부(410)의 UWB 통신 모듈은, UWB 세션 키를 이용하여 생성된 STS 코드를 포함하는 레인징 프레임을 송수신함으로써 제1 디바이스와의 레인징을 수행할 수 있다.
버스(BUS, 450)는 통신부(410), 메모리(420), 보안 영역(430) 및 프로세서(440)를 연결하는 공통 데이터 전송 통로이다.
도 15는 본 개시의 일 실시예에 따른 보안 영역(430)의 블록도를 도시한다.
도 15를 참조하면, 보안 영역(430)은 통신 인터페이스(1510), 메모리(1520) 및 프로세서(1530)를 포함할 수 있다.
일 실시예에 따른 보안 영역(430)은 전자 디바이스(400)의 독립된 보안 저장 장치로, 인증된 애플리케이션만 접근 가능한 보안 영역이다. 예를 들어, 보안 영역(430)은 TEE, embedded Secure Element(eSE), Universal integrated Circuit Card(UICC), Secure Digital Card(SD Card), 또는 embedded UICC (eUICC), 기타 하드웨어/소프트웨어가 혼합되거나 하드웨어 방식의 별도의 보안 시스템(SPU, Security processing unit) 등을 포함할 수 있다.
통신 인터페이스(1510)는 호스트(Host, 101)와 통신할 수 있다. 일 실시예에서, 통신 인터페이스(1510)는 호스트(101)와 통신하기 위한 다양한 유무선 통신 인터페이스 중 적어도 하나를 포함할 수 있다. 여기서 호스트(101)는 전자 디바이스(400)에 포함된 장치들 중 하나일 수 있으며, 예를 들어, AP(Application Processor), 메모리 등을 포함할 수 있다. 통신 인터페이스(1510)는 예를 들어, ISO 7816, USB(Universal Serial Bus), I2C(Inter-Integrated Circuit), SPI(Serial Peripheral Interface), SWP(Single Wire Protocol)와 같은 직렬 인터페이스 또는 두 개의 하드웨어 장치들 사이의 통신에 일반적으로 사용되는 임의의 직렬 인터페이스일 수 있다. 또한, 안테나를 하드웨어 장치에 직접 연결시키는 IS0 14443, 지그비(Zigbee), 블루투스(Bluetooth) 등과 같은 무선 인터페이스일 수도 있다. 나아가, 통신 인터페이스(1510)는 전자 디바이스(400)의 중앙 버스(BUS)에 연결되는 병렬 인터페이스일 수도 있으며, 이 경우, 통신 인터페이스(1510)는 호스트(101)로부터의 커맨드와 데이터를 수신하기 위한 버퍼를 포함할 수도 있다.
메모리(1520)에는 애플릿과 같은 프로그램 및 파일 등과 같은 다양한 종류의 데이터가 설치 및 저장될 수 있다. 프로세서(1530)는 메모리(1520)에 저장된 데이터에 접근하여 이를 이용하거나, 또는 새로운 데이터를 메모리(1520)에 저장할 수도 있다. 일 실시예에서, 메모리(1520)에는 디지털 키를 처리하기 위한 프로그램 및 데이터가 설치 및 저장될 수 있다. 메모리(1520)는, 비휘발성 기억 장치일 수 있다.
프로세서(1530)는 보안 영역(430)의 전체적인 동작을 제어하며, CPU, GPU 등과 같은 프로세서를 적어도 하나 이상 포함할 수 있다. 프로세서(1530)는 디지털 키를 처리하기 위한 동작을 수행하도록 보안 영역(430)에 포함된 다른 구성들을 제어할 수 있다. 예를 들어, 프로세서(1530)는 메모리(1520)에 저장된 프로그램을 실행시키거나, 저장된 파일을 읽어오거나, 새로운 파일을 저장할 수도 있다. 일 실시예에서, 프로세서(1530)는 메모리(1520)에 저장된 프로그램을 실행함으로써, 디지털 키를 처리하기 위한 동작을 수행할 수 있다.
일 실시예에 따른 보안 영역(430)을 포함하는 전자 디바이스(400)는 프레임 워크를 더 포함 할 수 있다. 프레임워크는 외부 엔티티(external entity)로부터 보안 영역(430)으로의 접근이 있는 경우, 게이트웨이 역할을 하는 서비스 어플리케이션이이다. 프레임워크는 외부 엔티티가 접근할 수 있는 API(Application Programming Interface)를 제공하고, 보안 영역(430)에 접근(access)을 위한 엑세스 컨트롤 및 명령어(command) 변환 등과 같은 기능을 제공할 수 있다. 외부 엔티티는, 예를 들어, 보안 영역 발급자, 서비스 제공자, 및/또는 접근 서비스 제공 디바이스 등이 될 수 있다.
일 실시예에 따른 보안 영역(430)에는 경량화된 애플리케이션(예를 들어, 애플릿(applet) 또는 TA(Trusted application))이 설치되어 구동될 수 있다. 애플릿은 디지털 키를 보안 영역(430) 내부에 저장하고, 저장된 키의 사용, 삭제, 관리 등의 서비스를 제공할 수 있다. 이러한 애플릿은 보안 영역(430)에 선 탑재되어 있거나, 추후 필요에 따라 로딩되거나 혹은 설치될 수 있다.
도 16은 본 개시의 일 실시예에 따른 전자 디바이스의 동작을 설명하기 위한 도면이다.
도 16에 도시된 바와 같이, 본 개시의 일 실시예에 따른 전자 디바이스(400)는 보안 영역(430) 내에 동일한 애플릿 또는 TA를 기반으로 별도의 인스턴스들을 생성하고, 보안 통신을 위한 암호 키들을 각 인스턴스에 분리하여 저장할 수 있다. B 인스턴스에는 B 디바이스(1601)가 제공하는 접근 서비스와 관련된 키인 KB가 저장되고, C 인스턴스에는 C 디바이스(1603)가 제공하는 접근 서비스와 관련된 키인 KC가 저장된다.
도 16의 도면에서 AID는 애플릿을 나타내는 식별자(Identifier)로서, 애플릿(혹은, 인스턴스) 및/또는 TA를 호출하기 위해 이용될 수 있다. 예를 들어, 공통의 애플릿의 식별자는 AA이며, B 인스턴스의 식별자는 BB이고, C 인스턴스의 식별자는 CC이고, D 인스턴스의 식별자는 DD이다.
일 실시예에 따른 전자 디바이스(400)는 각 인스턴스에 저장된 키를 이용하여 생성된 세션 키를 블루투스 통신 모듈(413)을 이용하여 외부 디바이스들(1601, 1603) 중 하나에게 전달할 수 있다. 또한, 일 실시예에 따른 전자 디바이스(400)는, 세션 키로부터 UWB 세션키를 도출하여 외부 디바이스들(1601, 1603) 중 하나와 UWB 보안 레인징에 이용할 수 있다.
예를 들어, B 인스턴스는 저장된 키 KB를 이용하여 B 디바이스(1601)와 상호 인증을 수행할 수 있다. B 인스턴스는 저장된 키 KB를 이용하여 세션 키를 생성하고, 생성된 세션 키를 블루투스 통신 모듈(413)을 이용하여 B 디바이스(1601)에게 전달할 수 있다. B 인스턴스는, 세션 키로부터 UWB 세션 키를 도출하거나 B 디바이스(1601)로부터 UWB 세션 키를 수신할 수 있다. B 인스턴스는 UWB 통신 모듈(415)에게 UWB 세션 키를 전달하고, UWB 통신 모듈(415)은 UWB 세션 키를 이용하여 B 디바이스(1601)와 보안 레인징을 수행할 수 있다.
동일한 방식으로, C 인스턴스는 저장된 키 KC를 이용하여 C 디바이스(1603)와 상호 인증을 수행할 수 있다. C 인스턴스는 저장된 키 KC를 이용하여 세션 키를 생성하고, 생성된 세션 키를 블루투스 통신 모듈(413)을 이용하여 C 디바이스(1603)에게 전달할 수 있다. C 인스턴스는, 세션 키로부터 UWB 세션 키를 도출하거나 C 디바이스(1603)로부터 UWB 세션 키를 수신할 수 있다. C 인스턴스는 UWB 통신 모듈(415)에게 UWB 세션 키를 전달하고, UWB 통신 모듈(415)은 UWB 세션 키를 이용하여 C 디바이스(1603)와 보안 레인징을 수행할 수 있다.
또한, 일 실시예에 따른 전자 디바이스(400)는, 인스턴스에 저장된 키가 없는 경우 보안 도메인의 키를 이용하여 보안 인증 및 암호화를 수행할 수 있다.
예를 들어, D 디바이스(1605)와 통신하는 D 인스턴스는, 별도로 키를 저장하고 있지 않으므로, 보안 도메인의 키(Priv-S, CERT-S)를 이용할 수 있다. D 인스턴스는, 보안 도메인의 키(Priv-S, CERT-S)를 이용하여 D 디바이스와 상호 인증을 수행하고 세션 키를 생성할 수 있다. D 인스턴스는, 세션 키로부터 UWB 세션 키를 도출하거나 D 디바이스(1605)로부터 UWB 세션 키를 수신할 수 있다. D 인스턴스는 UWB 통신 모듈(415)에게 UWB 세션 키를 전달하고, UWB 통신 모듈(415)은 UWB 세션 키를 이용하여 D 디바이스(1605)와 보안 레인징을 수행할 수 있다.
개시된 실시 예들은 컴퓨터로 읽을 수 있는 저장 매체(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 장치는 프리로드된 상태로 제공된 컴퓨터 프로그램 제품을 실행하여 개시된 실시 예들에 따른 방법을 수행할 수도 있다.

Claims (20)

  1. 전자 디바이스가 복수의 서비스들에 접근하기 위한 키(key)들을 관리하는 방법에 있어서,
    상기 전자 디바이스의 보안 영역(Secure Area, SA)내의 보안 도메인(Secure Domain, SD)이 복수의 서비스 제공자(Service Provider, SP)들에게 상기 보안 도메인의 인증서를 전송하는 단계;
    상기 전자 디바이스에 설치된 애플리케이션이 상기 복수의 SP들로부터 각 SP의 인증서를 수신하는 단계;
    상기 애플리케이션이 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터(signed data)를 수신하는 단계;
    상기 애플리케이션이 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계;
    상기 보안 도메인이 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하는 단계; 및
    상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 단계를 포함하는, 키들을 관리하는 방법.
  2. 제1 항에 있어서,
    상기 애플리케이션이 상기 보안 도메인에 대해서 상기 복수의 SP 들에 대응하는 상기 복수의 인스턴스들을 생성하는 단계를 더 포함하는, 키들을 관리하는 방법.
  3. 제2 항에 있어서,
    상기 복수의 인스턴스들을 생성하는 단계는,
    상기 애플리케이션이 보안 영역 발급자(Secure Area Issuer)로부터 수신된 정보에 기초하여, 상기 보안 영역 내에 상기 보안 도메인을 설치하는 단계; 및
    상기 보안 도메인을 인스턴스화(instantiate) 함으로써 상기 복수의 인스턴스들을 생성하는 단계를 더 포함하는, 키들을 관리하는 방법.
  4. 제1 항에 있어서,
    상기 보안 도메인의 인증서는, 상기 보안 도메인의 공개 키를 포함하고,
    상기 각 SP의 인증서는, 각 SP의 공개 키를 포함하고,
    상기 제1 SP 키는 상기 제1 SP가 보안 채널을 통해 접근 서비스를 제공하기 위해 이용하는 대칭 키인 것을 특징으로 하는, 키들을 관리하는 방법.
  5. 제1 항에 있어서,
    상기 제1 SP로부터 수신되는 상기 제1 서명 데이터는,
    상기 보안 도메인의 공개 키를 이용하여 암호화된 제1 SP 키, 및 상기 제1 SP의 개인 키를 이용한 서명을 포함하는, 키들을 관리하는 방법.
  6. 제1 항에 있어서,
    상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계는,
    상기 제1 서명 데이터를 상기 제1 SP의 공개 키를 이용하여 인증하는 단계를 포함하는, 키들을 관리하는 방법.
  7. 제1 항에 있어서,
    상기 애플리케이션이 상기 복수의 SP들 중 제2 SP로부터 제2 서명 데이터를 수신하는 단계;
    상기 애플리케이션이 상기 제2 SP로부터 수신된 제2 SP 인증서를 이용하여, 상기 제2 서명 데이터를 인증하고, 상기 제2 서명 데이터로부터 암호화된 제2 SP 키를 획득하는 단계;
    상기 보안 도메인이 상기 보안 도메인의 개인키를 이용하여 상기 암호화된 제2 SP 키를 암호해독하는 단계; 및
    상기 암호 해독된 제2 SP 키를 상기 보안 도메인의 복수의 인스턴스들 중 상기 제2 SP에 대응하는 제2 인스턴스에 저장하는 단계를 더 포함하는, 키들을 관리하는 방법.
  8. 제1 항에 있어서,
    상기 제1 인스턴스에 저장된 상기 제1 SP 키를 이용하여, 상기 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 상기 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업하는 단계;
    상기 제1 인스턴스가 상기 제1 SP 키를 이용하여 세션 키를 생성하고, 상기 보안 채널을 통해 상기 세션 키를 상기 제1 디바이스에게 전달하는 단계; 및
    상기 세션 키를 이용하여 UWB 세션 키를 생성하는 단계; 및
    상기 UWB 세션 키를 이용하여 생성된 STS 코드를 포함하는 레인징 프레임을 송수신함으로써 레인징을 수행하는 단계를 포함하는, 키들을 관리하는 방법.
  9. 제8 항에 있어서,
    상기 보안 채널을 셋업하는 단계는,
    블루투스 통신 방식을 이용하여 상기 보안 채널을 셋업하는 단계를 포함하고,
    상기 레인징을 수행하는 단계는,
    UWB 통신 방식을 이용하여 상기 레인징 프레임을 송수신하는 단계를 포함하는, 키들을 관리하는 방법.
  10. 제1 항에 있어서,
    상기 제1 인스턴스에 저장된 상기 제1 SP 키를 이용하여, 상기 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 상기 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업하는 단계;
    상기 제1 인스턴스가 상기 제1 SP 키를 이용하여 세션 키를 생성하고, 상기 보안 채널을 통해 상기 세션 키를 상기 제1 디바이스에게 전달하는 단계;
    상기 보안 채널을 통해 UWB 세션 키를 수신하는 단계; 및상기 UWB 세션 키를 이용하여 생성된 STS 코드를 포함하는 레인징 프레임을 송수신함으로써 레인징을 수행하는 단계를 포함하는, 키들을 관리하는 방법.
  11. 전자 디바이스에 있어서,
    상기 전자 디바이스가 복수의 서비스들에 접근하기 위한 키들을 저장하는 보안 영역; 및
    상기 보안 영역에 연결되고, 메모리에 저장된 프로그램 명령어들을 실행하는 프로세서를 포함하고,
    상기 보안 영역 내에 설치된 보안 도메인이 복수의 서비스 제공자(Service Provider, SP)들에게 상기 보안 도메인의 인증서를 전송하고,
    상기 프로세서는,
    상기 전자 디바이스에 설치된 애플리케이션이 상기 복수의 SP들로부터 각 SP의 인증서를 수신하고,
    상기 애플리케이션이 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터를 수신하고,
    상기 애플리케이션이 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하도록, 상기 애플리케이션을 제어하고,
    상기 보안 도메인은,
    상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하고,
    상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 것을 특징으로 하는, 전자 디바이스.
  12. 제11 항에 있어서,
    상기 애플리케이션은,
    상기 보안 도메인에 대해서 상기 복수의 SP 들에 대응하는 상기 복수의 인스턴스들을 생성하는 것을 특징으로 하는, 전자 디바이스.
  13. 제12 항에 있어서,
    상기 애플리케이션은,
    보안 영역 발급자로부터 수신된 정보에 기초하여, 상기 보안 영역 내에 상기 보안 도메인을 설치하고,
    상기 보안 도메인을 인스턴스화 함으로써 상기 복수의 인스턴스들을 생성하는 것을 특징으로 하는, 전자 디바이스.
  14. 제11 항에 있어서,
    상기 보안 도메인의 인증서는, 상기 보안 도메인의 공개 키를 포함하고,
    상기 각 SP의 인증서는, 각 SP의 공개 키를 포함하고,
    상기 제1 SP 키는 상기 제1 SP가 보안 채널을 통해 접근 서비스를 제공하기 위해 이용하는 대칭 키인 것을 특징으로 하는, 전자 디바이스.
  15. 제11 항에 있어서,
    상기 제1 SP로부터 수신되는 상기 제1 서명 데이터는,
    상기 보안 도메인의 공개 키를 이용하여 암호화된 제1 SP 키, 및 상기 제1 SP의 개인 키를 이용한 서명을 포함하는, 전자 디바이스.
  16. 제11 항에 있어서,
    상기 애플리케이션은,
    상기 제1 SP의 공개 키를 이용하여 상기 제1 서명 데이터를 인증함으로써, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 것을 특징으로 하는, 전자 디바이스.
  17. 제11 항에 있어서,
    상기 애플리케이션은,
    상기 복수의 SP들 중 제2 SP로부터 제2 서명 데이터를 더 수신하고,
    상기 애플리케이션이 상기 제2 SP로부터 수신된 제2 SP 인증서를 이용하여, 상기 제2 서명 데이터를 인증하고, 상기 제2 서명 데이터로부터 암호화된 제2 SP 키를 획득하고,
    상기 보안 도메인은,
    상기 보안 도메인의 개인키를 이용하여 상기 암호화된 제2 SP 키를 암호해독하고, 상기 암호 해독된 제2 SP 키를 상기 보안 도메인의 복수의 인스턴스들 중 상기 제2 SP에 대응하는 제2 인스턴스에 저장하는 것을 특징으로 하는, 전자 디바이스.
  18. 제11 항에 있어서,
    상기 보안 도메인은, 상기 제1 인스턴스에 저장된 상기 제1 SP 키를 이용하여, 상기 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 상기 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업하고,
    상기 제1 인스턴스는 상기 제1 SP 키를 이용하여 생성한 세션 키를 상기 보안 채널을 통해 상기 제1 디바이스에게 전달하고,
    상기 보안 도메인은, 상기 세션 키를 이용하여 UWB 세션 키를 생성하고, UWB 모듈이 상기 UWB 세션 키를 이용하여 생성된 STS 코드를 포함하는 레인징 프레임을 상기 제1 디바이스와 송수신함으로써 레인징을 수행하도록 상기 UWB 모듈을 제어하는 것을 특징으로 하는, 전자 디바이스.
  19. 제11 항에 있어서,
    상기 보안 도메인은, 상기 제1 인스턴스에 저장된 상기 제1 SP 키를 이용하여, 상기 제1 SP와 관련된 접근 서비스를 제공하는 제1 디바이스와 상기 제1 인스턴스 간의 상호 인증을 수행하고 보안 채널을 셋업하고,
    상기 제1 인스턴스는 상기 제1 SP 키를 이용하여 생성한 세션 키를 상기 보안 채널을 통해 상기 제1 디바이스에게 전달하고, 상기 보안 채널을 통해 UWB 세션 키를 수신하고, UWB 모듈이 상기 UWB 세션 키를 이용하여 생성된 STS 코드를 포함하는 레인징 프레임을 송수신함으로써 레인징을 수행하도록 상기 UWB 모듈을 제어하는 것을 특징으로 하는, 전자 디바이스.
  20. 전자 디바이스가 복수의 서비스들에 접근하기 위한 키(key)들을 관리하는 방법을 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체에 있어서,
    상기 방법은,
    상기 전자 디바이스의 보안 영역내의 보안 도메인(Secure Domain, SD)이 복수의 서비스 제공자(Service Provider, SP)들에게 상기 보안 도메인의 인증서를 전송하는 단계;
    상기 전자 디바이스에 설치된 애플리케이션이 상기 복수의 SP들로부터 각 SP의 인증서를 수신하는 단계;
    상기 애플리케이션이 상기 복수의 SP들 중 제1 SP로부터 제1 서명 데이터(signed data)를 수신하는 단계;
    상기 애플리케이션이 상기 제1 SP로부터 수신된 제1 SP 인증서를 이용하여, 상기 제1 서명 데이터를 인증하고, 상기 제1 서명 데이터로부터 암호화된 제1 SP 키를 획득하는 단계;
    상기 보안 도메인이 상기 보안 도메인의 개인 키를 이용하여 상기 암호화된 제1 SP 키를 암호해독하는 단계; 및
    상기 보안 도메인의 복수의 인스턴스들 중 상기 제1 SP에 대응하는 제1 인스턴스에 상기 암호 해독된 제1 SP 키를 저장하는 단계를 포함하는, 컴퓨터로 읽을 수 있는 기록매체.
KR1020200117043A 2019-12-06 2020-09-11 전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법 KR20210071815A (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
PCT/KR2020/017591 WO2021112603A1 (en) 2019-12-06 2020-12-04 Method and electronic device for managing digital keys
CN202080082009.5A CN114762290B (zh) 2019-12-06 2020-12-04 对数字密钥进行管理的方法和电子装置
EP23216092.9A EP4312448A3 (en) 2019-12-06 2020-12-04 Method and electronic device for managing digital keys
EP20896778.6A EP4052414B1 (en) 2019-12-06 2020-12-04 Method and electronic device for managing digital keys
US17/113,969 US11563730B2 (en) 2019-12-06 2020-12-07 Method and electronic device for managing digital keys
US18/100,251 US20230155996A1 (en) 2019-12-06 2023-01-23 Method and electronic device for managing digital keys

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190161837 2019-12-06
KR20190161837 2019-12-06

Publications (1)

Publication Number Publication Date
KR20210071815A true KR20210071815A (ko) 2021-06-16

Family

ID=76603023

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200117043A KR20210071815A (ko) 2019-12-06 2020-09-11 전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법

Country Status (1)

Country Link
KR (1) KR20210071815A (ko)

Similar Documents

Publication Publication Date Title
US11876917B2 (en) Authentication apparatus and method
US11616775B2 (en) Network access authentication method, apparatus, and system
EP4052414B1 (en) Method and electronic device for managing digital keys
US20210058252A1 (en) Electronic device and method, performed by electronic device, of transmitting control command to target device
CN108763917B (zh) 一种数据加解密方法及装置
JP2012507220A (ja) 鍵の配布方法及びシステム
JP7024980B2 (ja) コンピューティングデバイスの遠隔制御
US20230180007A1 (en) Electronic device and method for electronic device to provide ranging-based service
CN112994873B (zh) 一种证书申请方法及设备
CN112512048B (zh) 移动网络接入系统、方法、存储介质及电子设备
EP3048553B1 (en) Method for distributing applets, and entities for distributing applets
CN107026730B (zh) 数据处理方法、装置及系统
CN109960935B (zh) 确定tpm可信状态的方法、装置及存储介质
US20220369103A1 (en) Method and apparatus for performing uwb secure ranging
KR20210071815A (ko) 전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법
JP2023509806A (ja) モバイルネットワークアクセスシステム、方法、記憶媒体及び電子機器
EP3902198A1 (en) Device and method for updating immobilizer token in digital key sharing system
CN118265029A (en) Method and electronic device for managing digital key
KR20160124336A (ko) 보안운영체제를 이용한 전자서명 제공 방법
CN111246480A (zh) 基于sim卡的应用通信方法、系统、设备及存储介质
KR101628614B1 (ko) 보안운영체제를 이용한 전자서명 처리 방법
KR102149313B1 (ko) 유심기반 전자서명 처리 방법
KR101505735B1 (ko) 시간 검증을 이용한 엔에프씨카드 인증 방법
KR102149315B1 (ko) 금융사의 유심기반 전자서명 처리 방법
KR101513434B1 (ko) 키 입력 보호 방법과 이를 위한 키 보호 모듈

Legal Events

Date Code Title Description
A201 Request for examination