[go: up one dir, main page]

WO2025027180A1 - Network of trusted execution environments - Google Patents

Network of trusted execution environments Download PDF

Info

Publication number
WO2025027180A1
WO2025027180A1 PCT/EP2024/071954 EP2024071954W WO2025027180A1 WO 2025027180 A1 WO2025027180 A1 WO 2025027180A1 EP 2024071954 W EP2024071954 W EP 2024071954W WO 2025027180 A1 WO2025027180 A1 WO 2025027180A1
Authority
WO
WIPO (PCT)
Prior art keywords
data processing
secure data
network
environments
processing environments
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
PCT/EP2024/071954
Other languages
German (de)
French (fr)
Inventor
Christos Karatzas
Sibi Antony
Khiem Nguyen
Hubert JÄGER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Real Cis GmbH
Original Assignee
Real Cis GmbH
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 Real Cis GmbH filed Critical Real Cis GmbH
Publication of WO2025027180A1 publication Critical patent/WO2025027180A1/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode

Definitions

  • the invention relates to a network of at least two secure data processing environments and a method for forming a network of at least two secure data processing environments (Network of Trusted Execution Environments).
  • the invention also relates to a method for operating and expanding a network of secure data processing environments.
  • TEE Trusted Execution Environments
  • SGX Software Guard Extensions
  • TEE can be implemented at server and multi-server level, for example by the precautionary deletion of data within a module as soon as an attack attempt is detected, as is the case in [FIPS PUB 140-2: Security Requirements for Cryptographic Modules. NIST. July 26, 2007.
  • “Security Level 4 provides the highest level of security. At this security level, the physical security mechanisms provide a complete envelope of protection around the cryptographic module with the intent of detecting and responding to all unauthorized attempts at physical access. Penetration of the cryptographic module enclosure from any direction has a very high probability of being detected, resulting in the immediate deletion of all plaintext critical security parameters.
  • TEEs at chip level encapsulate large parts of the computing, for example an entire “virtual machine”, in such a way that the programs used for computing do not have to be adapted to the secure computing environment, or only slightly so.
  • TEEs at chip level implement the TEEs described in [D. Kaplan (2017). PROTECTING VM REGISTER STATE WITH SEV-ES. “Secure Encrypted Virtualization” (SEV) from Advanced Micro Devices Corporation (AMD) described in https://www.amd.com/en/developer/sev.html by AMD], as well as “Trusted Domain Extensions” (TDX) from Intel Corporation described in [P.-C. Cheng et. al (2023). Intel TDX Demystified: A Top-Down Approach. In https://arxiv.org/abs/2303.15540 by IBM Research].
  • Such tamper-proof data processing environments and the procedures implementing them also provide a high level of security against breaches of confidentiality and/or integrity if the keys used to encrypt the results and intermediate results of the data processing tasks as soon as they leave the TEE are generated exclusively in a clearly defined and closed network of secure data processing environments and do not leave this network.
  • a further disadvantage is that the manual processes for setting up the federation of secure data processing environments can become subject to abuse of the privilege for setting up the federation and thus the security against violations of confidentiality, integrity and availability can be lost.
  • privileged access to the computing resources and the data processed by them.
  • This privileged access is not disadvantageous in some of the application constellations, for example if the administrators of the servers are to be excluded, but the administrators of the application logic, i.e. the application software, are trusted.
  • the object of the invention is therefore to provide a network and a method for forming a network of secure data processing environments which provide a very high level of protection against the violation of the confidentiality of the data and the programs processing them, the integrity of the data and the programs processing them and the availability of the data and the programs processing them, without having the disadvantages of the networks and methods for forming such networks known from the prior art.
  • the invention relates to a network and a method for forming a network of at least two secure data processing environments (Network of Trusted Execution Environments), in which the secure data processing environments are coupled to each other autonomously and without human intervention in such a way that (partial) secrets or identities would have to be entered manually, combine to form a network and/or lock remaining privileged accesses, so that the complexity and costs of forming and expanding networks of secure data processing environments are low compared to the state of the art, correspondingly large networks are practicable and the misuse of privileges as well as a fraudulent violation of the confidentiality and integrity of the data and/or the programs processing the data are largely excluded.
  • Network of Trusted Execution Environments Network of Trusted Execution Environments
  • the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for automating not only the generation of the original secret but also other parts of the method for forming a network of secure data processing environments, the complexity and costs of forming large networks of many secure data processing environments are further reduced. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for generating the original secret and other secrets by method parts that are implemented independently of the design of the secure data processing environments used, different versions of secure data processing environments can be used mixed in a network, which means an advantageous flexibility for the method and the resulting networks. Different versions of secure data processing environments with different, practically relevant Properties can be used in a mixed manner, thus reducing costs through better adaptation to practical requirements.
  • a first secure data processing environment which, according to its design, has privileged access with a second secure data processing environment which, according to its design, does not have privileged access, in such a way that the second secure data processing environment which, according to its design, does not have privileged access, exclusively controls the privileged access of the first secure data processing environment, privileged access is no longer given in the inventive combination of the two secure data processing environments, and thus a violation of the confidentiality of the data and the programs which process them, and of the integrity of the data and the programs which process them, is largely excluded.
  • the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for using several secure data processing environments, which according to their design do not have privileged access, to exclusively control the privileged access(s) of one or more secure data processing environments, which according to their design have privileged access, complex and extensive software packages and application logic can be largely protected against a violation of the confidentiality of the data and the programs that process them, the integrity of the data and the programs that process them, and a violation of the availability of the data and the programs that process them.
  • the methods and devices according to the invention for forming a network of secure data processing environments are finally suitable for one or more secure data processing environments, which according to their design do not have privileged access, and in a nested manner within a secure data processing environment, which according to its design does not have privileged, unrestricted access but does have an interface via which a plurality of positively defined commands for carrying out administration activities can be triggered, which exclusively control the positively defined commands for carrying out administration activities, this results in the advantage that this enables a flexible distribution of responsibilities to different administrators.
  • Fig. 1 is a block diagram of an inventive network of secure data processing environments to explain the inventive method for forming such a network with the designations:
  • DVUn,l to DVUn,mn secure data processing environment 1 of server n to secure data processing environment mn of server n
  • Fig. 2 shows a state diagram of an embodiment of the method according to the invention for forming a network of secure data processing environments with the designations: Z1 to Z6 States of the secure data processing environments 1 to 6 with the designations “UNINITIALIZED”, “NEGOTIATION PHASE”, “EXCHANGE KEY PHASE”, “VERIFICATION PHASE”, “ONLINE”, and “IMPORT PHASE”
  • Fig. 3 is the same block diagram as in Fig. 1, wherein the network of secure data processing environments is added to explain the method part for extending the network, a server with one or more secure data processing environments with the following designation: Sn+1 Server n+1
  • Fig.4 is a collection of 4 block diagrams a), b), c) and d) to explain the method according to the invention for forming a network of secure execution environments with the designations:
  • S 1 to S4 Server 1 to Server 4 DVU1 and DVU3 secure data processing environments that have privileged access and access
  • DVU2 and DVU4 secure data processing environments that do not have privileged access and access
  • NC2,1 to NC2,q User client of AL2 1 to User client of ALI q
  • FIG.4 a collection of 2 block diagrams a) and b) to explain the method according to the invention for forming a network of secure execution environments with the designations:
  • DVU5 and DVU6 secure data processing environments that have privileged access and access
  • DVU7 and DVU8 secure data processing environments that no longer have privileged access
  • NC8,1 to NC8,s User client 1 to s of the AL8
  • the devices and methods according to the invention enable adequate protection against violations of the confidentiality of the data and/or programs processing them, the integrity of the data and/or programs processing them and/or the confidentiality of the data and/or programs processing them, as well as reducing the complexity and costs of forming a network of secure data processing environments.
  • the plurality of m secure data processing environments DVU 1,1, DVU1,2 to DVUl,ml shown in Fig. 1 are components of a first data processing device, which in practice is called a "server", here Sever 1 (Sl).
  • servers comprise, among other things, a housing, a power supply, the network components, the persistent and volatile storage units and one or more processor units.
  • the secure data processing environments are implemented, for example, as components of the processor units and the main memory using firmware, i.e. extension of the machine-level instruction sets (e.g. Software Guard Extensions Secure Encrypted Virtualisation or Trusted Domain Extension).
  • a secure computing environment When a secure computing environment is initiated by software programs running on one of the server's processors, it is determined which keys the secure computing environment will use to encrypt data written to the volatile memory (random access memory, RAM) or to the persistent memory (storage). In some versions of secure computing environments, the keys are written in special registers on the processor chips that are intended only for this purpose.
  • RAM random access memory
  • storage persistent memory
  • Additional secure data processing environments DVUa,b where a is one of ⁇ 1, 2, .. n ⁇ and b is one of ⁇ 1, 2, .. ma ⁇ , are provided by a large number of servers, server 2 (S2), server 3 (S3) to server n (Sn). All of these secure data processing environments are registered with configuration servers 1 (KS1) to configuration server h (KSh) according to their identity and specific technical design and obtain all software and configuration information from there when the system starts. This includes, among other things, information about which secure data processing environments belong to the network to be formed from this defined set of secure data processing environments. In addition, all of these secure data processing environments are registered with the authenticity verification servers 1 (AVS1) to k (AVSk) according to their identity and their specific technical design. This means that the data processing environments can attest to each other with the help of the authenticity verification servers 1 (AVS1) to k (AVSk) that they are fundamentally entitled to participate in the inventive formation of a network of secure data processing environments (V-DVU).
  • At least two secure data processing environments DVUc,d and DVUe,f where c and e are from ⁇ 1, 2, .. n ⁇ , d from ⁇ 1, 2, .. md ⁇ and f from ⁇ 1, 2, .. me ⁇ , as well as additional secure data processing environments on a case-by-case basis, together form the seed of data processing environments from which the network of secure data processing environments is constituted according to the invention.
  • the aforementioned attestation process is implemented cryptographically, i.e. a central infrastructure of public and private key pairs belonging to the secure data processing environments DVUa,b (public key infrastructure) is initialized by the operator of the V-DVU network. To do this, he uses a subset of the k authenticity verification servers (designated AVS1 to AVSk in Fig. 1) that includes at least one authenticity verification server. In order to enable a high level of availability of the authenticity verification service, a subset of several authenticity verification servers can advantageously be used. The operator of the V-DVU network can use these to have the authenticity of the secure data processing environments confirmed by the manufacturer of these secure data processing environments.
  • a secure data processing environment DVUc,d needs to have the authenticity of a second secure data processing environment DVUe,f, designated by the manufacturer as a secure data processing environment
  • the secure data processing environment DVUc,d sends a message to one of the authenticity verification servers AVSh+1 to AVSk with the request whether the secure data processing environment DVUe,f is actually a secure data processing environment in the sense of the manufacturer of a secure data processing environment with regard to the origin and status of the machine-related programs.
  • These can be verified based on the constantly updated reports on the secure Data processing environments and the status of the machine-related software can answer the query reliably.
  • the secure computing environments DVUc,d and DVUe,f can mutually assure each other of the authenticity of the programs controlling the secure computing environments by comparing a measurement of the programs or comparing the identity of the signing auditor.
  • a measurement is the application of a one-way function (hash) to the code to be measured.
  • Fig. 2 a total of seven states ZI to Z7 of an embodiment of the method for the autonomous determination of the common original secret are shown, of which initially only the states ZI to Z6 are considered.
  • this secure data processing environment changes from the state “UNINITIALIZED” (ZI) to the state “NEGOTIATION PHASE” (Z2) by initializing the bootstrap sub-procedure “INIT BOOTSTRAP” (BOO).
  • each secure data processing environment initially randomly or quasi-randomly generates an asymmetric communication key pair that is intended for secure communication between the secure data processing environments of the seed, because it is assumed that the transmission channels between the secure data processing environments can be insecure.
  • the public key of this The communication key pair is signed with the signature key characteristic of the secure data processing environment and this signed communication key is sent as a tuple with the public communication key to all other secure data processing environments of the seed and a response is requested with the signed public key of the other secure data processing environments.
  • the authenticity of the public key is checked (“ACCEPT NEGOTIATION DATA”, AND).
  • each secure data processing environment generates its own random or quasi-random proposal for the original secret together as a tuple with a particularly precise (double variable) random or quasi-random pseudo-clock and exchanges this tuple with all other secure data processing environments of the seed (“ACCEPT KEY DATA”, AKD).
  • all tuples of the individual, own proposals for the original secret and the pseudo-clocks are sorted according to the values of the pseudo-clocks. If a conflict arises because two or more pseudo-clocks have the same value, the process is reset (“RESET”, RST). If a clear order of the tuples (“creation history” or “creation pseudo-history”, since the “clocks” are pseudo-clocks) is found, then the process is continued.
  • each secure data processing environment encrypts the list of tuples created and sorted in state Z3 with the key characteristic of each secure data processing environment and sends it to all other secure data processing environments.
  • An identifier of the self-generated list, generated by a one-way function (hash) is then compared with the identifiers of the lists of the other secure data processing environments, also generated by a one-way function (ACCEPT VERIFICATION REPORT). If a conflict arises, i.e. one or more lists or the unique identifiers of the lists differ from one another, the process is reset (RST). Finally, the suggestion for the shared original secret is selected from the list which, for example, has the highest value for the pseudo-time.
  • the master secret which is now available to all secure data processing environments, is the basis for deriving keys that are necessary to decrypt data that must be shared between different secure data processing environments.
  • the derivation of keys for decrypting data from other secure data processing environments also depends on the identity of the other secure data processing environment, for example a name, a signature of the auditor of the other data processing environment or other characterizing features of the other secure data processing environment.
  • the ability to securely read data from other secure data processing environments is essential to be able to run all programs in large software packages with “confidential computing” and to create redundant structures to improve the availability of the software services and data provided by the software.
  • the secure data processing environments interact autonomously with one another without a person from the operator of the network of secure data processing environments having to make inputs at a human-machine interface after the initial configuration process.
  • an additional server Sn+1 is added to the network of secure data processing environments shown in Fig. 1, which in turn contains a plurality of secure data processing environments DVUn+1,1 to DVUn+l,mn+l.
  • the operator of the V-DVU network adds the configuration to one of the configuration servers KS1 to KSh, which replicate this configuration change to the other configuration servers in accordance with standard practice.
  • the operator indicates that the server Sn+1 is being added to an existing network of secure data processing environments and does not belong to the seed of secure data processing environments for the formation of a new network of secure data processing environments.
  • the server Sn+1 obtains the configuration data from one of the configuration servers KS1 to KSh and also receives the addresses of the secure Data processing environments involved in secure data processing environments DVU 1,1 to DVUn,mn.
  • the server Sn+1 starts in the state ZI of the state diagram "UNINITIALIZED" shown in Fig. 2.
  • the configuration parameter which states that the server Sn+1 is not an initial seed DVU according to the configuration parameters, but is added to an existing network of secure data processing environments, triggers the server Sn+1 to switch to the state "IMPORT PHASE” (Z6) ("INIT IMPORT", IMP) in the embodiment of the method according to the invention.
  • the public key of this communication key pair is signed with the signature key characteristic of the secure data processing environments of the server Sn+1 and this signed communication key is sent as a tuple with the public communication key to another secure data processing environment of the servers S1 to Sn and a response is requested with the signed public key of the other secure data processing environments.
  • the server Sn+1 requests the shared original secret from one of the secure data processing environments already belonging to the V-DVU network, together with the identifier for the "history of creation" of the V-DVU network generated by a one-way function (hash). Finally, the secure data processing environments of the server Sn+1 persist the original secret ("ACCEPT IMPORT DATA", AIM).
  • Extensions of the V-DVU network by additional servers Sn+1, Sn+2, etc., each with one or more secure data processing environments, can be carried out in an analogous manner not only with the step size of one server described in this embodiment, but also with arbitrarily large step sizes with a plurality and even a large number of servers.
  • additional servers Sn+1, Sn+2, etc. can be added to the n servers of the seed configuration in the simple manner described above, and in this way existing networks of secure data processing environments can be expanded with very little complexity to result in very large networks of secure data processing environments.
  • the secure data processing environments interact autonomously with one another without a person from the operator of the network of secure data processing environments having to make entries at a human-machine interface after the configuration expansions.
  • other automations can be carried out within the D-DVU network, for example the generation of sets of keys for specific services and applications, databases, storage systems and the like.
  • the derivation of the other keys takes place in a "trust hierarchy", i.e. a sequence of sub-processes that generate keys that each refer to previously generated keys.
  • the generated keys are secured in encrypted form, with the shared original secret being used to generate the encryption key for this process, so that the backup (storage) takes place independently of individual secure data processing environments. This means that these keys are not lost if the secure data processing environment in which the keys were generated ceases to function.
  • V-DVU The automation of the formation of the network of secure data processing environments V-DVU can be designed to such an extent that, apart from the initial entries in one of the configuration servers KS1 to KSh, no further entries have to be made by the V-DVU operator's staff at the human-machine interfaces of the servers S1 to Sn+x, where x can take on very large natural numerical values, by automatically recording the basic operating conditions of each individual server with regard to embedding in the network connection, participation in distributed storage systems and the like (auto-discovery) and negotiating them in interaction with the other servers in the V-DVU network. Principles of majority decisions and Byzantine fault tolerance can be applied here.
  • the described embodiment of the invention is ultimately suitable for creating a software service for key derivation and management (Key Derivation and Management Service) that is designed independently of the specific implementation of the secure data processing environments DVUa,b by generating a common original secret and creating an instance that is independent of the secure data processing environments and the server in terms of the software architecture.
  • key generation is dependent on the individual hardware of the secure data processing environments and the independence of the secure data processing environments and the server according to the invention is not given.
  • the sub-figures a) and b) show a secure data processing environment DVU1 in the server SI and DVU2 in the server S2, respectively.
  • the application logic ALI is operated for the users with their user clients NC 1,1 to NC1,p.
  • the application logic AL2 is operated for the users with their user clients NC2,1 to NC2,q.
  • the secure data processing environment DVU 1 has privileged access PZ, which can be used by the administrator of the application logic ALI via the administrator client AC1 to carry out administration activities.
  • privileged access PZ is largely unrestricted access for administrators to the resources of the secure data processing environment, which, in terms of its rights, has historically grown to include far more functions than are necessary for administration in the secure data processing application environment.
  • privileged access PZ is a protocol that makes a command line of the computer or virtual computer usable remotely (Secure Shell, SSH). Nevertheless, the use of such a secure data processing application environment with privileged access is sensible, since the administrators of the servers implementing the secure data processing application environment are excluded from accessing the executing programs and the processed data.
  • the operating system of the server S 1 may also contain faulty entry points for attackers, without this giving potential attackers access to the programs executed in the secure data processing application environment DVU3 and to the data processed with them.
  • the partial figures c) and d) of Fig. 4 show inventive networks of secure data processing environments V-DVU, which are formed from the secure data processing environments DVU3 and DVU4.
  • the secure data processing environment DVU4 which has no privileged access, exclusively controls the administration logic AZL1 the administration of the secure data processing environment DVU3, which has privileged access, in that the AZL1 only allows a positively defined list of administration commands to be executed for the administration of the secure data processing environment DVU3.
  • both the secure data processing environment DVU3 and DVU4 can be operated within a common server S4.
  • a secure data processing environment DVU5 or DVU6 is implemented in the servers S5 and S6, each of which has privileged access PZ, via which the administrator of the two application logics AL5 and AL6 controls the application logics AL5 and AL6 using his client AC56.
  • the user clients NC5,1 to NC5,p, which interact with the application logic AL5, as well as the user clients NC6,1 to NC6,q, which interact with the application logic AL5, are shown here.
  • a) of Fig. 5 an embodiment of an inventive network is shown in which the privileged access of the secure data processing environment DVU7 in the server 7 was closed with the application logic AL7.
  • privileged access is closed by blocking the ports for privileged access (close SSH ports) in the configuration of the secure data processing environment DVU7.
  • Such configuration changes can be part of the "attestation" explained above, so that the other secure data processing environments of the V-DVU network can convince themselves of the existence of a correctly implemented configuration with cryptographic strength.
  • an administration access logic AZL1 is also shown, which exclusively allows the execution of a positively defined list of administration commands and thus enables the administration of the application logic AL7.
  • the integrity of the administration access logic AZL1 can also be part of the previously explained “measurement” of the attestation process, so that the other secure data processing environments of the V-DVU network can convince themselves of the existence of a correctly implemented administration access logic AZL1 with cryptographic hardness.
  • the users of the application logic AL7 can rely on a very highly confidential processing of the data and a very highly confidential access to the application logic AL7 via the user clients NC7,1 to NC7,r.
  • the server S8 in part b) of Fig. 5 also shows the administration access logic AZL2, which is executed by a secure data processing environment DVU9 without privileged access, which is implemented embedded in the secure data processing environment DVU8 (nesting of TEEs).
  • This embodiment in turn provides the particularly high level of security that only the controlling administration commands transmitted by the administration client AC78 and, as a result, the users of the application logic AL8 can rely on a particularly high level of confidentiality in the processing of the data and the access to the application logic AL8 via the user clients NC8,1 to NC8,s.
  • the different embodiments illustrate different possibilities for forming networks of secure data processing environments, which, depending on the design, are suitable for different distribution of responsibilities in administration.
  • a first administrator can be responsible for a secure data processing environment that is implemented as a secure virtual machine
  • a second administrator can be responsible for a specific process within the same secure data processing environment.
  • an embedded secure data processing environment designed analogously to the secure data processing environment DVU9 can ensure that the second administrator does not have access to the other parts of the secure data processing environment designed as a virtual machine for which the first administrator is responsible, and conversely, the first administrator also has no access to the specific process for which the second administrator is responsible.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

The invention relates to a network of at least two trusted execution environments and a method for forming a network of at least two trusted execution environments. The invention also relates to a method for operating and expanding a network of trusted execution environments.

Description

Verbund aus sicheren Datenverarbeitungsumgebungen network of secure data processing environments

Die Erfindung betrifft einen Verbund aus mindestens zwei sicheren Datenverarbeitungsumgebungen und ein Verfahren zur Bildung eines Verbunds aus mindestens zwei sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments). Weiterhin bezieht sich die Erfindung auf ein Verfahren zum Betreiben und Erweitern eines Verbunds aus sicheren Datenverarbeitungsumgebungen. The invention relates to a network of at least two secure data processing environments and a method for forming a network of at least two secure data processing environments (Network of Trusted Execution Environments). The invention also relates to a method for operating and expanding a network of secure data processing environments.

Es ist aus dem Stand der Technik bekannt, zentrale Datenverarbeitungseinrichtungen (Server) zu verwenden, um den Fluss von Daten in informationstechnischer Infrastruktur zu koordinieren. Die Vorteile der Digitalisierung beruhen in hohem Maße auf der Vernetzung der digitalisierten Apparate und Geräte. Diese interagieren nur in seltenen Fällen unmittelbar miteinander. In der Regel koordinieren Server den Fluss der Daten. Um für die Wohlfahrt der Gesellschaft kritische Digitalisierungsdienste zuverlässig bereitzustellen zu können, müssen vertrauenswürdige Bereitstellung und Instandhaltung der Server gewährleistet sein. It is known from the state of the art to use central data processing facilities (servers) to coordinate the flow of data in information technology infrastructure. The advantages of digitization are largely based on the networking of digitized devices and equipment. These only rarely interact directly with each other. Servers usually coordinate the flow of data. In order to be able to reliably provide digitization services that are critical to the welfare of society, trustworthy provision and maintenance of the servers must be guaranteed.

Solche Datenverarbeitungseinrichtungen und Verfahren haben, eine sorgfältige Implementierung vorausgesetzt, die Eigenschaft, dass der Zugriff sowohl Dritter als auch des das Datenverarbeitungssystem betreibenden Personals auf die durch das System verarbeitete Daten durch technischorganisatorische Maßnahmen, wie etwa in den Anforderungskatalogen der ISO/IEC-Standards der Reihe 27k oder des Bundesamts für Sicherheit in der Informationstechnik (BSI C5) gefordert, eingeschränkt und kontrolliert wird, sodass hierdurch ein Mindestschutz gegen unberechtigten Datenzugriff oder die Manipulation der durch die Einrichtung verarbeitete Daten erreicht werden kann. Such data processing facilities and procedures have, provided they are carefully implemented, the property that access by both third parties and the personnel operating the data processing system to the data processed by the system is restricted and controlled by technical and organizational measures, such as those required in the requirements catalogs of the ISO/IEC standards of the 27k series or the Federal Office for Information Security (BSI C5), so that a minimum level of protection against unauthorized data access or manipulation of the data processed by the facility can be achieved.

Solange bei der Gestaltung der Datenverarbeitungseinrichtungen nicht die Grundsätze der Manipulationssicherheit, also der Anforderung, dass Änderungen am System nur durch das Zusammenwirken von Mitarbeitern aus mehreren verschiedenen, am Aufbau und dem Betrieb des Datenverarbeitungssystems beteiligten Organisationen möglich sein darf, erfüllt werden, können bei Datenverarbeitungseinrichtungen und Verfahren zum Schutz der Vertraulichkeit und der Integrität immer noch einzelne Mitarbeiter aus den am Aufbau und/oder dem Betrieb des Datenverarbeitungssystems beteiligten Organisationen gegen Vorschriften zum Schutz der Vertraulichkeit und der Integrität verstoßen und in Folge die Vertraulichkeit und/oder die Integrität der in den Datenverarbeitungseinrichtungen verarbeiteten Daten verletzen. As long as the design of the data processing facilities does not comply with the principles of security against manipulation, i.e. the requirement that changes to the system may only be possible through the cooperation of employees from several different organisations involved in the construction and operation of the data processing system, data processing facilities and procedures for protecting the confidentiality and integrity individual employees from the organizations involved in the construction and/or operation of the data processing system still violate regulations for the protection of confidentiality and integrity and, as a result, violate the confidentiality and/or integrity of the data processed in the data processing facilities.

Die Wahrscheinlichkeit einer derartigen Verletzung der Vertraulichkeit und/oder der Integrität der in den Datenverarbeitungseinrichtungen verarbeiteten Daten sinkt um mehrere (dezimale) Größenordnungen, wenn die Grundsätze der Gestaltung der Datenverarbeitungseinrichtungen entsprechend der Sicherheit gegen Manipulation, wie etwa in [H. A. Jäger et al. (2020). Manipulationssichere Cloud- Infrastrukturen. ISBN 978-3-658-31848-2. Seiten 33-79. Springer Nature.] beschrieben, eingehalten werden. The probability of such a breach of the confidentiality and/or integrity of the data processed in the data processing facilities decreases by several (decimal) orders of magnitude if the principles of designing the data processing facilities in accordance with security against manipulation, as described, for example, in [H. A. Jäger et al. (2020). Tamper-proof cloud infrastructures. ISBN 978-3-658-31848-2. Pages 33-79. Springer Nature.], are observed.

Die Unabhängigkeit der Mitarbeiter aus mehreren verschiedenen, am Aufbau und/oder dem Betrieb der Datenverarbeitungseinrichtungen beteiligten Organisationen vorausgesetzt, kann die zuvor genannte Wahrscheinlichkeit, dass die Eigenschaften von manipulationssicheren Datenverarbeitungseinrichtungen verändert werden und diese Veränderung zu einer Verletzung der Vertraulichkeit und/oder der Integrität der in den Datenverarbeitungseinrichtungen verarbeiteten Daten genutzt wird, als die mit der Anzahl der zu einer Veränderung notwendigen verschiedenen unabhängigen Organisationen potenzierte Wahrscheinlichkeit der Untreue eines einzelnen Mitarbeiters dieser Organisationen angesetzt werden. Assuming the independence of employees from several different organisations involved in the construction and/or operation of the data processing facilities, the aforementioned probability that the properties of tamper-proof data processing facilities will be changed and that this change will be used to violate the confidentiality and/or integrity of the data processed in the data processing facilities can be considered as the probability of infidelity by a single employee of these organisations multiplied by the number of different independent organisations necessary to make a change.

Solche manipulationssicheren Datenverarbeitungseinrichtungen und die sie implementierenden Verfahren nach dem Stand der Technik vermitteln die hohe Sicherheit gegen Verletzungen der Vertraulichkeit und/oder der Integrität der damit verarbeiteten Daten dadurch, dass außerhalb von den für die Datenverarbeitung vorgesehenen Programm- Ausführungsumgebungen oder Datenverarbeitungsumgebungen (Trusted Execution Environments, TEE) keine Daten unverschlüsselt vorliegen. Beispielsweise können solche TEE auf Chip-Ebene als “Software Guard Extensions” (SGX) der Intel Corporation implementiert werden, wie sie in [I. Anati et al. (2013). Innovative Technology for CPU Based Attestation and Sealing. In Workshop on Hardware and Architectural Support for Security and Privacy HASP '13.] beschrieben sind. Weiterhin können TEE auf Server- und Multi-Server-Ebene beispielsweise implementiert werden durch die vorsorgliche Löschung von Daten innerhalb eines Moduls, sobald ein Angriffsversuch detektiert wird, wie sie etwa in [FIPS PUB 140-2: Security Requirements for Cryptographic Modules. NIST. July 26, 2007. “Security Level 4 provides the highest level of security. At this security level, the physical security mechanisms provide a complete envelope of protection around the cryptographic module with the intent of detecting and responding to all unauthorized attempts at physical access. Penetration of the cryptographic module enclosure from any direction has a very high probability of being detected, resulting in the immediate deletion of all plaintext critical security parameters. ”] beschrieben ist. Eine weitere Klasse von sicheren Datenverarbeitungsumgebungen auf Chip- Ebene kapseln große Teile der Datenverarbeitung, beispielsweise eine ganze „virtuelle Maschine“, so, dass die für die Datenverarbeitung herangezogenen Programme nicht oder nur geringfügig an die sichere Datenverarbeitungsumgebung angepasst werden müssen. Zwei Beispiele für solche TEE auf Chip-Ebene implementieren die in [D. Kaplan (2017). PROTECTING VM REGISTER STATE WITH SEV-ES. In https://www.amd.com/en/developer/sev.html von AMD] beschriebene „Secure Encrypted Virtualization“ (SEV) der Advanced Micro Devices Corporation (AMD), sowie die in [P.-C. Cheng et. al (2023). Intel TDX Demystified: A Top-Down Approach. In https://arxiv.org/abs/2303.15540 von IBM Research] beschriebenen “Trusted Domain Extensions” (TDX) der Intel Corporation. Such tamper-proof data processing devices and the state-of-the-art methods implementing them provide a high level of security against violations of the confidentiality and/or integrity of the data processed by them by ensuring that no data is available unencrypted outside of the program execution environments or data processing environments (Trusted Execution Environments, TEE) intended for data processing. For example, such TEE can be implemented at chip level as “Software Guard Extensions” (SGX) from Intel Corporation, as described in [I. Anati et al. (2013). Innovative Technology for CPU Based Attestation and Sealing. In Workshop on Hardware and Architectural Support for Security and Privacy HASP '13.]. Furthermore, TEE can be implemented at server and multi-server level, for example by the precautionary deletion of data within a module as soon as an attack attempt is detected, as is the case in [FIPS PUB 140-2: Security Requirements for Cryptographic Modules. NIST. July 26, 2007. “Security Level 4 provides the highest level of security. At this security level, the physical security mechanisms provide a complete envelope of protection around the cryptographic module with the intent of detecting and responding to all unauthorized attempts at physical access. Penetration of the cryptographic module enclosure from any direction has a very high probability of being detected, resulting in the immediate deletion of all plaintext critical security parameters. ”] Another class of secure computing environments at chip level encapsulate large parts of the computing, for example an entire “virtual machine”, in such a way that the programs used for computing do not have to be adapted to the secure computing environment, or only slightly so. Two examples of such TEEs at chip level implement the TEEs described in [D. Kaplan (2017). PROTECTING VM REGISTER STATE WITH SEV-ES. “Secure Encrypted Virtualization” (SEV) from Advanced Micro Devices Corporation (AMD) described in https://www.amd.com/en/developer/sev.html by AMD], as well as “Trusted Domain Extensions” (TDX) from Intel Corporation described in [P.-C. Cheng et. al (2023). Intel TDX Demystified: A Top-Down Approach. In https://arxiv.org/abs/2303.15540 by IBM Research].

Solche manipulationssicheren Datenverarbeitungsumgebungen und die sie implementierende Verfahren vermitteln des Weiteren eine hohe Sicherheit gegen Verletzungen der Vertraulichkeit und/oder der Integrität, wenn die Schlüssel, die zur Verschlüsselung der Ergebnisse und Zwischenergebnisse der Datenverarbeitungsaufgaben verwendet werden, sobald diese die TEE verlassen, ausschließlich in einem eindeutig definierten und geschlossenen Verbund aus sicheren Datenverarbeitungsumgebungen erzeugt werden und diesen Verbund nicht verlassen. Such tamper-proof data processing environments and the procedures implementing them also provide a high level of security against breaches of confidentiality and/or integrity if the keys used to encrypt the results and intermediate results of the data processing tasks as soon as they leave the TEE are generated exclusively in a clearly defined and closed network of secure data processing environments and do not leave this network.

Um auch im Falle eines gleichzeitigen Ausfalls aller Datenverarbeitungsumgebungen des Verbunds den Verbund wieder starten zu können, teilen in manchen Ausgestaltungen solcher Verbünde manipulationssicherer Datenverarbeitungsumgebungen entsprechend dem Stand der Technik eine suffizient groß gewählte Gruppe von untereinander unabhängigen Auditoren des Systems ein initial automatisch erzeugtes Urgeheimnis, beispielsweise mit dem Verfahren „Shamir Secret Sharing“ [A. Shamir (1979). How to Share a Secret. Programming Techniques. Editor R. Rivest. Communications of the ACM. Vol. 22 Nr. 11.], das sie, nach einem erfolgreichen Abschluss des Audits eines Systems aus Datenverarbeitungsumgebungen, in diesem wieder erzeugen, indem eine suffiziente Teilmenge von Teilgeheimnissen (Sharmir-Parts) an einer Mensch-Maschine-Schnittstelle eingegeben wird. In order to be able to restart the network even in the event of a simultaneous failure of all data processing environments in the network, in some designs of such networks of tamper-proof data processing environments, in accordance with the state of the art, a sufficiently large group of mutually independent auditors of the system share an initially automatically generated original secret, for example using the “Shamir Secret Sharing” method [A. Shamir (1979). How to Share a Secret. Programming Techniques. Editor R. Rivest. Communications of the ACM. Vol. 22 No. 11.], which they recreate in a system of data processing environments after a successful completion of the audit by sufficient subset of partial secrets (Sharmir parts) is entered at a human-machine interface.

Bei den, dem Stand der Technik entsprechenden Verbunden aus Datenverarbeitungsumgebungen und den sie implementierenden Verfahren, ist i.d.R. die Konfiguration der zur Verteilung des Urgeheimnisses notwendigen technischen Parameter ein manueller Prozess, der jeweils individuell für jede Datenverarbeitungsumgebung einzeln vorzunehmen, und der außerdem Bestandteil der Prüfung der Implementierung durch unabhängige Auditoren ist. Um den Aufwand der manuellen Prozesse zu begrenzen, werden in Praxi lediglich Verbünde aus sicheren Datenverarbeitungsumgebungen gleicher Technik und Ausführung verwendet. In the case of state-of-the-art combinations of data processing environments and the processes that implement them, the configuration of the technical parameters required to distribute the original secret is usually a manual process that must be carried out individually for each data processing environment and is also part of the implementation review by independent auditors. In order to limit the effort of the manual processes, in practice only combinations of secure data processing environments with the same technology and design are used.

Daraus ergibt sich der Nachteil, dass der manuelle Prozess, der jeweils individuell für jede Datenverarbeitungsumgebung einzeln vorzunehmen ist, zeitraubend und kostenintensiv ist. Durch diesen Nachteil ist die Bildung und Erweiterung von großen Verbunden aus einer Vielzahl von sicheren Datenverarbeitungsumgebungen nicht praktikabel. The disadvantage of this is that the manual process, which has to be carried out individually for each data processing environment, is time-consuming and costly. This disadvantage makes the formation and expansion of large networks from a large number of secure data processing environments impractical.

Darüber hinaus ergibt sich der Nachteil, dass die Verwendung von verschiedenen Ausführungsarten sicherer Datenverarbeitungsumgebungen bei der Bildung eines Verbundes aus Datenverarbeitungsumgebungen einen zusätzlich hohen Zeitaufwand und Kosten zur Bildung eines Verbundes bedeutet. In addition, there is the disadvantage that the use of different types of secure data processing environments when forming a network of data processing environments means an additional high expenditure of time and costs for forming a network.

Des Weiteren ergibt sich der Nachteil, dass die manuellen Prozesse zur Einrichtung des Verbunds aus sicheren Datenverarbeitungsumgebungen Gegenstand des Missbrauchs des Privilegs zur Einrichtung des Verbunds werden können und so die Sicherheit gegen Verletzung der Vertraulichkeit, Integrität und Verfügbarkeit verloren gehen kann. A further disadvantage is that the manual processes for setting up the federation of secure data processing environments can become subject to abuse of the privilege for setting up the federation and thus the security against violations of confidentiality, integrity and availability can be lost.

Auch wenn entsprechend dem Stand der Technik mit Hilfe des sicheren Teilens eines gemeinsamen Urgeheimnisses das Zusammenwirken von mehreren unabhängigen Personen zur Bildung oder Erweiterung eines Verbundes erzwungen wird, ist ein arglistiges Zusammenwirken dieser Personen nicht ausgeschlossen. Außerdem kann es entsprechend dem Stand der Technik vorkommen, dass die zum Einrichten eines Verbundes oder zur Erweiterung eines bestehenden Verbundes notwendigen (Teil-)Geheim- nisträger nicht zur Verfügung stehen und so die Bildung eines Verbundes oder die Erweiterung eines bestehenden Verbundes unmöglich ist. Even if, in accordance with the state of the art, the cooperation of several independent persons to form or expand an association is enforced by means of the secure sharing of a common original secret, fraudulent cooperation between these persons cannot be ruled out. In addition, depending on the state of the art, it may happen that the (partial) secret holders required to set up a network or to expand an existing network are not available, making it impossible to set up a network or expand an existing network.

Bei einem Teil der entsprechend dem Stand der Technik ausgeführten sicheren Datenverarbeitungsumgebungen, beispielsweise bei jenen, die durch die Verschlüsselung von „virtuellen Maschinen“ gestaltet sind (wie beispielsweise TDX der Intel Corporation oder die „Secure Encrypted Virtualisation“ (SEV) der AMD Corporation), besteht neben der Kapselung der Verarbeitungsumgebung ein privilegierter Zugang und Zugriff zu den Rechenressourcen und den durch sie verarbeiteten Daten. Dieser privilegierte Zugang ist in manchen der Anwendungskonstellationen nicht nachteilig, beispielsweise wenn die Administratoren der Server ausgeschlossen sein sollen, jedoch den Administratoren der Anwendungslogik, also der Anwendungssoftware vertraut wird. In Konstellationen jedoch, in denen kein Administrator, auch nicht die Administratoren der Anwendungslogik die Vertraulichkeit und die Integrität der Daten verletzen können sollen, ist dieser verbliebene privilegierte Zugang und die damit verbundene Zugriffsmöglichkeiten auf die Ressourcen, auf die Codierung der Anwendungslogik und auf die von diesem verarbeiteten Daten ein Nachteil. In some of the secure data processing environments implemented in accordance with the state of the art, for example those designed by encrypting "virtual machines" (such as TDX from Intel Corporation or "Secure Encrypted Virtualization" (SEV) from AMD Corporation), in addition to the encapsulation of the processing environment, there is privileged access to the computing resources and the data processed by them. This privileged access is not disadvantageous in some of the application constellations, for example if the administrators of the servers are to be excluded, but the administrators of the application logic, i.e. the application software, are trusted. However, in constellations in which no administrator, not even the administrators of the application logic, should be able to violate the confidentiality and integrity of the data, this remaining privileged access and the associated access options to the resources, to the coding of the application logic and to the data processed by it is a disadvantage.

Aufgabe der Erfindung ist es daher, einen Verbund und ein Verfahren zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen bereitzustellen, welche, einen sehr hohen Schutz gegen die Verletzung der Vertraulichkeit der Daten und der sie verarbeitenden Programme, der Integrität der Daten und der sie verarbeitenden Programme und die Verfügbarkeit der Daten und der sie verarbeitenden Programme gewähren, ohne die Nachteile der aus dem Stand der Technik bekannten Verbünde und Verfahren zur Bildung solcher Verbünde aufzuweisen. The object of the invention is therefore to provide a network and a method for forming a network of secure data processing environments which provide a very high level of protection against the violation of the confidentiality of the data and the programs processing them, the integrity of the data and the programs processing them and the availability of the data and the programs processing them, without having the disadvantages of the networks and methods for forming such networks known from the prior art.

Diese Aufgabe wird erfindungsgemäß durch die Verfahren und Einrichtungen nach den unabhängigen Ansprüchen gelöst. Vorteilhafte Weiterbildungen sind in den jeweiligen abhängigen Ansprüchen angegeben. This object is achieved according to the invention by the methods and devices according to the independent claims. Advantageous further developments are specified in the respective dependent claims.

Die Erfindung betrifft einen Verbund und ein Verfahren zur Bildung eines Verbunds aus mindestens zwei sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), bei dem sich die sicheren Datenverarbeitungsumgebungen miteinander autonom koppeln und ohne eine menschliche Mitwirkung dergestalt, dass (Teil-)Geheimnisse oder Identitäten manuell eingegeben werden müssten, zu einem Verbund zusammenschließen, und/oder verbliebene privilegierte Zugriffe verschlossen werden, sodass die Komplexität und Kosten zur Bildung und Erweiterung von Verbunden aus sicheren Datenverarbeitungsumgebungen gegenüber dem Stand der Technik gering, entsprechend große Verbünde praktikabel und der Missbrauch von Privilegien sowie eine arglistige Verletzung der Vertraulichkeit und Integrität der Daten und/oder der die Daten verarbeitende Programme weitgehend ausgeschlossen sind. The invention relates to a network and a method for forming a network of at least two secure data processing environments (Network of Trusted Execution Environments), in which the secure data processing environments are coupled to each other autonomously and without human intervention in such a way that (partial) secrets or identities would have to be entered manually, combine to form a network and/or lock remaining privileged accesses, so that the complexity and costs of forming and expanding networks of secure data processing environments are low compared to the state of the art, correspondingly large networks are practicable and the misuse of privileges as well as a fraudulent violation of the confidentiality and integrity of the data and/or the programs processing the data are largely excluded.

Die Erfindung weist insbesondere folgende Vorteile auf: The invention has the following particular advantages:

1. Da die sicheren Datenverarbeitungsumgebungen eines zur Bildung eines Verbundes aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments) definierten, initialen Satzes an sicheren Datenverarbeitungsumgebungen, dessen sichere Datenverarbeitungsumgebungen sich gegenseitig ihre Eigenschaft als sichere Datenverarbeitungsumgebung attestieren können, erfindungsgemäß untereinander autonom bestimmen, welche der sicheren Datenverarbeitungsumgebung das Urgeheimnis erzeugt, das anschließend den beteiligten und in Erweiterungen hinzutretenden sicheren Datenverarbeitungsumgebungen übermittelt wird, sind sowohl die Komplexität und die Kosten zum Aufbau eines Verbundes aus sicheren Datenverarbeitungsumgebungen gegenüber dem Stand der Technik wesentlich vermindert als auch die Sicherheit gegenüber dem Stand der Technik erhöht, da der Missbrauch eines bei manuellen Eingriffen unvermeidlichen Privilegs der Administratoren weitgehend ausgeschlossen ist. 1. Since the secure data processing environments of an initial set of secure data processing environments defined to form a network of secure data processing environments (Network of Trusted Execution Environments), whose secure data processing environments can mutually attest to their status as a secure data processing environment, determine autonomously among themselves which of the secure data processing environments generates the original secret, which is then transmitted to the participating secure data processing environments and to the additional secure data processing environments, both the complexity and the costs of setting up a network of secure data processing environments are significantly reduced compared to the state of the art and security is increased compared to the state of the art, since the misuse of an administrator privilege that is unavoidable in the case of manual interventions is largely excluded.

2. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, bei Erweiterungen einem Verbund hinzugefügte sichere Datenverarbeitungsumgebungen, die Identität und die Entstehungshistorie des Verbundes automatisch zu übermitteln, sind die Komplexität und die Kosten zur Erweiterung eines Verbundes aus sicheren Datenverarbeitungsumgebungen gegenüber dem Stand der Technik wesentlich vermindert. 2. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for automatically transmitting secure data processing environments added to a network when it is expanded, the identity and the creation history of the network, the complexity and costs for expanding a network of secure data processing environments are significantly reduced compared to the prior art.

3. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, weitere Geheimnisse, die für den Betrieb des Verbundes aus Datenverarbeitungsumgebungen und/oder Software-Instanzen des Verbundes notwendig sind, vom Urgeheimnis eindeutig und wiederholbar eindeutig abzuleiten, ist es möglich mit derart zustandslosen sicheren Datenverarbeitungsumgebungen mit geringer Komplexität und geringen Kosten große Verbünde aus vielen sicheren Datenverarbeitungsumgebungen zu bilden und dadurch eine besonders hohen Schutz gegen den Verlust des Urgeheimnisses zu erlangen. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, zur Erzeugung des Urgeheimnisses weder auf die Beteiligung von menschlichen Personen durch die Eingabe von (Teil-)Geheimnissen an einer Mensch-Maschine-Schnittstelle, noch die Eingabe von Identitäten einer der beteiligten sicheren Datenverarbeitungsumgebungen zurückzugreifen zu müssen, kann zum einen kein arglistiges Verhalten zum Verlust der Vertraulichkeit oder der Integrität führen und zum anderen keine Situationen eintreten, in denen zur Bildung oder Erweiterung eines Verbundes aus sicheren Datenverarbeitungsumgebungen die notwendigen menschliche Personen als Träger von (Teil-)Geheimnissen nicht zur Verfügung stehen. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, neben der Erzeugung des Urgeheimnisses auch weitere Teile des Verfahrens zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen zu automatisieren, wird die Komplexität und die Kosten der Bildung großer Verbünde aus vielen sicheren Datenverarbeitungsumgebungen weiter verringert. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, das Urgeheimnis und weitere Geheimnisse durch Verfahrensteile zu erzeugen, die unabhängig von der zum Einsatz kommenden Ausgestaltung der sicheren Datenverarbeitungsumgebungen ausgeführt sind, können verschiedene Ausführungen von sicheren Datenverarbeitungsumgebungen gemischt in einem Verbund zum Einsatz kommen, was für das Verfahren und die resultierende Verbünde eine vorteilhafte Flexibilisierung bedeutet. Es können verschiedene Ausführungen sicherer Datenverarbeitungsumgebungen mit unterschiedlichen, für die Praxis relevanten Eigenschaften gemischt eingesetzt werden und so durch eine bessere Anpassung an praktische Bedarfe Kosten reduziert werden. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, eine erste sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über einen privilegierten Zugriff verfügt mit einer zweiten sicheren Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügt, dergestalt einen Verbund aus sicheren Datenverarbeitungsumgebungen zu bilden, dass die zweite sichere Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügt, exklusiv den privilegierten Zugriff der ersten sicheren Datenverarbeitungsumgebung steuert, ist in der erfindungsgemäßen Kombination beider sicheren Datenverarbeitungsumgebungen kein privilegierten Zugriff mehr gegeben und somit eine Verletzung der Vertraulichkeit der Daten und der sie verarbeitenden Programme und der Integrität der Daten und der sie verarbeitenden Programme weitestgehend ausgeschlossen. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, mehrere sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügen, zu nutzen, um den oder die privilegierten Zugriffe einer oder mehrerer sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über einen privilegierten Zugriff verfügen, exklusiv zu steuern, können komplexe und umfangreiche Softwarepakete und Anwendungslogik gegen eine Verletzung der Vertraulichkeit der Daten und der sie verarbeitenden Programme, der Integrität der Daten und der sie verarbeitenden Programme und eine Verletzung der Verfügbarkeit der Daten und der sie verarbeitenden Programme weitestgehend geschützt werden. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen des Weiteren geeignet sind, die sicheren Datenverarbeitungsumgebungen über eine positiv definierte Liste von Befehlen zur Ausführung von Administrationstätigkeiten zu administrieren, ergibt sich der Vorteil, dass eine flexible Wartung der durch die sicheren Datenverarbeitungsumgebungen ausgeführten Programme möglich ist. 10. Da die erfindungsgemäßen Verfahren und Einrichtungen zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen schließlich geeignet sind, dass ein oder mehrere sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügen, und in verschachtelter Weise innerhalb einer sicheren Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keine privilegierte, uneingeschränkte Zugriffsmöglichkeit, jedoch über eine Schnittstelle verfügt, über die eine Mehrzahl von positiv definierten Befehlen zur Ausführung von Administrationstätigkeiten ausgelöst werden können, betrieben werden, welche die positiv definierten Befehle zur Ausführung von Administrationstätigkeiten exklusiv steuern, ergibt sich der Vorteil, dass dadurch eine flexible Verteilung der Verantwortlichkeiten zu verschiedenen Administratoren möglich ist. 3. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for protecting other secrets that for the operation of the network of data processing environments and/or software instances of the network, can be clearly and repeatably derived from the original secret, it is possible to form large networks of many secure data processing environments with such stateless secure data processing environments with low complexity and low costs and thus to achieve a particularly high level of protection against the loss of the original secret. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for not having to resort to the involvement of human persons by entering (partial) secrets at a human-machine interface, nor the entry of identities of one of the secure data processing environments involved, on the one hand no fraudulent behavior can lead to a loss of confidentiality or integrity and on the other hand no situations can arise in which the necessary human persons as bearers of (partial) secrets are not available to form or expand a network of secure data processing environments. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for automating not only the generation of the original secret but also other parts of the method for forming a network of secure data processing environments, the complexity and costs of forming large networks of many secure data processing environments are further reduced. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for generating the original secret and other secrets by method parts that are implemented independently of the design of the secure data processing environments used, different versions of secure data processing environments can be used mixed in a network, which means an advantageous flexibility for the method and the resulting networks. Different versions of secure data processing environments with different, practically relevant Properties can be used in a mixed manner, thus reducing costs through better adaptation to practical requirements. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for forming a network of secure data processing environments, a first secure data processing environment which, according to its design, has privileged access, with a second secure data processing environment which, according to its design, does not have privileged access, in such a way that the second secure data processing environment which, according to its design, does not have privileged access, exclusively controls the privileged access of the first secure data processing environment, privileged access is no longer given in the inventive combination of the two secure data processing environments, and thus a violation of the confidentiality of the data and the programs which process them, and of the integrity of the data and the programs which process them, is largely excluded. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for using several secure data processing environments, which according to their design do not have privileged access, to exclusively control the privileged access(s) of one or more secure data processing environments, which according to their design have privileged access, complex and extensive software packages and application logic can be largely protected against a violation of the confidentiality of the data and the programs that process them, the integrity of the data and the programs that process them, and a violation of the availability of the data and the programs that process them. Since the methods and devices according to the invention for forming a network of secure data processing environments are also suitable for administering the secure data processing environments via a positively defined list of commands for carrying out administration activities, the advantage arises that flexible maintenance of the programs executed by the secure data processing environments is possible. 10. Since the methods and devices according to the invention for forming a network of secure data processing environments are finally suitable for one or more secure data processing environments, which according to their design do not have privileged access, and in a nested manner within a secure data processing environment, which according to its design does not have privileged, unrestricted access but does have an interface via which a plurality of positively defined commands for carrying out administration activities can be triggered, which exclusively control the positively defined commands for carrying out administration activities, this results in the advantage that this enables a flexible distribution of responsibilities to different administrators.

Einzelheiten und Merkmale der Erfindung sowie konkrete Ausführungsbeispiele der Erfindung ergeben sich aus der nachfolgenden Beschreibung in Verbindung mit den Zeichnungen. Es zeigt: Details and features of the invention as well as concrete embodiments of the invention emerge from the following description in conjunction with the drawings. It shows:

Fig. 1 ein Blockdiagramm eines erfindungsgemäßen Verbundes aus sicheren Datenverarbei- tungsumgebungen zur Erläuterung des erfindungsgemäßen Verfahrens zur Bildung ei- nes solchen Verbundes mit den Bezeichnungen: Fig. 1 is a block diagram of an inventive network of secure data processing environments to explain the inventive method for forming such a network with the designations:

V-DVU Verbund aus sicheren DatenverarbeitungsumgebungenV-DVU network of secure data processing environments

S1 bis Sn Server 1 bis Server n S1 to Sn Server 1 to Server n

DVU 1,1 bis DVUl,ml sichere Datenverarbeitungsumgebung 1 des Servers 1 bis sichere Datenverarbeitungsumgebung ml des Servers 1DVU 1,1 to DVUl,ml secure data processing environment 1 of server 1 to secure data processing environment ml of server 1

DVUn,l bis DVUn,mn sichere Datenverarbeitungsumgebung 1 des Servers n bis sichere Datenverarbeitungsumgebung mn des Servers nDVUn,l to DVUn,mn secure data processing environment 1 of server n to secure data processing environment mn of server n

KS1 bis KSh Konfigurations-Server 1 bis Konfigurations-Server hKS1 to KSh Configuration Server 1 to Configuration Server h

AVS1 bis AVSk Authentizitäts-Verifikations-Server 1 bis Authentizitäts-AVS1 to AVSk Authenticity Verification Server 1 to Authenticity

Verifikations-Server k verification server k

Fig. 2 ein Zustandsdiagramm eines Ausführungsbeispiels des erfindungsgemäßen Verfahrens zur Bildung eines Verbundes aus sicheren Datenverarbeitungsumgebungen mit den Bezeichnungen: Z1 bis Z6 Zustände der sicheren Datenverarbeitungsumgebungen 1 bis 6 mit den Bezeichnungen „UNINITIALIZED“, „NEGOTIATION PHASE“, „EXCHANGE KEY PHASE“, „VERIFICATION PHASE“, „ONLINE“, und „IMPORT PHASE“ Fig. 2 shows a state diagram of an embodiment of the method according to the invention for forming a network of secure data processing environments with the designations: Z1 to Z6 States of the secure data processing environments 1 to 6 with the designations “UNINITIALIZED”, “NEGOTIATION PHASE”, “EXCHANGE KEY PHASE”, “VERIFICATION PHASE”, “ONLINE”, and “IMPORT PHASE”

BOO Zustandsänderung bei Initialisierung des Bootstrap-Teilverfahrens “INIT BOOTSTRAP” BOO State change during initialization of the bootstrap subprocedure “INIT BOOTSTRAP”

AND Einholen der Akzeptanz der Verhandlungsdaten “ACCEPT NEGOTIATION DATA“ AND Obtaining acceptance of the negotiation data “ACCEPT NEGOTIATION DATA“

ASA Zustandsänderung sobald alle initial beteiligten sicheren Datenverarbeitungsumgebungen die Prüfungen des zuletzt aktuellen Zustands akzeptiert haben: „ALL SEEDS ACCEPTED“ ASA state change as soon as all initially involved secure data processing environments have accepted the checks of the last current state: “ALL SEEDS ACCEPTED”

AKD Einholen der Akzeptanz der Schlüsseldaten „ACCEPT KEY DATA“ AVR Einholen der Akzeptanz der Überprüfungsberichts „ACCEPT VERIFICATION REPORT“ AKD Obtaining acceptance of the key data “ACCEPT KEY DATA” AVR Obtaining acceptance of the verification report “ACCEPT VERIFICATION REPORT”

IMP Zustandsänderung zur Initialisierung einer Erweiterung des Verbundes durch eine Hinzufügung einer sicheren Datenverarbeitungsumgebung „INIT IMPORT“ IMP State change to initialize an extension of the network by adding a secure data processing environment “INIT IMPORT”

AIM Einholen der Akzeptanz der bestehenden Daten des Verbunds „ACCEPT IMPORT DATA“ AIM Obtaining acceptance of the existing data of the network “ACCEPT IMPORT DATA”

RST Zustandsänderung um zum Ausgangszustand zurückzukehren „RESET“ RST state change to return to the initial state “RESET”

Fig. 3 dasselbe Blockdiagramm wie in Fig. 1, wobei der Verbund aus sicheren Datenverarbeitungsumgebungen zur Erläuterung des Verfahrensteils zur Erweiterung des Verbundes ein Server mit einer oder mehreren sicheren Datenverarbeitungsumgebungen mit folgender Bezeichnung hinzugefügt ist: Sn+1 Server n+1 Fig. 3 is the same block diagram as in Fig. 1, wherein the network of secure data processing environments is added to explain the method part for extending the network, a server with one or more secure data processing environments with the following designation: Sn+1 Server n+1

Fig.4 ein Sammlung aus 4 Blockdiagrammen a), b), c) und d) zur Erläuterung des erfindungsgemäßen Verfahrens zur Bildung eines Verbundes aus sicheren Ausführungsumgebungen mit den Bezeichnungen: Fig.4 is a collection of 4 block diagrams a), b), c) and d) to explain the method according to the invention for forming a network of secure execution environments with the designations:

V-DVU Verbund aus sicheren AusführungsumgebungenV-DVU network of secure execution environments

S 1 bis S4 Server 1 bis Server 4 DVU1 und DVU3 sichere Datenverarbeitungsumgebungen, die einen privilegierten Zugang und Zugriff aufweisen S 1 to S4 Server 1 to Server 4 DVU1 and DVU3 secure data processing environments that have privileged access and access

PZ Privilegierter Zugang und Zugriff PZ Privileged Access and Access

DVU2 und DVU4 sichere Datenverarbeitungsumgebungen, die keinen privilegierten Zugang und Zugriff aufweisen DVU2 and DVU4 secure data processing environments that do not have privileged access and access

ALI und AL2 Anwendungslogik 1 und Anwendungslogik 2 ALI and AL2 Application Logic 1 and Application Logic 2

AC1 Administrator-Client 1 AC1 Administrator Client 1

NC1,1 bis NCl,p Nutzer-Client der ALI 1 bis Nutzer-Client der ALI pNC1,1 to NCl,p User client of ALI 1 to User client of ALI p

NC2,1 bis NC2,q Nutzer-Client der AL2 1 bis Nutzer-Client der ALI qNC2,1 to NC2,q User client of AL2 1 to User client of ALI q

AZL1 Anwenderzugriffslogik 1 AZL1 User Access Logic 1

Fig.4 ein Sammlung aus 2 Blockdiagrammen a) und b) zur Erläuterung des erfindungsgemä- ßen Verfahrens zur Bildung eines Verbundes aus sicheren Ausführungsumgebungen mit den Bezeichnungen: Fig.4 a collection of 2 block diagrams a) and b) to explain the method according to the invention for forming a network of secure execution environments with the designations:

V-DVU Verbund aus sicheren AusführungsumgebungenV-DVU network of secure execution environments

S5 bis S8 Server 5 bis Server 8 S5 to S8 Server 5 to Server 8

DVU5 und DVU6 sichere Datenverarbeitungsumgebungen, die einen privilegierten Zugang und Zugriff aufweisen DVU5 and DVU6 secure data processing environments that have privileged access and access

PZ Privilegierter Zugang und Zugriff PZ Privileged Access and Access

DVUC7 und DVUC8 Kontrolleinheiten (Controller) der sicheren Datenverarbeitungsumgebungen 7 und 8 DVUC7 and DVUC8 Control units (controllers) of the secure data processing environments 7 and 8

DVU7 und DVU8 sichere Datenverarbeitungsumgebungen, die keinen privilegierten Zugang und Zugriff mehr aufweisen DVU7 and DVU8 secure data processing environments that no longer have privileged access

AL5 bis AL8 Anwendungslogik 5 bis Anwendungslogik 8 AL5 to AL8 Application Logic 5 to Application Logic 8

AC56 Administrator-Client für DVU5 und DVU6 AC56 Administrator Client for DVU5 and DVU6

AC78 Administrator-Client für DVU7 und DVU8 AC78 Administrator Client for DVU7 and DVU8

NC5,1 bis NC5,p Nutzer-Client 1 bis p der AL5 NC5,1 to NC5,p User client 1 to p of AL5

NC6,1 bis NC6,q Nutzer-Client 1 bis q der AL6 NC6,1 to NC6,q User client 1 to q of AL6

NC7,1 bis NC7,r Nutzer-Client 1 bis r der AL7 NC7,1 to NC7,r User client 1 to r of AL7

NC8,1 bis NC8,s Nutzer-Client 1 bis s der AL8 Mit den erfindungsgemäßen Einrichtungen und den erfindungsgemäßen Verfahren werden sowohl ein adäquater Schutz gegen Verletzungen der Vertraulichkeit der Daten und/oder diese verarbeitende Programme, der Integrität der Daten und/oder diese verarbeitende Programme und/oder der Vertraulichkeit der Daten und/oder diese verarbeitende Programme, als auch eine Verringerung der Komplexität und der Kosten der Bildung eines Verbundes aus sicheren Datenverarbeitungsumgebungen ermöglicht. NC8,1 to NC8,s User client 1 to s of the AL8 The devices and methods according to the invention enable adequate protection against violations of the confidentiality of the data and/or programs processing them, the integrity of the data and/or programs processing them and/or the confidentiality of the data and/or programs processing them, as well as reducing the complexity and costs of forming a network of secure data processing environments.

Die in Fig. 1 gezeigte Mehrzahl von m sicheren Datenverarbeitungsumgebungen DVU 1,1, DVU1,2 bis DVUl,ml sind Bestandteile einer ersten Datenverarbeitungseinrichtung, die in Praxi „Server“, hier Sever 1 (Sl), genannt werden. Solche Server umfassen unter anderem aus einem Gehäuse, aus einer Stromversorgung, den Netzwerkkomponenten, den persistenten und volatilen Speichereinheiten sowie einer oder mehreren Prozessoreinheiten. Die sicheren Datenverarbeitungsumgebungen sind, je nach Ausführung, beispielsweise als Bestandteile der Prozessoreinheiten und des Arbeitsspeichers mithilfe von Firmware, d.h. Erweiterung der maschinennahen Befehlssätze implementiert (z.B. Software Guard Extensions Secure Encrypted Virtualisation oder Trusted Domain Extension). Bei der Initiierung einer sicheren Datenverarbeitungsumgebung durch Software-Programme, die auf einem der Prozessoren des Servers ausgeführt werden, wird festgelegt, welche Schlüssel durch die sichere Datenverarbeitungsumgebung zur Verschlüsselung der Daten herangezogen werden, die in den volatilen Arbeitsspeicher (random access memory, RAM) oder in den persistentem Speicher (Storage) geschrieben werden. Die Schlüssel werden bei manchen Ausführungen von sicheren Datenverarbeitungsumgebungen in speziellen, nur dafür auf den Prozessorchips vorgesehenen Registern geschrieben. The plurality of m secure data processing environments DVU 1,1, DVU1,2 to DVUl,ml shown in Fig. 1 are components of a first data processing device, which in practice is called a "server", here Sever 1 (Sl). Such servers comprise, among other things, a housing, a power supply, the network components, the persistent and volatile storage units and one or more processor units. Depending on the design, the secure data processing environments are implemented, for example, as components of the processor units and the main memory using firmware, i.e. extension of the machine-level instruction sets (e.g. Software Guard Extensions Secure Encrypted Virtualisation or Trusted Domain Extension). When a secure computing environment is initiated by software programs running on one of the server's processors, it is determined which keys the secure computing environment will use to encrypt data written to the volatile memory (random access memory, RAM) or to the persistent memory (storage). In some versions of secure computing environments, the keys are written in special registers on the processor chips that are intended only for this purpose.

Weitere sichere Datenverarbeitungsumgebungen DVUa,b, wobei a aus { 1, 2, .. n} ist sowie b aus { 1, 2, .. ma} ist, werden durch eine Vielzahl von Servern, der Server 2 (S2), Server 3 (S3) bis Server n (Sn) bereitgestellt. Alle diese sicheren Datenverarbeitungsumgebungen sind ihrer Identität und ihrer spezifischen technischen Ausführung nach bei den Konfigurations-Servern 1 (KS1) bis Konfigurations-Server h (KSh) registriert und beziehen von dort beim Systemstart sämtliche Software und Konfigurationsinformationen. Diese beinhalten unter anderem die Information, welche sicheren Datenverarbeitungsumgebungen zu dem zu bildenden Verbund aus diesem definierten Satz aus sicheren Datenverarbeitungsumgebungen gehören. Zusätzlich sind alle diese sicheren Datenverarbeitungsumgebungen ihrer Identität und ihrer spezifischen technischen Ausführung nach bei den Authentizitäts-Verifikations-Servern 1 (AVS1) bis k (AVSk) registriert. Dies bedeutet, dass sich die Datenverarbeitungsumgebungen mit Hilfe der Authentizitäts-Verifikations-Servern 1 (AVS1) bis k (AVSk) untereinander attestieren können, dass sie grundsätzlich berechtigt sind an der erfindungsgemäßen Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen (V-DVU) teilzunehmen. Additional secure data processing environments DVUa,b, where a is one of { 1, 2, .. n} and b is one of { 1, 2, .. ma}, are provided by a large number of servers, server 2 (S2), server 3 (S3) to server n (Sn). All of these secure data processing environments are registered with configuration servers 1 (KS1) to configuration server h (KSh) according to their identity and specific technical design and obtain all software and configuration information from there when the system starts. This includes, among other things, information about which secure data processing environments belong to the network to be formed from this defined set of secure data processing environments. In addition, all of these secure data processing environments are registered with the authenticity verification servers 1 (AVS1) to k (AVSk) according to their identity and their specific technical design. This means that the data processing environments can attest to each other with the help of the authenticity verification servers 1 (AVS1) to k (AVSk) that they are fundamentally entitled to participate in the inventive formation of a network of secure data processing environments (V-DVU).

Mindestens zwei sichere Datenverarbeitungsumgebungen DVUc,d und DVUe,f wobei c und e aus { 1, 2, .. n}, d aus { 1, 2, .. md} und f aus { 1, 2, .. me} sind, sowie fallweise weitere sichere Datenverarbeitungsumgebungen, bilden zusammen die Saat (Seed) an Datenverarbeitungsumgebungen aus denen sich erfindungsgemäß der Verbund aus sicheren Datenverarbeitungsumgebungen konstituiert. At least two secure data processing environments DVUc,d and DVUe,f, where c and e are from { 1, 2, .. n}, d from { 1, 2, .. md} and f from { 1, 2, .. me}, as well as additional secure data processing environments on a case-by-case basis, together form the seed of data processing environments from which the network of secure data processing environments is constituted according to the invention.

Der zuvor genannte Attestierungsprozess ist kryptografisch implementiert, d.h. eine zentrale Infrastruktur von zu den sichere Datenverarbeitungsumgebungen DVUa,b gehörenden öffentlichen und privaten Schlüsselpaaren (public key infrastructure) wird durch den Betreiber des Verbunds V-DVU initialisiert. Er nutzt dafür eine mindestens einen Authentizitäts-Verifikations-Server umfassende Teilmenge der k Authentizitäts-Verifikations-Server (in Fig. 1 mit AVS1 bis AVSk bezeichnet). Um eine hohe Verfügbarkeit des Authentizitäts-Verifikations-Dienstes zu ermöglichen, kann vorteilhaft eine Teilmenge von mehreren Authentizitäts-Verifikations-Servern genutzt werden. Diese kann der Betreiber des Verbunds V-DVU nutzen um die Authentizität der sicheren Datenverarbeitungsumgebungen vom Hersteller dieser sicheren Datenverarbeitungsumgebungen bestätigen zu lassen. The aforementioned attestation process is implemented cryptographically, i.e. a central infrastructure of public and private key pairs belonging to the secure data processing environments DVUa,b (public key infrastructure) is initialized by the operator of the V-DVU network. To do this, he uses a subset of the k authenticity verification servers (designated AVS1 to AVSk in Fig. 1) that includes at least one authenticity verification server. In order to enable a high level of availability of the authenticity verification service, a subset of several authenticity verification servers can advantageously be used. The operator of the V-DVU network can use these to have the authenticity of the secure data processing environments confirmed by the manufacturer of these secure data processing environments.

Wenn beispielsweise eine sichere Datenverarbeitungsumgebungen DVUc,d, die Authentizität einer zweiten sicheren Datenverarbeitungsumgebungen DVUe,f als vom Hersteller als sichere Datenverarbeitungsumgebungen bezeichnet attestiert bekommen muss, sendet in diesem Beispiel die sichere Datenverarbeitungsumgebungen DVUc,d eine Nachricht an einen der Authentizitäts- Verifikations-Server AVSh+1 bis AVSk mit der Anfrage ob die sichere Datenverarbeitungsumgebung DVUe,f tatsächlich eine sichere Datenverarbeitungsumgebung im Sinne des Herstellers der eine sichere Datenverarbeitungsumgebung bezüglich Herkunft und Stand der maschinennahen Programme ist. Diese können aufgrund der stets aktualisierten Berichte zu hergestellten sicheren Datenverarbeitungsumgebungen und den Ständen der maschinennahen Software die Anfrage zuverlässig beantworten. So wird die Zugehörigkeit der sicheren Datenverarbeitungsumgebung DVUe,f zur Saat für die sichere Datenverarbeitungsumgebung DVUc,d attestiert. So können alle sicheren Datenverarbeitungsumgebungen sich der Authentizität der jeweils anderen sicheren Datenverarbeitungsumgebung der Saat versichern. If, for example, a secure data processing environment DVUc,d needs to have the authenticity of a second secure data processing environment DVUe,f, designated by the manufacturer as a secure data processing environment, attested, in this example the secure data processing environment DVUc,d sends a message to one of the authenticity verification servers AVSh+1 to AVSk with the request whether the secure data processing environment DVUe,f is actually a secure data processing environment in the sense of the manufacturer of a secure data processing environment with regard to the origin and status of the machine-related programs. These can be verified based on the constantly updated reports on the secure Data processing environments and the status of the machine-related software can answer the query reliably. This attests to the fact that the secure data processing environment DVUe,f belongs to the seed for the secure data processing environment DVUc,d. This way, all secure data processing environments can ensure the authenticity of the other secure data processing environments of the seed.

Zusätzlich können die sicheren Datenverarbeitungsumgebungen DVUc,d und DVUe,f sich gegenseitig die Authentizität der die sicheren Datenverarbeitungsumgebungen steuernde Programme versichern, indem sie eine Messung (measurement) der Programme vergleichen oder die Identität des signierenden Auditors vergleichen. Eine solche Messung ist die Anwendung einer Einwegfunktion (Hash) auf den zu messenden Code. In addition, the secure computing environments DVUc,d and DVUe,f can mutually assure each other of the authenticity of the programs controlling the secure computing environments by comparing a measurement of the programs or comparing the identity of the signing auditor. Such a measurement is the application of a one-way function (hash) to the code to be measured.

Die erfindungsgemäße autonome Bestimmung des gemeinsamen Urgeheimnisses, unter den dem definierten Satz aus £

Figure imgf000015_0001
sicheren Datenverarbeitungsumgebungen angehörenden sicheren Datenverarbeitungsumgebungen erfolgt schrittweise mit der Initiierung der
Figure imgf000015_0002
mi sicheren Datenverarbeitungsumgebungen durch den Betreiber des Verbundes der Datenverarbeitungsumgebungen V-DVU. The inventive autonomous determination of the common original secret, under the defined set of £
Figure imgf000015_0001
The implementation of secure data processing environments belonging to secure data processing environments will be carried out gradually with the initiation of the
Figure imgf000015_0002
with secure data processing environments by the operator of the V-DVU network of data processing environments.

In Fig. 2 sind insgesamt sieben Zustände ZI bis Z7 eines Ausführungsbeispiels des Verfahrens zur autonomen Bestimmung des gemeinsamen Urgeheimnisses gezeigt, von denen zunächst jedoch nur die Zustände ZI bis Z6 betrachtet werden. In Fig. 2, a total of seven states ZI to Z7 of an embodiment of the method for the autonomous determination of the common original secret are shown, of which initially only the states ZI to Z6 are considered.

Wird eine sichere Datenverarbeitungsumgebung aus der Saat aus sicheren Datenverarbeitungsumgebungen vom Betreiber des Verbundes der Datenverarbeitungsumgebungen V-DVU gestartet, so wechselt diese sichere Datenverarbeitungsumgebungen durch die Initialisierung des Bootstrap- Teilverfahrens “INIT BOOTSTRAP” (BOO) vom Zustand „UNINITIALIZED“ (ZI) in den Zustand „NEGOTIATION PHASE“ (Z2). If a secure data processing environment is started from the seed of secure data processing environments by the operator of the V-DVU network of data processing environments, this secure data processing environment changes from the state “UNINITIALIZED” (ZI) to the state “NEGOTIATION PHASE” (Z2) by initializing the bootstrap sub-procedure “INIT BOOTSTRAP” (BOO).

In diesem Zustand Z2 erzeugt jede sichere Datenverarbeitungsumgebung zunächst zufällig oder quasi-zufällig ein asymmetrisches Kommunikationsschlüsselpaar, das zur sicheren Kommunikation der sicheren Datenverarbeitungsumgebungen der Saat untereinander vorgesehen ist, denn es wird davon ausgegangen, dass die Übertragungskanäle zwischen den sicheren Datenverarbeitungsumgebungen unsicher sein können. Der öffentliche Schlüssel dieses Kommunikationsschlüsselpaars wird mit dem für die sicheren Datenverarbeitungsumgebung charakteristischen Signaturschlüssel signiert und dieser signierte Kommunikationsschlüssel als Tupel mit dem öffentlichen Kommunikationsschlüssel an alle anderen sicheren Datenverarbeitungsumgebungen der Saat gesandt und um Erwiderung mit dem signierten öffentlichen Schlüssel der anderen sicheren Datenverarbeitungsumgebungen gebeten. Nach Erhalt der signierten öffentlichen Schlüssel der anderen sicheren Datenverarbeitungsumgebungen wird die Authentizität des öffentlichen Schlüssels überprüft („ACCEPT NEGOTIATION DATA“, AND). In this state Z2, each secure data processing environment initially randomly or quasi-randomly generates an asymmetric communication key pair that is intended for secure communication between the secure data processing environments of the seed, because it is assumed that the transmission channels between the secure data processing environments can be insecure. The public key of this The communication key pair is signed with the signature key characteristic of the secure data processing environment and this signed communication key is sent as a tuple with the public communication key to all other secure data processing environments of the seed and a response is requested with the signed public key of the other secure data processing environments. After receiving the signed public keys of the other secure data processing environments, the authenticity of the public key is checked (“ACCEPT NEGOTIATION DATA”, AND).

Sobald die öffentlichen Schlüssel aller anderen sicheren Datenverarbeitungsumgebung mittels der beschriebenen „Verhandlung“ AND erfolgreich überprüft wurden, wird vom Zustand „NEGOTIATION PHASE“ (Z2) zum nächsten Zustand „EXCHANGE KEY PHASE“ (Z3) gewechselt („ALL SEEDS ACCEPTED“, ASA). As soon as the public keys of all other secure data processing environments have been successfully verified using the described “negotiation” AND, the state “NEGOTIATION PHASE” (Z2) changes to the next state “EXCHANGE KEY PHASE” (Z3) (“ALL SEEDS ACCEPTED”, ASA).

In diesem Zustand Z3 erzeugt jede sichere Datenverarbeitungsumgebung einen zufälligen oder quasi- zufälligen eigenen Vorschlag für das Urgeheimnis zusammen als Tupel mit einer besonders genauen (double variable) zufälligen oder quasi-zufälligen Pseudo-Uhrzeit (clock) und tauschen dieses Tupel mit allen anderen sicheren Datenverarbeitungsumgebungen der Saat aus („ACCEPT KEY DATA“, AKD). Daran anschließend werden alle Tupel der individuellen, je eigenen Vorschläge für das Urgeheimnis und der Pseudo-Uhrzeiten entsprechend der Werte der Pseudo-Uhrzeiten sortiert. Sollte sich dabei ein Konflikt dadurch ergeben, dass zwei oder mehr Pseudo-Uhrzeiten denselben Wert aufweisen, wird das Verfahren zurückgesetzt („RESET“, RST). Sollte sich eine eindeutige Reihenfolge der Tuple („Entstehungshistorie“ bzw. „Entstehungspseudohistorie“, da die „Uhrzeiten“ Pseudo-Uhrzeiten sind“) ergeben, dann wird der Prozess fortgesetzt. In this state Z3, each secure data processing environment generates its own random or quasi-random proposal for the original secret together as a tuple with a particularly precise (double variable) random or quasi-random pseudo-clock and exchanges this tuple with all other secure data processing environments of the seed (“ACCEPT KEY DATA”, AKD). Afterwards, all tuples of the individual, own proposals for the original secret and the pseudo-clocks are sorted according to the values of the pseudo-clocks. If a conflict arises because two or more pseudo-clocks have the same value, the process is reset (“RESET”, RST). If a clear order of the tuples (“creation history” or “creation pseudo-history”, since the “clocks” are pseudo-clocks) is found, then the process is continued.

Sobald alle Tupel mit den für die sicheren Datenverarbeitungsumgebungen individuellen, je eigenen Vorschläge für das Urgeheimnis und der Pseudo-Uhrzeit eingesammelt und jeweils auf deren Authentizität überprüft sind („ALL SEEDS ACCEPTED“, ASA), wird vom Zustand Z3 zum nächsten Zustand „VERIFICATION PHASE“ (Z4) gewechselt. As soon as all tuples with the individual suggestions for the original secret and the pseudo-time for the secure data processing environments have been collected and checked for their authenticity (“ALL SEEDS ACCEPTED”, ASA), the system switches from state Z3 to the next state “VERIFICATION PHASE” (Z4).

In diesem Zustand Z4 wird durch jede sichere Datenverarbeitungsumgebung die in Zustand Z3 erzeugte und sortierte Liste von Tupel mit dem für jede sichere Datenverarbeitungsumgebung charakteristischem Schlüssel verschlüsselt und an alle anderen sicheren Datenverarbeitungsumgebungen versandt. Darauf folgend wird ein durch eine Einwegfunktion (Hash) erzeugte Kennung der selbst erzeugten Liste mit den ebenfalls durch eine Einwegfunktion erzeugten Kennungen der Listen der anderen sicheren Datenverarbeitungsumgebungen verglichen „ACCEPT VERIFICATION REPORT“. Sollte sich ein Konflikt ergeben, d.h. eine oder mehrere Listen bzw. die eindeutigen Kennungen der Listen unterscheiden sich voneinander, wird das Verfahren zurückgesetzt (RST). Schließlich wird von der Liste derjenige Vorschlag für das gemeinsame Urgeheimnis ausgewählt, das beispielsweise den höchsten Wert für die Pseudo-Uhrzeit aufweist. Auf diese Weise verfügen alle beteiligten sicheren Datenverarbeitungsumgebungen über das identische gemeinsame Urgeheimnis und persistieren dieses gemeinsame Urgeheimnis verschlüsselt mit einem für die sichere Datenverarbeitungsumgebung charakteristischen Schlüssel, der nur in dieser sicheren Datenverarbeitungsumgebung zugreifbar ist. Sollte bei der Persistierung ein Fehler auftreten, beispielsweise durch einen Schreibfehler, wird das Verfahren zurückgesetzt (RST). In this state Z4, each secure data processing environment encrypts the list of tuples created and sorted in state Z3 with the key characteristic of each secure data processing environment and sends it to all other secure data processing environments. An identifier of the self-generated list, generated by a one-way function (hash), is then compared with the identifiers of the lists of the other secure data processing environments, also generated by a one-way function (ACCEPT VERIFICATION REPORT). If a conflict arises, i.e. one or more lists or the unique identifiers of the lists differ from one another, the process is reset (RST). Finally, the suggestion for the shared original secret is selected from the list which, for example, has the highest value for the pseudo-time. In this way, all of the secure data processing environments involved have the identical shared original secret and persist this shared original secret encrypted with a key that is characteristic of the secure data processing environment and is only accessible in this secure data processing environment. If an error occurs during persistence, for example due to a typo, the process is reset (RST).

Sobald alle sicheren Datenverarbeitungsumgebungen sich gegenseitig bestätigen, dass das gemeinsame Urgeheimnis erfolgreich persistiert ist („ALL SEEDS ACCEPTED“, ASA), wird zum finalen Zustand des Zu Standsdiagramms in Fig. 2 „ONLINE“ (Z5) gewechselt. In diesem Zustand Z5 verbleibt die sichere Datenverarbeitungsumgebung bis es zu einer Abschaltung des die sichere Datenverarbeitungsumgebung implementierenden Servers kommt. As soon as all secure data processing environments confirm to each other that the shared original secret has been successfully persisted (“ALL SEEDS ACCEPTED”, ASA), the system switches to the final state of the status diagram in Fig. 2, “ONLINE” (Z5). The secure data processing environment remains in this state Z5 until the server implementing the secure data processing environment is shut down.

Das nun allen sicheren Datenverarbeitungsumgebungen zur Verfügung stehende Urgeheimnis ist die Basis zur Ableitung von Schlüsseln, die notwendig sind um Daten, die zwischen verschiedenen sicheren Datenverarbeitungsumgebungen geteilt werden müssen, entschlüsseln zu können. Die Ableitung von Schlüsseln zur Entschlüsselung von Daten aus anderen sicheren Datenverarbeitungsumgebungen hängt zusätzlich von der Identität der anderen sicheren Datenverarbeitungsumgebung ab, beispielsweise eines Namens, einer Signatur des Auditors der anderen Datenverarbeitungsumgebung oder anderen charakterisierenden Merkmalen der anderen sicheren Datenverarbeitungsumgebung. The master secret, which is now available to all secure data processing environments, is the basis for deriving keys that are necessary to decrypt data that must be shared between different secure data processing environments. The derivation of keys for decrypting data from other secure data processing environments also depends on the identity of the other secure data processing environment, for example a name, a signature of the auditor of the other data processing environment or other characterizing features of the other secure data processing environment.

In jedem Fall ist die Ableitung von Schlüsseln zur Entschlüsselung von Daten aus anderen sicheren Datenverarbeitungsumgebungen eindeutig und wiederholbar eindeutig, da immer auf dasselbe gemeinsame Urgeheimnis und durch Konvention innerhalb des Verbundes festgelegte die Identität von anderen sicheren Datenverarbeitungsumgebung kennzeichnende digitale Wörter zurückgegriffen wird. In any case, the derivation of keys for decrypting data from other secure data processing environments is unique and repeatable, since it always relies on the same common original secret and the identity established by convention within the network. digital words characterizing other secure data processing environments.

Die Möglichkeit Daten von anderen sicheren Datenverarbeitungsumgebungen sicher lesen zu können ist essentiell um alle Programme großer Softwarepakete mit „Confidential Computing“ ausführen zu können und um redundante Strukturen zu bilden um die Verfügbarkeit der durch die Software vermittelten Software-Dienstleistungen und der Daten zu verbessern. The ability to securely read data from other secure data processing environments is essential to be able to run all programs in large software packages with “confidential computing” and to create redundant structures to improve the availability of the software services and data provided by the software.

In dem beschriebenen Ausführungsbeispiel agieren die sicheren Datenverarbeitungsumgebungen autonom miteinander, ohne dass nach dem initialen Konfigurat ions vorgang eine Person des Betreibers des Verbundes sicheren Datenverarbeitungsumgebungen Eingaben an einer Mensch-Maschine-Schnittstelle hätte vornehmen müssen. Hieraus folgert die signifikante Reduzierung der Komplexität und der Kosten eines erfindungsgemäßen Verbundes aus sicheren Datenverarbeitungsumgebungen. Außerdem folgert hieraus die signifikante Verbesserung der Vertraulichkeit, der Integrität und der Verfügbarkeit der in den sicheren Datenverarbeitungsumgebungen ausgeführten Programme, sowie der mit den Programmen verarbeiteten Daten. In the described embodiment, the secure data processing environments interact autonomously with one another without a person from the operator of the network of secure data processing environments having to make inputs at a human-machine interface after the initial configuration process. This results in a significant reduction in the complexity and costs of a network of secure data processing environments according to the invention. This also results in a significant improvement in the confidentiality, integrity and availability of the programs executed in the secure data processing environments, as well as the data processed with the programs.

In Fig. 3 ist gegenüber dem in Fig. 1 gezeigten Verbund aus sicheren Datenverarbeitungsumgebungen ein zusätzlicher Server Sn+1 hinzugefügt, der wiederum eine Mehrzahl von sicheren Datenverarbeitungsumgebungen DVUn+1,1 bis DVUn+l,mn+l enthält. In Fig. 3, an additional server Sn+1 is added to the network of secure data processing environments shown in Fig. 1, which in turn contains a plurality of secure data processing environments DVUn+1,1 to DVUn+l,mn+l.

Zur Erweiterung des Verbundes V-DVU fügt der Betreiber des Verbunds V-DVU die Konfiguration in einem der Konfigurationsserver KS1 bis KSh hinzu, die diese Konfigurationsänderung entsprechend der üblichen Praxis zu den jeweils anderen Konfigurat ions Servern replizieren. Der Betreiber kennzeichnet in der Erweiterung der Konfigurationsdaten, dass der Server Sn+1 zu einem bestehenden Verbund aus sicheren Datenverarbeitungsumgebungen hinzugefügt wird, und nicht der Saat aus sicheren Datenverarbeitungsumgebungen zur Bildung eines neuen Verbunds aus sicheren Datenverarbeitungsumgebungen angehört. To expand the V-DVU network, the operator of the V-DVU network adds the configuration to one of the configuration servers KS1 to KSh, which replicate this configuration change to the other configuration servers in accordance with standard practice. In the extension of the configuration data, the operator indicates that the server Sn+1 is being added to an existing network of secure data processing environments and does not belong to the seed of secure data processing environments for the formation of a new network of secure data processing environments.

Der Server Sn+1 bezieht bei seinem Start die Konfigurationsdaten von einem der Konfigurationsserver KS1 bis KSh und erhält darin auch die Adressen der bereits am Verbund aus sicheren Datenverarbeitungsumgebungen beteiligten sicheren Datenverarbeitungsumgebungen DVU 1,1 bis DVUn,mn. When it starts, the server Sn+1 obtains the configuration data from one of the configuration servers KS1 to KSh and also receives the addresses of the secure Data processing environments involved in secure data processing environments DVU 1,1 to DVUn,mn.

Der Server Sn+1 startet in dem Zustand ZI des in Fig. 2 gezeigten Zustandsdiagramms „UNINITIALIZED“. Der Konfigurationsparameter, der besagt, dass der Server Sn+1 entsprechend der Konfigurationsparameter keine initiale Saat-DVU ist, sondern zu einem bestehenden Verbund aus sicheren Datenverarbeitungsumgebungen hinzugefügt wird, löst in dem Ausführungsbeispiel des erfindungsgemäßen Verfahrens aus, dass der Server Sn+1 in den Zustand „IMPORT PHASE“ (Z6) wechselt („INIT IMPORT“, IMP). The server Sn+1 starts in the state ZI of the state diagram "UNINITIALIZED" shown in Fig. 2. The configuration parameter, which states that the server Sn+1 is not an initial seed DVU according to the configuration parameters, but is added to an existing network of secure data processing environments, triggers the server Sn+1 to switch to the state "IMPORT PHASE" (Z6) ("INIT IMPORT", IMP) in the embodiment of the method according to the invention.

Im Zustand Z6 „IMPORT PHASE“ erzeugt jede der DVUn+1,1 bis DVUn+l,mn sicheren Datenverarbeitungsumgebungen des Servers Sn+1 zufällig oder quasi- zufällig je ein asymmetrisches Kommunikationsschlüsselpaar, das zur sicheren Kommunikation der sicheren Datenverarbeitungsumgebungen mit den sicheren Datenverarbeitungsumgebungen der Server S1 bis Sn vorgesehen ist. Der öffentliche Schlüssel dieses Kommunikationsschlüsselpaars wird mit dem für die sicheren Datenverarbeitungsumgebungen des Servers Sn+1 charakteristischen Signaturschlüssel signiert und dieser signierte Kommunikationsschlüssel als Tupel mit dem öffentlichen Kommunikationsschlüssel an einen anderen sicheren Datenverarbeitungsumgebungen der Server S1 bis Sn gesandt und um Erwiderung mit dem signierten öffentlichen Schlüssel der anderen sicheren Datenverarbeitungsumgebungen gebeten. Falls die zuerst angefragte andere sichere Datenverarbeitungsumgebung nicht wie erwartet antwortet, wird eine weitere andere sichere Datenverarbeitungsumgebung angefragt, usw. bis die angefragte Information erhalten wird. Nach Erhalt der signierten öffentlichen Schlüssel der anderen sicheren Datenverarbeitungsumgebungen wird die Authentizität des öffentlichen Schlüssels überprüft. Daraufhin erfragt der Server Sn+1 erfindungsgemäß von einem der bereits dem Verbund V-DVU angehörenden sicheren Datenverarbeitungsumgebungen das gemeinsame Urgeheimnis zusammen mit dem durch eine Einwegfunktion (Hash) erzeugte Kennung für die „Entstehungsgeschichte“ des Verbundes V-DVU. Schließlich persistieren die sicheren Datenverarbeitungsumgebungen des Servers Sn+1 das Urgeheimnis („ACCEPT IMPORT DATA“, AIM). In state Z6 "IMPORT PHASE", each of the DVUn+1,1 to DVUn+l,mn secure data processing environments of the server Sn+1 randomly or quasi-randomly generates an asymmetric communication key pair that is intended for secure communication between the secure data processing environments and the secure data processing environments of the servers S1 to Sn. The public key of this communication key pair is signed with the signature key characteristic of the secure data processing environments of the server Sn+1 and this signed communication key is sent as a tuple with the public communication key to another secure data processing environment of the servers S1 to Sn and a response is requested with the signed public key of the other secure data processing environments. If the other secure data processing environment requested first does not respond as expected, another other secure data processing environment is requested, and so on until the requested information is received. After receiving the signed public keys of the other secure data processing environments, the authenticity of the public key is checked. According to the invention, the server Sn+1 then requests the shared original secret from one of the secure data processing environments already belonging to the V-DVU network, together with the identifier for the "history of creation" of the V-DVU network generated by a one-way function (hash). Finally, the secure data processing environments of the server Sn+1 persist the original secret ("ACCEPT IMPORT DATA", AIM).

Sobald alle sicheren Datenverarbeitungsumgebungen des Servers Sn+1 bestätigt haben, dass das gemeinsame Urgeheimnis aus dem persistenten Speicher erfolgreich gelesen und entschlüsselt werden kann („ALL SEEDS ACCEPTED“, ASA), wird zum finalen Zustand des Zustandsdiagramms in Fig. 2 „ONLINE“ (Z5) gewechselt. Once all secure computing environments of the server Sn+1 have confirmed that the shared original secret has been successfully read and decrypted from the persistent storage (“ALL SEEDS ACCEPTED”, ASA), the system switches to the final state of the state diagram in Fig. 2 “ONLINE” (Z5).

Erweiterungen des Verbundes V-DVU durch weitere Server Sn+1, Sn+2 usw. mit jeweils einer oder mehrere sichere Datenverarbeitungsumgebungen, können nicht nur mit der in diesem Ausführungsbeispiel beschriebenen Schrittweite von einem Server, sondern auch mit beliebig großen Schrittweiten mit einer Mehrzahl und sogar einer Vielzahl von Servern auf analoge Art und Weise erfolgen. Extensions of the V-DVU network by additional servers Sn+1, Sn+2, etc., each with one or more secure data processing environments, can be carried out in an analogous manner not only with the step size of one server described in this embodiment, but also with arbitrarily large step sizes with a plurality and even a large number of servers.

In dem beschriebenen Ausführungsbeispiel können den n Servern der Saat- Konfiguration auf die zuvor beschrieben einfache Art weitere Server Sn+1, Sn+2 usw. hinzugefügt werden und auf diese Weise gelingt die Erweiterung bestehender Verbünde aus sicheren Datenverarbeitungsumgebungen mit sehr geringer Komplexität zu im Ergebnis sehr großen Verbunden aus sicheren Datenverarbeitungsumgebungen. In the described embodiment, additional servers Sn+1, Sn+2, etc. can be added to the n servers of the seed configuration in the simple manner described above, and in this way existing networks of secure data processing environments can be expanded with very little complexity to result in very large networks of secure data processing environments.

Große Verbünde weisen eine sehr geringe Wahrscheinlichkeit dafür auf, dass alle sicheren Datenverarbeitungsumgebungen des Verbundes gemeinsam ihre Funktionsfähigkeit verlieren, und in Folge das gemeinsame Urgeheimnis verloren ginge. Entsprechend robust sind große Verbünde gegen den Verlust des Urgeheimnisses geschützt. Large networks have a very low probability that all secure data processing environments in the network will jointly stop functioning and, as a result, the shared original secret will be lost. Large networks are therefore robustly protected against the loss of the original secret.

Auch bei der in dem Ausführungsbeispiel beschriebenen Erweiterung des Verbundes um ein oder mehrere Server Sn+1, Sn+2 usw. mit jeweils ein oder mehreren sicheren Datenverarbeitungsumgebungen agieren die sicheren Datenverarbeitungsumgebungen autonom miteinander, ohne dass nach den Konfigurationserweiterungen eine Person des Betreibers des Verbundes sicheren Datenverarbeitungsumgebungen Eingaben an einer Mensch-Maschine-Schnittstelle vornehmen müsste. Hieraus folgert die signifikante Reduzierung der Komplexität und der Kosten eines erfindungsgemäßen Verbundes aus sicheren Datenverarbeitungsumgebungen. Zudem folgert hieraus die signifikante Verbesserung der Vertraulichkeit, der Integrität und der Verfügbarkeit der in den sicheren Datenverarbeitungsumgebungen ausgeführten Programme, sowie der mit den Programmen verarbeiteten Daten. Auf analoge Weise können auch weitere Automatisierungen innerhalb des Verbundes D-DVU vorgenommen werden, beispielsweise die Erzeugung von Sätzen von Schlüsseln für spezifische Dienste sowie Anwendungen, Datenbanken, Speichersysteme und Ähnliches. Die Ableitung der weiteren Schlüssel erfolgt in einer „Vertrauenshierarchie“, also einer Sequenz von Teilverfahren, die Schlüssel erzeugen, die sich jeweils auf zuvor erzeugte Schlüssel beziehen. Die Sicherung der erzeugten Schlüssel erfolgt in verschlüsselter Form, wobei das gemeinsame Urgeheimnis zur Erzeugung des Verschlüsselungsschlüssels für diesen Vorgang benutzt wird, sodass die Sicherung (Speicherung) unabhängig von einzelnen sicheren Datenverarbeitungsumgebungen erfolgt. Damit gehen diese Schlüssel nicht verloren, sollte die sichere Datenverarbeitungsumgebung, in der die Schlüssel erzeugt wurden, ihre Funktionsfähigkeit verlieren. Even when the network is expanded to include one or more servers Sn+1, Sn+2, etc., each with one or more secure data processing environments, as described in the exemplary embodiment, the secure data processing environments interact autonomously with one another without a person from the operator of the network of secure data processing environments having to make entries at a human-machine interface after the configuration expansions. This results in a significant reduction in the complexity and costs of a network of secure data processing environments according to the invention. This also results in a significant improvement in the confidentiality, integrity and availability of the programs executed in the secure data processing environments, as well as the data processed with the programs. In a similar way, other automations can be carried out within the D-DVU network, for example the generation of sets of keys for specific services and applications, databases, storage systems and the like. The derivation of the other keys takes place in a "trust hierarchy", i.e. a sequence of sub-processes that generate keys that each refer to previously generated keys. The generated keys are secured in encrypted form, with the shared original secret being used to generate the encryption key for this process, so that the backup (storage) takes place independently of individual secure data processing environments. This means that these keys are not lost if the secure data processing environment in which the keys were generated ceases to function.

Die Automatisierung der Bildung des Verbundes aus sicheren Datenverarbeitungsumgebungen V- DVU kann so weitgehend ausgestaltet werden, dass abgesehen von den initialen Einträgen in einem der Konfigurationsserver KS1 bis KSh, keine weitere Eingaben von Personal des Betreibers des V-DVU an Mensch-Maschine-Schnittstellen der Server S1 bis Sn+x, wobei x sehr große natürliche Zahlenwerte annehmen kann, vorgenommen werden müssen, indem die Rahmenbedingungen des Betriebs bezüglich der Einbettung in die Netzverbindung, die Teilnahme an verteilten Speichersystemen und Ähnlichem jedes einzelnen Servers automatisch erfasst werden (auto-dis- covery) und im Zusammenspiel mit den anderen Servern des Verbundes V-DVU verhandelt werden. Hierbei können Prinzipien von Mehrheitsentscheidungen und der Byzantinischen Fehlertoleranz angewendet werden. The automation of the formation of the network of secure data processing environments V-DVU can be designed to such an extent that, apart from the initial entries in one of the configuration servers KS1 to KSh, no further entries have to be made by the V-DVU operator's staff at the human-machine interfaces of the servers S1 to Sn+x, where x can take on very large natural numerical values, by automatically recording the basic operating conditions of each individual server with regard to embedding in the network connection, participation in distributed storage systems and the like (auto-discovery) and negotiating them in interaction with the other servers in the V-DVU network. Principles of majority decisions and Byzantine fault tolerance can be applied here.

Das beschriebene erfindungsgemäße Ausführungsbeispiel ist im Ergebnis geeignet einen Softwaredienst für Schlüsselableitung und -management zu erstellen (Key Derivation and Management Service), der unabhängig von der konkreten Ausführung der sicheren Datenverarbeitungsumgebungen DVUa,b gestaltet ist, indem ein gemeinsames Urgeheimnis erzeugt wird und ein bezüglich der Softwarearchitektur von den sicheren Datenverarbeitungsumgebungen und der Server unabhängige Instanz geschaffen wird. In vielen Ausführungen entsprechend dem Stand der Technik ist die Schlüsselerzeugung von der jeweils individuellen Hardware der sicheren Datenverarbeitungsumgebungen abhängig und die erfindungsgemäße Unabhängigkeit von den sicheren Datenverarbeitungsumgebungen und von den Server nicht gegeben. In Fig. 4 sind in den Teilabbildungen a) und b) jeweils eine sichere Datenverarbeitungsumgebung DVU1 im Server SI bzw. DVU2 im Server S2 abgebildet. Innerhalb der DVU1 wir die Anwendungslogik ALI für die Nutzer mit ihren Nutzerclients NC 1,1 bis NCl,p betrieben. Innerhalb der DVU2 wir die Anwendungslogik AL2 für die Nutzer mit ihren Nutzerclients NC2,1 bis NC2,q betrieben. The described embodiment of the invention is ultimately suitable for creating a software service for key derivation and management (Key Derivation and Management Service) that is designed independently of the specific implementation of the secure data processing environments DVUa,b by generating a common original secret and creating an instance that is independent of the secure data processing environments and the server in terms of the software architecture. In many implementations according to the state of the art, key generation is dependent on the individual hardware of the secure data processing environments and the independence of the secure data processing environments and the server according to the invention is not given. In Fig. 4, the sub-figures a) and b) show a secure data processing environment DVU1 in the server SI and DVU2 in the server S2, respectively. Within the DVU1, the application logic ALI is operated for the users with their user clients NC 1,1 to NC1,p. Within the DVU2, the application logic AL2 is operated for the users with their user clients NC2,1 to NC2,q.

Die sichere Datenverarbeitungsumgebung DVU 1 weist einen privilegierten Zugriff PZ auf, der vom Administrator der Anwendungslogik ALI über den Administratorclient AC1 für die Ausführung von Administrationstätigkeiten genutzt werden kann. Ein solcher privilegierter Zugriff PZ ist in Praxi ein weitgehend unbeschränkter Zugriff der Administratoren auf die Ressourcen der sicheren Datenverarbeitungsumgebung, der in seinen Rechten historisch gewachsen weit mehr Funktionen umfasst, als zur Administration der in der sicheren Datenverarbeitungsanwendungsumgebung notwendig ist. In Praxis ist der privilegierte Zugriff PZ ein Protokoll, das eine Kommandozeile des Rechners oder virtuellen Rechners aus der Entfernung nutzbar macht (Secure Shell, SSH). Trotzdem ist die Verwendung einer solchen sicheren Datenverarbeitungsanwendungsumgebung mit privilegiertem Zugriff sinnvoll, da die Administratoren der die sicheren Datenverarbeitungsanwendungsumgebung implementierenden Server vom Zugriff auf die ausführenden Programme und auf die verarbeiteten Daten ausgeschlossen sind. Auch kann das Betriebssystem des Servers S 1 fehlerhafte Einfallstore für Angreifer enthalten, ohne dass dadurch eine Zugriffsmöglichkeit für potentielle Angreifer auf die in der sicheren Datenverarbeitungsanwendungsumgebung DVU3 ausgeführten Programme und auf die damit verarbeiteten Daten erhalten könnte. The secure data processing environment DVU 1 has privileged access PZ, which can be used by the administrator of the application logic ALI via the administrator client AC1 to carry out administration activities. In practice, such privileged access PZ is largely unrestricted access for administrators to the resources of the secure data processing environment, which, in terms of its rights, has historically grown to include far more functions than are necessary for administration in the secure data processing application environment. In practice, privileged access PZ is a protocol that makes a command line of the computer or virtual computer usable remotely (Secure Shell, SSH). Nevertheless, the use of such a secure data processing application environment with privileged access is sensible, since the administrators of the servers implementing the secure data processing application environment are excluded from accessing the executing programs and the processed data. The operating system of the server S 1 may also contain faulty entry points for attackers, without this giving potential attackers access to the programs executed in the secure data processing application environment DVU3 and to the data processed with them.

Die sichere Datenverarbeitungsumgebung DVU2 weist keinen solchen privilegierten Zugriff PZ auf, weshalb zur Unterscheidung die äußere Hülle der sichere Datenverarbeitungsumgebung DVU2 nicht als Rechteck sondern als Oval angedeutet ist. The secure data processing environment DVU2 does not have such privileged access PZ, which is why the outer shell of the secure data processing environment DVU2 is not indicated as a rectangle but as an oval to distinguish it.

Die Teilabbildungen c) und d) der Fig. 4 zeigen erfindungsgemäße Verbünde aus sichere Datenverarbeitungsumgebung V-DVU, die aus den sicheren Datenverarbeitungsumgebung DVU3 und DVU4 gebildet sind. The partial figures c) and d) of Fig. 4 show inventive networks of secure data processing environments V-DVU, which are formed from the secure data processing environments DVU3 and DVU4.

Wie in Teilabbildungen c) der Fig. 4 angedeutet, steuert exklusiv die sichere Datenverarbeitungsumgebung DVU4, die keinen privilegierten Zugriff aufweist, mit der Administrationslogik AZL1 die Administration der sicheren Datenverarbeitungsumgebung DVU3, die einen privilegierten Zugriff aufweist, indem die AZL1 nur eine positiv definierte Liste von Administrationsbefehlen zur Administration der sicheren Datenverarbeitungsumgebung DVU3 erlaubt auszuführen. As indicated in sub-figures c) of Fig. 4, the secure data processing environment DVU4, which has no privileged access, exclusively controls the administration logic AZL1 the administration of the secure data processing environment DVU3, which has privileged access, in that the AZL1 only allows a positively defined list of administration commands to be executed for the administration of the secure data processing environment DVU3.

Alternativ kann wie in Teilabbildungen d) der Fig. 4 angedeutet sowohl die sichere Datenverarbeitungsumgebung DVU3 als auch DVU4 innerhalb eines gemeinsamen Servers S4 betrieben werden. Alternatively, as indicated in sub-figures d) of Fig. 4, both the secure data processing environment DVU3 and DVU4 can be operated within a common server S4.

In Fig. 5 sind zwei Teilabbildung a) und b) gezeigt, die jeweils einen Verbund von sicheren Datenverarbeitungsumgebungen V-DVU illustrieren. In Teilabbildung a) sind in den Servern S5 und S6 jeweils eine sichere Datenverarbeitungsumgebung DVU5 bzw. DVU6 implementiert, die jeweils einen privilegierten Zugriff PZ aufweisen, über die der Administrator der beiden Anwendungslogiken AL5 und AL6 die Anwendungslogiken AL5 und AL6 mit Hilfe seines Clients AC56 steuert. Wie in Fig. 4 sind auch hier die Nutzerclients NC5,1 bis NC5,p, die mit der Anwendungslogik AL5 interagieren als auch die Nutzerclients NC6, 1 bis NC6,q, die mit der Anwendungslogik AL5 interagieren, gezeigt. In Fig. 5, two sub-figures a) and b) are shown, each illustrating a network of secure data processing environments V-DVU. In sub-figure a), a secure data processing environment DVU5 or DVU6 is implemented in the servers S5 and S6, each of which has privileged access PZ, via which the administrator of the two application logics AL5 and AL6 controls the application logics AL5 and AL6 using his client AC56. As in Fig. 4, the user clients NC5,1 to NC5,p, which interact with the application logic AL5, as well as the user clients NC6,1 to NC6,q, which interact with the application logic AL5, are shown here.

In Teilabbildung b) der Fig. 5 sind zum einen ein Ausführungsbeispiel eines erfindungsgemäßen Verbundes gezeigt, in dem der privilegierte Zugriff der sicheren Datenverarbeitungsumgebung DVU7 im Server 7 mit der Anwendungslogik AL7 geschlossen wurde. In Praxi erfolgt die Schließung eines privilegierten Zugriffs durch Sperrung der Ports für den privilegierten Zugriff (close SSH ports) in der Konfiguration der sicheren Datenverarbeitungsumgebung DVU7. Solche Konfigurationsänderungen können Bestandteil des zuvor erläuterten „Attestation“ sein, sodass die anderen sicheren Datenverarbeitungsumgebungen des Verbundes V-DVU sich von der Existenz einer korrekt erfolgten Konfiguration mit kryptografischer Härte überzeugen können. In part b) of Fig. 5, an embodiment of an inventive network is shown in which the privileged access of the secure data processing environment DVU7 in the server 7 was closed with the application logic AL7. In practice, privileged access is closed by blocking the ports for privileged access (close SSH ports) in the configuration of the secure data processing environment DVU7. Such configuration changes can be part of the "attestation" explained above, so that the other secure data processing environments of the V-DVU network can convince themselves of the existence of a correctly implemented configuration with cryptographic strength.

In Teilabbildung b) der Fig. 5 ist außerdem eine Administrationszugriffslogik AZL1 gezeigt, die exklusiv nur die Ausführung von einer positiv definierten Liste von Administrationsbefehlen erlaubt und somit die Administration der Anwendungslogik AL7 ermöglicht. Die Integrität der Administrationszugriffslogik AZL1 kann ebenfalls Teil des zuvor erläuterten „Messung“ des Attesta- tionsprozesses sein, sodass die anderen sicheren Datenverarbeitungsumgebungen des Verbundes V-DVU sich von der Existenz einer korrekt implementierten Administrationszugriffslogik AZL1 mit kryptografischer Härte überzeugen können. Die Nutzer der Anwendungslogik AL7 können auf eine in sehr hohem Maße vertrauliche Verarbeitung der Daten und einen in sehr hohem Maße vertraulichen Zugriff auf die Anwendungslogik AL7 über die Nutzerclients NC7,1 bis NC7,r vertrauen. In part b) of Fig. 5, an administration access logic AZL1 is also shown, which exclusively allows the execution of a positively defined list of administration commands and thus enables the administration of the application logic AL7. The integrity of the administration access logic AZL1 can also be part of the previously explained “measurement” of the attestation process, so that the other secure data processing environments of the V-DVU network can convince themselves of the existence of a correctly implemented administration access logic AZL1 with cryptographic hardness. The users of the application logic AL7 can rely on a very highly confidential processing of the data and a very highly confidential access to the application logic AL7 via the user clients NC7,1 to NC7,r.

Im Server S8 der Teilabbildung b) der Fig. 5 wird außerdem die Administrationszugriffslogik AZL2 gezeigt, die durch eine sichere Datenverarbeitungsumgebung DVU9 ohne privilegiertem Zugriff ausgeführt, die in der sichere Datenverarbeitungsumgebung DVU8 eingebettet implementiert ist (nesting of TEEs). Dieses Ausführungsbeispiel vermittelt wiederum die besonders hohe Sicherheit, dass nur die steuernden Administrationsbefehle, die vom Administrationsclient AC78 übertragen werden, und in Folge die Nutzer der Anwendungslogik AL8 auf eine besonders hohe Vertraulichkeit der Verarbeitung der Daten und der Zugriffe auf die Anwendungslogik AL8 über die Nutzerclients NC8,1 bis NC8,s vertrauen können. The server S8 in part b) of Fig. 5 also shows the administration access logic AZL2, which is executed by a secure data processing environment DVU9 without privileged access, which is implemented embedded in the secure data processing environment DVU8 (nesting of TEEs). This embodiment in turn provides the particularly high level of security that only the controlling administration commands transmitted by the administration client AC78 and, as a result, the users of the application logic AL8 can rely on a particularly high level of confidentiality in the processing of the data and the access to the application logic AL8 via the user clients NC8,1 to NC8,s.

Die unterschiedlichen Ausführungsbeispiele illustrieren unterschiedliche Möglichkeiten der Bildung von Verbunden von sicheren Datenverarbeitungsumgebungen, die je nach Ausgestaltung für unterschiedliche Verteilung der Verantwortlichkeiten bei der Administration geeignet sind. Beispielsweise kann ein erster Administrator für eine sichere Datenverarbeitungsumgebung, die als sichere virtuelle Maschine implementiert ist, verantwortlich sein und ein zweiter Administrator für einen spezifischen Prozess innerhalb derselben sichere Datenverarbeitungsumgebung verantwortlich zeichnen. In diesem Beispiel kann durch eine analog zur sicheren Datenverarbeitungsumgebung DVU9 gestaltete eingebettete sichere Datenverarbeitungsumgebung sicher gestellt werden, dass der zweite Administrator keinen Zugriff zu den anderen Teilen der als virtuelle Maschine gestaltete sichere Datenverarbeitungsumgebung hat, für die der erste Administrator zuständig ist, und umgekehrt der erste Administrator auch keinen Zugriff auf den spezifischen Prozess hat, für den der zweite Administrator zuständig ist. The different embodiments illustrate different possibilities for forming networks of secure data processing environments, which, depending on the design, are suitable for different distribution of responsibilities in administration. For example, a first administrator can be responsible for a secure data processing environment that is implemented as a secure virtual machine, and a second administrator can be responsible for a specific process within the same secure data processing environment. In this example, an embedded secure data processing environment designed analogously to the secure data processing environment DVU9 can ensure that the second administrator does not have access to the other parts of the secure data processing environment designed as a virtual machine for which the first administrator is responsible, and conversely, the first administrator also has no access to the specific process for which the second administrator is responsible.

Claims

Ansprüche claims 1. Verfahren zur Bildung eines Verbunds aus mindestens zwei sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei die sicheren Datenverarbeitungsumgebungen eines definierten, initialen Satzes an sicheren Datenverarbeitungsumgebungen sich gegenseitig ihre Eigenschaft als sichere Datenverarbeitungsumgebung attestieren können, dadurch gekennzeichnet, dass die sicheren Datenverarbeitungsumgebungen untereinander autonom bestimmen, welche der sicheren Datenverarbeitungsumgebung ein Urgeheimnis erzeugt, das anschließend den beteiligten und in Erweiterungen hinzutretenden sicheren Datenverarbeitungsumgebungen übermittelt wird. 1. Method for forming a network of at least two secure data processing environments (Network of Trusted Execution Environments), whereby the secure data processing environments of a defined, initial set of secure data processing environments can mutually attest to their status as a secure data processing environment, characterized in that the secure data processing environments autonomously determine among themselves which of the secure data processing environments generates a master secret, which is then transmitted to the participating secure data processing environments and to those that are added in extensions. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass sichere Datenverarbeitungsumgebungen, die bei Erweiterungen eines Verbundes hinzugefügt werden, die Identität der am Verbund beteiligten Datenverarbeitungsumgebungen und die Entstehungshistorie des Verbundes automatisch empfangen. 2. Method according to claim 1, characterized in that secure data processing environments which are added when a network is expanded automatically receive the identity of the data processing environments involved in the network and the history of the network's creation. 3. Verfahren nach den Ansprüchen 1 oder 2, dadurch gekennzeichnet, dass Geheimnisse, die für den Betrieb des Verbundes aus Datenverarbeitungsumgebungen und/oder Software-Instanzen des Verbundes notwendig sind, vom Urgeheimnis eindeutig und wiederholbar eindeutig abgeleitet werden. 3. Method according to claims 1 or 2, characterized in that secrets which are necessary for the operation of the network of data processing environments and/or software instances of the network are derived from the original secret in a unique and repeatable manner. 4. Ein Verfahren zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), dadurch gekennzeichnet, dass zur Erzeugung des Urgeheimnisses weder die Beteiligung von menschlichen Personen zur Eingabe von (Teilgeheimnissen an einer Mensch-Maschine-Schnittstelle noch die Eingabe von Identitäten einer der beteiligten sicheren Datenverarbeitungsumgebungen, notwendig ist. 4. A method for forming a network of secure data processing environments (Network of Trusted Execution Environments), characterized in that neither the involvement of human persons to enter partial secrets at a human-machine interface nor the entry of identities of one of the participating secure data processing environments is necessary to generate the original secret. 5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass nicht nur die Verfahrensteile der Erzeugung des Urgeheimnisses, sondern auch weitere Teile des Verfahrens zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen automatisiert sind. 5. Method according to claim 4, characterized in that not only the process parts for generating the master secret, but also other parts of the process for forming a network of secure data processing environments are automated. 6. Verfahren zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei die sicheren Datenverarbeitungsumgebungen eines definierten, initialen Satzes an sicheren Datenverarbeitungsumgebungen sich gegenseitig ihre Eigenschaft als sichere Datenverarbeitungsumgebung attestieren können, dadurch gekennzeichnet, dass die zur Erzeugung des Urgeheimnisses und weiterer Geheimnisse genutzten Verfahrensteile unabhängig von der zum Einsatz kommenden Ausführung der sicheren Datenverarbeitungsumgebungen gestaltet sind. 6. Method for forming a network of secure data processing environments (Network of Trusted Execution Environments), whereby the secure data processing environments of a defined, initial set of secure data processing environments can mutually attest to their status as a secure data processing environment, characterized in that the process parts used to generate the original secret and further secrets are designed independently of the execution of the secure data processing environments used. 7. Verfahren zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei die sicheren Datenverarbeitungsumgebungen eines definierten, initialen Satzes an sicheren Datenverarbeitungsumgebungen sich gegenseitig ihre Eigenschaft als sichere Datenverarbeitungsumgebung attestieren können, dadurch gekennzeichnet, dass eine erste sichere Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über einen privilegierten, uneingeschränkten Zugriff verfügt, und eine zweite sichere Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügt, dergestalt einen Verbund aus sicheren Datenverarbeitungsumgebungen bilden, dass die zweite sichere Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügt, exklusiv den privilegierten Zugriff der ersten sicheren Datenverarbeitungsumgebung steuert. 7. Method for forming a network of secure data processing environments (Network of Trusted Execution Environments), whereby the secure data processing environments of a defined, initial set of secure data processing environments can mutually attest to their status as a secure data processing environment, characterized in that a first secure data processing environment, which according to its execution has privileged, unrestricted access, and a second secure data processing environment, which according to its execution has no privileged access, form a network of secure data processing environments in such a way that the second secure data processing environment, which according to its execution has no privileged access, exclusively controls the privileged access of the first secure data processing environment. 8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass mehrere sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügen, den oder die privilegierten Zugriffe einer oder mehrerer sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über einen privilegierten Zugriff verfügen, exklusiv steuern. 8. Method according to claim 7, characterized in that several secure data processing environments which, according to their design, do not have privileged access, exclusively control the privileged access(s) of one or more secure data processing environments which, according to their design, have privileged access. 9. Verfahren zur Bildung eines Verbunds aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei die sicheren Datenverarbeitungsumgebungen eines definierten, initialen Satzes an sicheren Datenverarbeitungsumgebungen sich gegenseitig ihre Eigenschaft als sichere Datenverarbeitungsumgebung attestieren können, dadurch gekennzeichnet, dass die sicheren Datenverarbeitungsumgebungen über keinen privilegierten Zugriffskanal verfügen, jedoch eine Mehrzahl von positiv definierten Befehlen zur Ausführung von Administrationstätigkeiten, welche die sichere Datenverarbeitungsumgebung und die darin ausgeführten Programme betreffen, ausführen kann. 9. Method for forming a network of secure data processing environments (Network of Trusted Execution Environments), whereby the secure data processing environments of a defined, initial set of secure data processing environments can mutually attest to their status as a secure data processing environment, characterized in that the secure data processing environments do not have a privileged access channel, but have a plurality of positively defined commands to carry out administrative tasks relating to the secure data processing environment and the programs executed therein. 10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass ein oder mehrere sichere Datenverarbeitungsumgebungen, die ihrer Ausführung gemäß über keinen privilegierten Zugriff verfügen, und in verschachtelter Weise innerhalb einer sicheren Datenverarbeitungsumgebung, die ihrer Ausführung gemäß über keine privilegierte, uneingeschränkte Zugriffsmöglichkeit, jedoch über eine Schnittstelle verfügt, über die eine Mehrzahl von positiv definierten Befehlen zur Ausführung von Administrationstätigkeiten ausgelöst werden können, betrieben werden, welche die positiv definierten Befehle zur Ausführung von Administrationstätigkeiten exklusiv steuern. 10. Method according to claim 9, characterized in that one or more secure data processing environments, which according to their design do not have privileged access, are operated in a nested manner within a secure data processing environment, which according to their design does not have privileged, unrestricted access but has an interface via which a plurality of positively defined commands for carrying out administration activities can be triggered, which exclusively control the positively defined commands for carrying out administration activities. 11. Verbund aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei der Verbund angepasst ist, ein Verfahren gemäß einen der Ansprüche 1 bis 3 auszuführen. 11. A network of trusted execution environments, the network being adapted to execute a method according to one of claims 1 to 3. 12. Verbund aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei der Verbund angepasst ist, ein Verfahren gemäß einen der Ansprüche 4 und 5 auszuführen. 12. A network of trusted execution environments, the network being adapted to execute a method according to one of claims 4 and 5. 13. Verbund aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei der Verbund angepasst ist, ein Verfahren gemäß dem Anspruch 6 auszuführen. 13. A network of trusted execution environments, the network being adapted to execute a method according to claim 6. 14. Verbund aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei der Verbund angepasst ist, ein Verfahren gemäß einen der Ansprüche 7 und 8 auszuführen. 14. A network of trusted execution environments, the network being adapted to execute a method according to one of claims 7 and 8. 15. Verbund aus sicheren Datenverarbeitungsumgebungen (Network of Trusted Execution Environments), wobei der Verbund angepasst ist, ein Verfahren gemäß einen der Ansprüche 9 und 10 auszuführen. 15. Network of Trusted Execution Environments, wherein the network is adapted to execute a method according to one of claims 9 and 10.
PCT/EP2024/071954 2023-08-02 2024-08-02 Network of trusted execution environments Pending WO2025027180A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP23189281 2023-08-02
EP23189281.1 2023-08-02

Publications (1)

Publication Number Publication Date
WO2025027180A1 true WO2025027180A1 (en) 2025-02-06

Family

ID=87554245

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2024/071954 Pending WO2025027180A1 (en) 2023-08-02 2024-08-02 Network of trusted execution environments

Country Status (1)

Country Link
WO (1) WO2025027180A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160350534A1 (en) * 2015-05-29 2016-12-01 Intel Corporation System, apparatus and method for controlling multiple trusted execution environments in a system
EP3643041B1 (en) * 2019-04-26 2021-03-10 Advanced New Technologies Co., Ltd. Distributed key management for trusted execution environments
US20220091998A1 (en) * 2018-06-20 2022-03-24 Intel Corporation Technologies for secure device configuration and management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160350534A1 (en) * 2015-05-29 2016-12-01 Intel Corporation System, apparatus and method for controlling multiple trusted execution environments in a system
US20220091998A1 (en) * 2018-06-20 2022-03-24 Intel Corporation Technologies for secure device configuration and management
EP3643041B1 (en) * 2019-04-26 2021-03-10 Advanced New Technologies Co., Ltd. Distributed key management for trusted execution environments

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A. SHAMIR: "How to Share a Secret. Programming Techniques. Editor R. Rivest", COMMUNICATIONS OF THE ACM., vol. 22, 1979
H. A. JÄGER ET AL.: "Nature", 2020, SPRINGER, article "Manipulationssichere Cloud-Infrastrukturen.", pages: 33 - 79
I. ANATI ET AL.: "Innovative Technology for CPU Based Attestation and Sealing", IN WORKSHOP ON HARDWARE AND ARCHITECTURAL SUPPORT FOR SECURITY AND PRIVACY HASP'13, 2013
P.-C. CHENG, INTEL TDX DEMYSTIFIED: A TOP-DOWN APPROACH, 2023, Retrieved from the Internet <URL:https://arxiv.org/abs/2303.15540>

Similar Documents

Publication Publication Date Title
EP3673623B1 (en) Method and control system for controlling and/or supervising of devices
DE69213062T2 (en) Authentication protocols for communication networks
EP1290530B1 (en) Encryption of data to be stored in an information processing system
DE69230489T2 (en) Procedure for establishing and executing a secret network security procedure in a public key cryptosystem
EP3763089B1 (en) Method and control system for controlling and/or supervising of devices
EP3854022B1 (en) Method and device for the transmission of data in a publish-subscribe system
DE102013221159B3 (en) A method and system for tamper-providing multiple digital certificates for multiple public keys of a device
DE112021002747T5 (en) SECURE RECOVERY OF SECRET KEYS
DE102016222523A1 (en) Method and device for transmitting data in a topic-based publish-subscribe system
DE102017122227A1 (en) SYSTEM, ESPECIALLY AUTHENTICITY SYSTEM
DE10146361B4 (en) Distributed system
EP3556047B1 (en) Programmable hardware security module and method on a programmable hardware security module
EP3739819A1 (en) Method and control system for controlling and/or monitoring devices
EP3785416B1 (en) Method for connecting a terminal to a cross-linkable computer infrastructure
AT519025A4 (en) Procedure for exchanging data fields of certified documents
DE112021005979T5 (en) SECURE STORAGE SHARING
DE602005003631T2 (en) Exclusion of password detection for attribute certificate output
EP4270863B1 (en) Secure reconstruction of private keys
WO2025027180A1 (en) Network of trusted execution environments
DE112019003808T5 (en) Purpose-specific access control based on data encryption
AT524620B1 (en) Procedure for migrating an IT application
DE69019593T2 (en) Safe handling of keys using control vectors with reusable monitoring.
WO2011080079A1 (en) Method and system for making edrm-protected data objects available
EP3627755A1 (en) Method for secure communication in a communication network having a plurality of units with different security levels
WO2011147693A1 (en) Method for providing edrm-protected (enterprise digital rights management) data objects

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24752392

Country of ref document: EP

Kind code of ref document: A1