KR20220059866A - Secure Boot Verification Method and Secure Element for the Same - Google Patents

Secure Boot Verification Method and Secure Element for the Same Download PDF

Info

Publication number
KR20220059866A
KR20220059866A KR1020200145591A KR20200145591A KR20220059866A KR 20220059866 A KR20220059866 A KR 20220059866A KR 1020200145591 A KR1020200145591 A KR 1020200145591A KR 20200145591 A KR20200145591 A KR 20200145591A KR 20220059866 A KR20220059866 A KR 20220059866A
Authority
KR
South Korea
Prior art keywords
verification
applet
unit
secure
secure boot
Prior art date
Application number
KR1020200145591A
Other languages
Korean (ko)
Other versions
KR102387685B1 (en
Inventor
양준호
구경본
Original Assignee
유비벨록스(주)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 유비벨록스(주) filed Critical 유비벨록스(주)
Priority to KR1020200145591A priority Critical patent/KR102387685B1/en
Publication of KR20220059866A publication Critical patent/KR20220059866A/en
Application granted granted Critical
Publication of KR102387685B1 publication Critical patent/KR102387685B1/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Stored Programmes (AREA)

Abstract

Provided is a secure boot verification method for performing a secure boot by using a secure element mounted to an IoT device and verifying whether the secure boot normally progresses. The method comprises: a first loading step of loading a boot manager from an ROM; a first log recording step of recording a first log record related to the first loading step in a log record; a second loading step of loading an OS loader from the boot manager; a third loading step of loading an OS from the OS loader; and a log verification step of determining whether the secure boot normally progresses by checking the log record. Accordingly, the present invention can guarantee whether the secure boot is properly performed without separate installation of anti-malware.

Description

보안 부트 검증 방법 및 이를 위한 보안 요소{Secure Boot Verification Method and Secure Element for the Same}Secure Boot Verification Method and Secure Element for the Same

본 발명은 보안 부트 검증 방법 및 이를 위한 보안 요소에 관한 것으로, 보다 상세하게는 보안 부트 진행시 로그 레코드를 기록하고, 서버에 의해 로그 레코드를 확인하도록 함으로써 보안 부트가 정상적으로 진행되었는지 여부를 판단하는 보안 부트 검증 방법 및 이를 위한 보안 요소에 관한 것이다. The present invention relates to a method for verifying a secure boot and a security element therefor, and more particularly, to a security for determining whether secure boot is normally performed by recording a log record during secure boot and checking the log record by a server It relates to a boot verification method and a security element therefor.

사물인터넷(Internet of Things, IoT)이란 각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술, 즉 인터넷을 이용하여 각종 사물인터넷(IoT) 기기들을 연결하는 기술을 의미한다. The Internet of Things (IoT) refers to a technology for connecting to the Internet by embedding sensors and communication functions in various objects, that is, a technology for connecting various Internet of Things (IoT) devices using the Internet.

여기서 사물인터넷(IoT) 기기란 가전제품, 모바일 장비, 웨어러블 디바이스 등 다양한 임베디드 시스템이 될 수 있다. 이때에, 사물인터넷에 연결되는 사물인터넷 기기들은 자신을 구별할 수 있는 아이피를 가지고 인터넷으로 연결되어야 되는데, 이러한 모든 사물인터넷 기기들이 바이러스와 해킹의 대상이 될 수 있어 보안에 대한 요구사항이 증가하고 있는 실정이다. Here, the Internet of Things (IoT) device may be various embedded systems such as home appliances, mobile equipment, and wearable devices. At this time, IoT devices connected to the Internet of Things need to be connected to the Internet with an IP that can identify themselves, and all these IoT devices can become targets of viruses and hacking, increasing security requirements and there is a situation.

이에 따라, 기기의 데이터 전송, 해킹 등에 대해 높은 보안 수준으로 방어하는 하드웨어 형태의 보안 요소(Secure Element, SE)를 채택하여 적용하는 사례가 늘어나고 있다.Accordingly, the number of cases of adopting and applying a hardware-type Secure Element (SE) that protects against device data transmission and hacking at a high security level is increasing.

이와 같이 보안 요소(Secure Element)를 채택하는 경우에는 보안 부트(Secure Boot)를 진행하게 된다. In this way, when a secure element is adopted, a secure boot is performed.

한편, 보안 부트(Secure Boot)는 Boot ROM으로부터 부트 매니저(Boot Manager)를 로딩한 후, 부트 매니저(Boot Manager)로부터 OS 로더(OS Loader)를 로딩한 이후, OS 로더(OS Loader)로부터 OS를 로딩하는 크게 3단계를 거치게 된다. Meanwhile, in Secure Boot, after loading a boot manager from the boot ROM, loading an OS loader from the boot manager, and then loading an OS from the OS loader There are three main steps to loading.

이러한 보안 부트(Secure Boot)를 진행하는 경우 Boot ROM은 물리적인 해킹 외에는 해킹이 거의 불가능하다. 그러나, 부트 매니저(Boot Manager), OS 로더(OS Loader), OS 등을 로딩할 때에는 해커가 검증(Verification) 단계를 건너뛰어 해커 자신의 OS를 로딩하는 것이 가능하다. When performing such a secure boot, it is almost impossible to hack the boot ROM except for physical hacking. However, when loading a boot manager, an OS loader, an OS, etc., it is possible for the hacker to skip the verification step and load the hacker's own OS.

이와 같이, 해커가 검증(Verification) 단계를 바이패스(By Pass)하는 것을 방지하기 위해 ELAM(Early Launch Anti-Malware)를 부트 매니저(Boot Manager)부터 설치하여 박는 방법이 있다. 그러나, 이 또한, 부트 매니저(Boot Manager)부터 바이패스(By Pass)하는 경우에는 효과가 없으며, ELAM의 설치에 필요한 자원이나 환경이 OS가 모두 로딩된 이후에 가능하기 때문에, 사전에 부트 매니저(Boot Manager)나 OS 로더(OS Loader)에 설치하기가 어렵다는 문제점이 있다. As such, in order to prevent a hacker from bypassing the verification step, there is a method of installing and embedding Early Launch Anti-Malware (ELAM) from the boot manager. However, this also has no effect when bypassing the boot manager (Boot Manager), and since the resources and environment necessary for ELAM installation are available after the OS is all loaded, the boot manager ( There is a problem that it is difficult to install in Boot Manager) or OS Loader.

저사양 IoT 디바이스의 안전한 부트 및 업데이트를 위한 보안 시스템 설계 및 구현(정보과학회논문지 제45권 제4호, 2018.4)Design and implementation of a security system for safe booting and updating of low-spec IoT devices (Journal of the Information Science Society, No. 45, No. 4, 2018.4)

본 발명은 상술한 문제점을 해결하기 위한 것으로서, 보안 부트(Secure Boot) 과정에서 로그 레코드(Log Record)를 기록하여 이후 서버에 의해 이를 검증하게 함으로써, 해킹에 따른 피해를 방지할 수 있는 보안 부트 검증방법을 제공하는 것을 그 목적으로 한다. The present invention is to solve the above-mentioned problem, by recording a log record in the secure boot process and verifying it by the server afterward, secure boot verification that can prevent damage due to hacking The purpose is to provide a method.

본 발명에 의한 보안 부트 검증 방법은, IoT 기기에 장착된 보안 요소를 이용하여 보안 부트를 진행하고, 보안 부트가 정상적으로 진행되었는지 여부를 검증하는 보안 부트 검증 방법으로서, ROM으로부터 부트 매니저(Boot Manager)를 로딩하는 제1로딩단계; 상기 제1로딩단계와 관련된 제1로그기록을 로그 레코드(Log Record)에 기록하는 제1로그기록단계; 상기 부트 매니저(Boot manager)로부터 OS 로더(OS Loader)를 로딩하는 제2로딩단계; 상기 OS 로더(OS Loader)로부터 OS를 로딩하는 제3로딩단계; 및 상기 로그 레코드(Log Record)를 확인하여 보안 부트(Secure Boot)가 정상적으로 진행되었는지 여부를 판단하는 로그 검증단계;를 포함할 수 있다. The secure boot verification method according to the present invention is a secure boot verification method for performing a secure boot using a secure element mounted on an IoT device and verifying whether the secure boot has been normally performed, from a ROM to a boot manager. A first loading step of loading; a first log recording step of recording a first log record related to the first loading step in a log record; a second loading step of loading an OS loader from the boot manager; a third loading step of loading the OS from the OS loader; and a log verification step of determining whether secure boot is normally performed by checking the log record.

본 발명에 의한 보안 부트 검증 방법은, 상기 제2로딩단계와 관련된 제2로그기록을 상기 로그 레코드(Log Record)에 기록하는 제2로그기록단계;를 더 포함할 수 있다. The secure boot verification method according to the present invention may further include a second log recording step of recording a second log record related to the second loading step in the log record.

본 발명에 의한 보안 부트 검증 방법은, 상기 제3로딩단계와 관련된 제3로그기록을 상기 로그 레코드(Log Record)에 기록하는 제3로그기록단계;를 더 포함할 수 있다. The secure boot verification method according to the present invention may further include a third log recording step of recording a third log record related to the third loading step in the log record.

본 발명에 의한 보안 부트 검증 방법에서, 상기 로그 검증단계는, 보안 부트(Secure) 과정에서 인증(Verification) 절차가 바이패스(By Pass)되었는지 여부를 확인하는 단계일 수 있다. In the secure boot verification method according to the present invention, the log verification step may be a step of checking whether a verification procedure is bypassed in the secure boot process.

본 발명에 의한 보안 부트 검증 방법에서, 상기 로그 검증단계는, 상기 보안요소와 네트워크로 연결된 서버에 의해 진행되고, 상기 서버는 상기 로그 검증단계에서 상기 보안요소의 응답이 없거나, 상기 로그 레코드에 부정확한 값이 있는 경우 네트워크에서 상기 보안요소가 장착된 IoT기기를 배제시키거나 동작을 중지시킬 수 있다. In the secure boot verification method according to the present invention, the log verification step is performed by a server connected to the secure element through a network, and the server does not receive a response from the secure element in the log verification step or the log record is incorrect. If there is one value, the IoT device equipped with the security element may be excluded from the network or the operation may be stopped.

본 발명에 의한 보안 부트 검증 방법에서, 상기 로그 레코드(Log Record)는 서명 검증 또는 MAC(Message Authentication Code) 검증을 통해 이루어지는 인증(Authentication)을 통해서만 접근이 가능하며, 상기 보안 요소와 상기 서버는 상호 인증을 진행하고, MAC(Message Authentication Code) 생성키를 공유할 수 있다.In the secure boot verification method according to the present invention, the log record is accessible only through authentication made through signature verification or MAC (Message Authentication Code) verification, and the security element and the server are mutually You can perform authentication and share the MAC (Message Authentication Code) generation key.

본 발명에 의한 보안 부트 검증 방법에서, 상기 보안 요소는 자바카드로 구비되는 것을 특징으로 하는 보안 부트 검증 방법.In the secure boot verification method according to the present invention, the secure boot verification method, characterized in that the secure element is provided with a Java card.

본 발명에 의한 보안 부트 검증 방법에서, 상기 보안 요소는, 데이터를 저장하는 메모리부, 외부와의 통신을 위한 통신부, 각종 연산을 수행하는 프로세서, 및 데이터를 보호하고 내용을 암호화하는 암호화부를 포함하는 하드웨어부; 상기 메모리부에 저장되는 적어도 하나의 애플릿으로 이루어지는 애플릿부; 상기 애플릿이 구동할 수 있도록 소프트웨어 환경을 제공하는 프레임 워크 및 상기 애플릿을 구동할 수 있도록 함수를 제공하는 적어도 하나의 API로 구성되는 API부; 상기 애플릿의 바이트코드를 분석하여 실행시키는 가상머신을 포함하는 실행환경부; 상기 하드웨어부를 상기 실행환경부가 사용할 수 있도록 하는 운영체계부;를 포함하는 아키첵쳐로 구성되고, 상기 애플릿부에는 상기 로그 레코드(Log Record)를 저장하도록 하는 보안 부트 애플릿(Secure Boot Applet)이 구비될 수 있다. In the secure boot verification method according to the present invention, the secure element includes a memory unit for storing data, a communication unit for communication with the outside, a processor for performing various operations, and an encryption unit for protecting data and encrypting contents hardware part; an applet unit comprising at least one applet stored in the memory unit; an API unit comprising: a framework providing a software environment so that the applet can run; and at least one API that provides a function to run the applet; an execution environment unit including a virtual machine that analyzes and executes the bytecode of the applet; It is composed of an architecture including an operating system unit that allows the hardware unit to be used by the execution environment unit, and the applet unit may be provided with a secure boot applet for storing the log record. can

본 발명에 의한 보안 부트 검증 방법에서, 상기 API부는 자바 카드 API로 구비되되, 상기 보안 부트 애플릿(Secure Boot Applet)이 구동될 수 있도록 함수를 제공하는 보안 프로토콜 암호화 API를 부가적으로 구비할 수 있다. In the secure boot verification method according to the present invention, the API unit is provided as a Java Card API, and may additionally include a security protocol encryption API that provides a function so that the Secure Boot Applet can be driven. .

본 발명에 의한 보안 부트 검증 방법에서, 상기 운영체계부에는 상기 보안 부트 애플릿(Secure Boot Applet)이 구동되도록 하는 라이브러리를 구성하는 검증 보안 모듈이 탑재되고, 상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용할 수 있다.In the secure boot verification method according to the present invention, a verification security module constituting a library for driving the secure boot applet is mounted on the operating system unit, and the security protocol encryption API includes the verification security module can be used

본 발명에 의한 보안 부트 검증 방법에서, 상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하여 인증서 서명 생성 및 검증, 키(Key) 분배, 데이터 암호화 MAC 생성 및 검증, Hash 알고리즘을 통한 무결성 검증에 사용되는 함수를 제공하는 API일 수 있다.In the secure boot verification method according to the present invention, the security protocol encryption API is used for certificate signature generation and verification using the verification security module, key distribution, data encryption MAC generation and verification, and integrity verification through hash algorithm It may be an API that provides a function to be used.

본 발명에 의한 보안 부트 검증 방법에서, 상기 보안 프로토콜 암호화 API는 상기 IoT 기기와 상기 서버 간에 인증서를 분배하는 핸드셰이크(HandShake)에 필요한 API를 포함할 수 있다. In the secure boot verification method according to the present invention, the secure protocol encryption API may include an API required for a handshake for distributing a certificate between the IoT device and the server.

본 발명에 의한 보안 부트 검증 방법에서, 상기 검증 보안 모듈은 CMVP(Cryptographic Module Validation Program) 또는 KCMVP(Korea Cryptographic Module Validation Program)를 통해 검증받은 보안 모듈일 수 있다. In the secure boot verification method according to the present invention, the verification security module may be a security module verified through a Cryptographic Module Validation Program (CMVP) or a Korea Cryptographic Module Validation Program (KCMVP).

본 발명에 의한 보안 요소는, IoT 기기에 장착되어 보안 부트(Secure Boot)를 진행하는 보안 요소(Secure Element)로서, 데이터를 저장하는 메모리부, 외부와의 통신을 위한 통신부, 각종 연산을 수행하는 프로세서, 및 데이터를 보호하고 내용을 암호화하는 암호화부를 포함하는 하드웨어부; 상기 메모리부에 저장되는 적어도 하나의 애플릿으로 이루어지는 애플릿부; 상기 애플릿이 구동할 수 있도록 소프트웨어 환경을 제공하는 프레임 워크 및 상기 애플릿을 구동할 수 있도록 함수를 제공하는 적어도 하나의 API로 구성되는 API부; 상기 애플릿의 바이트코드를 분석하여 실행시키는 가상머신을 포함하는 실행환경부; 상기 하드웨어부를 상기 실행환경부가 사용할 수 있도록 하는 운영체계부;를 포함하는 아키첵쳐로 구성되고, 상기 애플릿부에는 상기 로그 레코드(Log Record)를 저장하도록 하는 보안 부트 애플릿(Secure Boot Applet)이 구비되어, 상기 IoT기기와 네트워크로 연결된 서버에 의해 상기 로그 레코드(Log Record)를 확인하도록 하여, 보안 부트(Secure Boot)가 정상적으로 이루어졌는지 여부를 판단하도록 할 수 있다. The secure element according to the present invention is a secure element that is mounted on an IoT device and proceeds with secure boot, a memory unit for storing data, a communication unit for communication with the outside, and various calculations. a hardware unit including a processor and an encryption unit for protecting data and encrypting contents; an applet unit comprising at least one applet stored in the memory unit; an API unit comprising: a framework providing a software environment so that the applet can run; and at least one API that provides a function to run the applet; an execution environment unit including a virtual machine that analyzes and executes the bytecode of the applet; It consists of an architecture including an operating system unit that allows the hardware unit to be used by the execution environment unit, and the applet unit is provided with a secure boot applet to store the log record. , by checking the log record by a server connected to the IoT device through a network, it is possible to determine whether secure boot is normally performed.

본 발명에 의한 보안 요소에서, 상기 API부는 자바 카드 API로 구비되되, 상기 보안 부트 애플릿(Secure Boot Applet)이 구동될 수 있도록 함수를 제공하는 보안 프로토콜 암호화 API를 부가적으로 구비할 수 있다. In the secure element according to the present invention, the API unit is provided as a Java Card API, and may additionally include a security protocol encryption API that provides a function so that the Secure Boot Applet can be driven.

본 발명에 의한 보안 요소에서, 상기 운영체계부에는 상기 보안 부트 애플릿(Secure Boot Applet)이 구동되도록 하는 라이브러리를 구성하는 검증 보안 모듈이 탑재되고, 상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용할 수 있다. In the security element according to the present invention, the operating system unit is equipped with a verification security module constituting a library for driving the Secure Boot Applet, and the security protocol encryption API can use the verification security module. there is.

본 발명에 의한 보안 요소에서, 상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하여 인증서 서명 생성 및 검증, 키(Key) 분배, 데이터 암호화 MAC 생성 및 검증, Hash 알고리즘을 통한 무결성 검증에 사용되는 함수를 제공하는 API일 수 있다. In the security element according to the present invention, the security protocol encryption API is a function used for certificate signature generation and verification, key distribution, data encryption MAC generation and verification, and integrity verification through a hash algorithm using the verification security module It may be an API that provides

본 발명에 의한 보안 요소에서, 상기 보안 프로토콜 암호화 API는 상기 IoT 기기와 상기 서버 간에 인증서를 분배하는 핸드셰이크(HandShake)에 필요한 API를 포함할 수 있다. In the secure element according to the present invention, the secure protocol encryption API may include an API required for a handshake for distributing a certificate between the IoT device and the server.

본 발명에 의한 보안 요소에서, 상기 검증 보안 모듈은 CMVP(Cryptographic Module Validation Program) 또는 KCMVP(Korea Cryptographic Module Validation Program)를 통해 검증받은 보안 모듈일 수 있다. In the security element according to the present invention, the verification security module may be a security module verified through a Cryptographic Module Validation Program (CMVP) or a Korea Cryptographic Module Validation Program (KCMVP).

본 발명에 의한 보안부트 검증방법 및 이를 위한 보안 요소에 의하면, 상기 보안 요소(SE)가 보안 부트(Secure Boot) 과정에서 부트 매니저(Boot Manager), OS 로더(OS Loader), OS(Operating System)을 로딩하는 단계마다 관련된 로그 레코드(Log Record)를 기록하도록 하여, 이후 서버에 의해 상기 로그 레코드(Log Record)를 확인하여 보안 부트(Secure Boot)가 정상적으로 이루어진 것인지 판단하도록 함으로써 각 로딩단계에서 검증(Verification) 과정이 바이패스(By Pass)되었는지 여부를 확인할 수 있도록 하여, 해커가 검증(Verification) 과정을 뛰어넘어 해커 자신의 OS를 로딩하였는지 여부를 확인할 수 있어 Anti-Malware의 별도 탑재없이도 보안 부트(Secure Boot)가 제대로 이루어졌는지 여부를 담보할 수 있다. According to the secure boot verification method and the secure element therefor according to the present invention, the secure element (SE) is a boot manager (Boot Manager), OS loader (OS Loader), OS (Operating System) in the process of secure boot (Secure Boot) Verification (Log Record) in each loading step by recording a log record related to each step of loading By making it possible to check whether the verification process has been bypassed or not, it is possible to check whether the hacker has loaded the hacker's own OS by skipping the verification process. It can guarantee whether Secure Boot) is properly performed.

도 1은 본 발명의 일 실시예에 의한 보안 부트 검증 방법을 설명하기 위한 개념도.
도 2는 본 발명의 일 실시예에 의한 보안 부트 검증 방법의 순서도.
도 3은 본 발명의 일 실시예에 의한 보안요소(Secure Element, SE)의 아키텍쳐(architecture)를 도시한 것.
1 is a conceptual diagram illustrating a secure boot verification method according to an embodiment of the present invention.
2 is a flowchart of a secure boot verification method according to an embodiment of the present invention;
Figure 3 shows the architecture (architecture) of the secure element (Secure Element, SE) according to an embodiment of the present invention.

이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명의 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상의 범위 내에 포함된다고 할 것이다. Hereinafter, specific embodiments of the present invention will be described in detail with reference to the drawings. However, the spirit of the present invention is not limited to the presented embodiments, and those skilled in the art who understand the spirit of the present invention may add, change, delete, etc. other elements within the scope of the same spirit, and may use other degenerative inventions or the present invention. Other embodiments included within the scope of the spirit of the invention may be easily proposed, but this will also be included within the scope of the spirit of the present invention.

또한, 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다. In addition, components having the same function within the scope of the same idea shown in the drawings of the embodiments will be described using the same reference numerals.

본 발명의 일 실시예에 의한 보안 부트 검증 방법(S100)은 IoT기기에 장착된 보안 요소(Secure Element, SE, 100)를 이용하여 보안 부트(Secure Boot)를 진행하고, 보안 부트(Secure Boot)가 정상적으로 진행되었는지 여부를 검증하는 보안 부트 검증 방법일 수 있다. The secure boot verification method (S100) according to an embodiment of the present invention performs a secure boot using a secure element (SE, 100) mounted on an IoT device, and secure boot (Secure Boot) It may be a secure boot verification method that verifies whether or not has proceeded normally.

도 1은 본 발명의 일 실시예에 의한 보안 부트 검증방법(S100)을 설명하기 위한 개념도이고, 도 2는 본 발명의 일 실시예에 의한 보안 부트 검증방법(S100)의 순서도이다. 1 is a conceptual diagram for explaining a secure boot verification method S100 according to an embodiment of the present invention, and FIG. 2 is a flowchart of a secure boot verification method S100 according to an embodiment of the present invention.

도 1 및 도 2를 참조하면, 본 발명의 일 실시예에 의한 보안 부트 검증 방법(S100)은 ROM으로부터 부트 매니저(Boot Manager)를 로딩하는 제1로딩단계(S110), 상기 제1로딩단계(S110)와 관련된 제1로그기록을 로그 레코드(Log Record)에 기록하는 제1로그기록단계(S120), 상기 부트 매니저(Boot Manager)로부터 OS 로더(OS Loader)를 로딩하는 제2로딩단계(S130), 상기 제2로딩단계(S120)과 관련된 제2로그기록을 로그 레코드(Log Record)에 기록하는 제2로그기록단계(S140), 상기 OS 로더(OS Loader)로부터 OS(Operating System)을 로딩하는 제3로딩단계(150), 상기 제3로딩단계(S150)와 관련된 제3로그기록을 로그 레코드(Log Record)에 기록하는 제3로그기록단계(S160), 및 상기 로그 레코드(Log Record)를 확인하여 보안 부트(Secure Boot)가 정상적으로 진행되었는지 여부를 판단하는 로그 검증단계(S170)를 포함할 수 있다. 1 and 2, the secure boot verification method (S100) according to an embodiment of the present invention includes a first loading step (S110) of loading a boot manager from a ROM, the first loading step ( A first log recording step (S120) of recording a first log record related to S110) in a log record (S120), a second loading step of loading an OS loader (OS Loader) from the boot manager (S130) ), a second log recording step (S140) of recording a second log record related to the second loading step (S120) to a log record, and loading an OS (Operating System) from the OS loader a third loading step 150, a third log recording step (S160) of recording a third log record related to the third loading step (S150) in a log record (Log Record), and the log record It may include a log verification step (S170) of determining whether secure boot has been normally performed by checking .

이때에, 상기 제1 내지 제3로그기록은 상기 제1 내지 제3로딩단계(S110, S130, S150)가 이루어진 일시, 진행된 내용 등을 포함할 수 있다. In this case, the first to third log records may include the date and time at which the first to third loading steps (S110, S130, S150) were made, progress contents, and the like.

한편, 상기 로그 검증단계(S170)는 상기 보안 요소(100)와 네트워크로 연결된 서버(200)가 상기 제1 내지 제3로그기록을 포함하는 상기 로그 레코드(Log Record)를 확인하여, 보안 부트(Secure Boot) 과정에서 인증(Verification)절차가 바이패스(By Pass)되었는지 여부를 확인하는 단계일 수 있다. On the other hand, in the log verification step (S170), the secure element 100 and the server 200 connected to the network check the log record including the first to third log records, and secure boot ( In the Secure Boot) process, it may be a step of checking whether or not the verification process is bypassed.

이를 통해, 상기 서버(200)는 상기 로그 검증단계(S170)에서 상기 보안 요소(SE, 100)의 응답이 없거나, 상기 제1 내지 제3 로그 기록 중 부정확한 값이 있는 경우 네트워크에서 상기 보안 요소(SE, 100)가 장착된 IoT 기기를 배제시키거나 동작을 중지시키는 등의 조치를 취할 수 있다. Through this, when the server 200 does not respond to the security elements SE and 100 in the log verification step S170 or there is an incorrect value among the first to third log records, the security element in the network It is possible to take measures such as excluding the IoT device equipped with (SE, 100) or stopping the operation.

이때에, 상기 제1 내지 제3로그 기록을 포함하는 로그 레코드(Log Record)는 인증(authentication)을 통해서만 접근이 가능할 수 있으며, 이러한 인증(authentication)은 서명 검증 또는 MAC(Message Authentication Code) 검증을 통해 이루어질 수 있다. In this case, the log records including the first to third log records may be accessible only through authentication, and such authentication is a signature verification or MAC (Message Authentication Code) verification. can be done through

이를 위하여, 상기 보안 요소(SE, 100)와 상기 서버(200)는 상호 인증을 진행할 수 있고, MAC(Message Authentication Code) 생성키를 공유할 수 있다. To this end, the secure element (SE, 100) and the server 200 may perform mutual authentication and may share a MAC (Message Authentication Code) generation key.

한편, 본 발명의 일 실시예에 의한 보안 부트 검증 방법(S100)은 보안 부트 애플릿(121)이 구비된 보안 요소(100)와 서버(200)에 의해 이루어질 수 있으며, 이때에 상기 보안 요소(100)의 아키텍쳐(architecture)는, 도 1에서 도시하는 바와 같이, 하드웨어부(110), 애플릿부(120), API부(130), 실행환경부(140), 및 운영체계부(150)를 포함할 수 있다. Meanwhile, the secure boot verification method ( S100 ) according to an embodiment of the present invention may be performed by the secure element 100 and the server 200 provided with the secure boot applet 121 , in which case the secure element 100 . The architecture of ), as shown in FIG. 1 , includes a hardware unit 110 , an applet unit 120 , an API unit 130 , an execution environment unit 140 , and an operating system unit 150 . can

도 3은 본 발명의 일 실시예에 의한 보안 부트 검증 방법(S100)을 위한 보안 요소(Secure Element, SE, 100)의 아키텍쳐(Acrchitecture)를 보다 상세히 도시한 것이다. FIG. 3 shows in more detail the architecture of the secure element (SE, 100) for the secure boot verification method (S100) according to an embodiment of the present invention.

이하에서는 도 3을 참조하여 상기 보안 요소(Secure Element, SE, 100)에 대하여 보다 상세히 설명한다. Hereinafter, the secure element (Secure Element, SE, 100) will be described in more detail with reference to FIG. 3 .

상기 보안 요소(SE, 100)는 자바 카드(Java Card)로 구비될 수 있으며, 이하에서는 자바 카드(Java Card)로 구비되는 상기 보안 요소(Secure Element, 100)를 기준으로 설명하도록 한다. The secure element SE and 100 may be provided as a Java Card, and hereinafter, the secure element 100 provided as a Java Card will be described as a reference.

하드웨어부(110)는 데이터를 저장하는 메모리부(111), 외부와의 통신을 위한 통신부(112), 각종 연산을 수행하는 프로세서(113), 및 데이터를 보호하고 내용을 암호화하는 암호화부(114)를 구비할 수 있다. The hardware unit 110 includes a memory unit 111 for storing data, a communication unit 112 for communication with the outside, a processor 113 for performing various operations, and an encryption unit 114 for protecting data and encrypting contents. ) can be provided.

상기 메모리부(111)는 플래쉬 메모리(Flash Memory), EEPROM 중 어느 하나 이상을 포함하여 구비될 수 있으며, 각종 데이터의 저장공간으로 활용될 수 있다. The memory unit 111 may include any one or more of a flash memory and an EEPROM, and may be used as a storage space for various data.

상기 통신부(112)는 국제표준화기구(ISO)가 ISO 7816으로 정해놓은 국제표준을 따를 수 있다. The communication unit 112 may follow the international standard set by the International Organization for Standardization (ISO) as ISO 7816.

이에 따라, 상기 통신부(112)는 C1 내지 C8의 8개의 단자를 포함할 수 있으며, C1은 전원을 공급하는 단자, C2는 초기화를 위한 리셋 신호를 받는 단자, C3는 작동을 위한 클럭 신호를 받는 단자, C5는 접지단자, C6는 근거리무선통신(NFC)을 지원하는 싱글 와이어 프로토콜(SWP)이 적용되는 단자, C7은 데이터가 송수신되는 I/O(입출력) 단자일 수 있으며, C4 및 C8은 USB 인터페이스를 위한 단자일 수 있다. Accordingly, the communication unit 112 may include eight terminals C1 to C8, where C1 is a terminal that supplies power, C2 is a terminal that receives a reset signal for initialization, and C3 is a terminal that receives a clock signal for operation. Terminal, C5 is a ground terminal, C6 is a terminal to which Single Wire Protocol (SWP) supporting short-range wireless communication (NFC) is applied, C7 may be an I/O (input/output) terminal through which data is transmitted and received, and C4 and C8 are It may be a terminal for a USB interface.

한편, 상기 통신부(112)는 상기 C4 및 C8을 제외한, 상기 C1 내지 C3, 및 상기 C5 내지 C7의 6개의 단자를 포함할 수 있다. Meanwhile, the communication unit 112 may include six terminals C1 to C3 and C5 to C7 except for C4 and C8.

또한, 상기 통신부(112)는 ISO7816 외에 I2C, SPI, GPIO 등의 다양한 통신방식으로 통신할 수 있으며, 이에 필요한 통신 라인 연결을 위해 패키징 변경을 할 수 있다. 이때에, 상기 통신부(112)는 상술한 통신 라인 연결을 위한 패키징 변경에 따라 솔더링에 의해 IoT기기에 고정될 수 있다. In addition, the communication unit 112 may communicate in various communication methods such as I2C, SPI, GPIO, etc. in addition to ISO7816, and may change packaging for communication line connection necessary for this. In this case, the communication unit 112 may be fixed to the IoT device by soldering according to the packaging change for connection of the communication line described above.

이와 같이, 상기 통신부(112)가 솔더링에 의해 IoT기기에 고정되는 경우에는 DFN, QFN 등의 패키징이 사용될 수 있다. In this way, when the communication unit 112 is fixed to the IoT device by soldering, packaging such as DFN or QFN may be used.

상기 프로세서(113)는 바이트 코드(Bytecode) 자체를 기계어로 해석하고 실행하는 비메모리 칩으로 구비될 수 있다. The processor 113 may be provided as a non-memory chip that interprets and executes bytecode itself as a machine language.

상기 암호화부(114)에는 데이터 암호화 표준(Data Encryption Standard, DES), 고급 암호화 표준(Advanced Encryption Standard, AES), RSA(Rivest Shamir Adleman), ECC(Error Corection Code), ARIA(한국 암호표준), HMAC(Hash-based Message Authentication Code)가 적용될 수 있다. The encryption unit 114 includes Data Encryption Standard (DES), Advanced Encryption Standard (AES), Rivest Shamir Adleman (RSA), Error Corection Code (ECC), ARIA (Korean Encryption Standard), Hash-based Message Authentication Code (HMAC) may be applied.

애플릿부(120)는 상기 메모리부(111)에 저장되는 복수의 애플릿(Applet)으로 구비될 수 있다. The applet unit 120 may be provided with a plurality of applets stored in the memory unit 111 .

이때에, 상기 복수의 애플릿(Applet)은 보안 부트 애플릿(Secure Boot Applet, 121), IoT 보안 애플릿(122), 유심 애플릿(USIM Applet, 123)을 포함할 수 있다. In this case, the plurality of applets may include a secure boot applet (Secure Boot Applet) 121 , an IoT security applet 122 , and a USIM applet 123 .

여기에서, 상기 복수의 애플릿(Applet)은 각각 자바 언어를 사용하여 제작된 서비스툴로서 자바 카드 애플릿(Java Card Applet)으로 구현될 수 있는데, 보안 부트 애플릿(Secure Boot Applet, 121)은 보안 부트(Secure Boot)시에 서명검증 및 무결성 검증 진행을 위한 애플릿, IoT 보안 애플릿(123)은 IoT용 보안 프로토콜(Secure Protocol)에서 암호화 연산 및 여러 단말이 보안 연결될 수 있도록 키(Key)와 인증서 보관과 사용에 필요한 파일 시스템(File System)을 구축하는 애플릿이며, 유심 애플릿(USIM Applet,124)은 3G, LTE(4G), 5G 등의 모바일 네트워크 상에서 사용자 인증을 위한 애플릿일 수 있다. Here, the plurality of applets are service tools manufactured using the Java language, respectively, and may be implemented as a Java Card Applet, and the Secure Boot Applet 121 is a secure boot ( Applet for signature verification and integrity verification during Secure Boot), IoT security applet 123 stores and uses keys and certificates so that cryptographic operations and multiple terminals can be securely connected in the secure protocol for IoT It is an applet that builds a file system required for , and the USIM applet 124 may be an applet for user authentication on mobile networks such as 3G, LTE (4G), and 5G.

상기 보안 부트 애플릿(121)은 보안 부트(Secure Boot)가 정상적인 절차로 진행되었는지를 확인할 수 있는 로그 레코드(Log Record)를 저장하도록 할 수 있다. The secure boot applet 121 may store a log record for confirming whether secure boot proceeds as a normal procedure.

여기에서, 보안 부트(Secure Boot) 과정은 ROM에서 부트 매니저(Boot Manager)를 로딩하는 제1로딩단계(S110), 상기 부트 매니저(Boot Manager)로부터 OS 로더(OS Loader)를 로딩하는 제2로딩단계(S130), 및 상기 OS 로더(OS Loader)로부터 OS를 로딩하는 제3로딩단계(S150)를 포함할 수 있는데, 상기 로그 레코드(Log Record)는 상기 제1 내지 제3로딩단계(S110, S130, S150)와 각각 관련된 기록을 포함할 수 있다. Here, the secure boot process includes a first loading step S110 of loading a boot manager from the ROM, and a second loading of loading an OS loader from the boot manager. It may include a step (S130), and a third loading step (S150) of loading the OS from the OS loader, the log record is the first to third loading steps (S110, S130 and S150) and each related record may be included.

다시 말해서, 상기 로그 레코드(Log Record)는 상기 제1로딩단계(S110)와 관련된 제1로그기록, 상기 제2로딩단계(S130)와 관련된 제2로그기록, 및 상기 제3로딩단계(S150)와 관련된 제3로그기록을 포함할 수 있다. In other words, the log record includes a first log record related to the first loading step (S110), a second log record related to the second loading step (S130), and the third loading step (S150). It may include a third log record related to

이때에, 상기 제1 내지 제3로그기록은 상기 제1 내지 제3로딩단계가 이루어진 일시, 진행된 내용 등을 포함할 수 있다. In this case, the first to third log records may include the date and time at which the first to third loading steps were performed, progress contents, and the like.

다른 한편으로, 서버(200)는 상기 제1 내지 제3 로그 기록을 포함하는 상기 로그 레코드(Log Record)를 확인하여, 보안 부트(Secure Boot) 과정에서 인증절차가 바이패스(By Pass)되었는지 여부를 확인할 수 있다. On the other hand, the server 200 checks the log record including the first to third log records, and whether the authentication procedure is bypassed in the secure boot process. can be checked.

이를 통해, 상기 서버(200)는 상기 로그 레코드(Log Record)를 확인하는 과정에서 응답이 없거나, 상기 제1 내지 제3 로그 기록 중 부정확한 값이 있는 경우 네트워크에서 상기 보안 요소(SE, 100)가 장착된 IoT 기기를 네트워크에서 배제시키거나 동작을 중지시키는 등의 조치를 취할 수 있다. Through this, when there is no response in the process of checking the log record, or there is an incorrect value among the first to third log records, the server 200 performs the security element (SE, 100) in the network. It is possible to take measures such as excluding an IoT device equipped with an IoT device from the network or stopping its operation.

이때에, 상기 제1 내지 제3로그 기록을 포함하는 로그 레코드(Log Record)는 인증(authentication)을 통해서만 접근이 가능할 수 있으며, 이러한 인증(authentication)은 서명 검증 또는 MAC(Massage Authentication Code) 검증을 통해 이루어질 수 있다. At this time, the log records including the first to third log records may be accessible only through authentication, and such authentication is the signature verification or MAC (Massage Authentication Code) verification. can be done through

이를 위하여, 상기 보안 요소(SE, 100)와 상기 서버(200)는 공개키(Public Key), 개인키(Private Key)를 공유할 수 있다. To this end, the secure element SE 100 and the server 200 may share a public key and a private key.

API부(130)는 상기 복수의 애플릿이 구동할 수 있도록 소프트웨어 환경을 제공하는 프레임워크(Framework, 131), 및 상기 복수의 애플릿을 구동할 수 있도록 함수를 제공하는 API(Application Programming Interface, 132)로 구성될 수 있다. The API unit 130 is a framework 131 that provides a software environment so that the plurality of applets can be driven, and an API (Application Programming Interface, 132) that provides functions to drive the plurality of applets. can be composed of

이때에, 상기 프레임워크(Framework, 131)는 자바 카드(Java Card) 기술을 이용하여 상기 복수의 애플릿 구동을 위한 각종 라이브러리들을 제공하는 자바 카드 프레임워크(Java Card Framework)일 수 있다. In this case, the framework 131 may be a Java Card Framework that provides various libraries for driving the plurality of applets using Java Card technology.

한편, 상기 API(Application Programming Interface, 132)는 일반적인 자바카드 API(Java Card API, 132a)로 구비될 수 있으며, 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132b)가 부가적으로 구비될 수 있다. Meanwhile, the API (Application Programming Interface, 132) may be provided as a general Java Card API (Java Card API, 132a), and a Secure Protocol Crypto API (API, 132b) may be additionally provided.

상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132)는 후술하는 검증 보안 모듈(155)을 사용하여 인증서 서명 생성 및 검증, 키(Key) 분배, 데이터 암호화 MAC 생성 및 검증, Hash 알고리즘을 통한 무결성 검증에 사용되는 함수를 제공하는 API일 수 있다. The Secure Protocol Crypto API (API) 132 uses a verification security module 155 to be described later to generate and verify a certificate signature, distribute a key, generate and verify data encryption MAC, and verify integrity through a hash algorithm. It may be an API that provides a function used for

이를 통하여, 상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132b)는 상기 보안 부트 애플릿(Secure Boot Applet, 121) 및 상기 IoT 보안 애플릿(122)을 구동하기 위한 함수를 제공할 수 있게 된다. Through this, the Secure Protocol Crypto API (API) 132b can provide a function for driving the Secure Boot Applet 121 and the IoT Security Applet 122 .

또한, 상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132b)는 IoT기기와 상기 서버(200) 간에 인증서를 분배하는 핸드셰이크(HandShake)에 필요한 API를 포함할 수 있다. In addition, the Secure Protocol Crypto API (API) 132b may include an API required for a handshake for distributing a certificate between the IoT device and the server 200 .

실행환경부(140)는 상기 복수의 애플릿(121, 122, 123)의 바이트코드(Bytecode)를 분석하여 실행시키는 가상머신(Virtual Machine, 141)을 포함할 수 있다. The execution environment unit 140 may include a virtual machine 141 that analyzes and executes bytecodes of the plurality of applets 121 , 122 , and 123 .

이때에, 상기 가상머신(Virtual Machine, 141)은 자바 카드 가상 머신(Java Card Virtual Machine)일 수 있다. In this case, the virtual machine (Virtual Machine, 141) may be a Java Card Virtual Machine (Java Card Virtual Machine).

한편, 도 3을 참조하면, 상기 가상머신(Virtual Machine, 141)은 Garbage Collector, Access Controller, Interpreter, Applet Firewall을 구비할 수 있다. Meanwhile, referring to FIG. 3 , the virtual machine 141 may include a garbage collector, an access controller, an interpreter, and an applet firewall.

운영체계부(150)는 상기 하드웨어부(110)를 상기 실행환경부(140)가 사용할 수 있도록 할 수 있으며, 커맨드 프로세서(Command Processor, 151), 메모리 매니지먼트(Memory Management, 152), 커뮤니케이션 모듈(Communication Module, 153), 및 검증 보안 모듈(154)을 구비할 수 있다. The operating system unit 150 may enable the hardware unit 110 to be used by the execution environment unit 140 , and may include a command processor (Command Processor, 151), memory management (Memory Management, 152), and a communication module (Communication). Module 153 , and a verification security module 154 .

이때에, 상기 운영체계부(150)는 Native Chip OS로 구비되어 COS 커널(COS Kernel, 150a)을 형성할 수 있으며, 이에 따라 상기 커맨드 프로세서(Command Processor, 151), 메모리 매니지먼트(Memory Management, 152), 커뮤니케이션 모듈(Communication Module, 153), 및 검증 보안 모듈(154)은 상기 COS 커널(COS Kernel, 150a) 아래에 탑재될 수 있다. At this time, the operating system unit 150 is provided as a native chip OS to form a COS kernel (COS kernel, 150a), and accordingly, the command processor (Command Processor, 151) and memory management (Memory Management, 152) ), a communication module 153 , and a verification security module 154 may be mounted under the COS kernel 150a.

상기 COS 커널(COS Kernel, 150a)은 상기 API부(130)의 API(132)를 통해서만 접근이 허용될 수 있는데, 상기 검증 보안 모듈(154)가 상기 COS 커널(COS Kernel, 150a) 아래에 탑재되므로 보다 강력한 보안이 이루어질 수 있다. The COS kernel (COS Kernel, 150a) can be accessed only through the API 132 of the API unit 130, and the verification security module 154 is mounted under the COS kernel (COS Kernel, 150a). Therefore, stronger security can be achieved.

다시 말해서, 상기 API부(130)에 부가적으로 구비되는 상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132b)를 통해서 상기 검증 보안 모듈(154)에 접근이 가능하며, 상기 보안 부트 애플릿(Secure Boot Applet, 121) 및 상기 IoT 보안 애플릿(122)은 상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132)를 활용하여 구동되므로, 상기 보안 부트 애플릿(Secure Boot Applet, 121) 및 상기 IoT 보안 애플릿(122)의 구동을 통하여 상기 검증 보안 모듈(154)을 활용하여 실제 IoT 보안에 필요한 다양한 기능을 지원할 수 있다. In other words, it is possible to access the verification security module 154 through the secure protocol encryption API (Secure Protocol Crypto API, 132b) additionally provided in the API unit 130, and the secure boot applet (Secure Boot). Since the Applet 121 and the IoT security applet 122 are driven by utilizing the Secure Protocol Crypto API 132, the Secure Boot Applet 121 and the IoT security applet 122 ), it is possible to support various functions necessary for actual IoT security by utilizing the verification security module 154 .

보다 구체적으로 살펴보면, 상기 IoT 보안 애플릿(122)은 상기 보안 프로토콜 암호화 API(Secure Protocol Crypto API, 132) 환경에서 구동되어 상기 검증 보안 모듈(154)를 활용하여 다양한 IoT용 보안 프로토콜(Secure Protocol)에서 암호화 연산 및 여러 단말이 보안 연결될 수 있도록 키(Key)와 인증서의 보관과 사용에 필요한 파일 시스템(File System)을 구축할 수 있으며, 키(Key)와 인증서의 발급, 삭제, 및 접근 권한을 관리할 수 있다. 아울러, 상기 IoT 보안 애플릿(122)은 IoT 기기의 라이프 사이클(Life Cycle) 관리 또한 가능하다. More specifically, the IoT security applet 122 is driven in the security protocol encryption API (Secure Protocol Crypto API, 132) environment and utilizes the verification security module 154 to perform various IoT security protocols (Secure Protocol). A file system required for storage and use of keys and certificates can be built so that cryptographic operations and multiple terminals can be securely connected, and the issuance, deletion, and access rights of keys and certificates are managed. can do. In addition, the IoT security applet 122 can also manage the life cycle of the IoT device.

또한, 상기 보안 부트 애플릿(121)에 의한 보안 부트에서 사용되는 Hash 알고리즘과 서명 검증 알고리즘은 상기 검증 보안 모듈(154)을 이용하는 것일 수 있다.In addition, the hash algorithm and signature verification algorithm used in the secure boot by the secure boot applet 121 may use the verification security module 154 .

한편, 상기 검증 보안 모듈(154)은 CMVP(Cryptographic Module Validation Program) 또는 KCMVP(Korea Cryptographic Module Validation Program)를 통해 검증받은 보안 모듈일 수 있다. Meanwhile, the verification security module 154 may be a security module verified through a Cryptographic Module Validation Program (CMVP) or a Korea Cryptographic Module Validation Program (KCMVP).

상술한 바와 같이, 본 발명의 일 실시예에 의한 보안부트 검증방법(S100) 및 이를 위한 보안 요소(100)에 의하면, 상기 보안 요소(SE, 100)가 보안 부트(Secure Boot) 과정에서 부트 매니저(Boot Manager), OS 로더(OS Loader), OS(Operating System)을 로딩하는 단계마다 관련된 로그 레코드(Log Record)를 기록하도록 하여, 이후 서버(200)에 의해 상기 로그 레코드(Log Record)를 확인하여 보안 부트(Secure Boot)가 정상적으로 이루어진 것인지 판단하도록 함으로써 각 로딩단계에서 검증(Verification) 과정이 바이패스(By Pass)되었는지 여부를 확인할 수 있도록 하여, 해커가 검증(Verification) 과정을 뛰어넘어 해커 자신의 OS를 로딩하였는지 여부를 확인할 수 있어 Anti-Malware의 별도 탑재없이도 보안 부트(Secure Boot)가 제대로 이루어졌는지 여부를 담보할 수 있다. As described above, according to the secure boot verification method ( S100 ) and the secure element 100 for the same according to an embodiment of the present invention, the secure elements ( SE and 100 ) are the boot managers in the secure boot process. (Boot Manager), OS Loader (OS Loader), OS (Operating System) to record a log record related to each step of loading, and then check the log record (Log Record) by the server 200 This allows the hacker to skip the Verification process and check whether the Verification process has been bypassed at each loading stage by determining whether the Secure Boot has been performed normally. It is possible to check whether the OS of the OS is loaded or not, so it is possible to guarantee whether Secure Boot has been properly performed without additionally installing Anti-Malware.

또한, 상기 보안 요소(Secure Element, SE, 100)는 ISO 7816을 따르는 통신부(112), 무선 네트워크상에서의 사용자 인증이 가능하도록 하는 유심 애플릿(USIM Applet, 123), 및 상기 유심 애플릿(USIM Applet)을 구동하기 위한 API부(130)와 실행환경부(140)을 구비하여 일반적인 USIM의 기능인 무선 네트워크 상에서의 사용자 인증을 가능하도록 할 뿐 아니라, 보안 부트 애플릿(Secure Boot Applet, 121)을 통해 보안 부트(Secure Boot)가 가능하므로 높은 수준의 보안이 유지될 수 있다. In addition, the secure element (Secure Element, SE, 100) is a communication unit 112 conforming to ISO 7816, a SIM applet that enables user authentication on a wireless network (USIM Applet, 123), and the SIM applet (USIM Applet) It has an API unit 130 and an execution environment unit 140 to drive the , and not only enables user authentication on a wireless network, which is a function of a general USIM, but also uses a secure boot applet (Secure Boot Applet, 121). Secure Boot) is possible, so a high level of security can be maintained.

아울러, 본 발명의 일 실시예에 의한 보안 요소(Secure Element, SE, 100)는 COS 커널(COS Kernel, 150a) 아래에 검증 보안 모듈(154)를 탑재하여, 하드웨어 수준에서 키(Key)를 보관하고 TLS(Transport Layer Security)와 같은 보안 프로토콜(Secure Protocol) 암호화 연산을 실시하여 키(Key) 노출이 되지 않으므로 강력한 수준의 보안 프로토콜을 달성할 수 있다.In addition, the secure element (SE, 100) according to an embodiment of the present invention is equipped with a verification security module 154 under the COS kernel (COS Kernel, 150a), and stores the key (Key) at the hardware level. In addition, secure protocol encryption operations such as TLS (Transport Layer Security) are performed to achieve a strong level of security protocol because the key is not exposed.

이상에서, 본 발명의 일 실시예에 대하여 상세하게 설명하였지만, 본 발명의 권리범위는 이에 한정되는 것은 아니고, 청구범위에 기재된 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 수정 및 변형이 가능하다는 것은 당 기술분야의 통상의 지식을 가진 자에게는 자명할 것이다. In the above, an embodiment of the present invention has been described in detail, but the scope of the present invention is not limited thereto, and various modifications and variations are possible within the scope without departing from the technical spirit of the present invention described in the claims. It will be apparent to those of ordinary skill in the art.

100: 본 발명의 일 실시예에 의한 보안 요소
110: 하드웨어부 111: 메모리부
112: 통신부 113: 프로세서
114: 암호화부 120: 애플릿부
121: 보안 부트 애플릿 122: IoT 보안 애플릿
123: USIM 애플릿 130: API부
131: 프레임워크 132: API
132a: 자바 카드 API 132b: 보안 프로토콜 암호화 API
140: 실행환경부 141: 가상머신
150: 운영체계부 150a: COS 커널
151: 커맨드 프로세서 152: 메모리 매니지먼트
153: 커뮤니케이션 모듈 154: 검증 보안 모듈
S100: 본 발명의 일 실시예에 의한 보안 부트 검증 방법
S110: 제1로딩단계 S120: 제1로그기록단계
S130: 제2로딩단계 S140: 제2로그기록단계
S150: 제3로딩단계 S160: 제3로그기록단계
S170: 로그 검증단계
100: secure element according to an embodiment of the present invention
110: hardware unit 111: memory unit
112: communication unit 113: processor
114: encryption unit 120: applet unit
121: secure boot applet 122: IoT security applet
123: USIM applet 130: API part
131: framework 132: API
132a: Java Card API 132b: Security Protocol Encryption API
140: execution environment unit 141: virtual machine
150: operating system unit 150a: COS kernel
151: command processor 152: memory management
153: communication module 154: verification security module
S100: Secure boot verification method according to an embodiment of the present invention
S110: first loading step S120: first log recording step
S130: second loading step S140: second log recording step
S150: third loading step S160: third log recording step
S170: log verification step

Claims (19)

IoT 기기에 장착된 보안 요소를 이용하여 보안 부트를 진행하고, 보안 부트가 정상적으로 진행되었는지 여부를 검증하는 보안 부트 검증 방법에 있어서,
ROM으로부터 부트 매니저(Boot Manager)를 로딩하는 제1로딩단계;
상기 제1로딩단계와 관련된 제1로그기록을 로그 레코드(Log Record)에 기록하는 제1로그기록단계;
상기 부트 매니저(Boot manager)로부터 OS 로더(OS Loader)를 로딩하는 제2로딩단계;
상기 OS 로더(OS Loader)로부터 OS를 로딩하는 제3로딩단계; 및
상기 로그 레코드(Log Record)를 확인하여 보안 부트(Secure Boot)가 정상적으로 진행되었는지 여부를 판단하는 로그 검증단계;를 포함하는 것을 특징으로 하는 보안 부트 검증 방법.
A secure boot verification method for performing a secure boot using a secure element mounted on an IoT device and verifying whether the secure boot has proceeded normally,
a first loading step of loading a boot manager from the ROM;
a first log recording step of recording a first log record related to the first loading step in a log record;
a second loading step of loading an OS loader from the boot manager;
a third loading step of loading the OS from the OS loader; and
and a log verification step of determining whether secure boot has been normally performed by checking the log record.
제1항에 있어서,
상기 제2로딩단계와 관련된 제2로그기록을 상기 로그 레코드(Log Record)에 기록하는 제2로그기록단계;를 더 포함하는 것을 특징으로 하는 보안 부트 검증 방법.
According to claim 1,
and a second log recording step of recording a second log record related to the second loading step in the log record.
제2항에 있어서,
상기 제3로딩단계와 관련된 제3로그기록을 상기 로그 레코드(Log Record)에 기록하는 제3로그기록단계;를 더 포함하는 것을 특징으로 하는 보안 부트 검증 방법.
3. The method of claim 2,
The method of claim 1, further comprising: a third log recording step of recording a third log record related to the third loading step in the log record.
제1항에 있어서,
상기 로그 검증단계는, 보안 부트(Secure) 과정에서 인증(Verification) 절차가 바이패스(By Pass)되었는지 여부를 확인하는 단계인 것을 특징으로 하는 보안 부트 검증 방법.
According to claim 1,
The log verification step is a step of checking whether a verification procedure is bypassed during a secure boot process.
제1항에 있어서,
상기 로그 검증단계는, 상기 보안 요소와 네트워크로 연결된 서버에 의해 진행되고,
상기 서버는 상기 로그 검증단계에서 상기 보안요소의 응답이 없거나, 상기 로그 레코드에 부정확한 값이 있는 경우 네트워크에서 상기 보안요소가 장착된 IoT기기를 배제시키거나 동작을 중지시키는 것을 특징으로 하는 보안 부트 검증 방법.
According to claim 1,
The log verification step is performed by a server connected to the secure element and a network,
Secure boot, characterized in that the server excludes the IoT device equipped with the secure element from the network or stops the operation if there is no response from the secure element in the log verification step or there is an incorrect value in the log record Verification method.
제1항에 있어서,
상기 로그 레코드(Log Record)는 서명 검증 또는 MAC(Message Authentication Code) 검증을 통해 이루어지는 인증(Authentication)을 통해서만 접근이 가능하며,
상기 보안 요소와 상기 서버는 상호 인증을 진행하고, MAC(Message Authentication Code) 생성키를 공유하는 것을 특징으로 하는 보안 부트 검증 방법.
According to claim 1,
The log record is accessible only through authentication made through signature verification or MAC (Message Authentication Code) verification,
The secure boot verification method, characterized in that the secure element and the server perform mutual authentication and share a MAC (Message Authentication Code) generation key.
제1항에 있어서,
상기 보안 요소는 자바카드로 구비되는 것을 특징으로 하는 보안 부트 검증 방법.
According to claim 1,
The secure boot verification method, characterized in that the secure element is provided with a Java card.
제7항에 있어서,
상기 보안요소는,
데이터를 저장하는 메모리부, 외부와의 통신을 위한 통신부, 각종 연산을 수행하는 프로세서, 및 데이터를 보호하고 내용을 암호화하는 암호화부를 포함하는 하드웨어부;
상기 메모리부에 저장되는 적어도 하나의 애플릿으로 이루어지는 애플릿부;
상기 애플릿이 구동할 수 있도록 소프트웨어 환경을 제공하는 프레임 워크 및 상기 애플릿을 구동할 수 있도록 함수를 제공하는 적어도 하나의 API로 구성되는 API부;
상기 애플릿의 바이트코드를 분석하여 실행시키는 가상머신을 포함하는 실행환경부;
상기 하드웨어부를 상기 실행환경부가 사용할 수 있도록 하는 운영체계부;를 포함하는 아키첵쳐로 구성되고,
상기 애플릿부에는 상기 로그 레코드(Log Record)를 저장하도록 하는 보안 부트 애플릿(Secure Boot Applet)이 구비되는 것을 특징으로 하는 보안 부트 검증 방법.
8. The method of claim 7,
The security element is
a hardware unit including a memory unit for storing data, a communication unit for communication with the outside, a processor for performing various operations, and an encryption unit for protecting data and encrypting contents;
an applet unit comprising at least one applet stored in the memory unit;
an API unit comprising: a framework providing a software environment so that the applet can run; and at least one API that provides a function to run the applet;
an execution environment unit including a virtual machine that analyzes and executes the bytecode of the applet;
It consists of an architecture including; an operating system unit that allows the hardware unit to be used by the execution environment unit;
The secure boot verification method, characterized in that the applet unit is provided with a secure boot applet (Secure Boot Applet) for storing the log record (Log Record).
제8항에 있어서,
상기 API부는 자바 카드 API로 구비되되, 상기 보안 부트 애플릿(Secure Boot Applet)이 구동될 수 있도록 함수를 제공하는 보안 프로토콜 암호화 API를 부가적으로 구비하는 것을 특징으로 하는 보안 부트 검증 방법.
9. The method of claim 8,
The API unit is provided as a Java Card API, and the secure boot verification method, characterized in that it additionally comprises a security protocol encryption API that provides a function so that the secure boot applet can be driven.
제9항에 있어서,
상기 운영체계부에는 상기 보안 부트 애플릿(Secure Boot Applet)이 구동되도록 하는 라이브러리를 구성하는 검증 보안 모듈이 탑재되고,
상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하는 것을 특징으로 하는 보안 부트 검증 방법.
10. The method of claim 9,
The operating system unit is equipped with a verification security module constituting a library for driving the secure boot applet,
The secure boot verification method, characterized in that the security protocol encryption API uses the verification security module.
제10항에 있어서,
상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하여 인증서 서명 생성 및 검증, 키(Key) 분배, 데이터 암호화 MAC 생성 및 검증, Hash 알고리즘을 통한 무결성 검증에 사용되는 함수를 제공하는 API인것을 특징으로 하는 보안 부트 검증방법.
11. The method of claim 10,
The security protocol encryption API is an API that provides functions used for certificate signature generation and verification, key distribution, data encryption MAC generation and verification, and integrity verification through a hash algorithm using the verification security module. How to verify secure boot.
제11항에 있어서,
상기 보안 프로토콜 암호화 API는 상기 IoT 기기와 상기 서버 간에 인증서를 분배하는 핸드셰이크(HandShake)에 필요한 API를 포함하는 것을 특징으로 하는 보안 부트 검증 방법.
12. The method of claim 11,
The security protocol encryption API includes an API required for a handshake for distributing a certificate between the IoT device and the server.
제10항에 있어서,
상기 검증 보안 모듈은 CMVP(Cryptographic Module Validation Program) 또는 KCMVP(Korea Cryptographic Module Validation Program)를 통해 검증받은 보안 모듈인 것을 특징으로 하는 보안 부트 검증 방법.
11. The method of claim 10,
The secure boot verification method, characterized in that the verification security module is a security module verified through a Cryptographic Module Validation Program (CMVP) or a Korea Cryptographic Module Validation Program (KCMVP).
IoT 기기에 장착되어 보안 부트(Secure Boot)를 진행하는 보안 요소(Secure Element)에 있어서,
데이터를 저장하는 메모리부, 외부와의 통신을 위한 통신부, 각종 연산을 수행하는 프로세서, 및 데이터를 보호하고 내용을 암호화하는 암호화부를 포함하는 하드웨어부;
상기 메모리부에 저장되는 적어도 하나의 애플릿으로 이루어지는 애플릿부;
상기 애플릿이 구동할 수 있도록 소프트웨어 환경을 제공하는 프레임 워크 및 상기 애플릿을 구동할 수 있도록 함수를 제공하는 적어도 하나의 API로 구성되는 API부;
상기 애플릿의 바이트코드를 분석하여 실행시키는 가상머신을 포함하는 실행환경부;
상기 하드웨어부를 상기 실행환경부가 사용할 수 있도록 하는 운영체계부;를 포함하는 아키첵쳐로 구성되고,
상기 애플릿부에는 상기 로그 레코드(Log Record)를 저장하도록 하는 보안 부트 애플릿(Secure Boot Applet)이 구비되어,
상기 IoT기기와 네트워크로 연결된 서버에 의해 상기 로그 레코드(Log Record)를 확인하도록 하여, 보안 부트(Secure Boot)가 정상적으로 이루어졌는지 여부를 판단하도록 하는 것을 특징으로 하는 보안 요소.
In a secure element that is mounted on an IoT device and proceeds with secure boot,
a hardware unit including a memory unit for storing data, a communication unit for communication with the outside, a processor for performing various operations, and an encryption unit for protecting data and encrypting contents;
an applet unit comprising at least one applet stored in the memory unit;
an API unit comprising: a framework providing a software environment so that the applet can run; and at least one API that provides a function to run the applet;
an execution environment unit including a virtual machine that analyzes and executes the bytecode of the applet;
It consists of an architecture including; an operating system unit that allows the hardware unit to be used by the execution environment unit;
The applet unit is provided with a secure boot applet to store the log record (Log Record),
A security element, characterized in that by checking the log record by a server connected to the IoT device through a network, it is determined whether a secure boot is normally performed.
제14항에 있어서,
상기 API부는 자바 카드 API로 구비되되, 상기 보안 부트 애플릿(Secure Boot Applet)이 구동될 수 있도록 함수를 제공하는 보안 프로토콜 암호화 API를 부가적으로 구비하는 것을 특징으로 하는 보안 요소.
15. The method of claim 14,
The API unit is provided as a Java Card API, the secure element characterized in that it additionally comprises a security protocol encryption API that provides a function so that the secure boot applet (Secure Boot Applet) can be driven.
제15항에 있어서,
상기 운영체계부에는 상기 보안 부트 애플릿(Secure Boot Applet)이 구동되도록 하는 라이브러리를 구성하는 검증 보안 모듈이 탑재되고,
상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하는 것을 특징으로 하는 보안 요소.
16. The method of claim 15,
The operating system unit is equipped with a verification security module constituting a library for driving the secure boot applet,
wherein the security protocol encryption API uses the verification security module.
제16항에 있어서,
상기 보안 프로토콜 암호화 API는 상기 검증 보안 모듈을 사용하여 인증서 서명 생성 및 검증, 키(Key) 분배, 데이터 암호화 MAC 생성 및 검증, Hash 알고리즘을 통한 무결성 검증에 사용되는 함수를 제공하는 API인것을 특징으로 하는 보안 요소.
17. The method of claim 16,
The security protocol encryption API is an API that provides functions used for certificate signature generation and verification, key distribution, data encryption MAC generation and verification, and integrity verification through a hash algorithm using the verification security module. security element to do.
제17항에 있어서,
상기 보안 프로토콜 암호화 API는 상기 IoT 기기와 상기 서버 간에 인증서를 분배하는 핸드셰이크(HandShake)에 필요한 API를 포함하는 것을 특징으로 하는 보안 부트 요소.
18. The method of claim 17,
The secure protocol encryption API includes an API required for a handshake for distributing a certificate between the IoT device and the server.
제16항에 있어서,
상기 검증 보안 모듈은 CMVP(Cryptographic Module Validation Program) 또는 KCMVP(Korea Cryptographic Module Validation Program)를 통해 검증받은 보안 모듈인 것을 특징으로 하는 보안 요소.
17. The method of claim 16,
The verification security module is a security element, characterized in that the security module verified through CMVP (Cryptographic Module Validation Program) or KCMVP (Korea Cryptographic Module Validation Program).
KR1020200145591A 2020-11-03 2020-11-03 Secure Boot Verification Method and Secure Element for the Same KR102387685B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200145591A KR102387685B1 (en) 2020-11-03 2020-11-03 Secure Boot Verification Method and Secure Element for the Same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200145591A KR102387685B1 (en) 2020-11-03 2020-11-03 Secure Boot Verification Method and Secure Element for the Same

Publications (2)

Publication Number Publication Date
KR20220059866A true KR20220059866A (en) 2022-05-10
KR102387685B1 KR102387685B1 (en) 2022-05-30

Family

ID=81592013

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200145591A KR102387685B1 (en) 2020-11-03 2020-11-03 Secure Boot Verification Method and Secure Element for the Same

Country Status (1)

Country Link
KR (1) KR102387685B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006323814A (en) * 2005-01-07 2006-11-30 Microsoft Corp System and method for safely booting computer having reliable processing module
US20160050071A1 (en) * 2014-08-18 2016-02-18 Proton World International N.V. Device and method for providing trusted platform module services
KR20170118972A (en) * 2015-04-15 2017-10-25 퀄컴 인코포레이티드 Security software authentication and verification
KR101968382B1 (en) * 2016-07-14 2019-04-11 경희대학교 산학협력단 User apparatus based on trusted platform module and booting method using the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006323814A (en) * 2005-01-07 2006-11-30 Microsoft Corp System and method for safely booting computer having reliable processing module
US20160050071A1 (en) * 2014-08-18 2016-02-18 Proton World International N.V. Device and method for providing trusted platform module services
KR20170118972A (en) * 2015-04-15 2017-10-25 퀄컴 인코포레이티드 Security software authentication and verification
KR101968382B1 (en) * 2016-07-14 2019-04-11 경희대학교 산학협력단 User apparatus based on trusted platform module and booting method using the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
저사양 IoT 디바이스의 안전한 부트 및 업데이트를 위한 보안 시스템 설계 및 구현(정보과학회논문지 제45권 제4호, 2018.4)

Also Published As

Publication number Publication date
KR102387685B1 (en) 2022-05-30

Similar Documents

Publication Publication Date Title
US11416605B2 (en) Trusted execution environment instances licenses management
US10931451B2 (en) Securely recovering a computing device
EP3642751B1 (en) Mutual authentication with integrity attestation
JP6888011B2 (en) Mobile device with a reliable execution environment
US8560857B2 (en) Information processing apparatus, a server apparatus, a method of an information processing apparatus, a method of a server apparatus, and an apparatus executable program
TWI598814B (en) System and method for managing and diagnosing a computing device equipped with unified extensible firmware interface (uefi)-compliant firmware
US8254568B2 (en) Secure booting a computing device
US9288155B2 (en) Computer system and virtual computer management method
US8291480B2 (en) Trusting an unverified code image in a computing device
US10878101B2 (en) Trusted booting by hardware root of trust (HRoT) device
US20210012008A1 (en) Method of initializing device and method of updating firmware of device having enhanced security function
US20150095652A1 (en) Encryption and decryption processing method, apparatus, and device
US11704442B2 (en) Instance handling of a trusted execution environment
KR102387685B1 (en) Secure Boot Verification Method and Secure Element for the Same
US11556673B2 (en) Method for managing an instance of a class
KR102474650B1 (en) Secure Element with Universal Subscriber Identified Module
US11947676B2 (en) Processor system with a communication interface
CN113849819B (en) Method, device, computer equipment and storage medium for processing command line instruction
CN117592079A (en) Secret computing environment creation method, password operation method and related equipment
CN117390630A (en) Secure boot method, secure architecture system and computing device
CN117453343A (en) Virtual machine measurement and secret calculation authentication method, device, system and storage medium
CN115549967A (en) Information management method, information storage method, device, system and storage medium
CN117390631A (en) Secure boot method, secure architecture system and computing device

Legal Events

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