KR20240097596A - Method for encryption key generation and management for full disk encryption - Google Patents

Method for encryption key generation and management for full disk encryption Download PDF

Info

Publication number
KR20240097596A
KR20240097596A KR1020220179818A KR20220179818A KR20240097596A KR 20240097596 A KR20240097596 A KR 20240097596A KR 1020220179818 A KR1020220179818 A KR 1020220179818A KR 20220179818 A KR20220179818 A KR 20220179818A KR 20240097596 A KR20240097596 A KR 20240097596A
Authority
KR
South Korea
Prior art keywords
encryption
encryption key
key
trusted application
application program
Prior art date
Application number
KR1020220179818A
Other languages
Korean (ko)
Inventor
유세훈
정가영
김영동
Original Assignee
현대오토에버 주식회사
Filing date
Publication date
Application filed by 현대오토에버 주식회사 filed Critical 현대오토에버 주식회사
Publication of KR20240097596A publication Critical patent/KR20240097596A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme

Abstract

본 발명에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법은, REE(Rich Execution Environment) 영역에 구비되는 암호화 응용프로그램이 TEE(Trusted Execution Environment) 영역에 구비되는 신뢰할 수 있는 응용프로그램에게 암호화 키를 요청하는 단계; 상기 신뢰할 수 있는 응용프로그램이 시큐어 스토리지에 저장된, TRNG(true random number generator) 모듈에 의해 생성된 암호화 키 및 상기 암호화 키에 대한 전자서명을 로드하는 단계; 상기 신뢰할 수 있는 응용프로그램이 RSA 공개키로 상기 전자서명을 검증하는 단계; 및 상기 전자서명 검증 결과 검증에 성공하면, 상기 신뢰할 수 있는 응용프로그램이 상기 암호화 키를 상기 암호화 응용프로그램에게 전달하는 단계를 포함하는 것을 특징으로 한다.In the method of generating and managing an encryption key for full disk encryption according to the present invention, an encryption application provided in the REE (Rich Execution Environment) area provides an encryption key to a trusted application provided in the TEE (Trusted Execution Environment) area. requesting step; Loading, by the trusted application program, an encryption key generated by a true random number generator (TRNG) module and an electronic signature for the encryption key stored in secure storage; The trusted application program verifies the digital signature with an RSA public key; And if the digital signature verification result is successful, the trusted application program transmits the encryption key to the encryption application program.

Description

전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법{METHOD FOR ENCRYPTION KEY GENERATION AND MANAGEMENT FOR FULL DISK ENCRYPTION}Method for generating and managing encryption keys for full disk encryption {METHOD FOR ENCRYPTION KEY GENERATION AND MANAGEMENT FOR FULL DISK ENCRYPTION}

본 발명은 전체 디스크 암호화를 위한 암호화 키의 생성 및 관리 방법에 관한 것이다.The present invention relates to a method for generating and managing an encryption key for full disk encryption.

전체 디스크 암호화(Full Disk Encryption, FDE)는 파일 디스크를 암호화하는 방식으로, 데이터가 저장되는 파티션 전체를 하나의 키로 암호화하는 방식이다. FDE는 대칭키 기반의 블록 단위 암호화 기법으로 Device Mapper 커널 프레임워크에서 암호화를 위한 dm-crypt 모듈을 제공하고 있다. 장치가 한번 암호화되면 사용자가 생성한 데이터는 자동으로 암호화되어 디스크에 저장되고 읽기 요청에 의해 반환되기 전에 자동으로 복호화된다. 악의적인 사용자가 장치의 저장소를 획득하여 데이터 탈취를 시도할 경우 데이터는 암호화되어 있기 때문에 안전함이 보장된다.Full Disk Encryption (FDE) is a file disk encryption method that encrypts the entire partition where data is stored with one key. FDE is a symmetric key-based block-level encryption technique that provides the dm-crypt module for encryption in the Device Mapper kernel framework. Once a device is encrypted, user-generated data is automatically encrypted, stored on disk, and automatically decrypted before being returned by a read request. If a malicious user obtains the device's storage and attempts to steal data, the data is guaranteed to be safe because it is encrypted.

안드로이드 시스템은 전체 디스크 암호화를 위해 'footer'라는 암호화시 필요한 정보를 저장하는 영역을 가지고 있다. footer 영역은 암호화 대상이 되는 파티션에서 임의의 사이즈(예컨대 16KB)를 할당받거나 별도의 파티션 영역을 지정해 사용할 수 있다. footer 영역에는 암호화 수행시 필요한 다양한 정보들이 기록된다. 이러한 정보들은 물리적인 파티션 덤프를 통해 획득할 수 있지만, 해당 정보들을 통해 디스크 탈취시 데이터가 쉽게 복호화된다고 볼 순 없다. 그러나 악의적인 사용자가 획득한 민감한 정보가 제3의 가공 방식을 통해 데이터 탈취, 공격 등 취약성을 발생시킬 가능성이 존재하기 때문에 개선이 필요하다.The Android system has an area called 'footer' that stores information needed for encryption for full disk encryption. The footer area can be allocated a random size (for example, 16KB) in the partition subject to encryption, or can be used by designating a separate partition area. In the footer area, various information required when performing encryption is recorded. Although this information can be obtained through a physical partition dump, it cannot be said that the data can be easily decrypted when the disk is hijacked through this information. However, improvements are needed because there is a possibility that sensitive information obtained by malicious users may cause vulnerabilities such as data theft and attacks through third-party processing methods.

리눅스에서 사용되는 암호화 기술로는 LUKS(Linux Unified Key Setup)라고 하는 암호화 표준이 사용된다. 이 기술 역시 안드로이드와 마찬가지로 footer 영역과 유사한 역할을 하는 영역을 구성해 암호화에 필요한 정보를 저장한다. 이 경우에도 파티션 덤프를 통해 민감 정보가 획득될 수 있으며, 해당 정보를 통해 디스크 탈취시 데이터가 쉽게 복호화된다고 볼 순 없으나 민감 정보는 최대한 노출시키지 않아야 하고 악의적인 사용자에게 공격의 기회를 제공하지 않아야 할 필요가 있다.The encryption technology used in Linux is an encryption standard called LUKS (Linux Unified Key Setup). Like Android, this technology also forms an area that plays a similar role to the footer area and stores the information needed for encryption. Even in this case, sensitive information can be obtained through partition dump, and it cannot be said that the data can be easily decrypted when the disk is hijacked through this information, but sensitive information should not be exposed as much as possible and should not provide an opportunity for attack to malicious users. There is a need.

한편, 종래 기술에서 암호화 키의 생성은 CSPRNG(cryptographically secure pseudorandom number generator) 계열의 /dev/urandom, /dev/random의 두 디바이스 드라이버를 사용한다. 상기 두 디바이스 드라이버는 대표적으로 다음과 같은 특성을 가지고 있다. CSPRNG 역시 PRNG(pseudorandom number generator)이므로 서로 다른 소스의 랜덤을 결합하는 엔트로피 풀에서 시드되기 때문에 결정론적 소프트웨어 알고리즘을 사용한다. 또한 PRNG의 보안 기능을 강화하기 위해 암호화 및 해싱, 테스트 기능을 수행하는데 이는 장치의 메모리와 리소스를 소모한다. 부팅 초기에 활성화되어야 하는 기술의 특성상 CSPRNG는 진정한 의미의 난수를 생성하기 어렵다고 볼 수 있고, 진정한 난수를 생성하기 어렵다면 본 정보를 암호화 키로 사용하는 것은 보안에 취약할 수 있다.Meanwhile, in the prior art, two device drivers, /dev/urandom and /dev/random of the CSPRNG (cryptographically secure pseudorandom number generator) series, are used to generate an encryption key. The above two device drivers typically have the following characteristics. CSPRNG is also a pseudorandom number generator (PRNG), so it uses a deterministic software algorithm because it is seeded from an entropy pool that combines randomness from different sources. Additionally, to strengthen the security function of the PRNG, encryption, hashing, and testing functions are performed, which consumes the device's memory and resources. Due to the nature of the technology that must be activated at the beginning of booting, CSPRNG can be considered difficult to generate truly random numbers, and if it is difficult to generate truly random numbers, using this information as an encryption key may be vulnerable to security.

본 발명이 해결하고자 하는 과제는, 물리적/논리적 덤프로부터 암호화 키 등 민감 정보가 노출될 수 있는 가능성을 없애고, 암호화 키 등 민감 정보의 저장 및 관리의 안전성이 보장되며, 보다 향상된 보안 절차를 제공할 수 있는, 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법을 제공하는 데 있다.The problem that the present invention aims to solve is to eliminate the possibility that sensitive information such as encryption keys may be exposed from physical/logical dumps, ensure the safety of storage and management of sensitive information such as encryption keys, and provide improved security procedures. The goal is to provide an encryption key generation and management method for full disk encryption.

또한 본 발명이 해결하고자 하는 과제는, 키 신뢰성을 강화하고 보안성을 강화할 수 있는, 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법을 제공하는 데 있다.Additionally, the problem to be solved by the present invention is to provide an encryption key generation and management method for full disk encryption that can enhance key reliability and enhance security.

본 발명의 해결하고자 하는 과제는 이상에서 언급한 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the description below.

상기 기술적 과제를 해결하기 위한 본 발명에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법은, REE(Rich Execution Environment) 영역에 구비되는 암호화 응용프로그램이 TEE(Trusted Execution Environment) 영역에 구비되는 신뢰할 수 있는 응용프로그램에게 암호화 키를 요청하는 단계; 상기 신뢰할 수 있는 응용프로그램이 시큐어 스토리지에 저장된, TRNG(true random number generator) 모듈에 의해 생성된 암호화 키 및 상기 암호화 키에 대한 전자서명을 로드하는 단계; 상기 신뢰할 수 있는 응용프로그램이 RSA 공개키로 상기 전자서명을 검증하는 단계; 및 상기 전자서명 검증 결과 검증에 성공하면, 상기 신뢰할 수 있는 응용프로그램이 상기 암호화 키를 상기 암호화 응용프로그램에게 전달하는 단계를 포함하는 것을 특징으로 한다.The method of generating and managing an encryption key for full disk encryption according to the present invention to solve the above technical problem is to enable an encryption application provided in the REE (Rich Execution Environment) area to use a trusted execution environment (TEE) area. requesting an encryption key from an application program; Loading, by the trusted application program, an encryption key generated by a true random number generator (TRNG) module and an electronic signature for the encryption key stored in secure storage; the trusted application program verifying the digital signature with an RSA public key; And if the digital signature verification result is successful, the trusted application program transmits the encryption key to the encryption application program.

상기 암호화 키 생성 및 관리 방법은, 상기 시큐어 스토리지에 상기 전자서명, RSA 키 페어, 상기 암호화 키가 존재하지 않는 경우, 상기 신뢰할 수 있는 응용프로그램이 상기 TEE 영역에 구비되는 TRNG 모듈을 이용하여 암호화 키를 생성하여 상기 시큐어 스토리지에 저장하는 단계; 상기 신뢰할 수 있는 응용프로그램이 RSA 공개키 및 RSA 개인키로 구성되는 RSA 키 페어를 생성하여 상기 시큐어 스토리지에 저장하는 단계; 및 상기 신뢰할 수 있는 응용프로그램이 상기 암호화 키를 상기 RSA 개인키로 서명하여 전자서명을 생성하고 상기 전자서명을 상기 시큐어 스토리지에 저장하는 단계를 더 포함할 수 있다.The encryption key generation and management method is such that, when the electronic signature, RSA key pair, and encryption key do not exist in the secure storage, the trusted application generates the encryption key using a TRNG module provided in the TEE area. generating and storing in the secure storage; The trusted application generating an RSA key pair consisting of an RSA public key and an RSA private key and storing the RSA key pair in the secure storage; and the step of the trusted application program signing the encryption key with the RSA private key to generate an electronic signature and storing the electronic signature in the secure storage.

상기 암호화 키 생성 및 관리 방법은, 상기 전자서명 검증 결과 검증에 실패하면, 상기 신뢰할 수 있는 응용프로그램이 상기 시큐어 스토리지에 저장된 상기 암호화 키 및 상기 전자서명을 삭제하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of deleting the encryption key and the electronic signature stored in the secure storage by the trusted application program when verification of the digital signature verification result fails.

상기 암호화 키 생성 및 관리 방법은, 상기 암호화 응용프로그램이 상기 신뢰할 수 있는 응용프로그램을 시작하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of the encryption application starting the trusted application.

상기 암호화 키 생성 및 관리 방법은, 상기 암호화 응용프로그램이 상기 신뢰할 수 있는 응용프로그램을 종료하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of the encryption application program terminating the trusted application program.

상기 암호화 키 생성 및 관리 방법은, 상기 암호화 응용프로그램이 dm-crypt 모듈에게 상기 복호화된 암호화 키를 전달하여 암호화 블록 생성을 요청하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of the encryption application transmitting the decrypted encryption key to the dm-crypt module to request creation of an encryption block.

상기 암호화 키 생성 및 관리 방법은, 상기 dm-crypt 모듈이 상기 복호화된 암호화 키를 이용하여 암호화 블록을 생성하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of the dm-crypt module generating an encryption block using the decrypted encryption key.

상기 암호화 키 생성 및 관리 방법은, 상기 암호화 응용프로그램이 파일 시스템을 구성하고 상기 암호화 블록을 상기 파일 시스템에 마운트하는 단계를 더 포함할 수 있다.The encryption key generation and management method may further include the step of the encryption application configuring a file system and mounting the encryption block on the file system.

본 발명에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법에 의하면, 물리적/논리적 덤프로부터 암호화 키 등 민감 정보가 노출될 수 있는 가능성을 없애고, 암호화 키 등 민감 정보의 저장 및 관리의 안전성이 보장되며, 보다 향상된 보안 절차를 제공할 수 있다.According to the method of generating and managing encryption keys for full disk encryption according to the present invention, the possibility of sensitive information such as encryption keys being exposed from physical/logical dumps is eliminated, and the safety of storage and management of sensitive information such as encryption keys is guaranteed. and can provide more improved security procedures.

또한 본 발명에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법에 의하면, 진정한 난수의 생성을 통해 키 신뢰성을 강화하고 RSA 기반 전자서명 검증을 통해 보안성을 강화할 수 있다. In addition, according to the method of generating and managing an encryption key for full disk encryption according to the present invention, key reliability can be strengthened through the generation of truly random numbers and security can be strengthened through RSA-based electronic signature verification.

본 발명의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 구조를 나타낸다.
도 2는 본 발명의 일 실시예에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법의 개념도를 나타낸다.
도 3은 본 발명의 일 실시예에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법의 흐름도를 나타낸다.
Figure 1 shows the structure of a computing device according to an embodiment of the present invention.
Figure 2 shows a conceptual diagram of an encryption key generation and management method for full disk encryption according to an embodiment of the present invention.
Figure 3 shows a flowchart of an encryption key generation and management method for full disk encryption according to an embodiment of the present invention.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이하 설명 및 첨부된 도면들에서 실질적으로 동일한 구성요소들은 각각 동일한 부호들로 나타냄으로써 중복 설명을 생략하기로 한다. 또한 본 발명을 설명함에 있어 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그에 대한 상세한 설명은 생략하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. In the following description and the accompanying drawings, substantially the same components are denoted by the same symbols to avoid redundant description. Additionally, when describing the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 일 실시예에 따른 컴퓨팅 장치의 구조를 나타낸다.Figure 1 shows the structure of a computing device according to an embodiment of the present invention.

컴퓨팅 장치(10)는 사용자의 데이터를 암호화하고 디스크 탈취로 인한 복호화가 불가능하도록 전체 디스크 암호화(Full Disk Encryption, FDE) 기능을 적용한 장치이다. 컴퓨팅 장치(10)는 예컨대 스마트폰, 태블릿 등과 같은 모바일 장치, 개인용 컴퓨터, 디지털 카메라, 네비게이션 장치, 차량의 제어기 등이 될 수 있다.The computing device 10 is a device that applies the Full Disk Encryption (FDE) function to encrypt the user's data and prevent decryption due to disk theft. Computing device 10 may be, for example, a mobile device such as a smartphone, tablet, etc., a personal computer, a digital camera, a navigation device, a vehicle controller, etc.

컴퓨팅 장치(10)는 REE(Rich Execution Environment) 영역(100)과 TEE(Trusted Execution Environment) 영역(200)으로 나누어진다. REE(100) 영역은 비-보안 실행 환경으로서, 임베디드 시스템을 위한 일반적인 OS를 바탕으로 구성되어 별도의 보안을 필요로 하지 않는 응용프로그램들이 실행 가능한 환경을 말한다. TEE 영역(200)은 보안 실행 환경으로서, Trusted OS를 바탕으로 구성되어 REE(100) 영역과 분리된 신뢰할 수 있는 실행 환경을 말한다.The computing device 10 is divided into a Rich Execution Environment (REE) area 100 and a Trusted Execution Environment (TEE) area 200. The REE (100) area is a non-secure execution environment, which refers to an environment in which application programs that do not require separate security can run based on a general OS for embedded systems. The TEE area (200) is a secure execution environment that is configured based on Trusted OS and is a trusted execution environment that is separated from the REE (100) area.

REE 영역(100)의 메모리(110)에는 암호화 응용프로그램(111), 응용 라이브러리(112), 데몬(daemon)(113)이 구비된다. REE 영역(100)의 커널(120)에는 TEE 드라이버(121), REE OS(122)가 구비된다. 저장소(130)에는 TEE 영역(200)에서만 접근할 수 있는 시큐어 스토리지(131)가 구비된다.The memory 110 of the REE area 100 is provided with an encryption application program 111, an application library 112, and a daemon 113. The kernel 120 of the REE area 100 is provided with a TEE driver 121 and a REE OS 122. The storage 130 is provided with a secure storage 131 that can only be accessed from the TEE area 200.

TEE 영역(200)의 메모리(210)에는 신뢰할 수 있는 응용프로그램(211), 내부 라이브러리(212)가 구비된다. TEE 영역(200)의 커널(220)에는 TEE 코어(221), TEE OS(222), TEE 라이브러리(223), TEE crypto 모듈(224)이 구비된다.The memory 210 of the TEE area 200 is provided with a trusted application program 211 and an internal library 212. The kernel 220 of the TEE area 200 is equipped with a TEE core 221, a TEE OS 222, a TEE library 223, and a TEE crypto module 224.

암호화 응용프로그램(111)은 응용 라이브러리(112), 데몬(113), TEE 드라이버(121) 및 TEE OS(222)를 통해 신뢰할 수 있는 응용프로그램(211)과 통신하여 디스크 암호화 활성화를 위한 전반적인 동작들을 제어한다. 디스크 암호화 활성화를 위해 필요한 암호화 키 등의 민감 정보들은 TEE 영역(200)에서만 접근할 수 있는 시큐어 스토리지(131)에 별도로 저장 및 관리된다. 본 발명의 실시예에 의하면 종래 기술의 footer 영역과 같은 민감 정보를 저장하는 영역이 필요 없고, 종래 기술보다 향상된 보안 절차를 제공하며, 물리적/논리적 덤프로부터 민감 정보를 노출하지 않는다.The encryption application 111 communicates with the trusted application 211 through the application library 112, daemon 113, TEE driver 121, and TEE OS 222 to perform overall operations for activating disk encryption. Control. Sensitive information such as encryption keys required to activate disk encryption are separately stored and managed in the secure storage 131, which can only be accessed from the TEE area 200. According to an embodiment of the present invention, there is no need for an area to store sensitive information such as the footer area of the prior art, it provides improved security procedures than the prior art, and does not expose sensitive information from physical/logical dumps.

암호화 응용프로그램(111)은 암호화 키로서 TRNG(true random number generator) 모듈을 이용하여 진정한 난수를 생성한다. 생성된 암호화 키는 시큐어 스토리지(131)에 저장된다. 또한 암호화 응용프로그램(111)은 TEE crypto 모듈(224)을 통해 RSA 공개키 및 RSA 개인키로 구성되는 RSA 키 페어를 생성하고, RSA 키 페어를 이용하여 암호화 키에 대한 전자서명 생성 및 검증을 수행한다. RSA 키 페어와 전자서명 역시 시큐어 스토리지(131)에 저장된다.The encryption application 111 generates a true random number using a TRNG (true random number generator) module as an encryption key. The generated encryption key is stored in the secure storage 131. In addition, the encryption application 111 generates an RSA key pair consisting of an RSA public key and an RSA private key through the TEE crypto module 224, and generates and verifies an electronic signature for the encryption key using the RSA key pair. . The RSA key pair and electronic signature are also stored in the secure storage (131).

도 2는 본 발명의 일 실시예에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법의 개념도를 나타낸다.Figure 2 shows a conceptual diagram of an encryption key generation and management method for full disk encryption according to an embodiment of the present invention.

암호화 응용프로그램(111), 응용 라이브러리(112), 데몬(113) 및 dm-crypt 모듈(114) 등은 REE 영역(100)에서 동작한다. 신뢰할 수 있는 응용프로그램(211), TRNG 모듈(213), TEE crypto 모듈(224) 등은 TEE 영역(200)에서 동작한다.The encryption application 111, application library 112, daemon 113, and dm-crypt module 114 operate in the REE area 100. Trusted applications (211), TRNG modules (213), TEE crypto modules (224), etc. operate in the TEE area (200).

암호화 응용프로그램(111)은 응용 라이브러리(112) 및 데몬(113)을 통해 신뢰할 수 있는 응용프로그램(211)과 연동하여 디스크 암호화 활성화를 위한 전반적인 동작들을 제어한다. 신뢰할 수 있는 응용프로그램(211)은 암호화 응용프로그램(111)의 요청에 응답하여 TRNG 모듈(213)을 통한 암호화 키 생성, 암호화 키의 시큐어 스토리지(131)에의 저장, 시큐어 스토리지(131)로부터의 암호화 키의 로드, TEE crypto 모듈(224)을 통한 RSA 키 페어의 생성, RSA 키 페어에 의한 전자서명 생성 및 검증 등의 동작을 TEE 영역(200)에서 수행한다. The encryption application 111 controls overall operations for activating disk encryption in conjunction with the trusted application 211 through the application library 112 and daemon 113. The trusted application 211 generates an encryption key through the TRNG module 213 in response to a request from the encryption application 111, stores the encryption key in the secure storage 131, and performs encryption from the secure storage 131. Operations such as loading the key, generating an RSA key pair through the TEE crypto module 224, and generating and verifying a digital signature using the RSA key pair are performed in the TEE area 200.

암호화 키 등 디스크 암호화에 필요한 정보들은 시큐어 스토리지(131)에 저장된다. 시큐어 스토리지(131)는 TEE 영역(200)을 통해서만 접근 가능하며, footer 영역과 같은 RAW 파티션에 암호화 키 등의 민감 정보가 기록되지 않기 때문에 물리적/논리적 덤프로부터 민감 정보가 노출되는 것을 방지할 수 있다. 암호화 키는 TRNG 모듈(213)을 통해 진정한 난수로 생성되므로 신뢰성 있는 암호화 키의 생성이 가능하다. 시큐어 스토리지(131)에 저장된 암호화 키는 신뢰할 수 있는 응용프로그램(211)과 암호화 응용프로그램(111)을 통해 dm-crypt 모듈(114)에 제공되어 dm-crypt 기반의 디스크 암호화 활성화에 사용된다.Information required for disk encryption, such as encryption keys, is stored in the secure storage 131. The secure storage 131 is accessible only through the TEE area 200, and since sensitive information such as encryption keys are not recorded in RAW partitions such as the footer area, exposure of sensitive information from physical/logical dumps can be prevented. . Since the encryption key is generated as a truly random number through the TRNG module 213, it is possible to generate a reliable encryption key. The encryption key stored in the secure storage 131 is provided to the dm-crypt module 114 through the trusted application 211 and the encryption application 111 and is used to activate dm-crypt-based disk encryption.

도 3은 본 발명의 일 실시예에 따른 전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법의 흐름도를 나타낸다.Figure 3 shows a flowchart of an encryption key generation and management method for full disk encryption according to an embodiment of the present invention.

도 3을 참조하면, 암호화 응용프로그램(111)의 동작들은 REE 영역(100)에서 수행되고, 신뢰할 수 있는 응용프로그램(211)의 동작들은 TEE 영역(200)에서 수행된다.Referring to FIG. 3, the operations of the encryption application 111 are performed in the REE area 100, and the operations of the trusted application 211 are performed in the TEE area 200.

310단계에서, 암호화 응용프로그램(111)은 신뢰할 수 있는 응용프로그램(211)을 시작한다.In step 310, the encryption application 111 starts the trusted application 211.

311단계에서, 암호화 응용프로그램(111)은 신뢰할 수 있는 응용프로그램(211)에게 암호화 키를 요청한다.In step 311, the encryption application 111 requests an encryption key from the trusted application 211.

321단계에서, 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)를 오픈한다.In step 321, the trusted application 211 opens the secure storage 131.

322단계에서, 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)에 전자서명, RSA 키 페어, 암호화 키가 존재하는지 확인한다.In step 322, the trusted application 211 checks whether a digital signature, RSA key pair, and encryption key exist in the secure storage 131.

시큐어 스토리지(131)에 전자서명, RSA 키 페어, 암호화 키가 존재하는 경우, 327단계에서, 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)에 저장된 전자서명, RSA 공개키, 암호화 키를 로드한다. 이때 전자서명, RSA 공개키, 암호화 키가 암호화되어 있는 경우, 신뢰할 수 있는 응용프로그램(211)은 이들을 복호화할 수 있다.If a digital signature, RSA key pair, and encryption key exist in the secure storage 131, in step 327, the trusted application 211 uses the digital signature, RSA public key, and encryption key stored in the secure storage 131. Load it. At this time, if the digital signature, RSA public key, and encryption key are encrypted, the trusted application program 211 can decrypt them.

시큐어 스토리지(131)에 전자서명, RSA 키 페어, 암호화 키가 존재하지 않는 경우, 323단계에서, 신뢰할 수 있는 응용프로그램(211)은 TEE 영역(200)에 구비되는 TRNG 모듈(213)을 이용하여 암호화 키를 생성하고 이를 시큐어 스토리지(131)에 저장한다. 이때 신뢰할 수 있는 응용프로그램(211)은 암호화 키를 TEE 영역(200)에서 제공하는 암호화 기법(예컨대 AES 기반 암호화)을 이용하여 암호화할 수 있다.If the digital signature, RSA key pair, and encryption key do not exist in the secure storage 131, in step 323, the trusted application 211 uses the TRNG module 213 provided in the TEE area 200. An encryption key is generated and stored in the secure storage (131). At this time, the trusted application 211 can encrypt the encryption key using an encryption technique (eg, AES-based encryption) provided by the TEE area 200.

324단계에서, 신뢰할 수 있는 응용프로그램(211)은 TEE 영역(200)에 구비되는 TEE crypto 모듈(224)을 이용하여 RSA 키 페어(RSA 공개키, RSA 개인키)를 생성하고 이를 시큐어 스토리지(131)에 저장한다. 이때 신뢰할 수 있는 응용프로그램(211)은 RSA 키 페어를 TEE 영역(200)에서 제공하는 암호화 기법(예컨대 AES 기반 암호화)을 이용하여 암호화할 수 있다.In step 324, the trusted application 211 generates an RSA key pair (RSA public key, RSA private key) using the TEE crypto module 224 provided in the TEE area 200 and stores it in secure storage 131. ) to save it. At this time, the trusted application 211 can encrypt the RSA key pair using an encryption technique (eg, AES-based encryption) provided by the TEE area 200.

325단계에서, 신뢰할 수 있는 응용프로그램(211)은 TEE crypto 모듈(224)을 이용하여 암호화 키를 RSA 개인키로 서명하여 전자서명을 생성한다.In step 325, the trusted application 211 uses the TEE crypto module 224 to sign the encryption key with the RSA private key to create an electronic signature.

326단계에서, 신뢰할 수 있는 응용프로그램(211)은 전자서명을 시큐어 스토리지(131)에 저장한다. 이때 신뢰할 수 있는 응용프로그램(211)은 전자서명을 TEE 영역(200)에서 제공하는 암호화 기법(예컨대 AES 기반 암호화)을 이용하여 암호화할 수 있다.In step 326, the trusted application 211 stores the electronic signature in the secure storage 131. At this time, the trusted application 211 can encrypt the electronic signature using an encryption technique (eg, AES-based encryption) provided by the TEE area 200.

327단계에서, 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)에 저장된 전자서명, RSA 공개키, 암호화 키를 로드한다. 이때 전자서명, RSA 공개키, 암호화 키가 암호화되어 있는 경우, 신뢰할 수 있는 응용프로그램(211)은 이들을 복호화할 수 있다.In step 327, the trusted application 211 loads the digital signature, RSA public key, and encryption key stored in the secure storage 131. At this time, if the digital signature, RSA public key, and encryption key are encrypted, the trusted application program 211 can decrypt them.

328단계에서, 신뢰할 수 있는 응용프로그램(211)은 RSA 공개키로 전자서명을 검증한다.In step 328, the trusted application 211 verifies the electronic signature with the RSA public key.

전자서명 검증 결과 검증에 성공하면(329단계), 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)에 저장된 암호화 키를 신뢰할 수 있는 암호화 키로 판단하여, 시큐어 스토리지(131)를 종료하고(330단계), 암호화 키를 암호화 응용프로그램(111)에게 전달한다(331단계).If the electronic signature verification result is successful (step 329), the trusted application 211 determines that the encryption key stored in the secure storage 131 is a trustworthy encryption key, terminates the secure storage 131 (330), and step), the encryption key is delivered to the encryption application 111 (step 331).

전자서명 검증 결과 검증에 실패하면(329단계), 신뢰할 수 있는 응용프로그램(211)은 시큐어 스토리지(131)에 저장된 암호화 키를 신뢰할 수 없는(혹은 위, 변조된) 암호화 키로 판단하여, 시큐어 스토리지(131)에서 RSA 키 페어 및 전자서명을 삭제하고(332단계), 암호화 키를 삭제한다(333단계). 그리고 다시 322단계로 복귀하여, 시큐어 스토리지(131)에 전자서명, RSA 키 페어, 암호화 키가 존재하지 않으므로, 323단계 내지 326단계가 수행된다.If the electronic signature verification result fails (step 329), the trusted application 211 determines that the encryption key stored in the secure storage 131 is an untrusted (or forged, altered) encryption key, and secures the secure storage ( In step 131), the RSA key pair and digital signature are deleted (step 332), and the encryption key is deleted (step 333). Then, returning to step 322, since there is no digital signature, RSA key pair, or encryption key in the secure storage 131, steps 323 to 326 are performed.

331단계를 통해 암호화 키가 암호화 응용프로그램(111)에게 전달되면, 312단계에서, 암호화 응용프로그램(111)은 dm-crypt 모듈(114)에게 암호화 키를 전달하여 암호화 블록 생성을 요청한다.When the encryption key is delivered to the encryption application 111 in step 331, the encryption application 111 transmits the encryption key to the dm-crypt module 114 and requests creation of an encryption block in step 312.

313단계에서, 암호화 응용프로그램(111)은 신뢰할 수 있는 응용프로그램(211)을 종료한다.In step 313, the encryption application 111 terminates the trusted application 211.

314단계에서, dm-crypt 모듈(114)은 암호화 키를 이용하여 RAW 파티션에 대한 암호화 블록을 생성한다.In step 314, the dm-crypt module 114 creates an encryption block for the RAW partition using an encryption key.

315단계에서, 암호화 응용프로그램(111)은 파일시스템을 구성한다.In step 315, the encryption application 111 configures a file system.

316단계에서, 암호화 응용프로그램(111)은 암호화 블록을 파일시스템에 마운트한다.In step 316, the encryption application 111 mounts the encryption block to the file system.

종래 기술은 RAW 파티션의 일부에 footer 영역을 할당하여 민감 정보를 저장하므로 물리적/논리적 덤프로 민감 정보가 노출되는 문제가 있으나, 본 발명에 따르면 footer 영역 없이 시큐어 스토리지에 암호화 키 등의 민감 정보를 저장하므로 별도의 footer 영역 할당이 필요 없고 물리적/논리적 덤프로부터 민감 정보가 노출될 수 있는 가능성을 없앨 수 있다. 또한, 암호화 키 등의 민감 정보를 TEE 영역(200)에서만 접근 가능한 시큐어 스토리지에 저장함으로써 데이터 저장 및 관리의 안전성이 보장된다. 또한, TEE 영역(200)에서 신뢰할 수 있는 응용프로그램(211)에 의해 암호화 키를 암호화 및 복호화함으로써 보다 향상된 보안 절차를 제공할 수 있다. 또한, TRNG 모듈(213)을 통해 진정한 난수를 생성하여 암호화 키로 사용함으로써 암호화 키의 신뢰성이 강화되고, RSA 키 페어를 이용하여 암호화 키에 대한 전자서명을 생성하고 검증함으로써 암호화 키의 위, 변조를 방지할 수 있는 등 보안성이 강화된다. In the prior art, sensitive information is stored by allocating a footer area to part of the RAW partition, so there is a problem of sensitive information being exposed through physical/logical dumps. However, according to the present invention, sensitive information such as encryption keys are stored in secure storage without a footer area. Therefore, there is no need to allocate a separate footer area and the possibility of sensitive information being exposed from physical/logical dumps can be eliminated. In addition, the safety of data storage and management is guaranteed by storing sensitive information such as encryption keys in secure storage that is accessible only from the TEE area 200. Additionally, an improved security procedure can be provided by encrypting and decrypting the encryption key in the TEE area 200 by the trusted application program 211. In addition, the reliability of the encryption key is strengthened by generating a truly random number through the TRNG module 213 and using it as an encryption key, and using an RSA key pair to generate and verify an electronic signature for the encryption key to prevent forgery or tampering with the encryption key. Security is strengthened and prevention is possible.

본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Combinations of each block of the block diagram and each step of the flow diagram attached to the present invention may be performed by computer program instructions. Since these computer program instructions can be mounted on the processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, the instructions performed through the processor of the computer or other programmable data processing equipment are shown in each block of the block diagram or flow diagram. Each step creates the means to perform the functions described. These computer program instructions may also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular manner, so that the computer-usable or computer-readable memory The instructions stored in can also produce manufactured items containing instruction means that perform the functions described in each block of the block diagram or each step of the flow diagram. Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operational steps are performed on the computer or other programmable data processing equipment to create a process that is executed by the computer, thereby generating a process that is executed by the computer or other programmable data processing equipment. Instructions that perform processing equipment may also provide steps for executing functions described in each block of the block diagram and each step of the flow diagram.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Additionally, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). Additionally, it should be noted that in some alternative embodiments it is possible for the functions mentioned in the blocks or steps to occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially simultaneously, or the blocks or steps may sometimes be performed in reverse order depending on the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present invention, and various modifications and variations will be possible to those skilled in the art without departing from the essential characteristics of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but are for illustrative purposes, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention shall be interpreted in accordance with the claims below, and all technical ideas within the equivalent scope shall be construed as being included in the scope of rights of the present invention.

Claims (8)

전체 디스크 암호화를 위한 암호화 키 생성 및 관리 방법에 있어서,
REE(Rich Execution Environment) 영역에 구비되는 암호화 응용프로그램이 TEE(Trusted Execution Environment) 영역에 구비되는 신뢰할 수 있는 응용프로그램에게 암호화 키를 요청하는 단계;
상기 신뢰할 수 있는 응용프로그램이 시큐어 스토리지에 저장된, TRNG(true random number generator) 모듈에 의해 생성된 암호화 키 및 상기 암호화 키에 대한 전자서명을 로드하는 단계;
상기 신뢰할 수 있는 응용프로그램이 RSA 공개키로 상기 전자서명을 검증하는 단계; 및
상기 전자서명 검증 결과 검증에 성공하면, 상기 신뢰할 수 있는 응용프로그램이 상기 암호화 키를 상기 암호화 응용프로그램에게 전달하는 단계를 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
In a method of generating and managing an encryption key for full disk encryption,
A step where an encryption application provided in a REE (Rich Execution Environment) area requests an encryption key from a trusted application provided in a TEE (Trusted Execution Environment) area;
Loading, by the trusted application program, an encryption key generated by a true random number generator (TRNG) module and an electronic signature for the encryption key stored in secure storage;
the trusted application program verifying the digital signature with an RSA public key; and
If the electronic signature verification result is successful, the trusted application program transmits the encryption key to the encryption application program.
제1항에 있어서,
상기 시큐어 스토리지에 상기 전자서명, RSA 키 페어, 상기 암호화 키가 존재하지 않는 경우, 상기 신뢰할 수 있는 응용프로그램이 상기 TEE 영역에 구비되는 TRNG 모듈을 이용하여 암호화 키를 생성하여 상기 시큐어 스토리지에 저장하는 단계;
상기 신뢰할 수 있는 응용프로그램이 RSA 공개키 및 RSA 개인키로 구성되는 RSA 키 페어를 생성하여 상기 시큐어 스토리지에 저장하는 단계; 및
상기 신뢰할 수 있는 응용프로그램이 상기 암호화 키를 상기 RSA 개인키로 서명하여 전자서명을 생성하고 상기 전자서명을 상기 시큐어 스토리지에 저장하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to paragraph 1,
If the electronic signature, RSA key pair, and encryption key do not exist in the secure storage, the trusted application generates an encryption key using the TRNG module provided in the TEE area and stores it in the secure storage. step;
The trusted application generating an RSA key pair consisting of an RSA public key and an RSA private key and storing the RSA key pair in the secure storage; and
An encryption key generation and management method further comprising the step of the trusted application program signing the encryption key with the RSA private key to generate an electronic signature and storing the electronic signature in the secure storage.
제1항에 있어서,
상기 전자서명 검증 결과 검증에 실패하면, 상기 신뢰할 수 있는 응용프로그램이 상기 시큐어 스토리지에 저장된 상기 암호화 키 및 상기 전자서명을 삭제하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to paragraph 1,
If the electronic signature verification result fails, the trusted application program deletes the encryption key and the electronic signature stored in the secure storage.
제1항에 있어서,
상기 암호화 응용프로그램이 상기 신뢰할 수 있는 응용프로그램을 시작하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to paragraph 1,
A method for generating and managing encryption keys, further comprising the step of having the encryption application program start the trusted application program.
제1항에 있어서,
상기 암호화 응용프로그램이 상기 신뢰할 수 있는 응용프로그램을 종료하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to paragraph 1,
A method of generating and managing an encryption key, further comprising the step of the encryption application terminating the trusted application.
제1항에 있어서,
상기 암호화 응용프로그램이 dm-crypt 모듈에게 상기 복호화된 암호화 키를 전달하여 암호화 블록 생성을 요청하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to paragraph 1,
An encryption key generation and management method further comprising requesting the encryption application to generate an encryption block by transmitting the decrypted encryption key to the dm-crypt module.
제6항에 있어서,
상기 dm-crypt 모듈이 상기 복호화된 암호화 키를 이용하여 암호화 블록을 생성하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
According to clause 6,
An encryption key generation and management method further comprising the step of the dm-crypt module generating an encryption block using the decrypted encryption key.
제7항에 있어서,
상기 암호화 응용프로그램이 파일 시스템을 구성하고 상기 암호화 블록을 상기 파일 시스템에 마운트하는 단계를 더 포함하는 것을 특징으로 하는 암호화 키 생성 및 관리 방법.
In clause 7,
An encryption key generation and management method further comprising the step of the encryption application configuring a file system and mounting the encryption block on the file system.
KR1020220179818A 2022-12-20 Method for encryption key generation and management for full disk encryption KR20240097596A (en)

Publications (1)

Publication Number Publication Date
KR20240097596A true KR20240097596A (en) 2024-06-27

Family

ID=

Similar Documents

Publication Publication Date Title
US9842212B2 (en) System and method for a renewable secure boot
ES2692900T3 (en) Cryptographic certification of secure hosted execution environments
US20200153808A1 (en) Method and System for an Efficient Shared-Derived Secret Provisioning Mechanism
KR101735023B1 (en) Method and apparatus including architecture for protecting sensitive code and data
US8281115B2 (en) Security method using self-generated encryption key, and security apparatus using the same
WO2019104988A1 (en) Plc security processing unit and bus arbitration method thereof
US9268971B2 (en) Secure processor supporting multiple security functions
EP2711859B1 (en) Secured computing system with asynchronous authentication
CN103038746A (en) Method and apparatus for trusted execution in infrastructure as a service cloud environments
EP3794477B1 (en) Method and system for validating kernel objects to be executed by a data processing accelerator of a host system
EP3776223B1 (en) Secured computer system
CN107534551B (en) Method, computing device and computer readable medium for providing encrypted data
JP7256862B2 (en) Secure communication method and system between protected containers
US11501005B2 (en) Security system for using shared computational facilities
CN104618096A (en) Method and device for protecting secret key authorized data, and TPM (trusted platform module) secrete key management center
Hong et al. Fasten: An fpga-based secure system for big data processing
JP2010517449A (en) Secret protection for untrusted recipients
US10291402B2 (en) Method for cryptographically processing data
US10192047B2 (en) Provisioning of identity information
JP2023542099A (en) Wireless terminal and interface access authentication method in Uboot mode of wireless terminal
Khashan et al. ImgFS: a transparent cryptography for stored images using a filesystem in userspace
CN115994389A (en) Hardware memory encryption system based on RISC-V architecture and application thereof
KR20240097596A (en) Method for encryption key generation and management for full disk encryption
US9177160B1 (en) Key management in full disk and file-level encryption
KR20240097595A (en) Method for encryption key management for full disk encryption