KR20230083970A - 개인 정보를 업데이트하기 위한 방법 및 장치 - Google Patents

개인 정보를 업데이트하기 위한 방법 및 장치 Download PDF

Info

Publication number
KR20230083970A
KR20230083970A KR1020220031910A KR20220031910A KR20230083970A KR 20230083970 A KR20230083970 A KR 20230083970A KR 1020220031910 A KR1020220031910 A KR 1020220031910A KR 20220031910 A KR20220031910 A KR 20220031910A KR 20230083970 A KR20230083970 A KR 20230083970A
Authority
KR
South Korea
Prior art keywords
file
sub
update
personal information
access device
Prior art date
Application number
KR1020220031910A
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/KR2022/014729 priority Critical patent/WO2023101181A1/ko
Priority to US18/094,790 priority patent/US20230185935A1/en
Publication of KR20230083970A publication Critical patent/KR20230083970A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/42User authentication using separate channels for security data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

일 실시예에 따르면, 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일- 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하는 동작; 접근 장치의 권한 정보에 기초하여 개인 정보의 업데이트 여부를 결정하는 동작; 접근 장치로부터 업데이트 파일에 기초하여 타겟 파일을 업데이트하는 명령을 수신하는 동작; 명령에 기초하여 제1 타겟 파일을 업데이트하는 동작; 및 제1 타겟 파일 업데이트에 기초하여 제2 타겟 파일을 업데이트하는 동작을 포함할 수 있다. 그 밖에 다양한 실시예가 가능하다.

Description

개인 정보를 업데이트하기 위한 방법 및 장치{DEVICE AND METHOD FOR UPDATING PERSONAL INFORMATION}
본 발명의 다양한 실시예들은 개인 정보를 업데이트하기 위한 방법 및 장치에 관한 것이다.
스마트 폰, 태블릿 PC 등과 같은 전자장치는 메모리, 프로세서 및 운영체제(OS: Operating System)를 탑재하고 이에 따라 다양한 어플리케이션(application)을 실행할 수 있다. 전자 장치는 메모리에 개인 정보를 저장할 수 있다. 메모리에 저장된 개인 정보를 이용한 기능들을 수행하는 어플리케이션은 개인 정보 관련 보안이 중요할 수 있다. 이러한 보안을 위해 전자 장치는 예를 들면, 컴퓨팅 자원(computing asset)에 대한 어플리케이션의 접근을 제어할 수 있다.
Secure Element IC(Integrated Circuit) 기반 신분증의 경우, 저장 공간의 제약 사항이 있어, 저장할 수 있는 데이터의 양의 한계가 존재할 수 있다. 따라서 IC에는 정해진 몇 가지 항목에 대한 정보만 저장이 가능할 수 있다. 또한 Secure element IC 기반 신분증은 기존 데이터에 새로운 데이터를 쓰기(write)할 수 있다. 하지만 해당 방식은 기존의 데이터에 새로운 데이터를 덮어쓰는(overwriting) 방식으로서 데이터 이력 조회는 불가능할 수 있다.
다양한 실시예들에 따르면, 전자 장치에 저장되어 있는 개인 정보에 신분 데이터와 관련된 정보를 전자 장치에 추가(append)함으로써 전자 장치에 포함된 개인 정보를 업데이트할 수 있다.
다양한 실시예들에 따르면, 개인 정보 업데이트 방법은 기존에 있었던 개인 정보를 유지하면서 새로운 데이터를 추가함으로써, 개인 정보 이력 관리를 할 수 있다.
일 실시예에 따르면, 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일- 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하는 동작, 접근 장치의 권한 정보에 기초하여 개인 정보의 업데이트 여부를 결정하는 동작, 접근 장치로부터 업데이트 파일에 기초하여 타겟 파일을 업데이트하는 명령을 수신하는 동작, 명령에 기초하여 제1 타겟 파일을 업데이트하는 동작 및 제1 타겟 파일 업데이트에 기초하여 제2 타겟 파일을 업데이트하는 동작을 포함할 수 있다.
다른 일 실시예에 따르면 전자 장치는 하나 이상의 프로세서 및 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리를 포함할 수 있다. 명령들을 실행하는 프로세서는, 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일- 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하고, 접근 장치의 권한 정보에 기초하여 개인 정보의 업데이트 여부를 결정하고, 접근 장치로부터 업데이트 파일에 기초하여 타겟 파일을 업데이트하는 명령을 수신하고, 명령에 기초하여 제1 타겟 파일을 업데이트하고, 그리고 제1 타겟 파일 업데이트에 기초하여 제2 타겟 파일을 업데이트할 수 있다.
일 실시예에 따른 개인 정보 업데이트 방법은 어플리케이션의 복제로부터 안전하고, 신뢰할 수 있는 개인 정보를 개인 정보의 소유자가 본인 소유의 전자 장치에서 관리할 수 있다.
일 실시예에 따른 개인 정보 업데이트 방법은 보안 영역과의 링크(link)를 증명하지 않더라도 어플리케이션에 저장된 개인 정보를 다른 전자 장치에 제공할 수 있다.
일 실시예에 따른 개인 정보 업데이트 방법은 개인 정보의 무결성 및/또는 전자 장치와의 링크 증명이 필요한 경우, 보안 영역에 포함된 서명키를 이용하여 데이터를 서명함으로써 증명할 수 있다.
일 실시예에 따른 개인 정보 업데이트 방법은 어플리케이션과 보안 영역의 애플릿(applet)을 동시에 사용하여, 보안 영역의 한정된 메모리 용량을 극복할 수 있다. 이를 통해 사이즈가 큰 데이터(예를 들어, 사진, 동영상)도 쉽게 업데이트할 수 있다.
일 실시예에 따른 개인 정보 업데이트 방법은 개인 정보의 이력 관리를 할 수 있다.
도 1은 일 실시예들에 따른 개인 정보가 전자 장치에서 저장된 구조를 설명하기 위한 블록도이다.
도 2는 일 실시예들에 따른 개인 정보를 저장하기 위한 파일 구조를 설명하기 위한 블록도이다.
도 3a 내지 3b은 일 실시예에 따른 접근 장치로부터 수신하는 업데이트 파일을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 전자 장치의 보안 영역 및 접근 장치를 인증하는 방법을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 서브 파일 인증서의 참조 번호를 획득하는 방법을 설명하기 위한 도면이다.
도 6는 일 실시예에 따른 타겟 파일을 업데이트하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 개인 정보를 업데이트하는 방법을 설명하기 위한 흐름도이다.
도 8은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실제로 구현된 형태는 다양한 다른 모습을 가질 수 있으며 본 명세서에 설명된 실시예로만 한정되지 않는다.
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의"와 "바로~간의" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 단계, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일 실시예들에 따른 개인 정보가 전자 장치에서 저장된 구조를 설명하기 위한 블록도이다.
도 1에서는 일반 영역(105), 어플리케이션(110), 제1 파일(111), 제1 파일의 서명값(112), 제2 파일1(113), 제2 파일1의 서명값(114), 제2 파일2(115), 제2 파일2의 서명값(116), 제2 파일3(117), 제2 파일3의 서명값(118), 개인 정보 인증서(120), 보안 영역(140), 애플릿(150), 제3 파일(151), 제3 파일의 서명 대상 데이터 해쉬값(152), 제4 파일1(153), 제4 파일1의 서명 대상 데이터 해쉬값(154), 제4 파일2(155), 제4 파일2의 서명 대상 데이터 해쉬값(156), 제4 파일3(157), 제4 파일3의 서명 대상 데이터 해쉬값(158), 개인 정보 서명키(190), 디스패치 모듈(130) 및 접근 규칙 관리자(170)가 도시되어 있다.
일 실시예에 따른 전자 장치(901)는 보안 영역(140)을 포함할 수 있다. 일 실시예에 따른 보안 영역(140)은 전자 장치 기반의 접근 서비스를 안전하게 제공하기 위한 영역일 수 있다. 일 실시예에 따른 보안 영역은 설계상 무단 접근(access)으로부터 보호되고 제한된 어플리케이션 집합을 실행할 수 있다. 일 실시예에 따른 프로세서(920)(예, 도 8의 프로세서(920))는 전자 장치 내의 보안 영역(예를 들어, 보안 요소(secure element), TEE(trusted execution environment), eSE(embedded secure element), SIM(subscriber identification module), eSIM(embedded subscriber identification module)) 중요 정보(예를 들어, 보안 채널을 생성하기 위해 이용되는 키)를 저장하도록 제어할 수 있다. 일 실시예에 따른 보안 요소(SE) 내에는, 애플릿이 설치되고, 애플릿 내에 적어도 하나의 인스턴스가 생성되어 키를 저장할 수 있다. 일 실시예에 따른 TEE는 일반 영역(normal area)과 보안 영역(secure area)이 분리된 환경에서 보안 영역이 제공하는 안전한 실행 환경을 의미할 수 있다. 일 실시예에 따른 TEE 내에는, 신뢰할 수 있는 어플리케이션(trusted application, TA)이 설치되고, TA 내에 적어도 하나의 프로세스(또는, 인스턴스)가 생성되어 키를 저장할 수 있다.
일 실시예에 따른 도 1에 도시된 애플릿(150)은 보안 요소(SE)에 포함된 애플릿일 수도 있고, TEE에 포함된 신뢰할 수 있는 어플리케이션일 수도 있다. 도 1에 도시된 애플릿(150)은 예시일 뿐 보안 영역(140)에서 동작 가능한 어플리케이션은 모두 포함될 수 있다. 이하에서는 보안 영역(140)에서 동작하는 어플리케이션으로 애플릿(150)이 일 예시로 설명된다.
일 실시예에 따른 프로세서(예, 도 8의 프로세서(920))는 보안 영역(140)에 저장된 키를 이용하여 접근 장치(예, 도3의 접근 장치(310))와 보안 통신을 수행할 수 있다.
일 실시예에 따른 어플리케이션(110)은 전자 장치(901)의 메모리(930)(예, 도 8의 메모리(930))에 저장된 프로그램일 수 있다. 일 실시예에 따른 어플리케이션(110)은 개인 정보와 관련된 서비스를 사용자에게 제공하는 어플리케이션을 포함할 수 있다. 일 실시예에 따른 어플리케이션(110)은 전자 장치(901) 사용자의 개인 정보와 관련된 서비스를 사용자에게 제공할 수 있다. 예를 들어, 어플리케이션(110)은 사용자의 개인 정보와 관련된 서비스를 사용자에게 제공하기 위하여 사용자를 증명할 수 있는 전자적 형태의 신분증을 신분증 발급 기관으로부터 수신할 수 있다. 일 실시예에 따른 프로세서(920)는 사용자에게 어플리케이션(110)을 통해 본인 인증(예를 들어, pin, pattern, password를 암호 기반 본인 인증 또는 지문(fingerprint), 얼굴(face) 및/또는 홍채(iris)와 같은 생체 정보를 통한 본인 인증)을 요청할 수 있다. 프로세서(920)는 사용자로부터 본인 인증 정보를 수신하여 본인 인증을 수행할 수 있다. 본인 인증이 완료된 후, 프로세서(920)는 어플리케이션(110)을 통해 사용자에게 사용자의 개인 정보를 제공할 수 있다. 일 실시예에 따른 프로세서(920)는 사용자의 개인 정보를 제공하기 위하여 사용자의 개인 정보를 디스플레이에 출력하는 방식을 사용할 수도 있다. 다른 일 실시예에 따른 프로세서(920)는 사용자의 개인 정보를 변형하여 디스플레이에 출력하는 방식(예를 들어, QR 코드, 바코드)을 사용할 수도 있다.
일 실시예에 따른 프로세서(920)는 어플리케이션(110)을 보안 영역(140)에 저장되어 있는 암호화 키와 연결시킬 수 있다. 일 실시예에 따른 프로세서(920)는 사용자가 발급 기관으로부터 신분증을 발급받을 때, 어플리케이션(110)을 보안 영역(140)에 저장되어 있는 암호화 키와 연결시킬 수 있다. 이를 통해, 어플리케이션(110)이 다른 전자 장치로 복제가 되어도, 해당 어플리케이션(110)과 연결된 암호화 키가 다른 전자 장치에는 없으므로, 개인 정보가 유출되지 않을 수 있다. 또한, 어플리케이션(110)이 다른 전자 장치로 복제가 되어도, 해당 어플리케이션을 신분을 증명하는 용도로 사용하지 못할 수도 있다.
일 실시예에 따른 애플릿(150)은 보안 영역 (140)에 저장된 애플리케이션을 포함할 수 있다. 예를 들어, 애플릿(150)은 전자화폐, 금융공동망 및/또는 직불공동망 인증서와 같이 업무 단위로 구현된 단위 프로그램을 포함할 수 있다.
일 실시예에 따른 애플릿(150)은 어플리케이션(110)과 연결되어 있을 수 있다. 일 실시예에 따른 애플릿(150)은 개인 정보 서명키, 개인 정보 인증서(120), 개인 정보 및/또는 서명 대상 데이터 해쉬값을 포함할 수 있다. 일 실시예에 따른 개인 정보 서명키는 어플리케이션(110)에 저장된 개인 정보와 전자 장치(901)가 연결됨을 증명할 수 있는 암호화 키 쌍(예들 들어, 개인키, 공개키)를 포함할 수 있다. 일 실시예에 따른 프로세서(920)는 신분증 발급 기관으로부터 신분증을 발급 받는 경우, 보안 영역(140)을 통해 개인 정보 암호화 키 쌍을 생성하여 발급 기관을 통해 개인 정보 인증서(120)를 발급 받을 수 있다. 일 실시예에 따른 개인 정보 인증서(120)는 개인 정보가 타인의 전자 장치로부터 복제된 것이 아닌 해당 전자 장치(901) 사용자의 소유임을 증명하기 위한 개인 정보 서명키에 대응하는 인증서를 포함할 수 있다. 일 실시예에 따른 개인 정보는 복수의 파일들을 포함할 수 있다. 일 실시예에 따른 개인 정보는 제1 파일 및 제1 파일과 관련된 적어도 하나의 제2 파일을 포함할 수 있다. 일 실시예에 따른 서명 대상 데이터 해쉬값은 개인 정보 서명키로 서명할 대상이 되는 적어도 하나의 데이터를 포함할 수 있다. 예를 들어, 제3 파일의 서명 대상 데이터 해쉬값(152)은 제3 파일(151)에 포함된 복수의 서브 파일들 각각의 해쉬값을 인코딩한 값을 포함할 수 있다. 일 실시예에 따른 서명 대상 데이터 해쉬값은 각각의 파일별로 존재할 수도 있다. 다른 일 실시예에 따른 서명 대상 데이터 해쉬값은 각각의 서브 파일별로 존재할 수도 있다. 일 실시예에 따른 프로세서(920)는 서명 대상 데이터 해쉬값을 개인 정보 서명키로 서명하여 생성된 서명값을 어플리케이션(110)에 저장할 수 있다. 다른 일 실시예에 따른 프로세서(920)는 서명 대상 데이터 해쉬값을 개인 정보 서명키로 서명하여 생성된 서명값을 어플리케이션(110) 및 보안 영역(140) 중 적어도 하나에 저장할 수도 있다.
일 실시예에 따른 접근 규칙 관리자(170)는 개인 정보 서명키에 대한 접근 제어를 위한 모듈을 포함할 수 있다. 일 실시예에 따른 접근 제어는 애플릿(150)에 접근하기 전에 MF(master file) 단에서 수행될 수 있다. 일 실시예에 따른 MF는 보안 영역(140)에 포함된 애플릿(150) 및/또는 파일들의 상위 파일(예를 들어, Root file)일 수 있다. 예를 들어, 접근 제어 프로토콜은 General Authentication Procedure 및/또는 Advanced Inspection Procedure을 포함할 수 있다. 일 실시예에 따른 접근 제어 프로토콜은 예를 들어, 전자 신분증 표준인 BSI TR-03110의 프로토콜을 포함할 수 있다.
일 실시예에 따른 디스패치 모듈(Dispatch module)(130)은 전자 장치(901)와 다른 전자 장치 간의 보안 통신을 위한 모듈을 포함할 수 있다. 일 실시예에 따른 프로세서(920)는 디스패치 모듈(130)을 이용하여 전자 장치(901)와 전자 장치(901)의 보안 영역에 접근하려는 접근 장치(310)간의 상호 인증을 수행할 수 있다. 일 실시예에 따른 프로세서(920)는 디스패치 모듈(130)을 이용하여 보안 영역(140) 및/또는 애플릿(150)과 접근 장치(310) 간의 상호 인증을 수행할 수 있다. 상호 인증이 완료되면, 프로세서(920)는 디스패치 모듈(130)을 이용하여 전자 장치(901)와 접근 장치(310) 간의 보안 통신을 수행할 수 있다. 일 실시예에 따른 전자 장치(901)의 보안 영역 및 접근 장치(310)의 보안 영역 각각에는 비대칭 암호화 키 쌍이 저장될 수 있다. 전자 장치(901)와 접근 장치(310) 사이에서 송수신되는 메시지는 해당 비대칭 암호화 키를 이용하여 형성된 보안 채널의 보안 채널 키를 통해 암호화되거나 복호화될 수 있다. 일 실시예에 따른 디스패치 모듈(130)은 어플리케이션(110)에 포함될 수도 있고, 어플리케이션(110)이 아닌 프레임워크(framework)에 포함될 수도 있다.
일 실시예에 따른 파일(file)은 전자 장치에서 정보를 담는 논리적인 단위를 포함할 수 있다. 일 실시예에 따른 파일은 복수의 서브 파일들을 포함할 수 있다. 예를 들어, 전자 여권 파일은 사진 서브 파일, 지문 서브 파일 및/또는 기계 판독 영역(Machine Readable Zone, MRZ) 서브 파일을 포함할 수 있다. 일 실시예에 따른 서브 파일은 파일 구조에서 파일의 하위 목록에 포함되는 파일일 수 있다. 예를 들어, 파일이 전용 파일(dedicated file, DF)인 경우, 서브 파일은 요소 파일(element file, EF)일 수 있다. 일 실시예에 따른 전용 파일은 파일 제어 정보 및/또는 메모리 할당을 포함하는 파일로서 요소 파일이나 전용 파일의 모파일(mother file)이 될 수 있다. 일 실시예에 따른 파일 제어 정보는 SELECT FILE 명령에 대한 응답으로서, 사용할 수 있는 데이터 바이트 문자열을 포함할 수 있다. 일 실시예에 따른 요소 파일은 동일한 파일 식별자를 가지고 있으며, 다른 파일의 모파일이 될 수 없을 수 있다.
일 실시예에 따른 개인 정보는 개인에 관한 정보 가운데 직접적 또는 간접적으로 각 개인을 식별할 수 있는 정보를 포함할 수 있다. 일 실시예에 따른 개인 정보는 개인의 신분을 증명하기 위한 정보를 포함하는 제1 파일 및 제1 파일과 관련된 정보를 포함하는 복수의 제2 파일들을 포함할 수 있다. 예를 들어, 제1 파일이 주민등록증 파일인 경우, 제2 파일은 주민등록증과 관련된 정보인 가족 관계 파일, 건강 보험 파일, 건강 검진 기록 파일 및/또는 예방 접종 기록 파일 중 적어도 하나를 포함할 수 있다. 또 다른 예를 들어, 제1 파일이 여권 파일인 경우, 제2 파일은 여권과 관련된 정보인 사용자가 발급 받은 비자(visa) 파일, 사용자의 생체 정보 파일 및/또는 사용자의 출입국 기록 파일 중 적어도 하나를 포함할 수 있다. 또 다른 예를 들어, 제1 파일은 사용자가 현재 거주하는 주(state)의 운전 면허증 파일인 경우, 제2 파일은 사용자가 취득한 적어도 하나의 다른 주의 운전 면허증 파일 및/또는 다른 나라의 운전 면허증 파일 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 일반 영역(105)은 보안 영역과 구분되는 영역으로서, 어플리케이션(110)이 저장된 영역을 포함할 수 있다. 일 실시예에 따른 일반 영역(105)은 보안 영역과 다른 접근 제어를 받는 영역을 포함할 수 있다. 예를 들어, 일반 영역(105)은 보안 영역보다 강도가 낮은 접근 제어를 받을 수 있다. 일 실시예에 따른 일반 영역(105)에는 어플리케이션(110)이 포함될 수 있다.
일 실시예에 따른 어플리케이션(110)과 보안 영역(140)은 서로 대응하는 파일들을 가질 수 있다. 예를 들어, 일반 영역(105)에 포함된 제1 파일(111)은 전자 여권 파일이고, 제2 파일1(113)은 여행 기록 파일이고, 제2 파일2(115)은 비자 기록 파일이며, 제2 파일3(117)은 사용자의 생체 파일일 수 있다. 여행 기록 파일, 비자 기록 파일, 생체 파일은 모두 전자 여권과 관련된 정보이므로, 프로세서(920)는 전자 여권 파일을 제1 파일로 하고, 전자 여권과 관련된 파일을 제2 파일들로 결정할 수 있다. 일 실시예에 따른 보안 영역(140)은 일반 영역(105)에 저장된 파일들과 대응하는 파일들을 포함할 수 있다. 예를 들어, 보안 영역(140)에 포함된 제3 파일(151)은 전자 여권 파일이고, 제4 파일1(153)은 여행 기록 파일이고, 제4 파일2(155)는 비자 기록 파일이고, 제4 파일3(157)은 사용자의 생체 파일일 수 있다. 따라서 보안 영역(140)에 포함된 파일과 대응하는 파일이 일반 영역(105)에 존재할 수 있다. 일 실시예에 따른 일반 영역(105)에 저장된 파일과 대응하는 보안 영역(140)에 저장된 파일은 어플리케이션(110)에 저장된 파일과 동일한 데이터를 포함할 수 있다. 다른 일 실시예에 따른 일반 영역(105)에 저장된 파일과 대응하는 보안 영역(140)에 저장된 파일은 어플리케이션에 저장된 파일과 적어도 일부의 데이터가 동일한 데이터를 포함할 수 있다.
일 실시예에 따른 파일은 복수의 서브 파일들을 포함할 수 있다. 예를 들어, 제4 파일1(153)이 여행 기록 파일인 경우, 제4 파일1(153)은 출국 기록 서브 파일 및/또는 입국 기록 서브 파일을 포함할 수 있다.
일 실시예에 따른 파일들은 서로 참조를 할 수도 있다. 예를 들어, 제2 파일2(115)는 비자 기록 파일이고, 제2 파일3(117)은 사용자의 생체 파일인 경우, 제2 파일2(115)에 포함된 비자를 발행한 국가 서브 파일과 제2 파일3(117)에 포함된 지문 서브 파일은 서로 참조할 수 있다. 제2 파일2(115)에 포함된 비자를 발행한 국가 서브 파일에 지문 서브 파일의 위치 정보(예를 들어, 참조 번호 및/또는 인덱스)를 저장함으로써, 프로세서(920)는 제2 파일2(115)이 제2 파일3(117)을 참조하도록 할 수 있다.
일 실시예에 따른 보안 영역(140)에 포함된 파일은 일반 영역(105)에 포함된 파일과 동일한 데이터를 포함할 수 있다. 예를 들어, 보안 영역의 제4 파일1(153)에 포함된 데이터와 어플리케이션(110)의 제2 파일1(113)에 포함된 데이터는 동일할 수 있다. 예를 들어, 보안 영역의 제4 파일1(153)은 어플리케이션(110)의 제2 파일1(113)에 포함된 데이터를 모두 포함할 수 있다. 다른 일 실시예에 따른 보안 영역(140)의 제4 파일2(155)에 포함된 데이터와 어플리케이션(110)의 제2 파일2(115)에 포함된 데이터는 다를 수 있다. 예를 들어, 복수의 데이터들 중 보안 영역에만 저장되는 데이터가 존재할 수 있다. 이 경우, 해당 데이터는 보안 영역(140)의 제4 파일2(155)에만 추가되고, 어플리케이션(110)의 제2 파일2(115)에는 추가되지 않을 수 있다. 예를 들어, 보안 영역의 제4 파일1(153)에 포함된 데이터가 어플리케이션(110)의 제2 파일1(113)에 포함되지 않을 수 있다. 반대로 어플리케이션(110)의 제2 파일1(113)에 포함된 데이터가 보안 영역의 제4 파일1(153)에 포함되지 않을 수 있다. 일 실시예에 따른 보안 영역에만 저장되는 데이터는 접근 제어가 필요한 데이터를 포함할 수 있다. 일 실시예에 따른 프로세서(920)는 해당 데이터를 인증 과정을 거친 후, 필요한 경우에만 보안 영역(140)으로부터 어플리케이션(110)으로 해당 데이터를 전송할 수 있다.
일 실시예에 따른 파일은 해당하는 파일의 서명값을 포함할 수 있다. 일 실시예에 따른 서명값은 특정 데이터를 특정 키를 이용하여 서명한 값을 포함할 수 있다. 일 실시예에 따른 서명값은 제1 서명값을 포함할 수 있다. 일 실시예에 따른 제1 서명값은 특정 전자 장치(901)에서만 개인 정보가 유효하다는 것을 증명하기 위한 서명값을 포함할 수 있다. 일 실시예에 따른 프로세서(920)는 보안 영역에 저장된 개인 정보 서명키(190)를 이용하여 각각의 파일을 서명함으로써, 제1 서명값을 생성할 수 있다. 도 1에 도시된 서명값들은 각각의 파일에 대한 제1 서명값을 의미할 수 있다. 예를 들어, 제1 파일의 서명값(112)은 제1 파일(111)을 개인 정보 서명키(190)를 이용하여 프로세서(920)가 서명한 서명값을 포함할 수 있다. 이를 통해, 프로세서(920)는 제1 파일의 서명값(112)을 이용하여 제1 파일(111)은 특정 전자 장치(901)에서만 유효하다는 것을 증명할 수 있다. 또 다른 예를 들어, 제2 파일1의 서명값(114)은 제2 파일1(113)을 개인 정보 서명키(190)를 이용하여 프로세서(920)가 서명한 서명값을 포함할 수 있다.
일 실시예에 따른 각각의 파일이 개인 정보 서명키(190)를 이용하여 서명한 제1 서명값을 보유함으로써, 복수의 파일들 중 일부 파일만 업데이트되는 경우, 해당하는 파일의 제1 서명값만 변경하면 되므로, 업데이트에 소요되는 비용 및 시간이 절약될 수도 있다.
다른 일 실시예에 따른 프로세서(920)는 보안 영역에 저장된 개인 정보 서명키(190)를 이용하여 일반 영역(105)에 포함된 복수의 파일들 전부를 서명할 수도 있다. 이 경우, 제1 서명값은 일반 영역(105)에 포함된 복수의 파일들 각각에 대하여 존재하는 것이 아니라, 하나만 존재할 수도 있다. 다른 일 실시예에 따른 개인 정보 서명키(190)는 각각의 파일별로 존재할 수도 있다. 예를 들어, 제3 파일(151)을 서명하는 개인 정보 서명키, 제4 파일1(153)을 서명하는 개인 정보 서명키, 제4 파일2(155)를 서명하는 개인 정보 서명키, 제4 파일3(157)을 서명하는 개인 정보 서명키가 각각 존재할 수 있고, 각각의 개인 정보 서명키는 서로 다를 수도 있다.
도 2는 일 실시예들에 따른 개인 정보를 저장하기 위한 파일 구조를 설명하기 위한 블록도이다.
도 2에서는 제2 파일(200), 서브 파일1(210), 서브 파일2(230), 서브 파일 인증서(250), 서명 대상 데이터 해쉬값(270), 개인 정보 인증서(280) 및 제1 서명값(290)이 도시되어 있다. 일 실시예에 따른 제2 파일(200)은 일반 영역(105)에 포함된 파일을 포함할 수 있다. 다른 일 실시예에 따른 제2 파일(200)은 보안 영역(140)에 포함된 파일을 포함할 수도 있다. 다른 일 실시예에 따른 보안 영역(140)에 포함된 파일은 도 2에 도시된 제2 파일(200) 중 일부 구성이 생략되거나 다른 구성이 추가될 수도 있다.
일 실시예에 따른 일반 영역(105)에 포함된 파일 구조와 보안 영역(140)에 포함된 파일 구조는 동일한 파일 구조일 수 있다. 예를 들어, 도 2에 도시된 바와 같이 일반 영역(105)에 포함된 파일 및 보안 영역(140)에 포함된 파일은 복수의 서브 파일들, 서브 파일 인증서(250), 서명 대상 데이터 해쉬값(270), 개인 정보 인증서(280) 및/또는 제1 서명값(290)을 포함할 수 있다. 일 실시예에 따른 개인 정보 인증서(280)는 보안 영역(140)에 존재할 수 있다.
다른 일 실시예에 따른 일반 영역(105)에 포함된 파일 구조와 보안 영역(140)에 포함된 파일 구조는 다를 수도 있다. 예를 들어, 일반 영역(105)에 포함된 파일의 구성과 구조와 보안 영역(140)에 포함된 파일의 구성이 다를 수 있다. 일 실시예에 따른 일반 영역(105)에 포함된 파일은 복수의 서브 파일들, 파일에 대응하는 제1 서명값, 서브 파일 인증서(250), 서명 대상 데이터 해쉬값(270) 및/또는 개인 정보 인증서(280)를 포함할 수 있다. 그리고 보안 영역(140)에 포함된 파일은 개인 정보 인증서(280), 복수의 서브 파일들 및/또는 서명 대상 데이터 해쉬값(270)을 포함할 수 있다. 따라서, 일반 영역(105)에 포함된 파일 구조와 보안 영역(140)에 포함된 파일 구조는 서로 다를 수도 있다.
일 실시예에 따른 파일은 파일의 적어도 일부를 개인 정보 서명키를 이용하여 서명한 제1 서명값(290), 개인 정보 서명키(190)에 대응하는 개인 정보 인증서(280), 서명 대상 데이터 해쉬값(270), 적어도 하나의 서브 파일(210, 230) 및 적어도 하나의 서브 파일 각각에 대응하는 적어도 하나의 서브 파일 인증서(250) 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 파일은 제1 파일 및/또는 제2 파일을 포함할 수 있다. 제1 파일 및/또는 제2 파일은 동일한 파일 구조를 가질 수도 있으며, 다른 파일 구조를 가질 수도 있다. 도 2에서는 예시적으로 제2 파일의 구조를 도시하였으며, 도2에 도시된 파일 구조는 제1 파일의 파일 구조와 동일할 수도 있다.
일 실시예에 따른 서브 파일 인증서(250)는 특정 서브 파일(또는 특정 데이터)에 대한 권한 정보를 포함할 수 있다. 일 실시예에 따른 서브 파일 인증서(250)는 특정 데이터와 관련된 권한 정보를 포함할 수 있다. 일 실시예에 따른 서브 파일 인증서(250)는 특정 데이터를 전자 장치(901)에 추가할 수 있는지 여부에 대한 권한 정보를 포함할 수 있다. 일 실시예에 따른 서브 파일 인증서(250)는 특정 데이터에 기초하여 타겟 파일을 업데이트할 수 있는 권한 정보를 포함할 수 있다. 예를 들어, 접근 장치(예, 도 3a 내지 도3b의 접근 장치(310))가 전자 장치(901)에 특정 데이터를 추가하려고 하는 경우, 특정 데이터에 대한 권한이 있는지 여부가 중요할 수 있다. 특정 데이터에 대한 권한은 접근 장치(310)가 전자 장치(901)에 접근하여 데이터를 업데이트할 수 있는 권한과 다를 수 있다. 그 이유는 전자 장치(901)에 추가하려는 특정 데이터를 생성한 주체가 접근 장치(310)가 아니라 다른 전자 장치가 될 수 있기 때문이다. 이 경우, 전자 장치(901)에 추가하려는 특정 데이터에 대한 권한은 해당 데이터를 생성한 다른 전자 장치에 귀속될 수 있다. 그렇다면, 접근 장치(310)는 다른 전자 장치로부터 해당 데이터에 대한 권한을 위임 받아야 해당 데이터를 전자 장치(901)에 추가할 수 있다. 따라서 특정 데이터를 전자 장치(901)에 추가할 수 있는 데이터에 대한 권한이 존재하는지 여부를 프로세서(920)가 확인할 필요가 있을 수 있다. 따라서, 프로세서(920)는 서브 파일 인증서(250)에 포함된 권한 정보에 기초하여 특정 데이터를 추가하여 개인 정보를 업데이트할지를 결정할 수 있다.
일 실시예에 따른 서브 파일1(210)은 출국 기록을 포함하는 서브 파일이고, 서브 파일2(230)는 입국 기록을 포함하는 서브 파일일 수 있다. 예를 들어, 서브 파일1(210)은 출국 기록1을 포함할 수 있고, 서브 파일2(230)는 입국 기록1을 포함할 수 있다. 서브 파일 인증서(250)는 출국 기록1에 대한 서브 파일 인증서(예를 들어, 도 2의 EF signer cert1) 및 입국 기록1에 대한 서브 파일 인증서(예를 들어, 도 2의 EF singer cert2)를 포함할 수 있다.
일 실시예에 따른 서명 대상 데이터 해쉬값(270)은 개인 정보 서명키로 서명할 대상이 되는 적어도 하나의 데이터를 포함할 수 있다. 예를 들어, 서명 대상 데이터 해쉬값(270)은 TBS(to be signed) value를 포함할 수 있다. 일 실시예에 따른 서명 대상 데이터 해쉬값(270)은 각각의 파일(예를 들어, 전용 파일 DF)별로 존재할 수도 있다. 일 실시예에 따른 서명 대상 데이터 해쉬값(270)은 파일 내에 포함된 복수의 서브 파일들 각각의 해쉬값(hash value)을 인코딩(encoding)한 값을 포함할 수 있다. 다른 일 실시예에 따른 서명 대상 데이터 해쉬값(270)은 각각의 서브 파일(예를 들어, 요소 파일 EF)별로 존재할 수도 있다.
일 실시예에 따른 개인 정보 인증서(280)는 개인 정보가 타인의 전자 장치로부터 복제된 것이 아닌 해당 전자 장치(901)의 사용자 소유임을 증명하기 위한 개인 정보 서명키에 대응하는 인증서를 포함할 수 있다
일 실시예에 따른 제1 서명값(290)은 특정 전자 장치(901)에서만 개인 정보가 유효하다는 것을 증명하기 위한 서명값을 포함할 수 있다.
도 3a 내지 3b은 일 실시예에 따른 접근 장치로부터 수신하는 업데이트 파일을 설명하기 위한 도면이다.
도 3a에서는 어플리케이션(110), 제1 파일(111), 제1 파일의 서명값(112), 제2 파일1(113), 제2 파일1의 서명값(114), 제2 파일2(115), 제2 파일2의 서명값(116), 제2 파일3(117), 제2 파일3의 서명값(118), 보안 영역(140), 애플릿(150), 제3 파일(151), 제3 파일의 서명 대상 데이터 해쉬값(152), 제4 파일1(153), 제4 파일1의 서명 대상 데이터 해쉬값(154), 제4 파일2(155), 제4 파일2의 서명 대상 데이터 해쉬값(156), 제4 파일3(157), 제4 파일3의 서명 대상 데이터 해쉬값(158), 개인 정보 서명키(190), 디스패치 모듈(130), 접근 규칙 관리자(170), 접근 장치(310), 업데이트 파일(380), 서브 파일(381), 제2 서명값(382), 서브 파일 인증서 위치 정보(383), 접근 장치 인증서(360), 서브 파일 인증서(370) 및 데이터 전송(320, 340, 350)이 도시되어 있다.
일 실시예에 따른 접근 장치(310)는 전자 장치(901)에 접근을 요청하는 전자 장치를 포함할 수 있다. 일 실시예에 따른 접근 장치(310)는 적어도 하나의 프로세서를 포함할 수 있다. 일 실시예에 따른 접근 장치(310)의 동작은 접근 장치(310)에 포함된 적어도 하나의 프로세서에 의해 수행될 수 있다. 일 실시예에 따른 접근 장치(310)는 전자 장치(901)에 접근하여, 전자 장치(901)에 포함된 데이터에 대하여 특정 동작(예를 들어, 데이터를 read, write, edit 및/또는 append 하는 동작)을 수행하기 위한 전자 장치를 포함할 수 있다. 일 실시예에 따른 접근 장치(310)는 전자 장치(901)에 포함된 보안 영역(140)을 인식하여, 보안 영역(140)에 포함된 데이터를 read하고, 개인 정보를 업데이트할 수 있다. 예를 들어, 접근 장치(310)는 관공서의 모바일 신분증 또는 모바일 신분 데이터 발급 관리자의 전자 장치를 포함할 수 있다. 또 다른 예를 들어, 접근 장치(310)는 모바일 전자 여권의 경우, 출입국 관리소 담당자의 전자 장치일 수 있다. 또 다른 예를 들어, 접근 장치(310)는 각국의 대사관 비자 발급 담당자의 전자 장치를 포함할 수 있다. 또 다른 예를 들어, 접근 장치(310)는 동사무소의 리더기를 포함할 수 있다.
일 실시예에 따른 접근 장치(310)는 접근 장치 인증서(360), 서브 파일 인증서(370) 및/또는 업데이트 파일(380)을 포함할 수 있다. 전술한 사항은 예시일 뿐 접근 장치(310)는 다른 구성을 더 포함할 수도 있고, 일부 구성을 생략할 수도 있다.
일 실시예에 따른 서브 파일 인증서(370)는 중간 단계 인증 기관이 서명한 것이며, 중간 단계 인증서는 최상위 인증기관이 서명한 것일 수 있다. 일 실시예에 따른 서브 파일 인증서(370)는 접근 장치(310)와 다른 전자 장치에 의하여 생성될 수도 있다. 일 실시예에 따른 서브 파일 인증서(370)는 접근 장치(310)와는 다른 데이터 발급 기관의 전자 장치에 의해 생성된 파일일 수 있다. 데이터 발급 기관은 예를 들어, 조폐청, 여권 발행국, 출입국 관리소 중 적어도 하나를 포함할 수 있다. 일 실시예에 따른 서브 파일 인증서(370)는 해당 인증서에 대응하는 서브 파일 서명키를 포함할 수 있다.
일 실시예에 따른 업데이트 파일(380)은 전자 장치(901)에 포함된 개인 정보를 업데이트하기 위하여 필요한 파일을 포함할 수 있다. 일 실시예에 따른 업데이트 파일(380)은 서브 파일(381), 제2 서명값(382) 및/또는 서브 파일 인증서 위치 정보(383)를 포함할 수 있다. 다른 일 실시예에 따른 업데이트 파일(380)은 복수의 서브 파일들, 제2 서명값(382) 및/또는 서브 파일 인증서 위치 정보(383)를 포함할 수 있다. 복수의 서브 파일들에 대한 예시는 도3b를 참조하여 구체적으로 후술된다.
일 실시예에 따른 업데이트 파일(380)에 포함된 서브 파일(381)은 전자 장치(901)에 포함된 타겟 파일을 업데이트하기 위한 서브 파일을 포함할 수 있다. 예를 들어, 전자 장치(901)의 사용자가 출국을 하여, 새로운 출국 기록을 전자 장치(901)에 추가할 필요가 존재할 수 있다. 이 경우, 프로세서(920)는 출국 기록을 포함하는 서브 파일1(210)에 출국 기록2를 추가할 필요가 존재할 수 있다. 이 경우 서브 파일(381)은 출국 기록2에 대한 정보를 포함할 수 있다. 예를 들어, 서브 파일1(210)에 출국 기록2를 추가하기 위하여 접근 장치(310)는 출국 기록2를 포함하는 서브 파일(381)을 생성할 수 있다.
일 실시예에 따른 제2 서명값(382)은 서브 파일 인증키를 이용하여 서브 파일(381)을 서명한 서명값을 포함할 수 있다. 일 실시예에 따른 서브 파일 인증키는 서브 파일 인증서(250)에 대응할 수 있다. 일 실시예에 따른 서브 파일 인증서(250)는 특정 서브 파일(또는 특정 데이터)에 대한 권한 정보를 포함할 수 있다.
일 실시예에 따른 업데이트 파일(380)에 포함된 서브 파일(381)은 접근 장치(310)에 의하여 생성될 수 있다. 접근 장치(310)는 서브 파일(381)을 생성한 후, 해당 서브 파일(381)을 서브 파일 인증키로 서명하여 제2 서명값(382)을 생성할 수 있다. 그리고 접근 장치(310)는 서브 파일 인증서 위치 정보(383)(예를 들어, 서브 파일 인증서 참조 번호)를 전자 장치(901)로부터 수신할 수 있다. 따라서 접근 장치(310)는 서브 파일(381)에 제2 서명값(382) 및/또는 서브 파일 인증서 위치 정보(383)를 추가할 수 있다. 또 다른 예로, 접근 장치(310)는 서브 파일(381), 제2 서명값(382) 및/또는 서브 파일 인증서 위치 정보(383)를 포함하는 업데이트 파일(380)을 생성할 수도 있다.
다른 일 실시예에 따른 업데이트 파일(380)에 포함된 서브 파일(381)은 접근 장치(310)와 다른 전자 장치에 의하여 생성될 수도 있다. 예를 들어, 서브 파일(381)은 접근 장치(310)와는 다른 데이터 발급 기관의 전자 장치에 의해 생성된 파일일 수 있다. 이 경우, 접근 장치(310)는 데이터 발급 기관의 전자 장치로부터 서브 파일(381)을 전달 받아 전자 장치(901)에 전달하는 역할을 수행할 수 있다. 일 실시예에 따른 데이터 발급 기관의 전자 장치는 서브 파일 인증키를 이용하여 새롭게 생성된 서브 파일(381)을 서명하여 제2 서명값(382)을 생성할 수 있다. 또한 데이터 발급 기관의 전자 장치는 서브 파일 인증서 위치 정보(383)를 전자 장치(901)로부터 수신할 수 있다. 따라서, 데이터 발급 기관의 전자 장치는 새롭게 생성된 서브 파일(381)에 제2 서명값(382) 및 서브 파일 인증서 위치 정보(383)를 추가할 수 있다. 다른 예로, 데이터 발급 기관의 전자 장치는 새롭게 생성된 서브 파일(381), 제2 서명값 및 서브 파일 인증서 위치 정보(383)를 포함하는 업데이트 파일(380)을 생성할 수 있다.
일 실시예에 따른 서브 파일 인증서 위치 정보(383)는 전자 장치(901)에서 서브 파일 인증서가 메모리(예, 도 8의 메모리(930))에 저장된 위치 정보(예: 참조 번호 및/또는 인덱스)를 포함할 수 있다. 예를 들어, 서브 파일 인증서 위치 정보(383)는 전자 장치(901)에서 서브 파일 인증서를 참조할 수 있는 서브 파일 인증서의 참조 번호를 포함할 수 있다. 접근 장치(310)는 전자 장치(901)로부터 서브 파일 인증서 위치 정보(383)를 수신할 수 있다.
일 실시예에 따른 접근 장치 인증서(360)는 접근 장치를 인증하기 위한 인증서를 포함할 수 있다. 일 실시예에 따른 접근 장치 인증서(360)는 전자 장치(901) 접근 권한에 대한 정보를 포함할 수 있다. 일 실시예에 따른 권한 정보는 접근 장치(310) 또는 다른 전자 장치가 특정 전자 장치(901)에 접근하여 전자 장치(901)에 저장된 개인 정보에 대하여 수행할 수 있는 권한에 대한 정보를 포함할 수 있다. 예를 들어, 권한 정보는 접근 장치(310)가 전자 장치(901)와 보안 채널을 형성하고, 전자 장치(901)에 포함된 데이터를 search, read, write 및/또는 append 할 수 있는 권한 정보를 포함할 수 있다. 일 실시예에 따른 접근 장치 인증서(360)는 해당 인증서에 대응하는 접근 장치 인증키를 포함할 수 있다.
일 실시예에 따른 접근 장치 인증서(360)와 서브 파일 인증서(370)는 동일할 수도 있고 다를 수도 있으며, 본 개시는 이에 제한되지 않는다.
일 실시예에 따른 접근 장치(310)는 접근 장치 인증서(360)를 포함할 수 있다. 일 실시예에 따른 접근 장치(310)는 다른 전자 장치(예를 들어, 다른 데이터 발급 기관의 전자 장치)에 의해 생성된 서브 파일 인증서(370) 및 업데이트 파일(380)을 포함할 수 있다. 예를 들어, 접근 장치 인증서(360)는 공항, 동사무소와 같은 장소에 설치된 리더기에 포함될 수 있고, 서브 파일 인증서(370) 및 업데이트 파일(380)은 리더기와 연결된 서버에 의하여 관리될 수 있다.
일 실시예에 따른 전자 장치(901)는 접근 장치(310)와 통신을 위해 BLE (bluetooth low energy, BLE) 및/또는 UWB(ultra- wideband, UWB) 방식을 사용할 수 있다. 이 경우, 전자 장치(901)의 프로세서(920)는 디스패치 모듈(130)을 이용하여 접근 장치(310)와 통신을 할 수 있다. 그리고, 전자 장치(901)의 프로세서(920)는 접근 규칙 관리자(170)를 이용하여 접근 장치(310)의 접근 제어를 수행할 수 있다. 일 실시예에 따른 BLE 방식은 접근 장치(310)와 보안 영역(140) 간에 송수신되는 데이터를 중계해줄 모듈이 필요할 수 있다. 해당 데이터를 중계해줄 모듈은 Dispatch Module(130)을 포함할 수 있다. 해당 데이터는 접근 규칙 관리자(170)에서 관리하는 키로 암호화된 채널을 통해, 접근 장치(310)와 보안 영역(140) 간의 통신이 이루어지므로, Dispatch Module(130)은 해당 데이터를 가로채거나 변경할 수 없을 수 있다.
다른 일 실시예에 따른 전자 장치(901)는 접근 장치(310)와 통신을 위해 NFC(Near-field communication) 방식을 사용할 수 있다. 이 경우, 전자 장치(901)의 프로세서(920)는 접근 규칙 관리자(170)를 이용하여 접근 장치(310)의 접근 제어를 수행할 수 있다. 일 실시예에 따른 NFC 방식은 보안 영역(140)에 인가되거나 보안 영역(140)으로부터 전송되는 데이터를 중계해줄 모듈이 필요하지 않으므로, 접근 규칙 관리자(170)를 이용하여 접근 장치(310)와 보안 영역(140) 간의 통신이 가능할 수 있다.
도 3b에서는 업데이트 파일(380)에 복수의 서브 파일들이 포함된 경우가 도시되어 있다.
도 3b에서는 서브 파일1(384), 서브 파일2(385), 제2 서명값1(386), 제2 서명값2(387), 서브 파일 인증서1의 위치 정보(388), 서브 파일 인증서2의 위치 정보(389), 서브 파일 인증서1(371) 및 서브 파일 인증서2(372)가 도시되어 있다.
일 실시예에 따른 접근 장치 인증서(360)는 접근 장치를 인증하기 위한 인증서를 포함할 수 있다. 일 실시예에 따른 접근 장치 인증서(360)는 전자 장치(901) 접근 권한에 대한 정보를 포함할 수 있다. 일 실시예에 따른 권한 정보는 접근 장치(310) 또는 다른 전자 장치가 특정 전자 장치(901)에 접근하여 전자 장치(901)에 저장된 개인 정보에 대하여 수행할 수 있는 권한에 대한 정보를 포함할 수 있다. 예를 들어, 권한 정보는 접근 장치(310)가 전자 장치(901)와 보안 채널을 형성하고, 전자 장치(901)에 포함된 데이터를 search, read, write 및/또는 append 할 수 있는 권한 정보를 포함할 수 있다. 일 실시예에 따른 접근 장치 인증서(360)는 해당 인증서에 대응하는 접근 장치 인증키를 포함할 수 있다.
일 실시예에 따른 업데이트 파일(380)은 복수의 서브 파일들을 포함할 수 있다. 이 경우, 업데이트 파일(380)은 서브 파일(381) 각각에 대한 서명값을 포함할 수 있다. 예를 들어, 업데이트 파일(380)은 서브 파일1(384) 및 서브 파일2(385)를 포함할 수 있다. 그리고 업데이트 파일(380)은 서브 파일1(384)을 서명한 서명값인 제2 서명값1(386) 및 서브 파일2(385)를 서명한 서명값인 제2 서명값2(387)을 포함할 수 있다. 일 실시예에 따른 각각의 서브 파일은 동일한 서브 파일 인증서로 서명될 수 있다. 다른 일 실시예에 따른 각각의 서브 파일은 서로 다른 서브 파일 인증서로 서명될 수도 있다. 예를 들어, 서브 파일1(384)는 서브 파일 인증서1(371)로 서명될 수 있고, 서브 파일2(385)는 서브 파일 인증서2(372)로 서명될 수도 있다. 이 경우, 업데이트 파일(380)은 서브 파일 인증서1의 위치 정보(388) 및 서브 파일 인증서2의 위치 정보(389)를 포함할 수 있다.
도 4는 일 실시예에 따른 전자 장치의 보안 영역 및 접근 장치를 인증하는 방법을 설명하기 위한 도면이다.
일 실시예에 따른 접근 장치(310)(예, 접근 장치(310)에 포함된 적어도 하나의 프로세서)는 접근 장치(310)와 전자 장치(901) 간의 연결을 위한 정보를 읽을(410) 수 있다. 예를 들어, 접근 장치(310)는 EF.CardAccess file에 기초하여, 접근 장치(310)와 전자 장치(901) 간의 연결을 위한 정보를 획득할 수 있다. 일 실시예에 따른 EF.CardAccess file은 애플릿에 의해 지원되는 PACE(Password Authenticated Connection Establishment) 프로토콜 파라미터에 대한 정보를 포함할 수 있다.
일 실시예에 따른 접근 장치(310)는 전자 장치(901)의 보안 영역(140)에 포함된 애플릿을 선택하기 위한 정보를 읽을(420) 수 있다. 예를 들어, 접근 장치(310)는 EF.Dir file을 읽음으로써, 전자 장치(901) 내의 애플릿을 선택할 수 있다. 일 실시예에 따른 EF.Dir file은 애플릿 선택하기 위한 정보를 포함할 수 있다.
일 실시예에 따른 접근 장치(310)는 암호 기반 인증 프로토콜을 수행(430)하여 전자 장치(901)에 접근할 수 있는 권한을 획득할 수 있다. 일 실시예에 따른 암호 기반 인증 프로토콜은 PACE 프로토콜을 포함할 수 있다. 일 실시예에 따른 PACE 프로토콜은 PIN(personal identification number), MRZ(machine readable zone) 및/또는 CAN(card access number)를 이용한 프로토콜을 포함할 수 있다.
일 실시예에 따른 접근 장치(310)는 암호 기반 인증 프로토콜을 수행함으로써, 전자 장치(901)에 포함된 적어도 일부의 데이터에 접근할 수 있다. 하지만 접근 장치(310)는 보안 정책에 따라 전자 장치(901)에 포함된 일부의 데이터에는 접근하지 못할 수 있다. 보안 정책에 따라 보안의 중요도가 높은 일부의 데이터에 접근 장치(310)가 접근하기 위해서는 추가적인 인증이 필요할 수도 있다.
일 실시예에 따른 접근 장치(310)는 보안 영역 인증을 위한 파일을 읽을(440) 수 있다. 보안 영역 인증을 위한 파일은 특정 애플릿이 설치된 보안 영역이 보안상 문제가 없는지 확인하기 위한 정보를 포함할 수 있다. 보안 영역 인증을 위한 파일은 보안 영역 인증키와 관련된 정보를 포함할 수 있다. 예를 들어, 보안 영역 인증을 위한 파일은 EF.CardSecurity file을 포함할 수 있다. 그리고 EF.CardSecurity file은 보안 영역 인증키(예를 들어, Chip Authentication public key)와 관련된 정보를 포함할 수 있다.
일 실시예에 따른 접근 장치(310)는 보안 영역 인증을 수행(450)할 수 있다. 일 실시예에 따른 보안 영역 인증은 보안 영역에 저장되어 있는 보안 영역 인증키를 이용하여 수행될 수 있다. 일 실시예에 따른 전자 장치(901)의 프로세서(920)는 보안 영역 인증키를 접근 장치(310)에 전송할 수 있다. 일 실시예에 따른 접근 장치(310)는 보안 영역 인증키를 수신하여 보안 영역 인증을 수행할 수 있다. 일 실시예에 따른 동작(450)은 동작(430)과 동시에 수행될 수도 있다. 예를 들어, 암호 기반 인증 프로토콜과 보안 영역 인증이 동시에 수행될 수 있다.
일 실시예에 따른 전자 장치(901)는 접근 장치 인증을 수행(460)할 수 있다. 전자 장치(901)의 프로세서(920)는 접근 장치(310)로부터 수신한 접근 장치 인증서를 이용하여 접근 장치(310)를 인증할 수 있다. 일 실시예에 따른 프로세서(920)는 보안 영역에 저장되어 있는 신뢰할 수 있는 인증 기관(Certificate Authority, CA) 정보에 기초하여, 접근 장치 인증서가 신뢰할 수 있는 인증 기관으로부터 서명된 것인지 검증할 수 있다. 다른 일 실시예에 따른 프로세서(920)는 랜덤 챌린지(random challenge) 방식을 이용하여 서명을 확인함으로써 접근 장치(310)를 인증할 수도 있다. 일 실시예에 따른 랜덤 챌린지는 프로세서(920)가 인증시마다 다르게 생성된 임의의 숫자를 접근 장치(310)에 전송하고, 해당하는 임의의 숫자에 기초한 서명값을 수신하여 검증함으로써 접근 장치(310)를 인증하는 방식을 포함할 수 있다.
일 실시예에 따른 동작(450)과 동작(460)의 순서는 서로 바뀔 수도 있다.
다른 일 실시예에 따른 동작(450) 또는 동작(460) 중 적어도 하나는 생략될 수도 있다.
일 실시예에 따른 개인 정보 업데이트의 경우, 동작(450) 및 동작(460)을 수행할 수 있다.
일 실시예에 따른 프로세서(920)는 보안 영역의 인증 및 접근 장치의 인증 완료 여부에 기초하여 접근 장치(310)와 전자 장치(901) 간의 보안 채널을 생성할 수 있다. 일 실시예에 따른 보안 영역의 인증 및 접근 장치의 인증이 모두 완료된 경우, 보안 채널이 생성될 수 있다. 일 실시예에 따른 보안 채널은 접근 장치(310)와 전자 장치(901) 간에 송수신하는 데이터가 암호화된 채널을 의미할 수 있다. 일 실시예에 따른 접근 장치(310)와 전자 장치(901) 간에 송수신하는 데이터는 세션 키를 이용하여 암호화된 데이터를 포함할 수 있다.
일 실시예에 따른 프로세서(920)는 접근 장치의 권한 정보에 기초하여 권한을 부여(470)할 수 있다.
일 실시예에 따른 접근 장치(310)의 인증이 성공한 경우, 프로세서(920)는 접근 장치 인증서(360)에 포함된 권한 정보에 기초하여 접근 장치에 부여된 권한을 확인할 수 있다. 일 실시예에 따른 권한 정보는 접근 장치(310)가 전자 장치(901)에 포함된 데이터에 접근하여 수행할 수 있는 동작에 대한 권한을 포함할 수 있다. 일 실시예에 따른 권한 정보는 검색 권한 정보, 읽기 권한 정보, 수정 권한 정보 및 추가 권한 정보 중 적어도 하나를 포함할 수 있다. 일 실시예에 따른 검색 권한 정보는 전자 장치(901)에 포함된 데이터를 접근 장치(310)가 검색할 수 있는 권한 정보를 포함할 수 있다. 일 실시예에 따른 읽기 권한 정보는 전자 장치(901)에 포함된 데이터를 접근 장치(310)가 읽을 수 있는 권한 정보를 포함할 수 있다. 일 실시예에 따른 수정 권한 정보는 접근 장치에 포함된 데이터를 접근 장치(310)가 수정할 수 있는 권한 정보를 포함할 수 있다. 예를 들어, 수정 권한 정보는 덮어쓰기에 대한 권한 정보를 포함할 수도 있다. 예를 들어, 수정 권한이 있는 경우 접근 장치(310)는 새로운 데이터에 기초하여 기존 데이터를 수정할 수 있다. 또 다른 예를 들어, 수정 권한이 있는 경우, 접근 장치(310)는 새로운 데이터를 기존 데이터에 덮어쓸 수 있다. 일 실시예에 따른 추가 권한 정보는 새로운 데이터를 기존 데이터에 추가할 수 있는 권한 정보를 포함할 수 있다. 예를 들어, 접근 장치(310)는 기존 데이터를 유지하면서 새로운 데이터를 추가할 수 있다. 이 경우, 데이터에 대한 이력 정보를 유지할 수 있다.
일 실시예에 따른 접근 장치(310)가 전자 장치(901)에서 수행하려고 하는 동작에 대한 권한이 없는 경우, 특정 동작을 수행하기 위한 절차가 종료될 수 있다. 예를 들어, 접근 장치(310)는 전자 장치(901)에 새로운 서브 파일을 추가하는 동작을 수행하려고 인증 요청을 했으나, 해당 접근 장치(310)가 추가 권한이 없는 경우, 추가 동작을 수행하기 위한 절차는 종료될 수 있다.
도 5는 일 실시예에 따른 서브 파일 인증서의 참조 번호를 획득하는 방법을 설명하기 위한 도면이다.
일 실시예에 따른 접근 장치(310)(예, 접근 장치(310)에 포함된 프로세서(미도시))는 타겟 파일을 선택(510)할 수 있다. 일 실시예에 따른 접근 장치(310)는 전자 장치(901)에 포함된 복수의 파일들 중에서 업데이트 대상이 되는 파일을 타겟 파일로 결정할 수 있다. 따라서 일 실시예에 따른 타겟 파일은 업데이트 대상이 되는 파일을 포함할 수 있다. 일 실시예에 따른 접근 장치(310)는 타겟 파일 선택 신호를 애플릿(150)에 전송할 수 있다. 일 실시예에 따른 애플릿(150)은 해당 신호에 대한 응답 신호를 접근 장치(310)에 전송할 수 있다.
일 실시예에 따른 프로세서(920)는 접근 장치(310)로부터 업데이트 대상이 되는 파일 선택 신호를 수신할 수 있다. 일 실시예에 따른 프로세서(920)는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일을 결정할 수 있다.
일 실시예에 따른 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함할 수 있다. 예를 들어, 도 1을 참조하여 설명하면, 제2 파일1(113)은 여행 기록 파일을 포함할 수 있다. 그리고 업데이트 대상이 되는 파일은 여행 기록 파일일 수 있다. 여행 기록 파일이 업데이트 되는 경우, 어플리케이션(110)의 제2 파일1(113)과 그에 대응하는 보안 영역의 제4 파일1(153)은 모두 업데이트될 수 있다. 이 경우, 어플리케이션(110)의 제2 파일1(113)은 제2 타겟 파일이 될 수 있다. 그리고 보안 영역(140)의 제4 파일1(153)은 제1 타겟 파일이 될 수 있다.
일 실시예에 따른 접근 장치(310)는 전자 장치(901)로 하여금 서브 파일 인증서를 검색(520)하도록 할 수 있다. 일 실시예에 따른 접근 장치(310)는 업데이트 파일에 포함된 서브 파일에 대응하는 서브 파일 인증서가 전자 장치(901)에 존재하는지 검색할 수 있다. 다른 일 실시예에 따른 프로세서(920)는 접근 장치로부터 서브 파일 인증서 검색 명령을 수신하여 서브 파일 인증서가 존재하는지(530) 판단할 수 있다. 일 실시예에 따른, 해당하는 서브 파일 인증서가 전자 장치(901)에 존재(531)하는 경우, 프로세서(920)는 서브 파일 인증서 참조 번호를 접근 장치(310)에 전송할 수 있다. 일 실시예에 따른 접근 장치(310)는 전자 장치(901)로부터 서브 파일 인증서 참조 번호를 수신할 수 있다. 일 실시예에 따른 접근 장치(310)는 서브 파일 인증서 참조 번호를 업데이트 파일(380)에 추가할 수 있다. 도 2에서 서브 파일 인증서 위치 정보(383)는 전자 장치(901)로부터 수신한 서브 파일 인증서 참조 번호를 포함할 수 있다.
일 실시예에 따른 특정 서브 파일 인증서가 전자 장치(901)에 존재하지 않는 경우, 프로세서(920)는 접근 장치(310)에 서브 파일이 존재하지 않는다는 신호를 전송(532)할 수 있다. 이 경우, 접근 장치는 전자 장치에 서브 파일 인증서 업데이트 명령을 전송(540)할 수 있다. 일 실시예에 따른 프로세서(920)는 서브 파일 인증서 업데이트 명령에 기초하여 해당하는 서브 파일 인증서를 특정 타겟 파일에 추가(550)할 수 있다. 일 실시예에 따른 프로세서(920)는 추가된 서브 파일 인증서의 참조 번호를 접근 장치(310)에 전송(560)할 수 있다. 이 경우, 접근 장치(310)는 전자 장치(901)로부터 추가된 서브 파일 인증서의 참조 번호를 수신(561)할 수 있다. 일 실시예에 따른 접근 장치(310)는 추가된 서브 파일 인증서 참조 번호를 업데이트 파일(380)에 추가할 수 있다. 도 2에서 서브 파일 인증서 위치 정보(383)는 전자 장치(901)로부터 수신한 서브 파일 인증서 참조 번호를 포함할 수 있다.
도 6는 일 실시예에 따른 타겟 파일을 업데이트(예를 들어, 추가(append))하는 방법을 설명하기 위한 도면이다.
일 실시예에 따른 접근 장치(310)(예, 접근 장치(310)의 프로세서(미도시))는 업데이트 파일에 포함된 적어도 하나의 서브 파일을 서브 파일 인증키로 서명한 적어도 하나의 제2 서명값을 생성(610)할 수 있다. 예를 들어, 서브 파일은 새로운 입국 기록을 포함할 수 있다. 접근 장치 및/또는 다른 데이터 발급 장치는 새로운 입국 기록을 포함하는 서브 파일을 생성하고, 해당 서브 파일을 서브 파일 인증키로 서명하여 제2 서명값을 생성할 수 있다.
일 실시예에 따른 접근 장치(310)는 서브 파일, 서브 파일 인증서, 서브 파일 인증서의 위치 정보 및 제2 서명값 중 적어도 하나를 포함하는 업데이트 파일을 생성(620)할 수 있다. 다른 일 실시예에 따른 접근 장치(310)는 서브 파일 인증서, 서브 파일 인증서의 위치 정보 및/또는 제2 서명값을 서브 파일에 추가할 수도 있다.
일 실시예에 따른 접근 장치(310)는 업데이트 파일에 기초하여 타겟 파일 업데이트 명령 전송(630)할 수 있다.
일 실시예에 따른 접근 장치(310)는 애플릿(150)을 통해 업데이트 파일에 포함된 서브 파일의 서명인 제2 서명값에 대한 검증을 수행할 수 있다. 접근 장치(310)가 애플릿(150)을 통해 제2 서명값을 검증한 결과 유효한 경우, 접근 장치(310)는 개인 정보 업데이트를 진행할 수 있다. 하지만 제2 서명값이 유효하지 않은 서명인 경우, 접근 장치(310)는 개인 정보 업데이트를 중단할 수 있다.
일 실시예에 따른 전자 장치(901)의 프로세서(920)는 애플릿(150)을 통해 서브 파일 인증서의 검증을 수행할 수 있다. 예를 들어, 서브 파일 인증서를 서명한 인증 기관은 최상위 인증 기관이 존재하는 중간 단계 인증 기관일 수도 있다. 서브 파일 인증서는 중간 단계 인증 기관이 서명한 것이며, 중간 단계 인증서는 최상위 인증기관이 서명한 것일 수 있다. 따라서 인증 기관이 중간 단계 인증 기관부터 최상위 인증 기관까지 체인처럼 연결되어 있을 수 있다. 이 경우, 프로세서(920)는 애플릿(150)을 통해 서브 파일 인증서에 대한 체인 검증을 수행할 수 있다.
일 실시예에 따른 전자 장치(901)의 프로세서(920)는 타겟 파일 업데이트 명령을 수신할 수 있다. 일 실시예에 따른 프로세서(920)는 명령에 기초하여 제1 타겟 파일을 업데이트할 수 있다. 일 실시예에 따른 제1 타겟 파일에 적어도 하나의 서브 파일을 추가(640)할 수 있다. 예를 들어, 제1 타겟 파일은 도 1에 도시된 보안 영역의 제4 파일1(153)일 수 있다. 보안 영역의 제4 파일1(153)은 여행 기록 정보를 포함할 수 있다. 보안 영역의 제4 파일1(153)에는 출국 기록 서브 파일 및/또는 입국 기록 서브 파일이 포함될 수 있다. 출국 기록 서브 파일에는 "2020.10.02에 미국으로 출국한 기록"이 포함되어 있을 수 있다. 또한 입국 기록 서브 파일에는 "2020.11.10에 한국으로 입국한 기록"이 포함되어 있을 수 있다. 이 상황에서 업데이트 파일에 포함된 출국 기록 서브 파일은 "2021.09.10에 영국으로 출국한 기록"이 포함할 수 있고, 입국 기록 서브 파일은 "2021.10.02에 한국으로 입국한 기록"이 포함할 수 있다. 프로세서(920)는 보안 영역의 제4 파일1(153)에 포함된 출국 기록 서브 파일에는 "2020.10.02에 미국으로 출국한 기록"을 유지한 채, 해당하는 출국 기록 서브 파일에 "2021.09.10에 영국으로 출국한 기록"을 추가할 수 있다. 또한 프로세서(920)는 보안 영역의 제4 파일1(153)에 포함된 입국 기록 서브 파일에는 "2020.11.10에 한국으로 입국한 기록"을 유지한 채, 해당하는 입국 기록 서브 파일에 "2021.09.10에 영국으로 출국한 기록"을 추가할 수 있다.
일 실시예에 따른 프로세서(920)는 제1 타겟 파일에 포함된 서명 대상 데이터 해쉬값을 업데이트(650)할 수 있다. 예를 들어, 제1 타겟 파일은 도 1에 도시된 보안 영역의 제4 파일1(153)일 수 있다. 보안 영역의 제4 파일1(153)은 여행 기록 정보를 포함할 수 있다. 보안 영역의 제4 파일1(153)에는 출국 기록 서브 파일을 포함할 수 있다. 프로세서(920)는 보안 영역의 제4 파일1(153)에 포함된 출국 기록 서브 파일에서 "2020.10.02에 미국으로 출국한 기록"을 유지한 채, 출국 기록 서브 파일에 "2021.09.10에 영국으로 출국한 기록"을 추가할 수 있다. 기존의 서명 대상 데이터 해쉬값에는 "2020.10.02에 미국으로 출국한 기록"과 관련된 데이터만 존재할 수 있다. 예를 들어, 기존의 서명 대상 데이터 해쉬값는 "2020.10.02에 미국으로 출국한 기록"데이터에 대응하는 해시값을 인코딩한 값을 포함할 수 있다. 하지만 프로세서(920)는 "2021.09.10에 영국으로 출국한 기록"과 관련된 데이터를 서명 대상 데이터 해쉬값에 추가할 수 있다. 이 경우, 프로세서(920)는 "2021.09.10에 영국으로 출국한 기록"에 대응하는 해시값을 인코딩한 값을 서명 대상 데이터 해쉬값에 추가할 수 있다.
일 실시예에 따른 프로세서(920)는 제1 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 적어도 하나의 서브 파일을 암호화하여 추가할 수 있다. 예를 들어, 프로세서(920)는 "2021.09.10에 영국으로 출국한 기록"에 대응하는 해시값을 인코딩한 값을 서명 대상 데이터 해쉬값에 추가할 수 있다.
일 실시예에 따른 프로세서(920)는 서명 대상 데이터 해쉬값을 개인 정보 서명키를 이용하여 서명(660)할 수 있다. 일 실시예에 따른 프로세서(920)는 업데이트된 서명 대상 데이터 해쉬값을 개인 정보 서명키를 이용하여 서명함으로써, 제3 서명값을 생성할 수 있다. 일 실시예에 따른 제3 서명값은 해당 단말에서만 업데이트된 개인 정보가 유효하다는 것을 증명하는 서명값을 포함할 수 있다.
일 실시예에 따른 프로세서(920)는 제1 타겟 파일에 기초하여 애플릿(150)으로부터 어플리케이션(110)으로 제2 타겟 파일 업데이트 신호를 전송(670)할 수 있다. 제2 타겟 파일은 제1 타겟 파일에 대응하는 파일을 포함할 수 있다. 예를 들어, 제1 타겟 파일은 보안 영역(140)에 포함되고, 제2 타겟 파일은 일반 영역(105)에 포함될 수 있다. 따라서, 제2 타겟 파일은 보안 영역에 포함된 제1 타겟 파일에 대응하는 일반 영역의 파일을 포함할 수 있다. 일 실시예에 따른 프로세서(920)는 제2 타겟 파일 업데이트를 위하여 제1 타겟 파일 업데이트 관련 정보를 애플릿(150)으로부터 어플리케이션(110)으로 전송할 수도 있다. 예를 들어, 보안 영역(140)의 제4 파일1(153)이 업데이트된 경우, 보안 영역(140)은 해당 파일이 업데이트 되었다는 신호를 어플리케이션(110)으로 전송할 수 있다. 일 실시예에 따른 어플리케이션(10)은 보안 영역(140)에 포함된 애플릿(150)에 업데이트에 필요한 정보를 요청하는 신호를 전송할 수 있다. 일 실시예에 따른 보안 영역(140)은 제4 파일1(153)과 대응하는 어플리케이션(110)의 제2 파일1(113) 업데이트에 필요한 정보를 어플리케이션(110)에 전송할 수 있다.
일 실시예에 따른 프로세서(920)는 어플리케이션(110)을 통해 제1 타겟 파일의 서명값을 검증할 수 있다.
일 실시예에 따른 프로세서(920)는 어플리케이션(110)을 통해 제1 타겟 파일에 기초하여 제2 타겟 파일을 업데이트(680)할 수 있다. 예를 들어, 보안 영역(140)의 제4 파일1(153)이 업데이트된 경우, 프로세서(920)는 제4 파일1(153)과 대응하는 어플리케이션(110)의 제2 파일1(113)이 업데이트할 수 있다. 이 경우, 프로세서(920)는 보안 영역(140)의 제4 파일1(153)에 추가된 서브 파일 및/또는 업데이트된 제4 파일1(153)에 대응하는 제3 서명값에 기초하여 어플리케이션(110)의 제2 파일1(113)을 업데이트할 수 있다. 구체적으로 프로세서(920)는 어플리케이션(110)의 제2 파일1(113)에 포함된 서명 대상 데이터 해쉬값을 업데이트할 수 있다. 그리고 프로세서(920)는 서브 파일 인증서가 추가된 경우, 도 2의 서브 파일 인증서(250)에 새로운 서브 파일 인증서를 추가할 수 있다. 또한 프로세서(920)는 제2 타겟 파일에 포함된 제1 서명값을 제3 서명값으로 업데이트할 수 있다. 예를 들어, 프로세서(920)는 제2 파일1(113)에 포함된 제1 서명값을 제3 서명값으로 업데이트할 수 있다.
일 실시예에 따른 프로세서(920)는 적어도 하나의 서브 파일 각각의 보안 중요도에 기초하여 적어도 하나의 서브 파일을 보안 영역에만 저장시킬지 여부를 결정할 수 있다. 일 실시예에 따른 보안 중요도는 보안 정책에 기초하여 각각의 데이터별로 결정될 수 있다. 특정 데이터의 보안 중요도가 높을수록 해당하는 데이터에 대한 접근 제어의 중요성이 높아질 수 있다. 따라서, 해당하는 데이터는 보안 영역에만 저장함으로써 강도 높은 접근 제어를 할 수 있다. 일 실시예에 따른 업데이트 파일에 포함된 서브 파일이 보안 영역(140)에만 저장되는 파일인 경우, 제2 타겟 파일에 해당하는 서브 파일은 추가되지 않을 수도 있다. 예를 들어, 보안 영역(140)의 제4 파일1(153)에 서브 파일이 추가되고, 어플리케이션(110)의 제2 파일1(113)에는 해당하는 서브 파일이 추가되지 않을 수도 있다.
일 실시예에 따른 프로세서(920)는 적어도 하나의 서브 파일이 일반 영역에 저장되는 경우, 서브 파일을 제2 타겟 파일에 추가할 수 있다. 일 실시예에 따른 일반 영역(105)은 보안 영역과 구분되는 영역으로서, 어플리케이션(110)이 저장된 영역을 포함할 수 있다. 일 실시예에 따른 일반 영역(105)은 보안 영역과 다른 접근 제어를 받는 영역을 포함할 수 있다. 예를 들어, 일반 영역(105)은 보안 영역보다 강도가 낮은 접근 제어를 받을 수 있다.
따라서, 접근 장치(310)는 보안 영역보다 일반 영역(105)에 상대적으로 쉽게 접근하여 데이터에 대하여 다양한 동작을 수행할 수 있다. 예를 들어, 보안 영역(140)의 제4 파일1(153)에 서브 파일이 추가되면, 어플리케이션(110)의 제2 파일1(113)에도 해당하는 서브 파일이 추가될 수 있다. 다른 예를 들어, 어플리케이션(110)의 제2 파일1(113)에만 서브 파일이 추가되고, 보안 영역(140)의 제4 파일1(153)에는 서브 파일이 추가되지 않을 수 있다. 이를 통해, 보안 중요도가 상대적으로 낮은 서브 파일에 대해서는 보안 영역에 저장하지 않음으로써, 저장 공간의 한계가 존재하는 보안 영역에 보안 중요도가 높은 데이터를 더 많이 저장할 수 있다.
도 7은 일 실시예에 따른 개인 정보를 업데이트하는 방법을 설명하기 위한 흐름도(700)이다. 본 개시에서 프로세서(920)는 전자 장치(901)에 포함된 프로세서일 수 있고, 접근 장치(310)에 포함된 프로세서를 의미할 수도 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 프로세서(920)(예, 도 8의 프로세서(920) )는 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일- 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정(710)할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 프로세서(920)는 접근 장치의 권한 정보에 기초하여 상기 개인 정보의 업데이트 여부를 결정(720)할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 프로세서(920)는 접근 장치로부터 업데이트 파일에 기초하여 타겟 파일을 업데이트하는 명령을 수신(730)할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 프로세서(920)는 명령에 기초하여 제1 타겟 파일을 업데이트(740)할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 프로세서(920)는 제1 타겟 파일 업데이트에 기초하여 제2 타겟 파일을 업데이트(750)할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 파일은 개인의 신분(personal identity)을 증명하기 위한 정보를 포함하는 제1 파일 및 상기 제1 파일과 관련된 정보를 포함하는 복수의 제2 파일들을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 파일은 파일의 적어도 일부를 개인 정보 서명키를 이용하여 서명한 제1 서명값, 개인 정보 서명키에 대응하는 개인 정보 인증서, 서명 대상 데이터 해쉬값, 적어도 하나의 서브 파일 및 적어도 하나의 서브 파일 각각에 대응하는 적어도 하나의 서브 파일 인증서 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 업데이트 여부를 결정하는 동작은 보안 영역의 인증을 위하여, 접근 장치에 보안 영역 인증키를 전송하는 동작, 접근 장치의 접근 장치 인증서를 이용하여 상기 접근 장치를 인증하는 동작 및 보안 영역의 인증 및 접근 장치의 인증 완료 여부에 기초하여 접근 장치와 전자 장치 간의 보안 채널을 생성하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 권한 정보는 검색 권한 정보, 읽기 권한 정보, 수정 권한 정보 및 추가(append) 권한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 서브 파일 인증서가 타겟 파일에 포함되어 있는지 여부에 기초하여, 서브 파일 인증서를 타겟 파일에 추가하는 동작을 더 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 서브 파일 인증서를 상기 타겟 파일에 추가하는 동작은 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 상기 서브 파일 인증서를 추가하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 업데이트 파일은, 적어도 하나의 서브 파일, 적어도 하나의 서브 파일 인증서, 적어도 하나의 서브 파일 각각을 서브 파일 인증서를 이용하여 서명한 적어도 하나의 제2 서명값 및 적어도 하나의 서브 파일 인증서 위치 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 제1 타겟 파일을 업데이트하는 동작은 제1 타겟 파일에 적어도 하나의 서브 파일을 추가하는 동작, 제1 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 적어도 하나의 서브 파일을 암호화하여 추가하는 동작 및 업데이트된 서명 대상 데이터 해쉬값을 개인 정보 인증서를 이용하여 서명함으로써, 제3 서명값을 생성하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 제2 타겟 파일을 업데이트하는 동작은 적어도 하나의 서브 파일 각각의 보안 중요도에 기초하여 적어도 하나의 서브 파일을 보안 영역에만 저장시킬지 여부를 결정하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 제2 타겟 파일을 업데이트하는 동작은 적어도 하나의 서브 파일이 일반 영역에 저장되는 경우, 서브 파일을 제2 타겟 파일에 추가하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치에 저장된 개인 정보를 업데이트하는 방법에 있어서, 제2 타겟 파일을 업데이트하는 동작은 제3 서명값으로 제2 타겟 파일에 포함된 제1 서명값을 업데이트하는 동작을 포함할 수 있다.
일 실시예에 따른 전자 장치는 하나 이상의 프로세서; 및 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리를 포함하고, 명령들을 실행하는 프로세서는, 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일- 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하고, 접근 장치의 권한 정보에 기초하여 개인 정보의 업데이트 여부를 결정하고, 접근 장치로부터 업데이트 파일에 기초하여 상기 타겟 파일을 업데이트하는 명령을 수신하고, 명령에 기초하여 제1 타겟 파일을 업데이트하고, 그리고 제1 타겟 파일 업데이트에 기초하여 제2 타겟 파일을 업데이트할 수 있다.
일 실시예에 따른 개인 정보는 개인의 신분을 증명하기 위한 정보를 포함하는 제1 파일 및 제1 파일과 관련된 정보를 포함하는 복수의 제2 파일들을 포함할 수 있다.
일 실시예에 따른 파일은 파일의 적어도 일부를 개인 정보 서명키를 이용하여 서명한 제1 서명값, 개인 정보 서명키에 대응하는 개인 정보 인증서, 서명 대상 데이터 해쉬값, 적어도 하나의 서브 파일 및 적어도 하나의 서브 파일 각각에 대응하는 적어도 하나의 서브 파일 인증서 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치는 보안 영역의 인증을 위하여, 접근 장치에 보안 영역 인증키를 전송하고, 접근 장치의 접근 장치 인증서를 이용하여 접근 장치를 인증하고, 그리고 보안 영역의 인증 및 접근 장치의 인증 완료 여부에 기초하여 접근 장치와 전자 장치 간의 보안 채널을 생성할 수 있다.
일 실시예에 따른 권한 정보는 검색 권한 정보, 읽기 권한 정보, 수정 권한 정보 및 추가 권한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치는 서브 파일 인증서가 타겟 파일에 포함되어 있는지 여부에 기초하여, 서브 파일 인증서를 상기 타겟 파일에 추가할 수 있다.
일 실시예에 따른 전자 장치는 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 서브 파일 인증서를 추가할 수 있다.
일 실시예에 따른 업데이트 파일은 적어도 하나의 서브 파일, 적어도 하나의 서브 파일 인증서, 적어도 하나의 서브 파일 각각을 서브 파일 인증서를 이용하여 서명한 적어도 하나의 제2 서명값 및 적어도 하나의 서브 파일 인증서 위치 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에 따른 전자 장치는 제1 타겟 파일에 적어도 하나의 서브 파일을 추가하고, 제1 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 적어도 하나의 서브 파일을 암호화하여 추가하고, 그리고 업데이트된 서명 대상 데이터 해쉬값을 개인 정보 인증서를 이용하여 서명함으로써, 제3 서명값을 생성할 수 있다.
일 실시예에 따른 전자 장치는 적어도 하나의 서브 파일 각각의 보안 중요도에 기초하여 적어도 하나의 서브 파일을 보안 영역에만 저장시킬지 여부를 결정할 수 있다.
일 실시예에 따른 전자 장치는 적어도 하나의 서브 파일이 일반 영역에 저장되는 경우, 서브 파일을 제2 타겟 파일에 추가할 수 있다.
일 실시예에 따른 전자 장치는 제3 서명값으로 제2 타겟 파일에 포함된 제1 서명값을 업데이트할 수 있다.
도 8은 다양한 실시예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 8은, 다양한 실시예들에 따른, 네트워크 환경(900) 내의 전자 장치(901)의 블록도이다. 도 8을 참조하면, 네트워크 환경(900)에서 전자 장치(901)는 제 1 네트워크(998)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(902)와 통신하거나, 또는 제 2 네트워크(999)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(904) 또는 서버(908) 중 적어도 하나와 통신할 수 있다. 일실시예에 따르면, 전자 장치(901)는 서버(908)를 통하여 전자 장치(904)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(901)는 프로세서(920), 메모리(930), 입력 모듈(950), 음향 출력 모듈(955), 디스플레이 모듈(960), 오디오 모듈(970), 센서 모듈(976), 인터페이스(977), 연결 단자(978), 햅틱 모듈(979), 카메라 모듈(980), 전력 관리 모듈(988), 배터리(989), 통신 모듈(990), 가입자 식별 모듈(996), 또는 안테나 모듈(997)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(901)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(978))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(976), 카메라 모듈(980), 또는 안테나 모듈(997))은 하나의 구성요소(예: 디스플레이 모듈(960))로 통합될 수 있다.
프로세서(920)는, 예를 들면, 소프트웨어(예: 프로그램(940))를 실행하여 프로세서(920)에 연결된 전자 장치(901)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(920)는 다른 구성요소(예: 센서 모듈(976) 또는 통신 모듈(990))로부터 수신된 명령 또는 데이터를 휘발성 메모리(932)에 저장하고, 휘발성 메모리(932)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(934)에 저장할 수 있다. 일실시예에 따르면, 프로세서(920)는 메인 프로세서(921)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(923)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(901)가 메인 프로세서(921) 및 보조 프로세서(923)를 포함하는 경우, 보조 프로세서(923)는 메인 프로세서(921)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(923)는 메인 프로세서(921)와 별개로, 또는 그 일부로서 구현될 수 있다.보조 프로세서(923)는, 예를 들면, 메인 프로세서(921)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(921)를 대신하여, 또는 메인 프로세서(921)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(921)와 함께, 전자 장치(901)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(960), 센서 모듈(976), 또는 통신 모듈(990))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(923)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(980) 또는 통신 모듈(990))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(923)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(901) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(908))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(930)는, 전자 장치(901)의 적어도 하나의 구성요소(예: 프로세서(920) 또는 센서 모듈(976))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(940)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(930)는, 휘발성 메모리(932) 또는 비휘발성 메모리(934)를 포함할 수 있다.
프로그램(940)은 메모리(930)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(942), 미들 웨어(944) 또는 어플리케이션(946)을 포함할 수 있다.
입력 모듈(950)은, 전자 장치(901)의 구성요소(예: 프로세서(920))에 사용될 명령 또는 데이터를 전자 장치(901)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(950)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(955)은 음향 신호를 전자 장치(901)의 외부로 출력할 수 있다. 음향 출력 모듈(955)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(960)은 전자 장치(901)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(960)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(960)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(970)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(970)은, 입력 모듈(950)을 통해 소리를 획득하거나, 음향 출력 모듈(955), 또는 전자 장치(901)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(902))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(976)은 전자 장치(901)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(976)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(977)는 전자 장치(901)가 외부 전자 장치(예: 전자 장치(902))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(977)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(978)는, 그를 통해서 전자 장치(901)가 외부 전자 장치(예: 전자 장치(902))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(978)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(979)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(979)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(980)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(980)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(988)은 전자 장치(901)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(988)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(989)는 전자 장치(901)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(989)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(990)은 전자 장치(901)와 외부 전자 장치(예: 전자 장치(902), 전자 장치(904), 또는 서버(908)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(990)은 프로세서(920)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(990)은 무선 통신 모듈(992)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(994)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(998)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(999)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(904)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(992)은 가입자 식별 모듈(996)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(998) 또는 제 2 네트워크(999)와 같은 통신 네트워크 내에서 전자 장치(901)를 확인 또는 인증할 수 있다.
무선 통신 모듈(992)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(992)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(992)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(992)은 전자 장치(901), 외부 전자 장치(예: 전자 장치(904)) 또는 네트워크 시스템(예: 제 2 네트워크(999))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(992)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(997)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(997)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(997)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(998) 또는 제 2 네트워크(999)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(990)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(990)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(997)의 일부로 형성될 수 있다.
다양한 실시예에 따르면, 안테나 모듈(997)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(999)에 연결된 서버(908)를 통해서 전자 장치(901)와 외부의 전자 장치(904)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(902, 또는 904) 각각은 전자 장치(901)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(901)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(902, 904, 또는 908) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(901)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(901)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(901)로 전달할 수 있다. 전자 장치(901)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(901)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(904)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(908)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(904) 또는 서버(908)는 제 2 네트워크(999) 내에 포함될 수 있다. 전자 장치(901)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.

Claims (14)

  1. 전자 장치에 저장된 개인 정보-상기 개인 정보는 복수의 파일들을 포함하는-를 업데이트하는 방법에 있어서,
    상기 복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일-상기 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 상기 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하는 동작;
    상기 접근 장치의 권한 정보에 기초하여 상기 개인 정보의 업데이트 여부를 결정하는 동작;
    상기 접근 장치로부터 업데이트 파일에 기초하여 상기 타겟 파일을 업데이트하는 명령을 수신하는 동작;
    상기 명령에 기초하여 상기 제1 타겟 파일을 업데이트하는 동작; 및
    상기 제1 타겟 파일 업데이트에 기초하여 상기 제2 타겟 파일을 업데이트하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  2. 제1항에 있어서,
    상기 개인 정보는
    개인의 신분(personal identity)을 증명하기 위한 정보를 포함하는 제1 파일 및 상기 제1 파일과 관련된 정보를 포함하는 복수의 제2 파일들을 포함하는
    개인 정보 업데이트 방법.
  3. 제1항에 있어서,
    상기 파일은
    상기 파일의 적어도 일부를 개인 정보 서명키를 이용하여 서명한 제1 서명값, 상기 개인 정보 서명키에 대응하는 개인 정보 인증서, 서명 대상 데이터 해쉬값, 상기 적어도 하나의 서브 파일 및 상기 적어도 하나의 서브 파일 각각에 대응하는 적어도 하나의 서브 파일 인증서 중 적어도 하나를 포함하는,
    개인 정보 업데이트 방법.
  4. 제1항에 있어서
    상기 업데이트 여부를 결정하는 동작은
    상기 보안 영역의 인증을 위하여, 상기 접근 장치에 보안 영역 인증키를 전송하는 동작;
    상기 접근 장치의 접근 장치 인증서를 이용하여 상기 접근 장치를 인증하는 동작; 및
    상기 보안 영역의 인증 및 상기 접근 장치의 인증 완료 여부에 기초하여 상기 접근 장치와 상기 전자 장치 간의 보안 채널을 생성하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  5. 제1항에 있어서
    상기 권한 정보는
    검색 권한 정보, 읽기 권한 정보, 수정 권한 정보 및 추가(append) 권한 정보 중 적어도 하나를 포함하는,
    개인 정보 업데이트 방법.
  6. 제1항에 있어서
    서브 파일 인증서가 상기 타겟 파일에 포함되어 있는지 여부에 기초하여, 상기 서브 파일 인증서를 상기 타겟 파일에 추가하는 동작;
    을 더 포함하는,
    개인 정보 업데이트 방법.
  7. 제6항에 있어서,
    상기 서브 파일 인증서를 상기 타겟 파일에 추가하는 동작은
    상기 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 상기 서브 파일 인증서를 추가하는 동작
    을 포함하는,
    개인 정보 업데이트 방법.
  8. 제1항에 있어서,
    상기 업데이트 파일은,
    상기 적어도 하나의 서브 파일, 적어도 하나의 서브 파일 인증서, 상기 적어도 하나의 서브 파일 각각을 상기 서브 파일 인증서를 이용하여 서명한 적어도 하나의 제2 서명값 및 상기 적어도 하나의 서브 파일 인증서 위치 정보 중 적어도 하나를 포함하는,
    개인 정보 업데이트 방법.
  9. 제1항에 있어서,
    상기 제1 타겟 파일을 업데이트하는 동작은
    상기 제1 타겟 파일에 상기 적어도 하나의 서브 파일을 추가하는 동작;
    상기 제1 타겟 파일에 포함된 서명 대상 데이터 해쉬값에 상기 적어도 하나의 서브 파일을 암호화하여 추가하는 동작; 및
    상기 업데이트된 서명 대상 데이터 해쉬값을 개인 정보 인증서를 이용하여 서명함으로써, 제3 서명값을 생성하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  10. 제1항에 있어서,
    상기 제2 타겟 파일을 업데이트하는 동작은
    상기 적어도 하나의 서브 파일 각각의 보안 중요도에 기초하여 상기 적어도 하나의 서브 파일을 보안 영역에만 저장시킬지 여부를 결정하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  11. 제10항에 있어서,
    상기 제2 타겟 파일을 업데이트하는 동작은
    상기 적어도 하나의 서브 파일이 상기 일반 영역에 저장되는 경우, 상기 서브 파일을 상기 제2 타겟 파일에 추가하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  12. 제1항에 있어서,
    상기 제2 타겟 파일을 업데이트하는 동작은
    제3 서명값으로 제2 타겟 파일에 포함된 제1 서명값을 업데이트하는 동작;
    을 포함하는,
    개인 정보 업데이트 방법.
  13. 전자 장치는
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에서 실행 가능한 명령들을 저장하는 메모리;
    를 포함하고,
    상기 명령들을 실행하는 프로세서는,
    복수의 파일들 중 접근 장치로부터 수신한 업데이트 대상이 되는 파일 선택 신호에 기초하여 적어도 하나의 타겟 파일-상기 타겟 파일은 보안 영역에 저장된 제1 타겟 파일 및 상기 제1 타겟 파일과 대응하고 일반 영역에 저장된 제2 타겟 파일 중 적어도 하나를 포함하는-을 결정하고,
    상기 접근 장치의 권한 정보에 기초하여 상기 개인 정보의 업데이트 여부를 결정하고,
    상기 접근 장치로부터 업데이트 파일에 기초하여 상기 타겟 파일을 업데이트하는 명령을 수신하고,
    상기 명령에 기초하여 상기 제1 타겟 파일을 업데이트하고, 그리고
    상기 제1 타겟 파일 업데이트에 기초하여 상기 제2 타겟 파일을 업데이트하는,
    전자 장치.
  14. 하드웨어와 결합되어 제1항 내지 제12항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.


KR1020220031910A 2021-12-03 2022-03-15 개인 정보를 업데이트하기 위한 방법 및 장치 KR20230083970A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2022/014729 WO2023101181A1 (ko) 2021-12-03 2022-09-30 개인 정보를 업데이트하기 위한 방법 및 장치
US18/094,790 US20230185935A1 (en) 2021-12-03 2023-01-09 Method and device for updating personal information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210171970 2021-12-03
KR20210171970 2021-12-03

Publications (1)

Publication Number Publication Date
KR20230083970A true KR20230083970A (ko) 2023-06-12

Family

ID=86770375

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220031910A KR20230083970A (ko) 2021-12-03 2022-03-15 개인 정보를 업데이트하기 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR20230083970A (ko)

Similar Documents

Publication Publication Date Title
US20200265418A1 (en) Electronic device and method for providing digital signature service of block chain using the same
KR102540090B1 (ko) 전자 장치 및 그의 전자 키 관리 방법
US11496900B2 (en) Electronic device and method for storing user identification information
KR20210017083A (ko) 퓨즈된 키에 기반하여 증명 인증서를 생성하는 전자 장치 및 방법
US11449631B2 (en) Electronic device for managing personal information and operating method thereof
US20230045546A1 (en) Method and apparatus for managing non-fungible token for digital content
KR20230020262A (ko) 디지털 컨텐츠에 대한 대체불가능 토큰을 관리하는 방법 및 장치
US20230396604A1 (en) Method for performing user authentication and device for performing same
KR20220073552A (ko) 블록 체인 네트워크를 이용하여 데이터를 공유하는 전자 장치 및 이의 동작 방법
US20230004660A1 (en) Method of processing secure data and electronic device supporting the same
KR102657388B1 (ko) 암호화될 데이터의 정보량에 기반하여 암호화에 사용될 키를 선택하는 전자 장치 및 전자 장치의 동작 방법
US20220166769A1 (en) Electronic device for verifying a user's identity
US20220209954A1 (en) Electronic device for sharing id and password, method for operating thereof, and server
KR20230083970A (ko) 개인 정보를 업데이트하기 위한 방법 및 장치
US20230185935A1 (en) Method and device for updating personal information
US20220138739A1 (en) Electronic device for generating transaction including internal data and operating method thereof
KR20230037954A (ko) 트랜잭션 데이터에 대한 암호화 동작을 수행하는 전자 장치 및 그의 동작 방법
KR20220089871A (ko) 디지털 아이디 정보를 제공하는 전자 장치 및 그 방법
US20230147516A1 (en) Electronic device and method for controlling vehicle based on driver authentication
US20230093667A1 (en) Method of providing login information and electronic device performing thereof
KR20220091970A (ko) 아이디 및 패스워드를 공유하기 위한 전자 장치, 그 동작 방법 및 서버
KR20240028895A (ko) 애플릿의 비접촉 통신 제어 방법 및 장치
US20230070759A1 (en) Electronic device for protecting user's biometric information
KR20230036286A (ko) 사용자의 생체 정보를 보호하기 위한 전자 장치
KR20230119569A (ko) 보안 기능을 제공하는 전자 장치 및 그의 동작 방법