Method, device, and program for creating a secure computing execution environment

By digitally signing applications and runtimes within an encrypted file system and using an audit trail storage, the secure computing environment's integrity is maintained, addressing the challenge of verifying non-tampering among different responsibility entities.

JP7754193B2Active Publication Date: 2025-10-15NEC CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2023561959
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-11-16
Publication Date
2025-10-15
Estimated Expiration
2041-11-16

AI Technical Summary

Technical Problem

In secure computing environments, where the provider of secret data, the data platform provider, and the user of the data are different entities, there is a lack of a mechanism to verify that the original application and runtime have not been tampered with, which can include malicious rewriting or specification deviations, posing vulnerabilities.

Method used

A method involving attaching digital signatures to applications and runtimes within an encrypted file system, recording these signatures in an audit trail storage, and using a tamper detection system to ensure the integrity of the secure computing environment.

Benefits of technology

Ensures proof of non-tampering among responsibility sharing parties, enhancing the security and integrity of the secure computing environment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007754193000001
    Figure 0007754193000001
  • Figure 0007754193000002
    Figure 0007754193000002
  • Figure 0007754193000003
    Figure 0007754193000003
Patent Text Reader

Abstract

Provided is a method for generating a secret calculation execution environment from an application and a runtime that have different responsibilities. In the method, a second application electronic signature and a second runtime electronic signature are assigned, respectively, to the application and the runtime in an encrypted file system of the secret calculation execution environment, the second application electronic signature and the second runtime electronic signature are recorded in a trail storage, an execution environment electronic signature is assigned to the secret calculation execution environment, and the execution environment electronic signature is recorded in the trail storage.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a method, an apparatus, and a program for creating a secure computing execution environment. [Background technology]

[0002] There are three main types of secure computation technologies that allow computational processing of encrypted data. One is secret sharing, which divides the data to be kept secret according to a set of rules, and multiple participants share and hold portions of the divided data. The other is homomorphic encryption, which uses an encryption method called homomorphic encryption, which allows the ciphertext to be obtained by performing operations on plaintext without decrypting the ciphertext.

[0003] The other is a method called TEE (Trusted Execution Environment) (see, for example, Patent Document 1). In this TEE, an area protected by cryptographic technology called an "enclave" is constructed in the device's memory, and confidential information is calculated within it. Such hardware is provided, for example, as SGX (Software Guard Extensions) in Intel's processor architecture, as Trust Zone in ARM (Advanced RISC Machines) processor architecture, and as SEV (Secure Encrypted Virtualization) in AMD (Advanced Micro Devices) processor architecture. In this specification, when the term "secure computation" is used without any special explanation, it refers to the secure computation method called TEE. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] International Publication No. 2021 / 014539 Summary of the Invention [Problem to be solved by the invention]

[0005] The disclosures of the above-mentioned prior art documents are incorporated herein by reference. The following analysis has been carried out by the present inventors.

[0006] By the way, when secure computing is used for a data platform, unlike regular secure computing, 1. the provider of the secret data, 2. the provider of the data platform, and 3. the user of the data are all different companies. In other words, to operate a data platform business, these three parties must mutually prove that they are using the data while protecting confidentiality.

[0007] However, since the original application and runtime are stored in the secure computation environment in an encrypted state that cannot be decrypted by a third party, a third party cannot verify later that the original application and runtime have not been tampered with. Note that tampering here includes not only malicious rewriting but also so-called bugs that do not operate according to specifications. These characteristics of the secure computation environment can be vulnerabilities for secure computation.

[0008] Therefore, when creating a secure computing execution environment for conducting a data platform business, a mechanism was required to transfer proof that each element within the secure computing execution environment had not been tampered with among those responsible for the business.

[0009] In view of the above-mentioned problems, the object of the present invention is to provide a method, device, and program for creating a secure computing execution environment that contributes to the inheritance of proof that each element in the secure computing execution environment has not been tampered with, among responsibility sharing parties. [Means for solving the problem]

[0010] In a first aspect of the present invention, there is provided a method for creating a secure computing execution environment from an application and a runtime having different responsibility divisions, the method comprising attaching a second application digital signature and a second runtime digital signature to each of the application and the runtime in an encrypted file system of the secure computing execution environment, recording the second application digital signature and the second runtime digital signature in an audit trail storage, attaching an execution environment digital signature to the secure computing execution environment, and recording the execution environment digital signature in the audit trail storage.

[0011] In a second aspect of the present invention, there is provided an apparatus for creating a secure computing execution environment from an application and a runtime having different responsibility sharing, the apparatus comprising: an element digital signature unit that affixes a second application digital signature and a second runtime digital signature to each of the application and the runtime within an encrypted file system of the secure computing execution environment; a container digital signature unit that affixes an execution environment digital signature to the secure computing execution environment; and an audit trail storage that records the second application digital signature, the second runtime digital signature, and the execution environment digital signature.

[0012] In a third aspect of the present invention, there is provided a program for creating a secure computing execution environment from an application and a runtime having different responsibility allocations, the program causing a computer to execute the following: attaching a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment, recording the second application digital signature and the second runtime digital signature in an audit trail storage, attaching an execution environment digital signature to the secure computing execution environment, and recording the execution environment digital signature in the audit trail storage. Note that this program can be recorded on a computer-readable storage medium. The storage medium can be a non-transient medium such as a semiconductor memory, a hard disk, a magnetic recording medium, or an optical recording medium. The present invention can also be embodied as a computer program product. [Effects of the Invention]

[0013] According to each aspect of the present invention, it is possible to provide a method, device, and program for creating a secure computing execution environment that contributes to the inheritance of proof that each element in the secure computing execution environment has not been tampered with, etc., between responsibility sharing parties. [Brief explanation of the drawings]

[0014] [Figure 1] FIG. 1 is a diagram conceptually showing a method for creating a secure computation execution environment according to the first embodiment. [Figure 2] FIG. 2 is a diagram conceptually showing a method for creating a secure computation execution environment according to the second embodiment. [Figure 3] FIG. 3 is a diagram illustrating an example of the hardware configuration of a container image creation environment. [Figure 4] FIG. 4 is a diagram showing an outline of the process of transferring an application from a responsibility sharer to a responsibility sharer of a secure computing execution environment. [Figure 5]FIG. 5 is a diagram illustrating a process of transferring the runtime from the responsible party to the responsible party of the secure computing execution environment. [Figure 6] FIG. 6 is a diagram showing an outline of the process of transferring the secure computation library from the responsible party to the responsible party of the secure computation execution environment. [Figure 7] FIG. 7 is a diagram illustrating in detail a method for attaching a digital signature to an application in an encrypted file system. [Figure 8] FIG. 8 is a diagram illustrating in detail a method for attaching a digital signature to a runtime in an encrypted file system. [Figure 9] FIG. 9 is a diagram showing an outline of measures taken when the secure computation execution environment is executed. DETAILED DESCRIPTION OF THE INVENTION

[0015] Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the present invention is not limited to the embodiments described below. In addition, the same or corresponding elements in each drawing are appropriately designated by the same reference numerals. Furthermore, it should be noted that the drawings are schematic, and the dimensional relationships and ratios of each element may differ from those in reality. There may also be parts in which the dimensional relationships and ratios differ between the drawings.

[0016] [First embodiment] FIG. 1 is a diagram conceptually showing a method for creating a secure computation execution environment according to the first embodiment. As shown in FIG. 1, the method for creating a secure computation execution environment 100 according to the first embodiment is a method for creating a secure computation execution environment from an application 110 and a runtime 120 with different responsibility allocations. Here, the application 110 and the runtime 120 have different responsibility allocations, and in this embodiment, it is assumed that verification is performed for each of the application 110 and the runtime 120 in each responsibility allocation. The relationship between the responsibility allocations in the application 110 and the runtime 120 will be described in a later embodiment.

[0017] The secure computation execution environment 100 is created to include at least an application 110 and a runtime 120. Here, the application 110 and the runtime 120 are configured in an area protected by cryptographic technology. In other words, the application 110 and the runtime 120 are configured in an encrypted file system in the secure computation execution environment 100.

[0018] Incidentally, the secure computation execution environment 100 is instantiated when secure computation is performed and made available for use by third parties. However, even if the original application 110 and runtime 120 are each verified and digitally signed in their respective responsibility allocations, this is insufficient for a third party to later verify that the application 110 and runtime 120 have not been tampered with.

[0019] This is because it is impossible to eliminate the possibility that the application 110 and the runtime 120 have been tampered with during the creation stage of the secure computing execution environment 100. Since the application 110 and the runtime 120 are configured in areas protected by cryptographic technology, the information required for the digital signature (e.g., hash value) changes during encryption, invalidating the digital signatures originally affixed to the application 110 and the runtime 120 in their respective responsibilities.

[0020] Therefore, in the method for creating a secure computing execution environment according to the first embodiment, a digital signature is attached to each of the application 110 and the runtime 120 in the encrypted file system of the secure computing execution environment 100, and the digital signatures are recorded in the evidence storage 130. Then, a digital signature is attached to the secure computing execution environment 100, and the digital signature is recorded in the evidence storage 130. The evidence storage 130 is preferably a so-called write-once storage configured so that the recorded data cannot be rewritten.

[0021] In this way, in the method for creating a secure computing execution environment according to the first embodiment, proof that each element in the secure computing execution environment has not been tampered with can be passed on between responsibility sharing parties.

[0022] [Second embodiment] FIG. 2 is a diagram conceptually showing a method for creating a secure computation execution environment according to the second embodiment. The second embodiment is a form that is closer to actual use than the first embodiment. As shown in FIG. 2, the method for creating a secure computation execution environment according to the second embodiment is a method for creating a secure computation execution environment from an application 210 and a runtime 220 with different responsibility allocations, and is a method for creating a secure computation execution environment that further includes a secure computation library 240 with different responsibility allocations. Furthermore, the secure computation execution environment according to the second embodiment will be described using a container image 200 as a specific example.

[0023] The application 210 is a program for performing secure computation using a secure computation execution environment. The application 210 is created, for example, at the responsibility of a user who uses the secure computation execution environment. On the other hand, the runtime 220 is a library that the application 210 uses to perform secure computation using the secure computation execution environment. The runtime 220 is created, for example, at the responsibility of a business that provides the secure computation execution environment to users, but one created by an external business may also be used. The application 210 and the runtime 220 are elements that are kept confidential in the secure computation environment, and are encrypted and stored in the encrypted file system 250 within the container image 200.

[0024] The secure computation library 240 is a low-level library that allows the application 210 and the runtime 220 to use the secure computation environment, and is an OS (Operating System) or manager for running the secure computation environment. The secure computation environment is controlled by a special set of commands, and the secure computation library 240 is generally used to facilitate the creation of the application 210 and the runtime 220. The secure computation library 240 is stored in a general environment, not the encrypted file system 250, within the container image 200.

[0025] Fig. 3 is a diagram showing an example of the hardware configuration of a container image creation environment. As shown in Fig. 2, a container image 200, which is the substance of the secure computing execution environment, is created in a container image creation environment 260 and is digitally signed. The example of the hardware configuration shown in Fig. 3 shows a specific example of the container image creation environment 260 suitable for this purpose.

[0026] 3 is typically a computer (electronic calculator), but it is preferable that this itself be a secure computation execution environment. In other words, the hardware configuration 10 is a computer for creating a secure computation execution environment, and the computer for this purpose is configured to itself be another secure computation execution environment.

[0027] As shown in FIG. 3, the hardware configuration 10 includes a CPU (Central Processing Unit) 11, a RAM (Random Access Memory) 12, an auxiliary storage device 13, and an IF (Interface) unit 14, which are interconnected by an internal bus, for example.

[0028] The CPU 11 executes each command included in the program to be executed. The RAM 12 is, for example, a main storage device, and temporarily stores various programs to be executed by the CPU 11, data to be processed, and the like.

[0029] The RAM 12 includes an Enclave area 15 protected by cryptography to realize a secure computing environment. The Enclave area 15 can be created using cryptography in response to an instruction from the CPU 11, for example. Communication between the Enclave area 15 and the CPU 11 is also protected by cryptography, and the CPU 11 and the Enclave area 15 realize a secure computing environment.

[0030] The hardware configuration 10 also includes a TPM (Trusted Platform Module) 16. The TPM 16 comes in various forms, such as implemented as a dedicated chip or as firmware executed in a security area, and has functions such as encryption / decryption, key pair generation, hash value calculation, and digital signature generation / verification. By including the TPM 16, the hardware configuration 10 can perform tasks such as adding a digital signature in this embodiment within the secure computing execution environment.

[0031] The auxiliary storage device 13 is, for example, a hard disk drive (HDD), and is capable of storing programs executed by the CPU 11, data to be processed, and the like for a medium to long term. The auxiliary storage device 13 employs an encrypted file system to store programs executed in the secure computing execution environment and secret data. In addition, various programs can be provided as program products recorded on a non-transitory computer-readable storage medium.

[0032] The IF unit 14 provides an interface for input and output of the hardware configuration 10 .

[0033] A method for creating a secure computing execution environment using the container image creation environment 260 that employs the hardware configuration 10 described above will be described in detail below.

[0034] 4 to 6 are diagrams schematically illustrating the process of transferring an application, a runtime, and a secure computation library from each responsible party to a responsible party of the secure computation execution environment.

[0035] 4, application 210 is audited 211 by the person responsible for application 210, and digital signature 213 is affixed using private key 212 of the person responsible for application 210. Note that in order to distinguish the digital signature for application 210 from other signatures described later, digital signature 213 affixed using private key 212 of the person responsible for application 210 may be referred to as a first application digital signature.

[0036] The responsible party of the secure computing execution environment who receives the application 210 verifies 213a the electronic signature 213 using the public key 214 of the responsible party of the application 210, confirms that the application 210 has been properly audited, and records the electronic signature 213 in the trail storage 230.

[0037] 5, runtime 220 is audited 221 by the person responsible for runtime 220, and digital signature 223 is affixed using private key 222 of the person responsible for runtime 220. Note that in order to distinguish the digital signature for runtime 220 from another signature described later, digital signature 223 affixed using private key 222 of the person responsible for runtime 220 may be referred to as a first runtime digital signature.

[0038] The responsible party of the secret computing execution environment who receives the runtime 220 verifies 223a the electronic signature 223 using the public key 224 of the responsible party of the runtime 220, confirms that the runtime 220 has been properly audited, and records the electronic signature 223 in the trail storage 230.

[0039] 6, the secure computation library 240 is audited 241 by the responsible party of the secure computation library 240, and a digital signature 243 is attached using a private key 242 of the responsible party of the secure computation library 240. The responsible party of the secure computation execution environment who received the secure computation library 240 verifies 243a the digital signature 243 using a public key 244 of the responsible party of the secure computation library 240, confirms that the secure computation library 240 has been duly audited, and records the digital signature 243 in the trail storage 230.

[0040] 7 and 8 are diagrams illustrating in detail how to digitally sign an application and a runtime, respectively, within an encrypted file system.

[0041] 7, application 210 is affixed with digital signature 213 (first application digital signature) using the private key of the person responsible for application 210. In this case, digital signature 213 (first application digital signature) is obtained by encrypting hash value 215 of application 210 using the private key of the person responsible for application 210.

[0042] Meanwhile, application 210 is stored in encrypted file system 250 in the process of creating a secure computation execution environment. Then, digital signature 217 (second application digital signature) is affixed using the private key of the person responsible for the secure computation execution environment. At this time, digital signature 217 (second application digital signature) is obtained by encrypting a combination of hash value 215 of application 210 as plaintext before encryption and hash value 216 as ciphertext after encryption in encrypted file system 250, using the private key of the person responsible for the secure computation execution environment.

[0043] The digital signature 217 (second application digital signature) can be created in the secure computation execution environment using the functions of the TPM 16 described above. That is, the container image creation environment 260 is itself another secure computation execution environment, and as a function of the TPM 16, the digital signature 217 (second application digital signature) can be created using a private key protected in the secure computation execution environment. In this way, the person responsible for the secure computation execution environment itself has less room for tampering, etc., and a method for creating a secure computation execution environment with less vulnerability is realized.

[0044] 8, runtime 220 is affixed with digital signature 223 (first runtime digital signature) using the private key of the person responsible for runtime 220. In this case, digital signature 223 (first runtime digital signature) is obtained by encrypting hash value 225 of runtime 220 using the private key of the person responsible for runtime 220.

[0045] Meanwhile, runtime 220 is stored in encrypted file system 250 in the process of creating the secure computation execution environment. Then, digital signature 227 (second runtime digital signature) is affixed using the private key of the person responsible for the secure computation execution environment. At this time, digital signature 227 (second runtime digital signature) is obtained by encrypting a combination of hash value 225 of runtime 220 as plaintext before encryption and hash value 226 as ciphertext after encryption in encrypted file system 250, using the private key of the person responsible for the secure computation execution environment.

[0046] The digital signature 227 (second runtime digital signature) can be created within the secure computation execution environment using the functions of the TPM 16 described above. That is, the container image creation environment 260 is itself another secure computation execution environment, and as a function of the TPM 16, the digital signature 227 (second runtime digital signature) can be created using a private key protected in the secure computation execution environment. In this way, the person responsible for the secure computation execution environment itself has less room for tampering, etc., and a method for creating a secure computation execution environment with less vulnerability is realized.

[0047] 9 is a diagram showing an outline of measures taken when the secure computation execution environment is executed. Even if the secure computation execution environment is created while taking measures to reduce the possibility of tampering, etc. as described above, there remains a possibility that the secure computation execution environment may be tampered with when executed.

[0048] Therefore, as shown in FIG. 9, a tamper detection system 270 is installed in the container image 200, and consistency checks are performed periodically with the digital signature in the trail storage 230.

[0049] Some or all of the above embodiments can be described as, but are not limited to, the following supplementary notes. [Appendix 1] A method for creating a secure computing environment from an application and a runtime with different responsibility allocations, comprising: affixing a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment, and recording the second application digital signature and the second runtime digital signature in an evidence storage; A method for creating a secure computing execution environment, comprising attaching an execution environment digital signature to the secure computing execution environment and recording the execution environment digital signature in the trail storage. [Appendix 2] the second application digital signature is a digital signature attached to a combination of information about the application before the creation of the secure computation execution environment and information about the application in an encrypted file system of the secure computation execution environment, A method for creating a secure computing execution environment as described in Appendix 1, wherein the second runtime electronic signature is an electronic signature attached to a combination of information about the runtime before the secure computing execution environment was created and information about the runtime in the encrypted file system of the secure computing execution environment. [Appendix 3] After the application is audited by the application owner, a first application digital signature is attached using the private key of the application owner; After the runtime responsible party audits the runtime, a first runtime digital signature is attached using the runtime responsible party's private key; verifying the first application digital signature using the public key of the application's responsible party; Verifying the first runtime digital signature using the public key of the runtime responsible party; A method for creating a secure computation execution environment according to Supplementary Note 2, wherein after the verification, a secure computation execution environment is created from the application and the runtime. [Appendix 4] the first application digital signature is a digital signature obtained by using a private key of the application responsible party to a hash value of the application after the application responsible party has audited the application; the second application digital signature is a combination of a hash value of the application after audit by the responsible party of the application and a hash value of the application in the encrypted file system of the secure computing execution environment, and digitally signed using a private key of the responsible party of the secure computing execution environment; The first runtime digital signature is a digital signature obtained by using a private key of the runtime responsible party to a hash value of the runtime after the runtime responsible party has audited the runtime, A method for creating a secure computing execution environment as described in Appendix 3, wherein the second runtime electronic signature is a combination of a hash value of the runtime after audit by the person responsible for the runtime and a hash value of the runtime in the encrypted file system of the secure computing execution environment, and an electronic signature is applied to the result using the private key of the person responsible for the secure computing execution environment. [Appendix 5] Using another secure computation execution environment, a secure computation execution environment is created from the application and the runtime; creating the second application digital signature and the second runtime digital signature using a private key protected in the other secure computing execution environment; A method for creating a secure computing execution environment according to any one of Supplementary Note 1 to Supplementary Note 4. [Appendix 6] A method for creating a secure computation execution environment further including a secure computation library with different responsibility allocation, A method for creating a secure computing execution environment according to any one of appendices 1 to 5, comprising attaching an execution environment digital signature to the secure computing execution environment including the secure computing library, and recording the execution environment digital signature in the audit trail storage. [Appendix 7] 7. A method for creating a secure computing execution environment according to any one of Supplementary Note 1 to Supplementary Note 6, wherein the trail storage is a write-once storage. [Appendix 8] A device for creating a secure computing environment from an application and a runtime with different responsibility allocations, an element digital signature unit that affixes a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment; a container digital signature unit that affixes an execution environment digital signature to the secure computing execution environment; a trail storage that records the second application digital signature, the second runtime digital signature, and the execution environment digital signature; A device for creating a secure computing execution environment comprising: [Appendix 9] another secure computation execution environment for creating a secure computation execution environment from the application and the runtime; a private key protected in the other secure computing execution environment; An apparatus for creating a secure computing execution environment as described in Appendix 8, wherein the element electronic signature unit creates the second application electronic signature and the second runtime electronic signature using a private key protected in the other secure computing execution environment. [Appendix 10] A program that creates a secure computing environment from an application and a runtime that have different responsibility allocations, affixing a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment, and recording the second application digital signature and the second runtime digital signature in an evidence storage; A program for creating a secure computation execution environment that causes a computer to attach an execution environment digital signature to the secure computation execution environment and record the execution environment digital signature in the trail storage.

[0050] The disclosures of the above-cited patent documents and other documents are incorporated herein by reference. Modifications and adjustments of the embodiments and examples are possible within the scope of the entire disclosure of the present invention (including the claims), and further based on the basic technical concepts thereof. Furthermore, various combinations and selections (including partial deletions) of various disclosed elements (including elements of each claim, each element of each embodiment or example, each element of each drawing, etc.) are possible within the scope of the entire disclosure of the present invention. In other words, the present invention naturally embraces various modifications and alterations that would be possible by a person skilled in the art in accordance with the entire disclosure and technical concepts, including the claims. In particular, with regard to the numerical ranges set forth herein, any numerical value or subrange within that range should be construed as specifically set forth, even if not otherwise specified. Furthermore, the disclosures of the above-cited documents, when used in part or in whole in combination with the disclosures herein as part of the disclosure of the present invention, in accordance with the spirit of the present invention, are also deemed to be included in the disclosures of this application. [Explanation of symbols]

[0051] 100 Secure Computing Execution Environment 110, 210 Applications 120, 220 runtime 130, 230 Trail Storage 200 container images 240 Secure Computation Library 250 Encrypted File Systems 260 Container Image Creation Environment 211, 221, 241 Audit 212, 222, 242 private key 213, 217, 223, 227, 243 Electronic signatures 213a, 223a, 243a Digital Signature Verification 214, 224, 244 public keys 215, 216, 225, 226 hash values 270 Tampering Detection System 10 Hardware Configuration 11 CPU 12 RAM 13 Auxiliary storage device 14 IF Section 15 Enclave area 16 TPM

Claims

1. A method for creating a secure computing environment from an application and a runtime where the parties responsible for proving that the application and the runtime have not been tampered with are different, comprising: affixing a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment, and recording the second application digital signature and the second runtime digital signature in an evidence storage; A method for creating a secure computing execution environment, comprising attaching an execution environment digital signature to the secure computing execution environment and recording the execution environment digital signature in the trail storage.

2. the second application digital signature is a digital signature attached to a combination of information about the application before the creation of the secure computation execution environment and information about the application in an encrypted file system of the secure computation execution environment, 2. A method for creating a secure computing execution environment as described in claim 1, wherein the second runtime electronic signature is a combination of information about the runtime before the secure computing execution environment was created and information about the runtime within the encrypted file system of the secure computing execution environment, to which an electronic signature is affixed.

3. affixing a first application digital signature using a private key of a person responsible for certifying that the application has not been tampered with after the person responsible for certifying that the application has not been tampered with has audited the application; After the runtime has been audited by a person responsible for certifying that no tampering has been performed on the runtime, a first runtime digital signature is attached using a private key of the person responsible for certifying that no tampering has been performed on the runtime; Verifying the first application digital signature using a public key of a responsible party that proves that the application has not been tampered with, Verifying the first runtime digital signature using a public key of a responsible party that certifies that the runtime has not been tampered with, The method for creating a secure computing execution environment according to claim 2 , further comprising creating a secure computing execution environment from the application and the runtime after the verification.

4. The first application digital signature is a digital signature obtained by using a private key of a person responsible for proving that the application has not been tampered with, on a hash value of the application after the person responsible for proving that the application has not been tampered with has audited the application, and The second application digital signature is a combination of a hash value of the application after an audit by a person responsible for proving that the application has not been tampered with, and a hash value of the application in an encrypted file system of the secure computing execution environment, and digitally signed using a private key of the person responsible for proving that the secure computing execution environment has not been tampered with, The first runtime digital signature is a digital signature created by using a private key of a person responsible for verifying that no tampering has been performed on the runtime after the person responsible for verifying that no tampering has been performed on the runtime, on a hash value of the runtime after the person responsible for verifying that no tampering has been performed on the runtime, A method for creating a secure computing execution environment as described in claim 3, wherein the second runtime electronic signature is a combination of a hash value of the runtime after audit by a responsible party who certifies that no tampering has been made to the runtime and a hash value of the runtime in the encrypted file system of the secure computing execution environment, and an electronic signature is then added using the private key of the responsible party who certifies that no tampering has been made to the secure computing execution environment.

5. Using another secure computation execution environment, a secure computation execution environment is created from the application and the runtime; creating the second application digital signature and the second runtime digital signature using a private key protected in the other secure computing execution environment; A method for creating a secure computing execution environment according to any one of claims 1 to 4.

6. A method for creating a secure computing execution environment further including a secure computing library whose responsibility is different from that of the application and the runtime, A method for creating a secure computing execution environment according to any one of claims 1 to 5, further comprising attaching an execution environment digital signature to the secure computing execution environment including the secure computing library, and recording the execution environment digital signature in the trail storage.

7. The method for creating a secure computing execution environment according to claim 1 , wherein the trail storage is a write-once storage.

8. A device for creating a secure computing environment from an application and a runtime where the parties responsible for proving that the application and the runtime have not been tampered with are different, an element digital signature unit that affixes a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment; a container digital signature unit that affixes an execution environment digital signature to the secure computing execution environment; a trail storage that records the second application digital signature, the second runtime digital signature, and the execution environment digital signature; A device for creating a secure computing execution environment comprising:

9. another secure computation execution environment for creating a secure computation execution environment from the application and the runtime; a private key protected in the other secure computing execution environment; The device for creating a secure computing execution environment described in claim 8, wherein the element digital signature unit creates the second application digital signature and the second runtime digital signature using a private key protected in the other secure computing execution environment.

10. A program that, when executed by a computer, creates a secure computing execution environment from an application and a runtime where the parties responsible for proving that the application and the runtime have not been tampered with are different, affixing a second application digital signature and a second runtime digital signature to the application and the runtime, respectively, in an encrypted file system of the secure computing execution environment, and recording the second application digital signature and the second runtime digital signature in an evidence storage; A program that attaches an execution environment digital signature to the secure computing execution environment and records the execution environment digital signature in the trail storage.

Citation Information

Patent Citations

  • Secure payment method and system, storage medium and electronic device

    CN113592489A

  • Information processor and program

    JP2021124549A

  • Creating software packages for performing secure computations

    US20190392155A1

  • Identity-based security platform and methods

    US20200287723A1

  • Security management device, security management method, and non-transient computer-readable medium

    WO2021014539A1