KR20220120338A - Electronic apparatus, control method thereof and server - Google Patents

Electronic apparatus, control method thereof and server Download PDF

Info

Publication number
KR20220120338A
KR20220120338A KR1020210024327A KR20210024327A KR20220120338A KR 20220120338 A KR20220120338 A KR 20220120338A KR 1020210024327 A KR1020210024327 A KR 1020210024327A KR 20210024327 A KR20210024327 A KR 20210024327A KR 20220120338 A KR20220120338 A KR 20220120338A
Authority
KR
South Korea
Prior art keywords
certificate
electronic device
server
information
communication interface
Prior art date
Application number
KR1020210024327A
Other languages
Korean (ko)
Inventor
엄충용
정성욱
김명식
이창훈
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210024327A priority Critical patent/KR20220120338A/en
Priority to PCT/KR2021/020283 priority patent/WO2022181963A1/en
Publication of KR20220120338A publication Critical patent/KR20220120338A/en

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/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/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using 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/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioethics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Disclosed is an electronic apparatus. The electronic apparatus includes: a communication interface; a memory; and a processor connected to the communication interface and the memory to control the electronic apparatus. The processor may verify an authentication certificate based on a bundle of authentication certificates stored in a memory when the authentication certificate is received from a first server through a communication interface, transmit authentication certificate usage information to a second sever through the communication interface if verification of the authentication certificate fails, and update the bundle of authentication certificates based on received information on the authentication certificate if the information on the authentication certificate is received from the second server through the communication interface.

Description

전자 장치, 그 제어 방법 및 서버 { ELECTRONIC APPARATUS, CONTROL METHOD THEREOF AND SERVER }Electronic device, its control method and server { ELECTRONIC APPARATUS, CONTROL METHOD THEREOF AND SERVER }

본 개시는 전자 장치, 그 제어 방법 및 서버에 대한 것으로, 더욱 상세하게는 인증서 프로비저닝(provisioning)을 수행하는 전자 장치, 그 제어 방법 및 서버에 대한 것이다.The present disclosure relates to an electronic device, a control method thereof, and a server, and more particularly, to an electronic device performing certificate provisioning, a control method thereof, and a server.

또한, 본 개시는 기계 학습 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 인공 지능(Artificial Intelligence, AI) 시스템 및 그 응용에 관한 것이다.In addition, the present disclosure relates to an artificial intelligence (AI) system for simulating functions such as cognition and judgment of a human brain by using a machine learning algorithm and an application thereof.

최근 다양한 전자 장치가 개발되고 통신 기술이 발달함에 따라 다양한 서비스가 제공되고 있다. 특히, 사용자의 편의를 향상시키기 위한 자동화 서비스가 많이 발달하고 있다.With the recent development of various electronic devices and the development of communication technologies, various services are provided. In particular, automation services for improving user convenience have been developed a lot.

예를 들어, 냉장고는 냉장고 내부에 저장된 식료품을 식별하고, 부족한 식료품을 자동으로 구입할 수 있다. 이러한 서비스는 냉장고가 식료품 판매 회사에 자동으로 식료품 주문을 전송함에 따른 것이며, 이러한 동작을 위해서는 냉장고가 식료품 판매 회사에 대한 인증서를 저장하고 있어야 한다.For example, the refrigerator may identify food items stored inside the refrigerator and automatically purchase food items that are in short supply. This service is due to the refrigerator automatically sending a grocery order to the grocery sales company, and for this operation, the refrigerator must store a certificate for the grocery sales company.

이러한 인증서는 종래 사용자에 의해 개별적으로 업데이트되었다. 즉, 사용자가 개별적으로 관리하지 않는 경우, 인증서의 기간이 만료될 수도 있으며, 이 경우 냉장고는 식료품 관리 서비스를 제공할 수 없게 된다.These certificates have been individually updated by conventional users. That is, if the user does not manage individually, the period of the certificate may expire, and in this case, the refrigerator cannot provide the food management service.

또한, 이상에서는 식료품 관리 서비스만을 예로 들었으나, 실제로는 다양한 서비스가 있을 수 있으며, 이 경우 사용자가 다수의 인증서를 개별적으로 관리하기는 어려운 문제가 있었다.In addition, although only the food management service is exemplified in the above, there may be various services in reality, and in this case, it is difficult for the user to individually manage a plurality of certificates.

그에 따라, 복수의 인증서를 포함하는 인증서 번들을 효율적으로 관리하기 위한 방법이 개발될 필요가 있다.Accordingly, there is a need to develop a method for efficiently managing a certificate bundle including a plurality of certificates.

본 개시는 상술한 필요성에 따른 것으로, 본 개시의 목적은 실시간으로 인증서 프로비저닝(provisioning)을 수행하는 전자 장치, 그 제어 방법 및 서버를 제공함에 있다.The present disclosure is in accordance with the above-mentioned necessity, and an object of the present disclosure is to provide an electronic device for performing certificate provisioning in real time, a control method thereof, and a server.

이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치는 통신 인터페이스, 메모리 및 상기 통신 인터페이스 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서를 포함하며, 상기 프로세서는 상기 통신 인터페이스를 통해 제1 서버로부터 인증서가 수신되면, 상기 메모리에 저장된 인증서 번들에 기초하여 상기 인증서를 검증하고, 상기 인증서의 검증에 실패하면 상기 통신 인터페이스를 통해 제2 서버로 인증서 사용 정보를 전송하며, 상기 통신 인터페이스를 통해 상기 제2 서버로부터 상기 인증서에 대한 정보가 수신되면, 상기 수신된 인증서에 대한 정보에 기초하여 상기 인증서 번들을 업데이트할 수 있다.According to an embodiment of the present disclosure for achieving the above object, an electronic device includes a communication interface, a memory, and a processor connected to the communication interface and the memory to control the electronic device, wherein the processor includes When the certificate is received from the first server through the interface, the certificate is verified based on the certificate bundle stored in the memory, and when the verification of the certificate fails, the certificate usage information is transmitted to the second server through the communication interface, When information on the certificate is received from the second server through the communication interface, the certificate bundle may be updated based on the information on the received certificate.

또한, 상기 프로세서는 상기 인증서 번들에 상기 인증서의 상위 인증서의 존재 여부, 상기 인증서의 서명 검증 여부, 상기 인증서의 기간 만료 여부 또는 상기 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 상기 인증서를 검증할 수 있다.In addition, the processor is configured to verify the certificate based on at least one of whether the parent certificate of the certificate exists in the certificate bundle, whether the signature of the certificate is verified, whether the period of the certificate has expired, or whether the period of the upper certificate has expired. can

그리고, 상기 프로세서는 상기 전자 장치에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 상기 실행된 어플리케이션에 대응되는 상기 제1 서버에 접속하여 상기 인증서를 수신할 수 있다.In addition, when one of the at least one application installed in the electronic device is executed, the processor may access the first server corresponding to the executed application and receive the certificate.

또한, 상기 인증서 사용 정보는 상기 실행된 어플리케이션에 대한 정보, 서비스 정보, 상기 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다.In addition, the certificate usage information may include at least one of information about the executed application, service information, and a cause of the certificate or verification failure.

그리고, 상기 프로세서는 상기 제1 서버로의 접속 정보를 상기 메모리에 저장하고, 상기 접속 정보에 기초하여 기설정된 시간마다 상기 통신 인터페이스를 통해 상기 제2 서버로 상기 인증서 사용 정보를 전송할 수 있다.The processor may store the access information to the first server in the memory, and transmit the certificate usage information to the second server through the communication interface every preset time based on the access information.

또한, 상기 프로세서는 상기 업데이트가 완료되면 상기 전자 장치의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하고, 상기 통신 인터페이스를 통해 주변 기기로 인증서 갱신 알람을 브로드캐스트할 수 있다.Also, when the update is completed, the processor may change an operation mode of the electronic device to a soft access point mode and broadcast a certificate renewal alarm to a peripheral device through the communication interface.

그리고, 상기 프로세서는 상기 주변 기기가 상기 전자 장치에 접속되면 상기 통신 인터페이스를 통해 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하고, 상기 Soft 액세스 포인트 모드를 종료할 수 있다.In addition, when the peripheral device is connected to the electronic device, the processor may transmit the updated certificate bundle to the peripheral device through the communication interface and end the soft access point mode.

또한, 상기 프로세서는 상기 접속된 주변 기기가 상기 전자 장치와 동일한 소유자의 기기이면, 상기 통신 인터페이스를 통해 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송할 수 있다.Also, if the connected peripheral device is a device of the same owner as the electronic device, the processor may transmit the updated certificate bundle to the peripheral device through the communication interface.

그리고, 상기 프로세서는 상기 인증서가 검증되면 상기 통신 인터페이스를 통해 상기 제1 서버로 기설정된 서비스를 요청할 수 있다.In addition, when the certificate is verified, the processor may request a preset service to the first server through the communication interface.

이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 서버는 통신 인터페이스 및 상기 통신 인터페이스와 연결되어 상기 서버를 제어하는 프로세서를 포함하며, 상기 프로세서는 상기 통신 인터페이스를 통해 전자 장치로부터 인증서 사용 정보가 수신되면, 타 서버로부터 인증 기관에 대한 정보를 수신하고, 상기 통신 인터페이스를 통해 상기 인증서 사용 정보에 대응되는 인증 기관 서버로부터 상기 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신하고, 상기 통신 인터페이스를 통해 상기 전자 장치로 상기 인증서에 대한 정보를 전송할 수 있다.According to an embodiment of the present disclosure for achieving the above object, a server includes a communication interface and a processor connected to the communication interface to control the server, wherein the processor receives a certificate from the electronic device through the communication interface. When the usage information is received, information on a certification authority is received from another server, and information on a certificate included in the certificate usage information is received from a certification authority server corresponding to the certificate usage information through the communication interface, and the Information on the certificate may be transmitted to the electronic device through a communication interface.

또한, 상기 프로세서는 상기 인증서에 대한 정보를 상기 전자 장치로 전송한 후, 상기 통신 인터페이스를 통해 상기 전자 장치와 동일한 스펙의 복수의 타 전자 장치로 상기 인증서에 대한 정보를 전송할 수 있다.Also, after transmitting the information on the certificate to the electronic device, the processor may transmit the information on the certificate to a plurality of other electronic devices having the same specifications as the electronic device through the communication interface.

한편, 본 개시의 일 실시 예에 따르면, 전자 장치의 제어 방법은 제1 서버로부터 인증서가 수신되면, 상기 전자 장치에 저장된 인증서 번들에 기초하여 상기 인증서를 검증하는 단계, 상기 인증서의 검증에 실패하면 제2 서버로 인증서 사용 정보를 전송하는 단계 및 상기 제2 서버로부터 상기 인증서에 대한 정보가 수신되면, 상기 수신된 인증서에 대한 정보에 기초하여 상기 인증서 번들을 업데이트하는 단계를 포함한다.Meanwhile, according to an embodiment of the present disclosure, a method for controlling an electronic device includes, when a certificate is received from a first server, verifying the certificate based on a certificate bundle stored in the electronic device, and if verification of the certificate fails transmitting certificate usage information to a second server; and when information on the certificate is received from the second server, updating the certificate bundle based on the received information on the certificate.

또한, 상기 검증하는 단계는 상기 인증서 번들에 상기 인증서의 상위 인증서의 존재 여부, 상기 인증서의 서명 검증 여부, 상기 인증서의 기간 만료 여부 또는 상기 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 상기 인증서를 검증할 수 있다.In addition, the verifying may include verifying the certificate based on at least one of whether the upper certificate of the certificate exists in the certificate bundle, whether the signature of the certificate is verified, whether the period of the certificate has expired, or whether the period of the upper certificate has expired. can be verified.

그리고, 상기 전자 장치에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 상기 실행된 어플리케이션에 대응되는 상기 제1 서버에 접속하여 상기 인증서를 수신하는 단계를 더 포함할 수 있다.The method may further include, when one of the at least one application installed in the electronic device is executed, accessing the first server corresponding to the executed application and receiving the certificate.

또한, 상기 인증서 사용 정보는 상기 실행된 어플리케이션에 대한 정보, 서비스 정보, 상기 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다.In addition, the certificate usage information may include at least one of information about the executed application, service information, and a cause of the certificate or verification failure.

그리고, 상기 제1 서버로의 접속 정보를 저장하는 단계 및 상기 접속 정보에 기초하여 기설정된 시간마다 상기 제2 서버로 상기 인증서 사용 정보를 전송하는 단계를 더 포함할 수 있다.The method may further include storing access information to the first server and transmitting the certificate usage information to the second server every preset time based on the access information.

또한, 상기 업데이트가 완료되면 상기 전자 장치의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하는 단계 및 주변 기기로 인증서 갱신 알람을 브로드캐스트하는 단계를 더 포함할 수 있다.The method may further include changing the operation mode of the electronic device to a soft access point mode when the update is completed, and broadcasting a certificate renewal alarm to a peripheral device.

그리고, 상기 주변 기기가 상기 전자 장치에 접속되면 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하는 단계 및 상기 Soft 액세스 포인트 모드를 종료하는 단계를 더 포함할 수 있다.The method may further include transmitting the updated certificate bundle to the peripheral device when the peripheral device is connected to the electronic device and terminating the soft access point mode.

또한, 상기 업데이트된 인증서 번들을 전송하는 단계는 상기 접속된 주변 기기가 상기 전자 장치와 동일한 소유자의 기기이면, 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송할 수 있다.In addition, the transmitting of the updated certificate bundle may include transmitting the updated certificate bundle to the peripheral device if the connected peripheral device is a device of the same owner as the electronic device.

그리고, 상기 인증서가 검증되면 상기 제1 서버로 기설정된 서비스를 요청하는 단계를 더 포함할 수 있다.The method may further include requesting a preset service to the first server when the certificate is verified.

이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 서비스를 제공받고자 하는 경우 프로비저닝 서버를 통해 실시간으로 인증서를 업데이트하게 되어, 서비스 이용이 차단되는 문제가 해결될 수 있다.According to various embodiments of the present disclosure as described above, when the electronic device wants to receive a service, the certificate is updated in real time through the provisioning server, so that the problem of blocking the use of the service can be solved.

또한, 서버는 인증서 프로비저닝을 수행한 후 전자 장치와 동일한 스펙의 복수의 타 전자 장치로 인증서 프로비저닝을 수행하여, 선제적으로 인증서를 업데이트할 수 있다.In addition, after performing certificate provisioning, the server may preemptively update the certificate by provisioning the certificate to a plurality of other electronic devices having the same specifications as the electronic device.

도 1은 본 개시의 일 실시 예에 따른 전자 시스템을 설명하기 위한 블럭도이다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 프로비저닝 서버의 구성을 나타내는 블록도이다.
도 4는 본 개시의 일 실시 예에 따른 전자 시스템(1000)을 개략적으로 설명하기 위한 도면이다.
도 5a 내지 도 5d는 본 개시의 일 실시 예에 따른 프로비저닝 동작을 순차적으로 설명하기 위한 도면들이다.
도 6은 본 개시의 일 실시 예에 따른 전자 장치의 인증서 검증 동작을 설명하기 위한 흐름도이다.
도 7a 및 도 7b는 본 개시의 일 실시 예에 따른 프로비저닝 서버의 인증서 검색 및 업데이트 동작을 설명하기 위한 흐름도이다.
도 8a 및 도 8b는 본 개시의 일 실시 예에 따른 인증서 프로비저닝 동작을 설명하기 위한 흐름도이다.
도 9a 및 도 9b는 본 개시의 일 실시 예에 따른 업데이트된 인증서 번들을 주변 기기로 제공하는 동작을 설명하기 위한 흐름도이다.
도 10은 본 개시의 일 실시 예에 따른 수요 예측을 통한 인증서 번들 관리 방법을 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시 예에 따른 수요 예측을 통한 인증서 번들 관리 방법을 설명하기 위한 흐름도이다.
도 12는 본 개시의 일 실시 예에 따른 선제적 인증서 프로비저닝 동작을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
도 14는 본 개시의 일 실시 예에 따른 프로비저닝 서버의 제어 방법을 설명하기 위한 흐름도이다.
1 is a block diagram illustrating an electronic system according to an embodiment of the present disclosure.
2 is a block diagram illustrating a configuration of an electronic device according to an embodiment of the present disclosure.
3 is a block diagram illustrating a configuration of a provisioning server according to an embodiment of the present disclosure.
4 is a diagram schematically illustrating an electronic system 1000 according to an embodiment of the present disclosure.
5A to 5D are diagrams for sequentially explaining a provisioning operation according to an embodiment of the present disclosure.
6 is a flowchart illustrating an operation of verifying a certificate of an electronic device according to an embodiment of the present disclosure.
7A and 7B are flowcharts illustrating a certificate search and update operation of a provisioning server according to an embodiment of the present disclosure.
8A and 8B are flowcharts illustrating a certificate provisioning operation according to an embodiment of the present disclosure.
9A and 9B are flowcharts for explaining an operation of providing an updated certificate bundle to a peripheral device according to an embodiment of the present disclosure.
10 is a diagram for explaining a method for managing a certificate bundle through demand prediction according to an embodiment of the present disclosure.
11 is a flowchart illustrating a method for managing a certificate bundle through demand prediction according to an embodiment of the present disclosure.
12 is a diagram for explaining a preemptive certificate provisioning operation according to an embodiment of the present disclosure.
13 is a flowchart illustrating a method of controlling an electronic device according to an embodiment of the present disclosure.
14 is a flowchart illustrating a method for controlling a provisioning server according to an embodiment of the present disclosure.

이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.Hereinafter, the present disclosure will be described in detail with reference to the accompanying drawings.

본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.Terms used in the embodiments of the present disclosure have been selected as currently widely used general terms as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedent of a person skilled in the art, the emergence of new technology, etc. . In addition, in specific cases, there are also terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the description of the corresponding disclosure. Therefore, the terms used in the present disclosure should be defined based on the meaning of the term and the contents of the present disclosure, rather than the simple name of the term.

본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In the present specification, expressions such as “have,” “may have,” “include,” or “may include” indicate the presence of a corresponding characteristic (eg, a numerical value, function, operation, or component such as a part). and does not exclude the presence of additional features.

A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.The expression “at least one of A and/or B” is to be understood as indicating either “A” or “B” or “A and B”.

본 명세서에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.As used herein, expressions such as "first," "second," "first," or "second," can modify various elements, regardless of order and/or importance, and refer to one element. It is used only to distinguish it from other components, and does not limit the components.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as "comprises" or "consisting of" are intended to designate that the features, numbers, steps, operations, components, parts, or combinations thereof described in the specification exist, and are intended to indicate that one or more other It is to be understood that this does not preclude the possibility of addition or presence of features or numbers, steps, operations, components, parts, or combinations thereof.

본 명세서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공 지능 전자 장치)를 지칭할 수 있다.In this specification, the term user may refer to a person who uses an electronic device or a device (eg, an artificial intelligence electronic device) using the electronic device.

이하 첨부된 도면들을 참조하여 본 개시의 다양한 실시 예를 보다 상세하게 설명한다.Hereinafter, various embodiments of the present disclosure will be described in more detail with reference to the accompanying drawings.

도 1은 본 개시의 일 실시 예에 따른 전자 시스템(1000)을 설명하기 위한 블럭도이다. 도 1에 따르면, 전자 시스템(1000)은 전자 장치(100), 프로비저닝 서버(200) 및 서비스 서버(300)를 포함한다.1 is a block diagram illustrating an electronic system 1000 according to an embodiment of the present disclosure. Referring to FIG. 1 , an electronic system 1000 includes an electronic device 100 , a provisioning server 200 , and a service server 300 .

전자 장치(100)는 인증서 번들에 기초하여 서비스 서버(300)로부터의 서비스를 제공받는 장치로서, TV, 데스크탑 PC, 노트북, 비디오 월(video wall), LFD(large format display), Digital Signage(디지털 간판), DID(Digital Information Display), 프로젝터 디스플레이, DVD(digital video disk) 플레이어, 스마트폰, 태블릿 PC, 모니터, 스마트 안경, 스마트 워치, 셋탑박스(STB), 스피커, 컴퓨터 본체, 서버 등과 같은 장치일 수 있다. 다만, 이에 한정되는 것은 아니며, 전자 장치(100)는 인증서 번들에 기초하여 서비스 서버(300)로부터의 서비스를 제공받을 수 있는 장치라면 어떠한 장치라도 무방하다.The electronic device 100 is a device that receives a service from the service server 300 based on a certificate bundle, and includes a TV, a desktop PC, a notebook computer, a video wall, a large format display (LFD), and a digital signage (digital signage). devices such as signage), Digital Information Display (DID), projector display, digital video disk (DVD) player, smartphone, tablet PC, monitor, smart glasses, smart watch, set-top box (STB), speaker, computer body, server, etc. can be However, the present invention is not limited thereto, and the electronic device 100 may be any device as long as it can receive a service from the service server 300 based on the certificate bundle.

여기서, 인증서 번들은 CA(Certificate Authority) 인증서 번들로도 불리며, 복수의 서비스에 각각 대응되는 복수의 인증서를 포함할 수 있다. 예를 들어, 전자 장치(100)가 A 회사로부터 서비스를 받기 위해서는 A 회사에서 제공하는 인증서가 필요하다. 다만, 이에 한정되는 것은 아니며, 인증서 번들은 복수의 회사에 각각 대응되는 복수의 인증서를 포함하거나 복수의 서비스에 각각 대응되는 복수의 인증서 및 복수의 회사에 각각 대응되는 복수의 인증서를 포함할 수도 있다.Here, the certificate bundle is also called a Certificate Authority (CA) certificate bundle, and may include a plurality of certificates respectively corresponding to a plurality of services. For example, in order for the electronic device 100 to receive a service from company A, a certificate provided by company A is required. However, the present invention is not limited thereto, and the certificate bundle may include a plurality of certificates respectively corresponding to a plurality of companies, or a plurality of certificates respectively corresponding to a plurality of services and a plurality of certificates respectively corresponding to a plurality of companies. .

전자 장치(100)는 서비스 서버(300)로부터 인증서를 수신하고, 인증서 번들에 기초하여 인증서를 검증할 수 있다. 전자 장치(100)는 인증서 검증이 완료되면 서비스 서버(300)가 제공하는 서비스를 이용할 수 있고, 인증서 검증이 실패하면 프로비저닝 서버(200)로 인증서 사용 정보를 전송할 수 있다. 그리고, 전자 장치(100)는 프로비저닝 서버(200)를 통해 인증서 번들을 업데이트할 수 있다. 전자 장치(100)는 인증서 번들가 업데이트되면, 서비스 서버(300)로부터 수신된 인증서의 검증이 가능하여 서비스 서버(300)가 제공하는 서비스를 이용할 수 있다.The electronic device 100 may receive the certificate from the service server 300 and verify the certificate based on the certificate bundle. The electronic device 100 may use a service provided by the service server 300 when the certificate verification is completed, and may transmit certificate usage information to the provisioning server 200 if the certificate verification fails. Then, the electronic device 100 may update the certificate bundle through the provisioning server 200 . When the certificate bundle is updated, the electronic device 100 can verify the certificate received from the service server 300 and use the service provided by the service server 300 .

프로비저닝 서버(200)는 인증서를 관리하는 서버로서, 전자 장치(100)로부터 인증서 사용 정보가 수신되면, 인증서 사용 정보에 대응되는 인증(Certificate Authority, CA) 기관 서버(미도시)로부터 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신하며, 수신된 정보를 전자 장치(100)로 전송할 수 있다. 여기서, 프로비저닝 서버(200)가 전자 장치(100)로 인증서에 대한 정보를 제공하여 인증서 번들을 업데이트하는 동작을 인증서 프로비저닝(provisioning)이라고 한다.The provisioning server 200 is a server that manages certificates. When certificate use information is received from the electronic device 100, the provisioning server 200 receives certificate use information from a Certificate Authority (CA) authority server (not shown) corresponding to the certificate use information. Information on the included certificate may be received, and the received information may be transmitted to the electronic device 100 . Here, an operation in which the provisioning server 200 updates the certificate bundle by providing information about the certificate to the electronic device 100 is referred to as certificate provisioning.

도 1에서는 설명의 편의를 위해 프로비저닝 서버(200)가 전자 장치(100)와 연결된 것으로 도시하였으나, 이에 한정되는 것은 아니다. 예를 들어, 프로비저닝 서버(200)는 전자 장치(100) 뿐만 아니라 복수의 전자 장치를 대상으로 인증서 프로비저닝 동작을 수행할 수 있다. 또한, 인증 기관 서버 역시 회사 별로 또는 서비스 별로 복수일 수 있다.1 illustrates that the provisioning server 200 is connected to the electronic device 100 for convenience of explanation, but is not limited thereto. For example, the provisioning server 200 may perform a certificate provisioning operation targeting not only the electronic device 100 but also a plurality of electronic devices. Also, there may be a plurality of certification authority servers for each company or service.

서비스 서버(300)는 전자 장치(100)로 서비스를 제공하는 장치로서, 전자 장치(100)가 서비스 서버(300)에 접속되면 전자 장치(100)로 인증서를 제공하고, 인증서에 대한 검증이 완료되면 서비스를 제공할 수 있다.The service server 300 is a device that provides a service to the electronic device 100 . When the electronic device 100 is connected to the service server 300 , the service server 300 provides a certificate to the electronic device 100 , and verification of the certificate is completed. service can be provided.

도 1에서는 설명의 편의를 위해 서비스 서버(300)가 하나만이 도시되었으나, 이에 한정되는 것은 아니다. 예를 들어, 서비스 서버(300)는 복수일 수 있고, 회사 별로 구현되거나 서비스 별로 구현될 수도 있다.In FIG. 1, only one service server 300 is illustrated for convenience of description, but the present invention is not limited thereto. For example, there may be a plurality of service servers 300 , and may be implemented for each company or for each service.

이상과 같은 동작을 통해 종래 전자 장치(100)의 사용자가 수동으로 인증서를 업데이트하는 불편을 해소할 수 있다.Through the above operation, the inconvenience of the user of the conventional electronic device 100 manually updating the certificate can be eliminated.

도 2는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 나타내는 블록도이다.2 is a block diagram illustrating a configuration of an electronic device 100 according to an embodiment of the present disclosure.

전자 장치(100)는 도 2에 도시된 바와 같이, 통신 인터페이스(110), 메모리(120) 및 프로세서(130)를 포함한다.As shown in FIG. 2 , the electronic device 100 includes a communication interface 110 , a memory 120 , and a processor 130 .

통신 인터페이스(110)는 다양한 유형의 통신 방식에 따라 다양한 유형의 외부 장치와 통신을 수행하는 구성이다. 예를 들어, 전자 장치(100)는 통신 인터페이스(110)를 통해 프로비저닝 서버(200) 또는 서비스 서버(300)와 통신을 수행할 수 있다.The communication interface 110 is configured to communicate with various types of external devices according to various types of communication methods. For example, the electronic device 100 may communicate with the provisioning server 200 or the service server 300 through the communication interface 110 .

통신 인터페이스(110)는 와이파이 모듈, 블루투스 모듈, 적외선 통신 모듈 및 무선 통신 모듈 등을 포함할 수 있다. 여기서, 각 통신 모듈은 적어도 하나의 하드웨어 칩 형태로 구현될 수 있다.The communication interface 110 may include a Wi-Fi module, a Bluetooth module, an infrared communication module, and a wireless communication module. Here, each communication module may be implemented in the form of at least one hardware chip.

와이파이 모듈, 블루투스 모듈은 각각 WiFi 방식, 블루투스 방식으로 통신을 수행한다. 와이파이 모듈이나 블루투스 모듈을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. 적외선 통신 모듈은 시 광선과 밀리미터파 사이에 있는 적외선을 이용하여 근거리에 무선으로 데이터를 전송하는 적외선 통신(IrDA, infrared Data Association)기술에 따라 통신을 수행한다.The Wi-Fi module and the Bluetooth module perform communication using a WiFi method and a Bluetooth method, respectively. In the case of using a Wi-Fi module or a Bluetooth module, various types of connection information such as an SSID and a session key are first transmitted and received, and various types of information can be transmitted/received after a communication connection is made using this. The infrared communication module communicates according to the infrared data association (IrDA) technology, which wirelessly transmits data in a short distance using infrared that is between visible light and millimeter waves.

무선 통신 모듈은 상술한 통신 방식 이외에 지그비(zigbee), 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), LTE-A(LTE Advanced), 4G(4th Generation), 5G(5th Generation)등과 같은 다양한 무선 통신 규격에 따라 통신을 수행하는 적어도 하나의 통신 칩을 포함할 수 있다.In addition to the above-described communication method, the wireless communication module includes Zigbee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), LTE Advanced (LTE-A), 4th Generation (4G), 5G It may include at least one communication chip that performs communication according to various wireless communication standards, such as (5th Generation).

또는, 통신 인터페이스(110)는 HDMI, DP, 썬더볼트, USB, RGB, D-SUB, DVI 등과 같은 유선 통신 인터페이스를 포함할 수 있다.Alternatively, the communication interface 110 may include a wired communication interface such as HDMI, DP, Thunderbolt, USB, RGB, D-SUB, DVI, or the like.

그 밖에 통신 인터페이스(110)는 LAN(Local Area Network) 모듈, 이더넷 모듈, 또는 페어 케이블, 동축 케이블 또는 광섬유 케이블 등을 이용하여 통신을 수행하는 유선 통신 모듈 중 적어도 하나를 포함할 수도 있다.In addition, the communication interface 110 may include at least one of a local area network (LAN) module, an Ethernet module, or a wired communication module for performing communication using a pair cable, a coaxial cable, or an optical fiber cable.

메모리(120)는 프로세서(130) 등이 접근할 수 있도록 데이터 등의 정보를 전기 또는 자기 형태로 저장하는 하드웨어를 지칭할 수 있다. 이를 위해, 메모리(120)는 비휘발성 메모리, 휘발성 메모리, 플래시 메모리(Flash Memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD), RAM, ROM 등 중에서 적어도 하나의 하드웨어로 구현될 수 있다.The memory 120 may refer to hardware that stores information such as data in an electric or magnetic form so that the processor 130 can access it. To this end, the memory 120 may be implemented with at least one hardware selected from nonvolatile memory, volatile memory, flash memory, hard disk drive (HDD) or solid state drive (SSD), RAM, ROM, etc. .

메모리(120)에는 전자 장치(100) 또는 프로세서(130)의 동작에 필요한 적어도 하나의 인스트럭션(instruction) 또는 모듈이 저장될 수 있다. 여기서, 인스트럭션은 전자 장치(100) 또는 프로세서(130)의 동작을 지시하는 부호 단위로서, 컴퓨터가 이해할 수 있는 언어인 기계어로 작성된 것일 수 있다. 모듈은 작업 단위의 특정 작업을 수행하는 일련의 인스트럭션의 집합체(instruction set)일 수 있다.At least one instruction or module required for the operation of the electronic device 100 or the processor 130 may be stored in the memory 120 . Here, the instruction is a unit of code for instructing the operation of the electronic device 100 or the processor 130 and may be written in machine language, which is a language that a computer can understand. A module may be a set of instructions that perform a specific task of a unit of work.

메모리(120)에는 문자, 수, 영상 등을 나타낼 수 있는 비트 또는 바이트 단위의 정보인 데이터가 저장될 수 있다. 예를 들어, 메모리(120)에는 인증서 번들, 주변 기기에 대한 정보, 서비스 모듈 등이 저장될 수 있다. 여기서, 인증서 번들은 인증 기관 서버 또는 프로비저닝 서버(200)로부터 수신된 인증서를 포함할 수 있다.The memory 120 may store data that is information in units of bits or bytes that can represent characters, numbers, images, and the like. For example, the memory 120 may store a certificate bundle, information on peripheral devices, a service module, and the like. Here, the certificate bundle may include a certificate received from the certification authority server or the provisioning server 200 .

메모리(120)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의해 인스트럭션, 모듈 또는 데이터에 대한 독취/기록/수정/삭제/갱신 등이 수행될 수 있다.The memory 120 is accessed by the processor 130 , and reading/writing/modification/deletion/update of instructions, modules, or data may be performed by the processor 130 .

프로세서(130)는 전자 장치(100)의 동작을 전반적으로 제어한다. 구체적으로, 프로세서(130)는 전자 장치(100)의 각 구성과 연결되어 전자 장치(100)의 동작을 전반적으로 제어할 수 있다. 예를 들어, 프로세서(130)는 통신 인터페이스(110), 메모리(120) 등과 같은 구성과 연결되어 전자 장치(100)의 동작을 제어할 수 있다.The processor 130 controls the overall operation of the electronic device 100 . Specifically, the processor 130 may be connected to each component of the electronic device 100 to control the overall operation of the electronic device 100 . For example, the processor 130 may be connected to components such as the communication interface 110 and the memory 120 to control the operation of the electronic device 100 .

일 실시 예에 따라 프로세서(130)는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(130)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.According to an embodiment, the processor 130 may be implemented as a digital signal processor (DSP), a microprocessor, or a time controller (TCON). However, the present invention is not limited thereto, and the central processing unit ( central processing unit (CPU)), micro controller unit (MPU), micro processing unit (MPU), controller, application processor (AP), or communication processor (CP), ARM processor In addition, the processor 130 may be implemented as a SoC (System on Chip) or LSI (large scale integration) in which a processing algorithm is embedded, or an FPGA ( Field programmable gate array) may be implemented.

프로세서(130)는 통신 인터페이스(110)를 통해 서비스 서버(300)로부터 인증서가 수신되면, 메모리(120)에 저장된 인증서 번들에 기초하여 인증서를 검증할 수 있다.When a certificate is received from the service server 300 through the communication interface 110 , the processor 130 may verify the certificate based on the certificate bundle stored in the memory 120 .

예를 들어, 프로세서(130)는 전자 장치(100)에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 실행된 어플리케이션에 대응되는 서비스 서버(300)에 접속하여 인증서를 수신할 수 있다.For example, when one of at least one application installed in the electronic device 100 is executed, the processor 130 may access the service server 300 corresponding to the executed application and receive a certificate.

다만, 이에 한정되는 것은 아니며, 프로세서(130)는 기설정된 시간 간격으로 서비스 서버(300)에 접속하여 인증서를 수신할 수도 있다. 예를 들어, 프로세서(130)는 서비스 서버(300)로의 접속 정보를 메모리(120)에 저장하고, 접속 정보에 기초하여 기설정된 시간마다 통신 인터페이스(110)를 통해 프로비저닝 서버(200)로 인증서 사용 정보를 전송할 수도 있다.However, the present invention is not limited thereto, and the processor 130 may receive a certificate by accessing the service server 300 at a preset time interval. For example, the processor 130 stores access information to the service server 300 in the memory 120, and uses the certificate as the provisioning server 200 through the communication interface 110 every preset time based on the access information. It can also transmit information.

프로세서(130)는 인증서 번들에 인증서의 상위 인증서의 존재 여부, 인증서의 서명 검증 여부, 인증서의 기간 만료 여부 또는 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 인증서를 검증할 수 있다.The processor 130 may verify the certificate based on at least one of whether an upper certificate of the certificate exists in the certificate bundle, whether the signature of the certificate is verified, whether the period of the certificate has expired, or whether the period of the upper certificate has expired.

예를 들어, 프로세서(130)는 인증서 번들에 인증서의 상위 인증서가 존재하지 않거나 인증서의 서명이 검증되지 않거나 인증서 또는 상위 인증서가 기간 만료된 경우 인증서의 검증이 실패한 것으로 결정할 수 있다.For example, the processor 130 may determine that the verification of the certificate has failed when the parent certificate of the certificate does not exist in the certificate bundle, the signature of the certificate is not verified, or the certificate or the parent certificate has expired.

프로세서(130)는 인증서의 검증에 실패하면 통신 인터페이스(110)를 통해 프로비저닝 서버(200)로 인증서 사용 정보를 전송할 수 있다. 여기서, 인증서 사용 정보는 실행된 어플리케이션에 대한 정보, 서비스 정보, 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다.If the verification of the certificate fails, the processor 130 may transmit certificate usage information to the provisioning server 200 through the communication interface 110 . Here, the certificate usage information may include at least one of information about the executed application, service information, a certificate, or a cause of verification failure.

프로세서(130)는 통신 인터페이스(110)를 통해 프로비저닝 서버(200)로부터 인증서에 대한 정보가 수신되면, 수신된 인증서에 대한 정보에 기초하여 인증서 번들을 업데이트할 수 있다.When information on a certificate is received from the provisioning server 200 through the communication interface 110 , the processor 130 may update the certificate bundle based on the information on the received certificate.

프로세서(130)는 인증서가 검증되면 통신 인터페이스(110)를 통해 서비스 서버(300)로 기설정된 서비스를 요청할 수 있다.When the certificate is verified, the processor 130 may request a preset service to the service server 300 through the communication interface 110 .

한편, 프로세서(130)는 업데이트가 완료되면 전자 장치(100)의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하고, 통신 인터페이스(110)를 통해 주변 기기로 인증서 갱신 알람을 브로드캐스트할 수 있다. 여기서, Soft 액세스 포인트는 액세스 포인트의 역할을 하도록 소프트웨어적으로 구현하여 무선 액세스 포인트와 같이 동작하도록 하는 기능이다. 예를 들어, 스마트폰의 핫스팟 기능은 Soft 액세스 포인트로 무선 액세스 포인트와 같이 동작하는 기능이다.On the other hand, when the update is completed, the processor 130 may change the operation mode of the electronic device 100 to a soft access point mode, and broadcast a certificate renewal alarm to peripheral devices through the communication interface 110 . have. Here, the soft access point is a function that is implemented in software to act as an access point to operate like a wireless access point. For example, the hotspot function of a smartphone is a soft access point that operates like a wireless access point.

프로세서(130)는 주변 기기가 전자 장치에 접속되면 통신 인터페이스(110)를 통해 주변 기기로 업데이트된 인증서 번들을 전송하고, Soft 액세스 포인트 모드를 종료할 수 있다.When the peripheral device is connected to the electronic device, the processor 130 may transmit the updated certificate bundle to the peripheral device through the communication interface 110 and end the soft access point mode.

특히, 프로세서(130)는 접속된 주변 기기가 전자 장치(100)와 동일한 소유자의 기기이면, 통신 인터페이스(110)를 통해 주변 기기로 업데이트된 인증서 번들을 전송할 수 있다.In particular, if the connected peripheral device is a device of the same owner as the electronic device 100 , the processor 130 may transmit an updated certificate bundle to the peripheral device through the communication interface 110 .

다만, 이에 한정되는 것은 아니며, 프로세서(130)는 접속된 주변 기기가 동일한 네트워크에 속한 기기인 경우, 통신 인터페이스(110)를 통해 주변 기기로 업데이트된 인증서 번들을 전송할 수도 있다.However, the present invention is not limited thereto, and when the connected peripheral device is a device belonging to the same network, the processor 130 may transmit an updated certificate bundle to the peripheral device through the communication interface 110 .

도 3은 본 개시의 일 실시 예에 따른 프로비저닝 서버(200)의 구성을 나타내는 블록도이다.3 is a block diagram illustrating a configuration of a provisioning server 200 according to an embodiment of the present disclosure.

프로비저닝 서버(200)는 도 3에 도시된 바와 같이, 통신 인터페이스(210) 및 프로세서(220)를 포함한다.The provisioning server 200 includes a communication interface 210 and a processor 220 as shown in FIG. 3 .

통신 인터페이스(210)는 다양한 유형의 통신 방식에 따라 다양한 유형의 외부 장치와 통신을 수행하는 구성이다. 예를 들어, 프로비저닝 서버(200)는 통신 인터페이스(110)를 통해 전자 장치(100), 서비스 서버(300), 인증 기관 데이터베이스(Common Certificate Authority Database, CCADB) 서버 또는 인증 기관 서버와 통신을 수행할 수 있다.The communication interface 210 is configured to communicate with various types of external devices according to various types of communication methods. For example, the provisioning server 200 may communicate with the electronic device 100 , the service server 300 , a Common Certificate Authority Database (CCADB) server, or a certification authority server through the communication interface 110 . can

통신 인터페이스(210)는 전자 장치(100)의 통신 인터페이스(110)와 유사한 형태로 구현될 수 있으며, 중복되는 설명은 생략한다.The communication interface 210 may be implemented in a form similar to that of the communication interface 110 of the electronic device 100 , and a redundant description will be omitted.

프로세서(220)는 프로비저닝 서버(200)의 동작을 전반적으로 제어한다. 구체적으로, 프로세서(220)는 프로비저닝 서버(200)의 각 구성과 연결되어 프로비저닝 서버(200)의 동작을 전반적으로 제어할 수 있다. 예를 들어, 프로세서(220)는 통신 인터페이스(210) 등과 같은 구성과 연결되어 프로비저닝 서버(200)의 동작을 제어할 수 있다.The processor 220 controls the overall operation of the provisioning server 200 . Specifically, the processor 220 may be connected to each configuration of the provisioning server 200 to control the overall operation of the provisioning server 200 . For example, the processor 220 may be connected to a configuration such as the communication interface 210 to control the operation of the provisioning server 200 .

일 실시 예에 따라 프로세서(220)는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), TCON(Time controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(220)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.According to an embodiment, the processor 220 may be implemented as a digital signal processor (DSP), a microprocessor (microprocessor), or a time controller (TCON). However, the present invention is not limited thereto, and the central processing unit ( central processing unit (CPU)), micro controller unit (MPU), micro processing unit (MPU), controller, application processor (AP), or communication processor (CP), ARM processor In addition, the processor 220 may be implemented as a SoC (System on Chip) or LSI (large scale integration) in which a processing algorithm is embedded, or an FPGA ( Field programmable gate array) may be implemented.

프로세서(220)는 통신 인터페이스(210)를 통해 전자 장치(100)로부터 인증서 사용 정보가 수신되면, 인증 기관 데이터베이스 서버로부터 인증 기관에 대한 정보를 수신하고, 통신 인터페이스(210)를 통해 인증서 사용 정보에 대응되는 인증 기관 서버로부터 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신할 수 있다.When the certificate usage information is received from the electronic device 100 through the communication interface 210 , the processor 220 receives information about the certification authority from the certification authority database server, and accesses the certificate usage information through the communication interface 210 . Information on the certificate included in the certificate use information may be received from the corresponding certification authority server.

여기서, 인증 기관 데이터베이스 서버는 인증 기관에 대한 정보를 저장한 서버이며, 인증 기관 서버는 각 인증 기관의 인증서가 저장된 서버이다.Here, the certification authority database server is a server storing information about the certification authority, and the certification authority server is a server in which certificates of each certification authority are stored.

프로세서(220)는 통신 인터페이스(210)를 통해 전자 장치(100)로 인증서에 대한 정보를 전송할 수 있다. 즉, 종래 전자 장치(100)의 사용자가 개별적으로 인증서를 업데이트하는 동작을 프로비저닝 서버(200)가 각 인증 기관 서버로부터 인증서를 수신하여 전자 장치(100)로 제공하는 동작으로 변경됨에 따라 사용자 편의성이 향상된다.The processor 220 may transmit information about the certificate to the electronic device 100 through the communication interface 210 . That is, as the user of the conventional electronic device 100 individually updates the certificate, the provisioning server 200 receives the certificate from each certification authority server and provides it to the electronic device 100 , so user convenience is improved. is improved

프로세서(220)는 인증서에 대한 정보를 전자 장치(100)로 전송한 후, 통신 인터페이스(210)를 통해 전자 장치(100)와 동일한 스펙의 복수의 타 전자 장치로 인증서에 대한 정보를 전송할 수 있다.After transmitting the information on the certificate to the electronic device 100 , the processor 220 may transmit the information on the certificate to a plurality of other electronic devices having the same specifications as the electronic device 100 through the communication interface 210 . .

예를 들어, A 회사의 서비스를 이용하는 제1 전자 장치 및 제2 전자 장치가 있으며, 제1 전자 장치가 A 회사와 관련된 어플리케이션의 실행에 따라 프로비저닝 서버(200)를 통해 인증서 번들이 업데이트될 수 있다. 이 경우, A 회사와 관련된 어플리케이션이 실행되지 않은 제2 전자 장치는 인증서 번들이 업데이트되지 않은 상태일 수 있다. 다만, 이 경우에도 프로비저닝 서버(200)는 제1 전자 장치로 인증서에 대한 정보를 제공한 동작에 기초하여 제2 전자 장치로 인증서에 대한 정보를 제공하여 선제적으로 제2 전자 장치의 인증서 번들을 업데이트할 수도 있다.For example, there are a first electronic device and a second electronic device using the service of company A, and the certificate bundle may be updated through the provisioning server 200 according to the execution of an application related to company A by the first electronic device. . In this case, the second electronic device in which the application related to the company A is not executed may be in a state in which the certificate bundle is not updated. However, even in this case, the provisioning server 200 provides information about the certificate to the second electronic device based on the operation of providing the information on the certificate to the first electronic device to preemptively preemptively preemptively provide the certificate bundle of the second electronic device. You can also update it.

이상에서는 프로비저닝 서버(200)가 전자 장치(100)와 동일한 스펙의 복수의 타 전자 장치로 인증서에 대한 정보를 전송하는 것으로 설명하였으나, 이에 한정되는 것은 아니다. 예를 들어, 프로비저닝 서버(200)는 전자 장치(100)로 제공한 인증서에 대한 정보와 관련된 서비스를 이용하는 복수의 타 전자 장치로 인증서에 대한 정보를 전송할 수도 있다.In the above description, the provisioning server 200 transmits information about the certificate to a plurality of other electronic devices having the same specifications as the electronic device 100 , but the present invention is not limited thereto. For example, the provisioning server 200 may transmit certificate information to a plurality of other electronic devices using a service related to the certificate information provided to the electronic device 100 .

이상과 같은 방법을 통해 실시간으로 인증서를 업데이트하여 사용자의 불편을 해소할 수 있다.Through the above method, the user's inconvenience can be solved by updating the certificate in real time.

이하에서는 도 4 내지 도 12를 통해 전자 시스템(1000)의 동작을 좀더 구체적으로 설명한다. 도 4 내지 도 12에서는 설명의 편의를 위해 개별적인 실시 예에 대하여 설명한다. 다만, 도 4 내지 도 12의 개별적인 실시 예는 얼마든지 조합된 상태로 실시될 수도 있다.Hereinafter, the operation of the electronic system 1000 will be described in more detail with reference to FIGS. 4 to 12 . 4 to 12 , individual embodiments will be described for convenience of description. However, the individual embodiments of FIGS. 4 to 12 may be embodied in any combination.

도 4는 본 개시의 일 실시 예에 따른 전자 시스템(1000)을 개략적으로 설명하기 위한 도면이다.4 is a diagram schematically illustrating an electronic system 1000 according to an embodiment of the present disclosure.

먼저, 복수의 IoT 기기 중 하나의 전자 장치(100)는 어플리케이션이 실행되면 서비스 서버(300)로부터 인증서를 수신할 수 있다. 그리고, 전자 장치(100)는 인증서 검증 모듈을 실행시켜 수신된 인증서를 검증할 수 있다. 전자 장치(100)는 인증서 검증이 실패한 경우, 인증서 프로비저닝 관리 모듈을 실행시켜 인증서 사용 정보를 프로비저닝 서버(200)로 전송할 수 있다.First, one electronic device 100 among a plurality of IoT devices may receive a certificate from the service server 300 when an application is executed. Then, the electronic device 100 may verify the received certificate by executing the certificate verification module. When the certificate verification fails, the electronic device 100 may execute a certificate provisioning management module to transmit certificate use information to the provisioning server 200 .

프로비저닝 서버(200)는 인증서 사용 정보에 대응되는 인증 기관 서버로부터 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신할 수 있다. 또는, 프로비저닝 서버(200)는 인증서 사용 정보에 대응되는 인증 기관에 대한 식별이 불가능한 경우, 인증 기관 데이터베이스 서버로부터 인증 기관에 대한 정보를 수신하고, 인증서 사용 정보에 대응되는 인증 기관 서버로부터 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신할 수도 있다.The provisioning server 200 may receive information about a certificate included in the certificate use information from a certification authority server corresponding to the certificate use information. Alternatively, when the provisioning server 200 is unable to identify the certification authority corresponding to the certificate use information, the provisioning server 200 receives information about the certification authority from the certification authority database server, and uses the certificate information from the certification authority server corresponding to the certificate use information. You can also receive information about the certificate included in the .

다만, 이에 한정되는 것은 아니며, 프로비저닝 서버는 보안 관리자를 통해 수동으로 입력된 인증서를 저장할 수도 있다.However, the present invention is not limited thereto, and the provisioning server may store a manually entered certificate through the security manager.

프로비저닝 서버(200)는 전자 장치(100)로 인증서에 대한 정보를 전송하고, 보안 관리자에게 프로비저닝 결과를 통지할 수 있다.The provisioning server 200 may transmit information about the certificate to the electronic device 100 and notify a provisioning result to a security manager.

전자 장치(100)는 인증서에 대한 정보에 기초하여 인증서 번들을 업데이트할 수 있다.The electronic device 100 may update the certificate bundle based on information about the certificate.

그리고, 전자 장치(100)는 주변 기기로 인증서 번들을 제공할 수 있다.In addition, the electronic device 100 may provide a certificate bundle to a peripheral device.

도 5a 내지 도 5d는 본 개시의 일 실시 예에 따른 프로비저닝 동작을 순차적으로 설명하기 위한 도면들이다.5A to 5D are diagrams for sequentially explaining a provisioning operation according to an embodiment of the present disclosure.

도 5a에서는 설명의 편의를 위하여 전자 장치(100)가 냉장고인 것으로 가정하였다. 전자 장치(100)는 도 5a에 도시된 바와 같이, 서비스 서버(300)에 접속하는 경우, 서비스 서버(300)로부터 인증서를 수신하고, 수신된 인증서를 검증할 수 있다. 전자 장치(100)는 인증서의 검증이 실패한 경우, 인증서 사용 정보를 프로비저닝 서버(200)로 전송할 수 있다. 여기서, 인증서 사용 정보는 실행된 어플리케이션에 대한 정보, 서비스 정보, 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다.In FIG. 5A , it is assumed that the electronic device 100 is a refrigerator for convenience of explanation. As shown in FIG. 5A , when accessing the service server 300 , the electronic device 100 may receive a certificate from the service server 300 and verify the received certificate. When verification of the certificate fails, the electronic device 100 may transmit certificate use information to the provisioning server 200 . Here, the certificate usage information may include at least one of information about the executed application, service information, a certificate, or a cause of verification failure.

프로비저닝 서버(200)는 도 5b에 도시된 바와 같이, 인증서 번들을 저장할 수 있다. 그리고, 프로비저닝 서버(200)는 수신된 인증서 사용 정보에 포함된 인증서의 발급자에 해당하는 상위 인증서를 인증서 번들에서 검색할 수 있다. 이때, 프로비저닝 서버(200)는 인증서 번들에 상위 인증서가 없거나 갱신이 필요한 경우, 인증서에 대응되는 인증 기관 서버에 접속하여 최신 인증서를 수신할 수 있다. 또한, 프로비저닝 서버(200)는 인증 기관 데이터베이스에서 제공하는 인증 기관에 대한 정보에 기초하여 인증서 체인(chain) 내의 하위 인증서를 모두 업데이트할 수 있다.The provisioning server 200 may store a certificate bundle as shown in FIG. 5B . Then, the provisioning server 200 may search the certificate bundle for an upper certificate corresponding to the issuer of the certificate included in the received certificate use information. In this case, when there is no upper certificate in the certificate bundle or renewal is required, the provisioning server 200 may access a certificate authority server corresponding to the certificate to receive the latest certificate. Also, the provisioning server 200 may update all sub-certificates in the certificate chain based on the information on the certification authority provided by the certification authority database.

프로비저닝 서버(200)는 도 5c에 도시된 바와 같이, 전자 장치(100)로 인증서에 대한 정보를 제공할 수 있다. 인증서에 대한 정보는 상위 인증서 또는 하위 인증서 중 적어도 하나를 포함할 수 있다.The provisioning server 200 may provide information about a certificate to the electronic device 100 as shown in FIG. 5C . The information about the certificate may include at least one of a higher level certificate and a lower level certificate.

전자 장치(100)는 인증서에 대한 정보에 기초하여 전자 장치(100)에 저장된 인증서 번들을 업데이트할 수 있다. 또한, 전자 장치(100)는 업데이트가 완료되면, 서비스 서버(300)로부터 수신된 인증서를 재검증하여 서비스를 이용할 수 있다.The electronic device 100 may update the certificate bundle stored in the electronic device 100 based on information about the certificate. Also, when the update is completed, the electronic device 100 may re-verify the certificate received from the service server 300 to use the service.

전자 장치(100)는 도 5d에 도시된 바와 같이, 주변 기기로 업데이트된 인증서 번들을 전송할 수 있다. 여기서, 주변 기기는 전자 장치(100)와 기설정된 시간 이상 동일한 네트워크에 연결된 장치일 수 있다.As shown in FIG. 5D , the electronic device 100 may transmit an updated certificate bundle to a peripheral device. Here, the peripheral device may be a device connected to the same network as the electronic device 100 for a predetermined time or longer.

도 6은 본 개시의 일 실시 예에 따른 전자 장치(100)의 인증서 검증 동작을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a certificate verification operation of the electronic device 100 according to an embodiment of the present disclosure.

먼저, 전자 장치(100)는 어플리케이션을 통해 서비스 서버(300)에 접속할 수 있다(S610). 그리고, 전자 장치(100)는 서비스 서버(300)로부터 인증서를 수신하고(S620), 검증 모듈을 통해 인증서를 검증할 수 있다(S630).First, the electronic device 100 may access the service server 300 through an application (S610). Then, the electronic device 100 may receive the certificate from the service server 300 (S620), and verify the certificate through the verification module (S630).

전자 장치(100)는 인증서 번들에 수신된 인증서의 상위 인증서가 존재하는지 식별하고(S640-1), 존재하지 않는 경우 프로비저닝 모듈을 실행시킬 수 있다(S650). 그리고, 전자 장치(100)는 인증서의 서명 검증을 수행하고(S640-2), 검증되지 않는 경우 프로비저닝 모듈을 실행시킬 수 있다(S650). 그리고, 전자 장치(100)는 인증서의 기간 만료 여부를 식별하고(S640-3), 기간 만료되었다면 프로비저닝 모듈을 실행시킬 수 있다(S650). 그리고, 전자 장치(100)는 상위 인증서의 기간 만료 여부를 식별하고, 기간 만료되었다면 프로비저닝 모듈을 실행시킬 수 있다(S650).The electronic device 100 may identify whether a higher level certificate of the received certificate exists in the certificate bundle (S640-1), and, if not present, may execute a provisioning module (S650). Then, the electronic device 100 may perform signature verification of the certificate (S640-2) and, if not verified, may execute a provisioning module (S650). Then, the electronic device 100 may identify whether the period of the certificate has expired (S640-3), and if the period has expired, may execute the provisioning module (S650). Then, the electronic device 100 may identify whether the period of the upper certificate has expired, and if the period has expired, execute the provisioning module ( S650 ).

전자 장치(100)는 인증서 번들에 수신된 인증서의 상위 인증서가 존재하고, 인증서의 서명이 검증되며, 인증서 및 상위 인증서의 기간이 만료되기 전인 경우, 서비스 서버(300)와 보안 채널을 형성할 수 있다(S660). 그리고, 전자 장치(100)는 상위 인증서가 기간 만료 1개월 이상인지 식별하고(S670), 1개월 미만이면 프로비저닝 모듈을 실행시키고(S680), 1개월 이상이면 서비스 접속 결과를 어플리케이션에 전달하여(S690), 서비스를 제공할 수 있다.The electronic device 100 may establish a secure channel with the service server 300 when the upper certificate of the received certificate exists in the certificate bundle, the signature of the certificate is verified, and the period of the certificate and the upper certificate is before expiration. There is (S660). Then, the electronic device 100 identifies whether the upper certificate has expired 1 month or more (S670), executes the provisioning module if it is less than 1 month (S680), and delivers the service connection result to the application if it is 1 month or more (S690) ), can provide services.

도 7a 및 도 7b는 본 개시의 일 실시 예에 따른 프로비저닝 서버(200)의 인증서 검색 및 업데이트 동작을 설명하기 위한 흐름도이다. 도 7a 및 도 7b는 프로비저닝 서버(200)가 전자 장치(100)로부터 인증서 사용 정보를 수신한 것을 가정하였다.7A and 7B are flowcharts illustrating a certificate search and update operation of the provisioning server 200 according to an embodiment of the present disclosure. 7A and 7B , it is assumed that the provisioning server 200 receives certificate usage information from the electronic device 100 .

먼저, 프로비저닝 서버(200)는 인증서 사용 정보에 포함된 인증서에서 발급자 이름 또는 서명 중 적어도 하나를 추출할 수 있다(S710). 그리고, 프로비저닝 서버(200)는 프로비저닝 서버(200)에 저장된 인증서 번들에서 동일한 발급자의 인증서를 검색할 수 있다(S715).First, the provisioning server 200 may extract at least one of the issuer name and the signature from the certificate included in the certificate use information (S710). Then, the provisioning server 200 may search for a certificate of the same issuer from the certificate bundle stored in the provisioning server 200 (S715).

프로비저닝 서버(200)는 인증서 번들에 인증서가 존재하는지 식별하고(S720-1), 존재하지 않는 경우 인증 기관 데이터베이스 서버에 접속하여 동일 발급자의 인증서 목록을 검색할 수 있다(S730). 그리고, 프로비저닝 서버(200)는 검색된 인증서의 서명 검증을 수행하고(S720-2), 검증되지 않는 경우 인증 기관 데이터베이스 서버에 접속하여 동일 발급자의 인증서 목록을 검색할 수 있다(S730). 그리고, 프로비저닝 서버(200)는 검색된 인증서의 기간 만료 여부를 식별하고(S720-3), 기간 만료되었다면 인증 기관 데이터베이스 서버에 접속하여 동일 발급자의 인증서 목록을 검색할 수 있다(S730). 그리고, 프로비저닝 서버(200)는 검색된 인증서의 기간 만료 1개월 전인지 식별하고, 아니라면 인증 기관 데이터베이스 서버에 접속하여 동일 발급자의 인증서 목록을 검색할 수 있다(S730).The provisioning server 200 may identify whether a certificate exists in the certificate bundle (S720-1), and if it does not exist, it may access a certificate authority database server to search for a list of certificates of the same issuer (S730). Then, the provisioning server 200 may perform signature verification of the retrieved certificate (S720-2), and if not verified, access a certificate authority database server to search a list of certificates of the same issuer (S730). Then, the provisioning server 200 may identify whether the period of the retrieved certificate has expired (S720-3), and if the period has expired, it may access a certification authority database server and search a list of certificates of the same issuer (S730). Then, the provisioning server 200 may identify whether the searched certificate is one month before the expiration of the period, and if not, it may access a certificate authority database server to search a list of certificates of the same issuer (S730).

프로비저닝 서버(200)는 인증서 번들에 인증서가 존재하고, 검색된 인증서의 서명이 검증되며, 검색된 인증서의 기간이 만료 전이고, 검색된 인증서의 기간 만료 1개월 전이면, 인증서 번들 내에서 인증서의 검색이 성공한 것으로 결정할 수 있다(S725). 이 경우, 프로비저닝 서버(200)는 검색된 인증서를 인증서에 대한 정보로서 전자 장치(100)로 제공할 수 있다.The provisioning server 200 determines that if the certificate exists in the certificate bundle, the signature of the retrieved certificate is verified, the period of the retrieved certificate is before expiration, and the period of the retrieved certificate is 1 month before the expiration, the search for the certificate in the certificate bundle is successful. It can be determined (S725). In this case, the provisioning server 200 may provide the retrieved certificate as information about the certificate to the electronic device 100 .

프로비저닝 서버(200)는 인증 기관 데이터베이스 서버에 접속하여 동일 발급자의 인증서 목록을 검색하여 유효 인증서가 존재하는지 식별할 수 있다(S735). 프로비저닝 서버(200)는 유효 인증서가 식별되지 않으면, 인증서 검색이 실패인 것으로 결정할 수 있다(S760).The provisioning server 200 may identify whether a valid certificate exists by accessing the certification authority database server and searching for a list of certificates of the same issuer (S735). If a valid certificate is not identified, the provisioning server 200 may determine that the certificate search has failed (S760).

프로비저닝 서버(200)는 유효 인증서가 존재하면 인증서 목록에서 각각 다운로드 URL 리스트를 추출하고(S740), 추출된 URL로 접속하여 인증서를 다운로드할 수 있다(S745). 프로비저닝 서버(200)는 다운로드된 인증서를 순차적으로 검증하고(S750), 다운로드된 인증서에 기초하여 인증서 사용 정보에 포함된 인증서가 검증되지 않으면, 인증서 검색이 실패인 것으로 결정할 수 있다(S760).If a valid certificate exists, the provisioning server 200 may extract each download URL list from the certificate list (S740), and access the extracted URL to download the certificate (S745). The provisioning server 200 sequentially verifies the downloaded certificate (S750), and if the certificate included in the certificate use information is not verified based on the downloaded certificate, it may determine that the certificate search has failed (S760).

프로비저닝 서버(200)는 다운로드된 인증서에 기초하여 인증서 사용 정보에 포함된 인증서가 검증되면, 다운로드된 인증서의 하위 인증서의 유무를 식별하고(S765), 하위 인증서가 있으면 다운로드된 인증서와 하위 인증서를 체인(chain)으로 구성하고(S770), 최종적으로 다운로드된 인증서 또는 인증서 체인을 저장소에 추가할 수 있다(S775).When the certificate included in the certificate usage information is verified based on the downloaded certificate, the provisioning server 200 identifies the presence or absence of a sub-certificate of the downloaded certificate (S765), and if there is a sub-certificate, chains the downloaded certificate and the sub-certificate (chain) can be configured (S770), and the finally downloaded certificate or certificate chain can be added to the storage (S775).

도 8a 및 도 8b는 본 개시의 일 실시 예에 따른 인증서 프로비저닝 동작을 설명하기 위한 흐름도이다. 도 8a 및 도 8b는 전자 장치(100)가 인증서 검증을 실패한 경우를 가정하였다.8A and 8B are flowcharts illustrating a certificate provisioning operation according to an embodiment of the present disclosure. 8A and 8B, it is assumed that the electronic device 100 fails to verify the certificate.

먼저, 전자 장치(100)는 어플리케이션으로부터 인증서 사용 정보를 획득할 수 있다(S810). 여기서, 인증서 사용 정보는 실행된 어플리케이션에 대한 정보, 서비스 정보, 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다. 전자 장치(100)는 인증서 사용 정보가 획득되면, 프로비저닝 서버(200)로 접속할 수 있다(S815, S820).First, the electronic device 100 may obtain certificate usage information from the application (S810). Here, the certificate usage information may include at least one of information about the executed application, service information, a certificate, or a cause of verification failure. When the certificate use information is obtained, the electronic device 100 may access the provisioning server 200 (S815 and S820).

프로비저닝 서버(200)는 전자 장치(100)의 접속 요청이 수신되면(S825), 전자 장치(100)로 프로비저닝 서버 인증서를 전송하고(S830, S835), 보안 채널을 수립할 수 있다(S831).When the access request of the electronic device 100 is received (S825), the provisioning server 200 may transmit a provisioning server certificate to the electronic device 100 (S830, S835) and establish a secure channel (S831).

전자 장치(100)는 프로비저닝 서버 인증서를 다운로드하고(S840), 프로비저닝 서버 인증서를 검증하며(S845), 검증이 실패하면 서버 접속을 종료하고(S894), 검증이 성공하면 보안 채널을 수립할 수 있다(S850).The electronic device 100 may download the provisioning server certificate (S840), verify the provisioning server certificate (S845), terminate the server connection if the verification fails (S894), and establish a secure channel if the verification is successful (S850).

전자 장치(100)는 보안 채널이 수립되면, 인증서 사용 정보를 프로비저닝 서버(200)로 전송할 수 있다(S855, S860).When the secure channel is established, the electronic device 100 may transmit certificate use information to the provisioning server 200 (S855 and S860).

프로비저닝 서버(200)는 인증서 사용 정보가 수신되면(S865), 인증서 사용 정보에서 데이터를 추출하여 히스토리 데이터베이스에 저장할 수 있다(S870). 그리고, 프로비저닝 서버(200)는 인증서 사용 정보에 포함된 서비스 서버(300)의 인증서의 상위 인증서를 프로비저닝 서버(200)에 저장된 인증서 번들에서 검색할 수 있다(S875).When the provisioning server 200 receives the certificate use information (S865), it may extract data from the certificate use information and store it in the history database (S870). Then, the provisioning server 200 may search for a higher certificate of the certificate of the service server 300 included in the certificate use information from the certificate bundle stored in the provisioning server 200 (S875).

프로비저닝 서버(200)는 상위 인증서의 프로비저닝이 필요한지 식별하고, 불필요한 경우 종료하고, 필요한 경우 상위 인증서를 포함시켜 인증서 사용 정보에 대한 응답을 제공할 수 있다(S885, S890).The provisioning server 200 may identify whether provisioning of the upper certificate is necessary, terminate it if unnecessary, and provide a response to the certificate use information by including the upper certificate if necessary (S885, S890).

전자 장치(100)는 응답이 수신되면(S891), 상위 인증서와 서비스 서버(300)의 인증서의 서명을 검증하고(S892), 상위 인증서 수신 결과를 어플리케이션에 통지한(S893) 후, 서버 접속을 종료할 수 있다(S894).When the response is received (S891), the electronic device 100 verifies the signature of the upper certificate and the certificate of the service server 300 (S892), notifies the application of the result of receiving the upper certificate (S893), and then connects the server It can be ended (S894).

도 9a 및 도 9b는 본 개시의 일 실시 예에 따른 업데이트된 인증서 번들을 주변 기기로 제공하는 동작을 설명하기 위한 흐름도이다. 도 9a 및 도 9b는 전자 장치(100)가 프로비저닝 서버(200)를 통해 인증서 번들을 업데이트한 후를 가정하였다.9A and 9B are flowcharts for explaining an operation of providing an updated certificate bundle to a peripheral device according to an embodiment of the present disclosure. 9A and 9B assume that the electronic device 100 updates the certificate bundle through the provisioning server 200 .

먼저, 전자 장치(100)는 프로비저닝 서버(200)에서 수신된 인증서에 대한 정보의 수신이 완료되면(S910), 기설정된 시간 동안 전자 장치(100)의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 전환할 수 있다(S915).First, when the reception of information on the certificate received from the provisioning server 200 is completed ( S910 ), the electronic device 100 sets the operation mode of the electronic device 100 to a soft access point mode for a preset time. can be switched to (S915).

그리고, 전자 장치(100)는 주변 기기로 인증서 갱신 알람을 브로드캐스트할 수 있다(S920). 이때, 전자 장치(100)는 인증서 번들 서명값을 포함한 인증서 갱신 알람을 브로드캐스트할 수 있다(S925).Then, the electronic device 100 may broadcast a certificate renewal alarm to a peripheral device (S920). In this case, the electronic device 100 may broadcast a certificate renewal alarm including the certificate bundle signature value ( S925 ).

주변 기기는 주기적으로 인증서 갱신 알람을 스캔하고(S930), 인증서 갱신 알람이 수신되면(S935-Y), 인증서 번들 서명값을 추출하고(S940), 주변 기기에 저장된 인증서 번들과 서명값을 비교할 수 있다(S945).The peripheral device periodically scans the certificate renewal alarm (S930), and when a certificate renewal alarm is received (S935-Y), the certificate bundle signature value is extracted (S940), and the signature value can be compared with the certificate bundle stored in the peripheral device. There is (S945).

주변 기기는 인증서 번들의 동기화가 필요한지 식별하고(S950), 불필요하면 종료하고, 필요하면 Soft 액세스 포인트에 접속 및 보안 채널을 수립할 수 있다(S955, S960).The peripheral device may identify whether synchronization of the certificate bundle is necessary (S950), terminate if not necessary, and establish access and secure channel to the soft access point if necessary (S955, S960).

전자 장치(100)는 기설정된 시간이 만료되면(S926-N) Soft 액세스 포인트 모드를 종료하고, 기설정된 시간이 만료되기 전에(S926-Y) 인증서 동기화 요청이 수신되면(S927-Y) 보안 채널을 수립할 수 있다(S965).The electronic device 100 terminates the soft access point mode when the preset time expires (S926-N), and when a certificate synchronization request is received (S927-Y) before the preset time expires (S926-Y), the secure channel can be established (S965).

주변 기기는 사용자 정보 해쉬(hash)를 포함하는 인증서 동기화 요청을 전자 장치(100)로 전송하고(S956, S957), 전자 장치(100)는 주변 기기의 인증서 동기화 요청에 따라 주변 기기가 댁내 기기임을 확인할 수 있다(S970).The peripheral device transmits a certificate synchronization request including a hash of user information to the electronic device 100 (S956, S957), and the electronic device 100 determines that the peripheral device is an indoor device according to the certificate synchronization request of the peripheral device. can be confirmed (S970).

전자 장치(100)는 인증서 동기화 요청 응답에 인증서 번들을 포함하여 주변 기기로 전달하고(S975, S976), 주변 기기는 인증서 동기화 요청 응답이 수신되면(S980), 주변 기기의 저장소에 인증서 번들 파일을 저장할 수 있다(S985).The electronic device 100 transmits the certificate bundle to the peripheral device in the certificate synchronization request response (S975, S976), and when the peripheral device receives the certificate synchronization request response (S980), the certificate bundle file is stored in the storage of the peripheral device. It can be saved (S985).

이상과 같은 동작을 통해 주변 기기의 인증서 번들을 업데이트할 수 있어 사용자 편의성이 향상될 수 있다.Through the above operation, the certificate bundle of the peripheral device can be updated, so that user convenience can be improved.

한편, 도 6 내지 9b는 설명의 편의를 위해 각 동작을 전자 장치(100) 또는 프로비저닝 서버(200)의 동작으로 기재하였다. 다만, 이에 한정되는 것은 아니며, 각 동작은 전자 장치(100)의 프로세서(130) 또는 프로비저닝 서버(200)의 프로세서(210)의 동작일 수 있다.Meanwhile, in FIGS. 6 to 9B , each operation is described as an operation of the electronic device 100 or the provisioning server 200 for convenience of explanation. However, the present invention is not limited thereto, and each operation may be an operation of the processor 130 of the electronic device 100 or the processor 210 of the provisioning server 200 .

도 10은 본 개시의 일 실시 예에 따른 수요 예측을 통한 인증서 번들 관리 방법을 설명하기 위한 도면이다.10 is a diagram for explaining a method for managing a certificate bundle through demand prediction according to an embodiment of the present disclosure.

프로비저닝 서버(200)는 복수의 전자 장치로부터 인증서 사용 정보를 수신할 수 있다. 여기서, 인증서 사용 정보는 기기 정보, 이벤트 발생 시간, 인증서 또는 인증서 알람 코드 중 적어도 하나를 포함할 수 있다. 기기 정보는 기기 고유 ID, 어플리케이션 명칭 또는 서비스 명칭 중 적어도 하나를 포함하고, 인증서는 발급자 명칭, 만료 기간, SHA256-Hash, 상위 인증 기관 명칭 또는 서명값 중 적어도 하나를 포함하며, 인증서 알람 코드는 NotExistCA, AuthFail, Expired 또는 ToBeExpired 중 적어도 하나를 포함할 수 있다.The provisioning server 200 may receive certificate usage information from a plurality of electronic devices. Here, the certificate usage information may include at least one of device information, an event occurrence time, a certificate, or a certificate alarm code. The device information includes at least one of a device unique ID, an application name, or a service name, the certificate includes at least one of an issuer name, an expiration period, SHA256-Hash, an upper certification authority name, or a signature value, and the certificate alarm code is NotExistCA , AuthFail, Expired, or ToBeExpired may include at least one of.

프로비저닝 서버(200)는 실시간 입력 데이터 기반 인증서 수요 예측 또는 누적 이력 데이터 기반 인증서 수요 예측을 수행할 수 있다.The provisioning server 200 may perform real-time input data-based certificate demand prediction or cumulative history data-based certificate demand prediction.

예를 들어, 프로비저닝 서버(200)는 시계열 분석을 통해 실시간 알람 트렌드를 분석할 수 있다. 가령, 프로비저닝 서버(200)는 인증서 알람 코드 별로 모델을 정의한 후, 어플리케이션/서비스 별로 실시간 발생 건수를 추적하여 알람이 급증하는 시점을 예측할 수 있다. 그리고, 프로비저닝 서버(200)는 사전 설정한 IFTTT 형태의 Rule 기반으로 특정 어플리케이션/서비스의 알람 상태가 조건을 만족하는 경우, 기설정된 Action을 수행할 수 있다.For example, the provisioning server 200 may analyze a real-time alarm trend through time series analysis. For example, after defining a model for each certificate alarm code, the provisioning server 200 may track the number of occurrences in real time for each application/service to predict when an alarm will rapidly increase. In addition, the provisioning server 200 may perform a preset action when the alarm state of a specific application/service satisfies a condition based on a preset IFTTT type rule.

또는, 프로비저닝 서버(200)는 인증서 알람 코드 별로 모델을 정의한 후, 어플리케이션/서비스 별로 알람 발생 건수를 누적하여 알람이 필요한 서비스를 예측하고, 사전 설정한 IFTTT 형태의 Rule 기반으로 특정 어플리케이션/서비스의 알람 상태가 조건을 만족하는 경우, 기설정된 Action을 수행할 수도 있다.Alternatively, the provisioning server 200 defines a model for each certificate alarm code, accumulates the number of alarm occurrences for each application/service, predicts a service requiring an alarm, and sets an alarm of a specific application/service based on a preset IFTTT type rule. When the state satisfies the condition, a preset action may be performed.

프로비저닝 서버(200)는 예측 결과를 관리자에게 통지할 수 있고, 인증서 관리 동작을 수행할 수 있다. 예를 들어, 프로비저닝 서버(200)는 예측 결과에 기초하여 인증서의 폐기, 재발급 또는 추가 중 적어도 하나의 동작을 수행하여, 비신뢰 인증서를 제거하거나 기존의 인증서를 갱신할 수 있다. 또는, 프로비저닝 서버(200)는 예방적 인증서 프로비저닝을 수행할 수도 있다. 예를 들어, 프로비저닝 서버(200)는 아직 알람이 발생하지 않은 전자 장치의 어플리케이셔에 대하여도 서비스의 중요도에 기초하여 프로비저닝을 수행할 수도 있다.The provisioning server 200 may notify an administrator of the prediction result, and may perform a certificate management operation. For example, the provisioning server 200 may remove an untrusted certificate or renew an existing certificate by performing at least one of revocation, reissuance, or addition of a certificate based on the prediction result. Alternatively, the provisioning server 200 may perform preventive certificate provisioning. For example, the provisioning server 200 may perform provisioning based on the importance of a service even for an application of an electronic device for which an alarm has not yet occurred.

도 11은 본 개시의 일 실시 예에 따른 수요 예측을 통한 인증서 번들 관리 방법을 설명하기 위한 흐름도이다.11 is a flowchart illustrating a method for managing a certificate bundle through demand prediction according to an embodiment of the present disclosure.

전자 장치(100)는 인증서 사용 알람 리포트를 프로비저닝 서버(200)로 전송할 수 있다(S1110).The electronic device 100 may transmit a certificate use alarm report to the provisioning server 200 (S1110).

프로비저닝 서버(200)는 실시간 데이터 스트림 및 누적 알람 히스토리 데이터를 분석하여(S1120), 서비스 별로 알람 발생 건수 시계열 모델을 업데이트하고(S1130), 알람이 급증하는 트렌드를 분석할 수 있다(S1140).The provisioning server 200 may analyze a real-time data stream and accumulated alarm history data (S1120), update a time series model of the number of alarm occurrences for each service (S1130), and analyze a trend in which alarms rapidly increase (S1140).

프로비저닝 서버(200)는 알람 Noti Rule(IFTTT)에서 매칭되는 Rule을 검색하고(S1150), 검색된 Rule에 정의된 인증서 관리 Action을 수행할 수 있다(S1160).The provisioning server 200 may search for a matching Rule in the Alarm Noti Rule (IFTTT) (S1150), and perform a certificate management action defined in the searched Rule (S1160).

그에 따라, 프로비저닝 서버(200)는 전자 장치(100)에 대하여 인증서 프로비저닝을 수행하고(S1165), Noti. Payload를 구성하여(S1170), 인증서 알람 발생에 대한 정보를 보안 관리자에게 통지할 수 있다(S1171). 인증서 알람 발생에 대한 정보는 알람 발생 시간, 알람 발생 건수, 알람 발생 기기 수, 어플리케이션/서비스, 알람 reason code, 알림 Noti IFTTT Rule ID, 조치 내역 또는 인증서 정보 중 적어도 하나를 포함할 수 있다. 조치 내역은 인증서 폐기, 재발급 또는 수정 중 적어도 하나를 포함하고, 인증서 정보는 발급자명 또는 만료 기간 중 적어도 하나를 포함할 수 있다.Accordingly, the provisioning server 200 performs certificate provisioning for the electronic device 100 (S1165), and Noti. By configuring the payload (S1170), it is possible to notify the security manager of information about the occurrence of a certificate alarm (S1171). Certificate alarm occurrence information may include at least one of an alarm occurrence time, number of alarm occurrences, number of alarm generating devices, applications/services, alarm reason code, notification Noti IFTTT Rule ID, action details, and certificate information. The action details may include at least one of revocation, reissuance, or modification of a certificate, and the certificate information may include at least one of an issuer name and an expiration period.

전자 장치(100)는 인증서 프로비저닝에 따라 인증서 번들을 업데이트하고(S1175), 보안 관리자는 인증서 알람 발생 Noti.에 따라 인증서 알람 발생 Noti.를 확인하고(S1180), 적절할 조치를 취할 수 있다.The electronic device 100 may update the certificate bundle according to the certificate provisioning ( S1175 ), and the security manager may check the certificate alarm occurrence Noti. according to the certificate alarm occurrence Noti. ( S1180 ), and take appropriate action.

도 12는 본 개시의 일 실시 예에 따른 선제적 인증서 프로비저닝 동작을 설명하기 위한 도면이다.12 is a diagram for explaining a preemptive certificate provisioning operation according to an embodiment of the present disclosure.

제1 전자 장치는 어플리케이션 1을 실행하여 서비스 A 서버로부터 인증서를 수신한 후, 서비스 A 인증서 사용 알람을 프로비저닝 서버(200)로 전송할 수 있다. 프로비저닝 서버(200)는 서비스 A 인증서를 제1 전자 장치로 전송할 수 있다.After receiving the certificate from the service A server by executing the application 1 , the first electronic device may transmit a service A certificate use alarm to the provisioning server 200 . The provisioning server 200 may transmit the service A certificate to the first electronic device.

이후, 제2 전자 장치는 어플리케이션 1을 실행하여 서비스 B 서버로부터 인증서를 수신한 후, 서비스 B 인증서 사용 알람을 프로비저닝 서버(200)로 전송할 수 있다. 프로비저닝 서버(200)는 서비스 B 인증서를 제2 전자 장치로 전송하며, 서비스 A 인증서를 추가로 제2 전자 장치로 제공할 수 있다.Thereafter, the second electronic device executes application 1 to receive a certificate from the service B server, and then transmits a service B certificate use alarm to the provisioning server 200 . The provisioning server 200 may transmit the service B certificate to the second electronic device and additionally provide the service A certificate to the second electronic device.

즉, 프로비저닝 서버(200)는 제2 전자 장치의 사용 알람과 무관한 인증서를 제2 전자 장치로 제공할 수도 있다. 이때, 프로비저닝 서버(200)는 제2 전자 장치가 서비스 A를 이용한 이력에 기초하여 서비스 A 인증서를 제2 전자 장치로 제공할 수 있다.That is, the provisioning server 200 may provide a certificate irrelevant to the use alarm of the second electronic device to the second electronic device. In this case, the provisioning server 200 may provide the service A certificate to the second electronic device based on the history of using the service A by the second electronic device.

도 13은 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.13 is a flowchart illustrating a method of controlling an electronic device according to an embodiment of the present disclosure.

먼저, 제1 서버로부터 인증서가 수신되면, 전자 장치에 저장된 인증서 번들에 기초하여 인증서를 검증한다(S1310). 그리고, 인증서의 검증에 실패하면 제2 서버로 인증서 사용 정보를 전송한다(S1320). 그리고, 제2 서버로부터 인증서에 대한 정보가 수신되면, 수신된 인증서에 대한 정보에 기초하여 인증서 번들을 업데이트한다(S1330).First, when a certificate is received from the first server, the certificate is verified based on the certificate bundle stored in the electronic device (S1310). Then, if the verification of the certificate fails, the certificate use information is transmitted to the second server (S1320). Then, when information on the certificate is received from the second server, the certificate bundle is updated based on the information on the received certificate ( S1330 ).

여기서, 검증하는 단계(S1310)는 인증서 번들에 인증서의 상위 인증서의 존재 여부, 인증서의 서명 검증 여부, 인증서의 기간 만료 여부 또는 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 인증서를 검증할 수 있다.Here, the verifying step (S1310) may verify the certificate based on at least one of whether the upper certificate of the certificate exists in the certificate bundle, whether the signature of the certificate is verified, whether the period of the certificate has expired, or whether the period of the upper certificate has expired. .

한편, 전자 장치에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 실행된 어플리케이션에 대응되는 제1 서버에 접속하여 인증서를 수신하는 단계를 더 포함할 수 있다.Meanwhile, the method may further include, when one of the at least one application installed in the electronic device is executed, accessing a first server corresponding to the executed application and receiving a certificate.

여기서, 인증서 사용 정보는 실행된 어플리케이션에 대한 정보, 서비스 정보, 인증서 또는 검증 실패 원인 중 적어도 하나를 포함할 수 있다.Here, the certificate usage information may include at least one of information about the executed application, service information, a certificate, or a cause of verification failure.

한편, 제1 서버로의 접속 정보를 저장하는 단계 및 접속 정보에 기초하여 기설정된 시간마다 제2 서버로 인증서 사용 정보를 전송하는 단계를 더 포함할 수 있다.Meanwhile, the method may further include storing access information to the first server and transmitting certificate usage information to the second server every preset time based on the access information.

그리고, 업데이트가 완료되면 전자 장치의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하는 단계 및 주변 기기로 인증서 갱신 알람을 브로드캐스트하는 단계를 더 포함할 수 있다.The method may further include changing the operation mode of the electronic device to a soft access point mode when the update is completed, and broadcasting a certificate renewal alarm to a peripheral device.

여기서, 주변 기기가 전자 장치에 접속되면 주변 기기로 업데이트된 인증서 번들을 전송하는 단계 및 Soft 액세스 포인트 모드를 종료하는 단계를 더 포함할 수 있다.Here, when the peripheral device is connected to the electronic device, the method may further include transmitting the updated certificate bundle to the peripheral device and terminating the soft access point mode.

또한, 업데이트된 인증서 번들을 전송하는 단계는 접속된 주변 기기가 전자 장치와 동일한 소유자의 기기이면, 주변 기기로 업데이트된 인증서 번들을 전송할 수 있다.Also, the transmitting of the updated certificate bundle may include transmitting the updated certificate bundle to the peripheral device if the connected peripheral device has the same owner as the electronic device.

한편, 인증서가 검증되면 제1 서버로 기설정된 서비스를 요청하는 단계를 더 포함할 수 있다.Meanwhile, when the certificate is verified, the method may further include requesting a preset service to the first server.

도 14는 본 개시의 일 실시 예에 따른 프로비저닝 서버의 제어 방법을 설명하기 위한 흐름도이다.14 is a flowchart illustrating a method for controlling a provisioning server according to an embodiment of the present disclosure.

먼저, 전자 장치로부터 인증서 사용 정보가 수신되면, 타 서버로부터 인증 기관에 대한 정보를 수신한다(S1410). 그리고, 인증서 사용 정보에 대응되는 인증 기관 서버로부터 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신한다(S1420). 그리고, 전자 장치로 인증서에 대한 정보를 전송한다(S1430).First, when certificate usage information is received from the electronic device, information on a certification authority is received from another server (S1410). Then, information on the certificate included in the certificate use information is received from the certificate authority server corresponding to the certificate use information (S1420). Then, information on the certificate is transmitted to the electronic device (S1430).

여기서, 인증서에 대한 정보를 전자 장치로 전송한 후, 통신 인터페이스를 통해 전자 장치와 동일한 스펙의 복수의 타 전자 장치로 인증서에 대한 정보를 전송하는 단계를 더 포함할 수 있다.Here, after transmitting the information on the certificate to the electronic device, the method may further include transmitting the information on the certificate to a plurality of other electronic devices having the same specifications as the electronic device through a communication interface.

이상과 같은 본 개시의 다양한 실시 예에 따르면, 전자 장치는 서비스를 제공받고자 하는 경우 프로비저닝 서버를 통해 실시간으로 인증서를 업데이트하게 되어, 서비스 이용이 차단되는 문제가 해결될 수 있다.According to various embodiments of the present disclosure as described above, when the electronic device wants to receive a service, the certificate is updated in real time through the provisioning server, so that the problem of blocking the use of the service can be solved.

또한, 서버는 인증서 프로비저닝을 수행한 후 전자 장치와 동일한 스펙의 복수의 타 전자 장치로 인증서 프로비저닝을 수행하여, 선제적으로 인증서를 업데이트할 수 있다.In addition, after performing certificate provisioning, the server may preemptively update the certificate by provisioning the certificate to a plurality of other electronic devices having the same specifications as the electronic device.

한편, 본 개시의 일시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장된 명령어를 포함하는 소프트웨어로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(A))를 포함할 수 있다. 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성요소들을 이용하여 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.Meanwhile, according to a temporary example of the present disclosure, the various embodiments described above may be implemented as software including instructions stored in a machine-readable storage media readable by a machine (eg, a computer). can The device is a device capable of calling a stored command from a storage medium and operating according to the called command, and may include an electronic device (eg, the electronic device A) according to the disclosed embodiments. When the instruction is executed by the processor, the processor may perform a function corresponding to the instruction by using other components directly or under the control of the processor. Instructions may include code generated or executed by a compiler or interpreter. The device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' means that the storage medium does not include a signal and is tangible, and does not distinguish that data is semi-permanently or temporarily stored in the storage medium.

또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.Also, according to an embodiment of the present disclosure, the method according to the various embodiments described above may be included in a computer program product and provided. Computer program products may be traded between sellers and buyers as commodities. The computer program product may be distributed in the form of a machine-readable storage medium (eg, compact disc read only memory (CD-ROM)) or online through an application store (eg, Play Store™). In the case of online distribution, at least a part of the computer program product may be temporarily stored or temporarily generated in a storage medium such as a memory of a server of a manufacturer, a server of an application store, or a relay server.

또한, 본 개시의 일 실시 예에 따르면, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.In addition, according to an embodiment of the present disclosure, the various embodiments described above are stored in a recording medium readable by a computer or a similar device using software, hardware, or a combination thereof. can be implemented in In some cases, the embodiments described herein may be implemented by the processor itself. According to the software implementation, embodiments such as the procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules may perform one or more functions and operations described herein.

한편, 상술한 다양한 실시 예들에 따른 기기의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 기기에서의 처리 동작을 특정 기기가 수행하도록 한다. 비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.Meanwhile, computer instructions for performing the processing operation of the device according to the above-described various embodiments may be stored in a non-transitory computer-readable medium. When the computer instructions stored in the non-transitory computer-readable medium are executed by the processor of the specific device, the specific device performs the processing operation in the device according to the various embodiments described above. The non-transitory computer-readable medium refers to a medium that stores data semi-permanently, rather than a medium that stores data for a short moment, such as a register, cache, memory, etc., and can be read by a device. Specific examples of the non-transitory computer-readable medium may include a CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, and the like.

또한, 상술한 다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.In addition, each of the components (eg, a module or a program) according to the above-described various embodiments may be composed of a single or a plurality of entities, and some sub-components of the aforementioned sub-components may be omitted, or other sub-components may be omitted. Components may be further included in various embodiments. Alternatively or additionally, some components (eg, a module or a program) may be integrated into a single entity to perform the same or similar functions performed by each corresponding component prior to integration. According to various embodiments, operations performed by a module, program, or other component are executed sequentially, parallel, iteratively, or heuristically, or at least some operations are executed in a different order, are omitted, or other operations are added. can be

이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.In the above, preferred embodiments of the present disclosure have been illustrated and described, but the present disclosure is not limited to the specific embodiments described above, and is commonly used in the technical field pertaining to the present disclosure without departing from the gist of the present disclosure as claimed in the claims. Various modifications may be made by those having the knowledge of

1000 : 전자 시스템 100 : 전자 장치
110 : 통신 인터페이스 120 : 메모리
130 : 프로세서 200 : 프로비저닝 서버
210 : 통신 인터페이스 220 : 프로세서
300 : 서비스 서버
1000: electronic system 100: electronic device
110: communication interface 120: memory
130: processor 200: provisioning server
210: communication interface 220: processor
300 : service server

Claims (20)

전자 장치에 있어서,
통신 인터페이스;
메모리; 및
상기 통신 인터페이스 및 상기 메모리와 연결되어 상기 전자 장치를 제어하는 프로세서;를 포함하며,
상기 프로세서는,
상기 통신 인터페이스를 통해 제1 서버로부터 인증서가 수신되면, 상기 메모리에 저장된 인증서 번들에 기초하여 상기 인증서를 검증하고,
상기 인증서의 검증에 실패하면 상기 통신 인터페이스를 통해 제2 서버로 인증서 사용 정보를 전송하며,
상기 통신 인터페이스를 통해 상기 제2 서버로부터 상기 인증서에 대한 정보가 수신되면, 상기 수신된 인증서에 대한 정보에 기초하여 상기 인증서 번들을 업데이트하는, 전자 장치.
In an electronic device,
communication interface;
Memory; and
a processor connected to the communication interface and the memory to control the electronic device;
The processor is
When the certificate is received from the first server through the communication interface, verifying the certificate based on the certificate bundle stored in the memory,
If the verification of the certificate fails, the certificate use information is transmitted to the second server through the communication interface,
When information on the certificate is received from the second server through the communication interface, the electronic device is configured to update the certificate bundle based on the received information on the certificate.
제1항에 있어서,
상기 프로세서는,
상기 인증서 번들에 상기 인증서의 상위 인증서의 존재 여부, 상기 인증서의 서명 검증 여부, 상기 인증서의 기간 만료 여부 또는 상기 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 상기 인증서를 검증하는, 전자 장치.
According to claim 1,
The processor is
The electronic device is configured to verify the certificate based on at least one of whether a higher level certificate of the certificate exists in the certificate bundle, whether a signature of the certificate is verified, whether a period of the certificate has expired, or whether a period of the upper certificate has expired.
제1항에 있어서,
상기 프로세서는,
상기 전자 장치에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 상기 실행된 어플리케이션에 대응되는 상기 제1 서버에 접속하여 상기 인증서를 수신하는, 전자 장치.
According to claim 1,
The processor is
When one of the at least one application installed in the electronic device is executed, the electronic device receives the certificate by accessing the first server corresponding to the executed application.
제3항에 있어서,
상기 인증서 사용 정보는,
상기 실행된 어플리케이션에 대한 정보, 서비스 정보, 상기 인증서 또는 검증 실패 원인 중 적어도 하나를 포함하는, 전자 장치.
4. The method of claim 3,
The certificate usage information is
An electronic device comprising at least one of information about the executed application, service information, and a cause of the certificate or verification failure.
제1항에 있어서,
상기 프로세서는,
상기 제1 서버로의 접속 정보를 상기 메모리에 저장하고,
상기 접속 정보에 기초하여 기설정된 시간마다 상기 통신 인터페이스를 통해 상기 제2 서버로 상기 인증서 사용 정보를 전송하는, 전자 장치.
According to claim 1,
The processor is
storing the connection information to the first server in the memory;
and transmitting the certificate usage information to the second server through the communication interface at every preset time based on the access information.
제1항에 있어서,
상기 프로세서는,
상기 업데이트가 완료되면 상기 전자 장치의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하고,
상기 통신 인터페이스를 통해 주변 기기로 인증서 갱신 알람을 브로드캐스트하는, 전자 장치.
According to claim 1,
The processor is
When the update is completed, the operation mode of the electronic device is changed to a soft access point mode,
An electronic device that broadcasts a certificate renewal alarm to a peripheral device through the communication interface.
제6항에 있어서,
상기 프로세서는,
상기 주변 기기가 상기 전자 장치에 접속되면 상기 통신 인터페이스를 통해 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하고,
상기 Soft 액세스 포인트 모드를 종료하는, 전자 장치.
7. The method of claim 6,
The processor is
When the peripheral device is connected to the electronic device, transmitting the updated certificate bundle to the peripheral device through the communication interface;
terminating the soft access point mode.
제7항에 있어서,
상기 프로세서는,
상기 접속된 주변 기기가 상기 전자 장치와 동일한 소유자의 기기이면, 상기 통신 인터페이스를 통해 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하는, 전자 장치.
8. The method of claim 7,
The processor is
and if the connected peripheral device is a device of the same owner as the electronic device, transmitting the updated certificate bundle to the peripheral device through the communication interface.
제1항에 있어서,
상기 프로세서는,
상기 인증서가 검증되면 상기 통신 인터페이스를 통해 상기 제1 서버로 기설정된 서비스를 요청하는, 전자 장치.
According to claim 1,
The processor is
When the certificate is verified, the electronic device requests a preset service to the first server through the communication interface.
서버에 있어서,
통신 인터페이스; 및
상기 통신 인터페이스와 연결되어 상기 서버를 제어하는 프로세서;를 포함하며,
상기 프로세서는,
상기 통신 인터페이스를 통해 전자 장치로부터 인증서 사용 정보가 수신되면, 타 서버로부터 인증 기관에 대한 정보를 수신하고,
상기 통신 인터페이스를 통해 상기 인증서 사용 정보에 대응되는 인증 기관 서버로부터 상기 인증서 사용 정보에 포함된 인증서에 대한 정보를 수신하고,
상기 통신 인터페이스를 통해 상기 전자 장치로 상기 인증서에 대한 정보를 전송하는, 서버.
in the server,
communication interface; and
A processor connected to the communication interface to control the server; includes,
The processor is
When certificate usage information is received from the electronic device through the communication interface, information on a certification authority is received from another server,
receiving information about a certificate included in the certificate use information from a certificate authority server corresponding to the certificate use information through the communication interface;
A server for transmitting information about the certificate to the electronic device through the communication interface.
제10항에 있어서,
상기 프로세서는,
상기 인증서에 대한 정보를 상기 전자 장치로 전송한 후, 상기 통신 인터페이스를 통해 상기 전자 장치와 동일한 스펙의 복수의 타 전자 장치로 상기 인증서에 대한 정보를 전송하는, 서버.
11. The method of claim 10,
The processor is
After transmitting the information on the certificate to the electronic device, the server transmits the information on the certificate to a plurality of other electronic devices having the same specification as the electronic device through the communication interface.
전자 장치의 제어 방법에 있어서,
제1 서버로부터 인증서가 수신되면, 상기 전자 장치에 저장된 인증서 번들에 기초하여 상기 인증서를 검증하는 단계;
상기 인증서의 검증에 실패하면 제2 서버로 인증서 사용 정보를 전송하는 단계; 및
상기 제2 서버로부터 상기 인증서에 대한 정보가 수신되면, 상기 수신된 인증서에 대한 정보에 기초하여 상기 인증서 번들을 업데이트하는 단계;를 포함하는, 제어 방법.
A method for controlling an electronic device, comprising:
when a certificate is received from the first server, verifying the certificate based on a certificate bundle stored in the electronic device;
transmitting certificate usage information to a second server when verification of the certificate fails; and
When information on the certificate is received from the second server, updating the certificate bundle based on the information on the received certificate;
제12항에 있어서,
상기 검증하는 단계는,
상기 인증서 번들에 상기 인증서의 상위 인증서의 존재 여부, 상기 인증서의 서명 검증 여부, 상기 인증서의 기간 만료 여부 또는 상기 상위 인증서의 기간 만료 여부 중 적어도 하나에 기초하여 상기 인증서를 검증하는, 제어 방법.
13. The method of claim 12,
The verification step is
The control method of verifying the certificate based on at least one of whether the parent certificate of the certificate exists in the certificate bundle, whether the signature of the certificate is verified, whether the period of the certificate has expired, or whether the period of the upper certificate has expired.
제12항에 있어서,
상기 전자 장치에 설치된 적어도 하나의 어플리케이션 중 하나가 실행되면, 상기 실행된 어플리케이션에 대응되는 상기 제1 서버에 접속하여 상기 인증서를 수신하는 단계;를 더 포함하는, 제어 방법.
13. The method of claim 12,
and receiving the certificate by accessing the first server corresponding to the executed application when one of the at least one application installed in the electronic device is executed.
제14항에 있어서,
상기 인증서 사용 정보는,
상기 실행된 어플리케이션에 대한 정보, 서비스 정보, 상기 인증서 또는 검증 실패 원인 중 적어도 하나를 포함하는, 제어 방법.
15. The method of claim 14,
The certificate usage information is
A control method comprising at least one of information about the executed application, service information, and a cause of the certificate or verification failure.
제12항에 있어서,
상기 제1 서버로의 접속 정보를 저장하는 단계; 및
상기 접속 정보에 기초하여 기설정된 시간마다 상기 제2 서버로 상기 인증서 사용 정보를 전송하는 단계;를 더 포함하는, 제어 방법.
13. The method of claim 12,
storing access information to the first server; and
Transmitting the certificate usage information to the second server every preset time based on the access information; further comprising, a control method.
제12항에 있어서,
상기 업데이트가 완료되면 상기 전자 장치의 동작 모드를 Soft 액세스 포인트(Access Point) 모드로 변경하는 단계; 및
주변 기기로 인증서 갱신 알람을 브로드캐스트하는 단계;를 더 포함하는, 제어 방법.
13. The method of claim 12,
changing the operation mode of the electronic device to a soft access point mode when the update is completed; and
Broadcasting a certificate renewal alarm to a peripheral device; further comprising, a control method.
제17항에 있어서,
상기 주변 기기가 상기 전자 장치에 접속되면 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하는 단계; 및
상기 Soft 액세스 포인트 모드를 종료하는 단계;를 더 포함하는, 제어 방법.
18. The method of claim 17,
transmitting the updated certificate bundle to the peripheral device when the peripheral device is connected to the electronic device; and
Ending the soft access point mode; further comprising, the control method.
제18항에 있어서,
상기 업데이트된 인증서 번들을 전송하는 단계는,
상기 접속된 주변 기기가 상기 전자 장치와 동일한 소유자의 기기이면, 상기 주변 기기로 상기 업데이트된 인증서 번들을 전송하는, 제어 방법.
19. The method of claim 18,
Transmitting the updated certificate bundle comprises:
If the connected peripheral device is a device of the same owner as the electronic device, transmitting the updated certificate bundle to the peripheral device.
제12항에 있어서,
상기 인증서가 검증되면 상기 제1 서버로 기설정된 서비스를 요청하는 단계;를 더 포함하는, 제어 방법.
13. The method of claim 12,
When the certificate is verified, requesting a preset service to the first server; further comprising, the control method.
KR1020210024327A 2021-02-23 2021-02-23 Electronic apparatus, control method thereof and server KR20220120338A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210024327A KR20220120338A (en) 2021-02-23 2021-02-23 Electronic apparatus, control method thereof and server
PCT/KR2021/020283 WO2022181963A1 (en) 2021-02-23 2021-12-30 Electronic device, control method therefor and server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210024327A KR20220120338A (en) 2021-02-23 2021-02-23 Electronic apparatus, control method thereof and server

Publications (1)

Publication Number Publication Date
KR20220120338A true KR20220120338A (en) 2022-08-30

Family

ID=83048307

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210024327A KR20220120338A (en) 2021-02-23 2021-02-23 Electronic apparatus, control method thereof and server

Country Status (2)

Country Link
KR (1) KR20220120338A (en)
WO (1) WO2022181963A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001197054A (en) * 2000-01-06 2001-07-19 Mitsubishi Electric Systemware Corp Device and method for written authentication management and computer-readable recording medium
KR101954507B1 (en) * 2017-01-24 2019-05-17 건국대학교 산학협력단 Method and apparatus for generating certificate of a vehicle
GB2561822B (en) * 2017-04-13 2020-02-19 Arm Ip Ltd Reduced bandwidth handshake communication
KR101878314B1 (en) * 2018-02-12 2018-07-16 (주)케이사인 User authentification system in internet of things network and method of authenticating user using the same
KR102078913B1 (en) * 2018-03-16 2020-04-07 주식회사 아도스 AUTHENTICATION METHOD AND SYSTEM OF IoT(Internet of Things) DEVICE BASED ON PUBLIC KEY INFRASTRUCTURE

Also Published As

Publication number Publication date
WO2022181963A1 (en) 2022-09-01

Similar Documents

Publication Publication Date Title
US10158670B1 (en) Automatic privilege determination
JP6359568B2 (en) One-touch device personalization
US9117191B2 (en) Automatic device inventory management for different types of devices
US20150302185A1 (en) Method and apparatus for account intercommunication among apps
CN112788012B (en) Log file encryption method and device, storage medium and electronic equipment
US10956383B2 (en) Device backup and wipe
JP6956334B2 (en) Playback device and output device
KR102133711B1 (en) Apparatus and Method for improving authentication service of a digital contents
US20180107493A1 (en) Synchronous control method and device via external apparatus
US10097895B2 (en) Content providing apparatus, system, and method for recommending contents
KR102557263B1 (en) Vehicle operation control system and control method of vehicle terminal device
CN108011666A (en) Visible light communication personal area network coordinator and its system of selection
KR102583089B1 (en) User terminal, rule excuting method thereof, server apparatus and rule excuting system
CN106843932A (en) The upgrade method and system of virtual reality device firmware
US9158641B2 (en) Cloud auto-test system, method and non-transitory computer readable storage medium of the same
KR102109051B1 (en) Function upgrade device, Display apparats and Method for controlling display apparatSs thereof
US9276943B2 (en) Authorizing a change within a computer system
WO2016126538A1 (en) Secure stream buffer on network attached storage
KR20220120338A (en) Electronic apparatus, control method thereof and server
US10735816B2 (en) Content reproduction method and device
US8412844B2 (en) Validating download success
KR101284451B1 (en) Method and System for Managing Security
US9774575B2 (en) System and method for authenticating user by near field communication
JP2015170297A (en) Information processing system and information processing apparatus
CN112948815A (en) Off-line weak password checking method and device based on Hash matching