[go: up one dir, main page]

DE102016123178A1 - Encryption device for encrypting a data packet - Google Patents

Encryption device for encrypting a data packet Download PDF

Info

Publication number
DE102016123178A1
DE102016123178A1 DE102016123178.9A DE102016123178A DE102016123178A1 DE 102016123178 A1 DE102016123178 A1 DE 102016123178A1 DE 102016123178 A DE102016123178 A DE 102016123178A DE 102016123178 A1 DE102016123178 A1 DE 102016123178A1
Authority
DE
Germany
Prior art keywords
data packet
encryption
memory
data processing
processing device
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
DE102016123178.9A
Other languages
German (de)
Inventor
Andreas Fießler
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.)
Genua GmbH
Original Assignee
Genua 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 Genua GmbH filed Critical Genua GmbH
Priority to DE102016123178.9A priority Critical patent/DE102016123178A1/en
Publication of DE102016123178A1 publication Critical patent/DE102016123178A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

Die Erfindung betrifft eine Verschlüsselungsvorrichtung (100) zum Verschlüsseln eines Datenpakets. Die Verschlüsselungsvorrichtung (100) umfasst eine Netzwerkschnittstelle (101), welche ausgebildet ist, das Datenpaket über ein Kommunikationsnetzwerk zu empfangen, einen Schaltkreis (103), welcher ausgebildet ist, das empfangene Datenpaket mit einem kryptographischen Schlüssel zu verknüpfen, um ein verschlüsseltes Datenpaket zu erhalten, und eine Busschnittstelle (105), welche ausgebildet ist, mit einer Datenverarbeitungsvorrichtung über einen Kommunikationsbus zu kommunizieren, wobei die Busschnittstelle (105) ausgebildet ist, das verschlüsselte Datenpaket mittels eines Speicherdirektzugriffs in einem Speicher der Datenverarbeitungsvorrichtung zu speichern.The invention relates to an encryption device (100) for encrypting a data packet. The encryption device (100) comprises a network interface (101), which is designed to receive the data packet via a communication network, a circuit (103), which is designed to link the received data packet with a cryptographic key in order to obtain an encrypted data packet , and a bus interface (105) configured to communicate with a data processing device via a communication bus, wherein the bus interface (105) is adapted to store the encrypted data packet in a memory of the data processing device by means of a memory direct access.

Description

Die vorliegende Erfindung betrifft das Gebiet der Kryptographie, insbesondere zur abhör- und manipulationsgeschützten Übertragung eines Datenpakets über nicht vertrauenswürdige Hardwarekomponenten und Kommunikationsbusse.The present invention relates to the field of cryptography, in particular for tapping and manipulation protected transmission of a data packet over untrusted hardware components and communication buses.

Field-Programmable-Gate-Arrays (FPGAs) sind programmierbare elektronische Bausteine, welche zur Laufzeit konfiguriert werden können. Wird ein FPGA in Verbindung mit einer Datenverarbeitungsvorrichtung eingesetzt, dann wird dieser zumeist über einen Kommunikationsbus an einen Prozessor der Datenverarbeitungsvorrichtung angebunden. Um über den Kommunikationsbus unter Verwendung eines vordefinierten Busprotokolls kommunizieren zu können, existieren vorgefertigte Entwurfsbausteine, sogenannte IP-Cores, welche beim Entwurf der Konfiguration des FPGA genutzt werden können, um das Busprotokoll zu implementieren. Die Entwurfsbausteine werden üblicherweise als nicht vertrauenswürdig eingestuft, da ihr Quellcode zumeist nicht bekannt ist. Eine eigene Implementierung eines Busprotokolls für einen FPGA ist jedoch sehr aufwendig.Field Programmable Gate Arrays (FPGAs) are programmable electronic devices that can be configured at runtime. If an FPGA is used in conjunction with a data processing device, then this is usually connected via a communication bus to a processor of the data processing device. In order to be able to communicate via the communication bus using a predefined bus protocol, there are ready-made design components, so-called IP cores, which can be used in the design of the configuration of the FPGA in order to implement the bus protocol. The building blocks are usually considered untrusted because their source code is mostly unknown. However, a separate implementation of a bus protocol for an FPGA is very expensive.

Analog hierzu erfolgt typischerweise der Entwurf von Application-Specific-Integrated-Circuits (ASICs). Auch hier können IP-Cores für die Implementierung eines Busprotokolls genutzt werden. Der Unterschied besteht lediglich darin, dass die Konfiguration nicht dynamisch geladen wird, sondern fest in dem ASIC vergossen wird.Analogously, the design of application-specific integrated circuits (ASICs) typically takes place. Here, too, IP cores can be used to implement a bus protocol. The only difference is that the configuration is not loaded dynamically, but is permanently potted in the ASIC.

Dadurch ergibt sich der Nachteil, dass beispielsweise durch eine Hintertür in nicht vertrauenswürdigen IP-Cores vertrauliche Datenpakete mitgeschnitten oder ausgeleitet werden können.This has the disadvantage that confidential data packets can be recorded or removed, for example, through a backdoor in untrusted IP cores.

In der Druckschrift A. Waksman, S. Sethumadhavan, „Silencing Hardware Backdoors“, IEEE Symposium on Security and Privacy, 2011, S. 49-63 ist ein Ansatz zur Verschlüsselung von Eingangsdaten von Hardwarekomponenten beschrieben.In the publication A. Waksman, S. Sethumadhavan, "Silencing Hardware Backdoors", IEEE Symposium on Security and Privacy, 2011, pp. 49-63 describes an approach for encrypting input data from hardware components.

Es ist eine Aufgabe der vorliegenden Erfindung, ein effizientes Konzept zum abhör- und manipulationsgeschützten Übertragen eines Datenpakets über nicht vertrauenswürdige Hardwarekomponenten und Kommunikationsbusse zu schaffen.It is an object of the present invention to provide an efficient concept for tapping and tamper-resistant transmission of a data packet over untrusted hardware components and communication busses.

Diese Aufgabe wird durch die Merkmale der unabhängigen Patentansprüche gelöst. Vorteilhafte Weiterbildungsformen sind Gegenstand der abhängigen Patentansprüche, der Beschreibung sowie der Figuren.This object is solved by the features of the independent claims. Advantageous forms of further development are the subject of the dependent claims, the description and the figures.

Die Erfindung basiert auf der Erkenntnis, dass die obige Aufgabe durch ein Verschlüsseln eines Datenpakets und einen Speicherdirektzugriff (engl. Direct-Memory-Access, DMA) auf einen Speicher einer Datenverarbeitungsvorrichtung zum Speichern des verschlüsselten Datenpakets gelöst werden kann. Das Datenpaket kann folglich auch unter Verwendung nicht vertrauenswürdiger IP-Cores zu der Datenverarbeitungsvorrichtung abhör- und manipulationsgeschützt übertragen werden. Die Verschlüsselung kann beispielsweise unter Verwendung eines eigenen IP-Cores erfolgen. Die Datenverarbeitungsvorrichtung kann beispielsweise unter Verwendung eines Programmcodes in Form eines Software-Treibers das verschlüsselte Datenpaket aus dem Speicher auslesen und wieder entschlüsseln.The invention is based on the finding that the above object can be achieved by encrypting a data packet and a direct memory access (DMA) to a memory of a data processing device for storing the encrypted data packet. Consequently, the data packet can also be transmitted to the data processing device tapping and manipulation-protected using untrusted IP cores. The encryption can for example be done using a separate IP core. By way of example, the data processing device can read out and decrypt the encrypted data packet from the memory using a program code in the form of a software driver.

Hierdurch wird erreicht, dass beispielsweise durch eine Hintertür in nicht vertrauenswürdigen IP-Cores vertrauliche Datenpakete nicht mitgeschnitten oder ausgeleitet werden können.This ensures that confidential data packets can not be recorded or routed through a backdoor in untrusted IP cores, for example.

Gemäß einem ersten Aspekt betrifft die Erfindung eine Verschlüsselungsvorrichtung zum Verschlüsseln eines Datenpakets. Die Verschlüsselungsvorrichtung umfasst eine Netzwerkschnittstelle, welche ausgebildet ist, das Datenpaket über ein Kommunikationsnetzwerk zu empfangen, einen Schaltkreis, welcher ausgebildet ist, das empfangene Datenpaket mit einem kryptographischen Schlüssel zu verknüpfen, um ein verschlüsseltes Datenpaket zu erhalten, und eine Busschnittstelle, welche ausgebildet ist, mit einer Datenverarbeitungsvorrichtung über einen Kommunikationsbus zu kommunizieren, wobei die Busschnittstelle ausgebildet ist, das verschlüsselte Datenpaket mittels eines Speicherdirektzugriffs in einem Speicher der Datenverarbeitungsvorrichtung zu speichern.According to a first aspect, the invention relates to an encryption device for encrypting a data packet. The encryption device comprises a network interface configured to receive the data packet via a communication network, a circuit configured to associate the received data packet with a cryptographic key to obtain an encrypted data packet, and a bus interface that is configured to communicate with a data processing device via a communication bus, wherein the bus interface is adapted to store the encrypted data packet by means of a direct memory access in a memory of the data processing device.

Gemäß einer Ausführungsform umfasst der Schaltkreis einen Speicher, in welchem der kryptographische Schlüssel gespeichert ist. Dadurch wird der Vorteil erreicht, dass der kryptographische Schlüssel zum Verschlüsseln des Datenpakets effizient bereitgestellt werden kann. Der kryptographische Schlüssel kann beispielsweise fest in den Speicher während einer Synthese des Schaltkreises eingebracht werden.According to one embodiment, the circuit comprises a memory in which the cryptographic key is stored. This provides the advantage that the cryptographic key for encrypting the data packet can be provided efficiently. For example, the cryptographic key may be permanently inserted into memory during synthesis of the circuit.

Gemäß einer Ausführungsform ist der Schaltkreis ausgebildet, das empfangene Datenpaket mit dem kryptographischen Schlüssel unter Verwendung eines Blockchiffre-Algorithmus, insbesondere eines Advanced-Encryption-Standard (AES) Verschlüsselungsalgorithmus, zu verknüpfen. Die Verknüpfung kann jedoch auch unter Verwendung eines geeigneten Stromchiffre-Algorithmus erfolgen. Dadurch wird der Vorteil erreicht, dass ein effizienter Algorithmus zur Verschlüsselung des Datenpakets eingesetzt werden kann.According to one embodiment, the circuit is configured to combine the received data packet with the cryptographic key using a block cipher algorithm, in particular an Advanced Encryption Standard (AES) encryption algorithm. However, the linking can also be done using a suitable stream cipher algorithm. This provides the advantage that an efficient algorithm for encrypting the data packet can be used.

Gemäß einer Ausführungsform ist das Kommunikationsnetzwerk ein Ethernet-Kommunikationsnetzwerk. Dadurch wird der Vorteil erreicht, dass das Datenpaket effizient bereitgestellt werden kann. According to one embodiment, the communication network is an Ethernet communication network. This provides the advantage that the data packet can be efficiently provided.

Gemäß einer Ausführungsform ist der Kommunikationsbus ein Peripheral Component Interconnect (PCI) Kommunikationsbus. Dadurch wird der Vorteil erreicht, dass das verschlüsselte Datenpaket effizient in den Speicher der Datenverarbeitungsvorrichtung übertragen werden kann.According to one embodiment, the communication bus is a Peripheral Component Interconnect (PCI) communication bus. This achieves the advantage that the encrypted data packet can be efficiently transferred to the memory of the data processing device.

Gemäß einer Ausführungsform ist der Kommunikationsbus ein Peripheral Component Interconnect Express (PCIe) Kommunikationsbus. Dadurch wird der Vorteil erreicht, dass das verschlüsselte Datenpaket effizient in den Speicher der Datenverarbeitungsvorrichtung übertragen werden kann.According to one embodiment, the communication bus is a Peripheral Component Interconnect Express (PCIe) communication bus. This achieves the advantage that the encrypted data packet can be efficiently transferred to the memory of the data processing device.

Gemäß einer Ausführungsform ist die Verschlüsselungsvorrichtung, insbesondere die Netzwerkschnittstelle, der Schaltkreis und/oder die Busschnittstelle, mittels eines Field-Programmable-Gate-Array (FPGA) oder mittels eines Application-Specific-Integrated-Circuit (ASIC) implementiert. Die Verschlüsselungsvorrichtung, insbesondere die Netzwerkschnittstelle, der Schaltkreis und/oder die Busschnittstelle, können ferner mittels eines Kleinstrechners oder eines System-on-Chip (SoC) implementiert werden. Dadurch wird der Vorteil erreicht, dass die Verschlüsselungsvorrichtung effizient realisiert werden kann.According to one embodiment, the encryption device, in particular the network interface, the circuit and / or the bus interface, is implemented by means of a Field Programmable Gate Array (FPGA) or by means of an Application-Specific Integrated Circuit (ASIC). The encryption device, in particular the network interface, the circuit and / or the bus interface, can also be implemented by means of a microcomputer or a system-on-chip (SoC). Thereby, the advantage is achieved that the encryption device can be realized efficiently.

Die Netzwerkschnittstelle, der Schaltkreis und/oder die Busschnittstelle können beispielsweise unter Verwendung von IP-Cores implementiert werden. Dabei können nicht vertrauenswürdige IP-Cores für die Implementierung der Busschnittstelle und eigene IP-Cores für die Implementierung der Netzwerkschnittstelle und/oder des Schaltkreises eingesetzt werden.The network interface, the circuit and / or the bus interface can be implemented, for example, using IP cores. In this case, untrusted IP cores for the implementation of the bus interface and dedicated IP cores for the implementation of the network interface and / or the circuit can be used.

Gemäß einer Ausführungsform umfasst die Verschlüsselungsvorrichtung eine Verschlüsselungseinheit und eine Netzwerkkarte, wobei die Verschlüsselungseinheit die Netzwerkschnittstelle und den Schaltkreis umfasst, und wobei die Netzwerkkarte die Busschnittstelle umfasst. Dadurch wird der Vorteil erreicht, dass separate Komponenten zur Implementierung der Verschlüsselungsvorrichtung eingesetzt werden können.According to one embodiment, the encryption device comprises an encryption unit and a network card, wherein the encryption unit comprises the network interface and the circuit, and wherein the network card comprises the bus interface. This provides the advantage that separate components can be used to implement the encryption device.

Gemäß einer Ausführungsform sind die Verschlüsselungseinheit und die Netzwerkkarte ausgebildet, über ein weiteres Kommunikationsnetzwerk miteinander zu kommunizieren. Dadurch wird der Vorteil erreicht, dass die Verschlüsselungseinheit und die Netzwerkkarte effizient aneinander angebunden werden können. Das weitere Kommunikationsnetzwerk kann beispielsweise ein weiteres Ethernet-Kommunikationsnetzwerk sein.According to one embodiment, the encryption unit and the network card are configured to communicate with one another via a further communication network. This has the advantage that the encryption unit and the network card can be efficiently connected to each other. The further communication network may be, for example, another Ethernet communication network.

Gemäß einem zweiten Aspekt betrifft die Erfindung eine Datenverarbeitungsvorrichtung zum Entschlüsseln eines verschlüsselten Datenpakets, wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist. Die Datenverarbeitungsvorrichtung umfasst eine Busschnittstelle, welche ausgebildet ist, über einen Kommunikationsbus mit einer Verschlüsselungsvorrichtung zu kommunizieren, wobei die Busschnittstelle ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung zu gewähren, einen Speicher, welcher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung beschreibbar ist, wobei der Speicher ausgebildet ist, das verschlüsselte Datenpaket zu speichern, und einen Prozessor, welcher ausgebildet ist, das verschlüsselte Datenpaket mit dem kryptographischen Schlüssel zu verknüpfen, um ein entschlüsseltes Datenpaket zu erhalten.According to a second aspect, the invention relates to a data processing device for decrypting an encrypted data packet, wherein the encrypted data packet is encrypted using a cryptographic key. The data processing device comprises a bus interface, which is designed to communicate via a communication bus with an encryption device, the bus interface being designed to grant a memory direct access by the encryption device, a memory which is writable by the memory direct access by the encryption device, wherein the memory is formed is to store the encrypted data packet, and a processor, which is configured to associate the encrypted data packet with the cryptographic key to obtain a decrypted data packet.

Gemäß einer Ausführungsform ist der Prozessor ausgebildet, einen Programmcode zum Verknüpfen des verschlüsselten Datenpakets mit dem kryptographischen Schlüssel auszuführen. Dadurch wird der Vorteil erreicht, dass das verschlüsselte Datenpaket effizient entschlüsselt werden kann. Der Programmcode kann beispielsweise in Form eines Software-Treibers bereitgestellt sein.According to one embodiment, the processor is configured to execute a program code for linking the encrypted data packet with the cryptographic key. This provides the advantage that the encrypted data packet can be decrypted efficiently. The program code can be provided, for example, in the form of a software driver.

Gemäß einer Ausführungsform ist der kryptographische Schlüssel in dem Speicher gespeichert. Dadurch wird der Vorteil erreicht, dass der kryptographische Schlüssel effizient bereitgestellt werden kann.According to one embodiment, the cryptographic key is stored in the memory. This provides the advantage that the cryptographic key can be provided efficiently.

Gemäß einer Ausführungsform ist der Prozessor ausgebildet, das verschlüsselte Datenpaket mit dem kryptographischen Schlüssel unter Verwendung eines Blockchiffre-Algorithmus, insbesondere eines Advanced-Encryption-Standard (AES) Entschlüsselungsalgorithmus, zu verknüpfen. Die Verknüpfung kann jedoch auch unter Verwendung eines geeigneten Stromchiffre-Algorithmus erfolgen. Dadurch wird der Vorteil erreicht, dass ein effizienter Algorithmus zur Entschlüsselung des verschlüsselten Datenpakets eingesetzt werden kann.In one embodiment, the processor is configured to associate the encrypted data packet with the cryptographic key using a block cipher algorithm, in particular an Advanced Encryption Standard (AES) decryption algorithm. However, the linking can also be done using a suitable stream cipher algorithm. This provides the advantage that an efficient algorithm for decrypting the encrypted data packet can be used.

Gemäß einem dritten Aspekt betrifft die Erfindung ein System zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus. Das System umfasst eine Verschlüsselungsvorrichtung gemäß dem ersten Aspekt der Erfindung, und eine Datenverarbeitungsvorrichtung gemäß dem zweiten Aspekt der Erfindung, wobei die Verschlüsselungsvorrichtung und die Datenverarbeitungsvorrichtung über den Kommunikationsbus miteinander verbunden sind.According to a third aspect, the invention relates to a system for transmitting an encrypted data packet via a communication bus. The system comprises an encryption device according to the first aspect of the invention, and a data processing device according to the second aspect of the invention, wherein the encryption device and the data processing device are interconnected via the communication bus.

Gemäß einer Ausführungsform sind die Verschlüsselungsvorrichtung und die Datenverarbeitungsvorrichtung ausgebildet, den kryptographischen Schlüssel mittels eines Diffie-Hellman-Schlüsselaustauschs zu bestimmen. Dadurch wird der Vorteil erreicht, dass der kryptographische Schlüssel zur Verschlüsselung bzw. Entschlüsselung effizient zwischen der Verschlüsselungsvorrichtung und der Datenverarbeitungsvorrichtung ausgetauscht werden können. According to one embodiment, the encryption device and the data processing device are configured to determine the cryptographic key by means of a Diffie-Hellman key exchange. This achieves the advantage that the cryptographic key for encryption or decryption can be exchanged efficiently between the encryption device and the data processing device.

Gemäß einer Ausführungsform erfolgt ein Austausch des kryptographischen Schlüssels zwischen der Verschlüsselungsvorrichtung und der Datenverarbeitungsvorrichtung bei einer Initialisierung der Verschlüsselungsvorrichtung und der Datenverarbeitungsvorrichtung bei der Herstellung. Dadurch wird der Vorteil erreicht, dass der kryptographische Schlüssel bereits bei der Herstellung jeweils fest in die Verschlüsselungsvorrichtung und die Datenverarbeitungsvorrichtung eingebracht werden kann.According to one embodiment, an exchange of the cryptographic key between the encryption device and the data processing device takes place during an initialization of the encryption device and the data processing device during production. As a result, the advantage is achieved that the cryptographic key can already be firmly inserted in the encryption device and the data processing device during production.

Gemäß einer Ausführungsform umfassen die Verschlüsselungsvorrichtung und die Datenverarbeitungsvorrichtung jeweils eine Kommunikationsschnittstelle zum Austausch des kryptographischen Schlüssels. Dadurch wird der Vorteil erreicht, dass die Kommunikationsschnittstelle dediziert auf den Austausch des kryptographischen Schlüssels ausgelegt werden kann.According to one embodiment, the encryption device and the data processing device each comprise a communication interface for exchanging the cryptographic key. This provides the advantage that the communication interface can be dedicated to the exchange of the cryptographic key.

Gemäß einer Ausführungsform erfolgt der Austausch des kryptographischen Schlüssels zwischen der Verschlüsselungsvorrichtung und der Datenverarbeitungsvorrichtung unter Verwendung eines wechselbaren Speicherbausteins oder einer Smartcard. Dadurch wird der Vorteil erreicht, dass der Austausch des kryptographischen Schlüssels zwischen der Verschlüsselungsvorrichtung und der Datenverarbeitungsvorrichtung mittels dedizierter Hardwarekomponenten durchgeführt werden kann.According to one embodiment, the exchange of the cryptographic key between the encryption device and the data processing device takes place using a replaceable memory module or a smart card. This provides the advantage that the exchange of the cryptographic key between the encryption device and the data processing device can be performed by means of dedicated hardware components.

Gemäß einem vierten Aspekt betrifft die Erfindung ein Verfahren zum Verschlüsseln eines Datenpakets unter Verwendung einer Verschlüsselungsvorrichtung. Die Verschlüsselungsvorrichtung umfasst eine Netzwerkschnittstelle, einen Schaltkreis und eine Busschnittstelle, wobei die Busschnittstelle ausgebildet ist, mit einer Datenverarbeitungsvorrichtung über einen Kommunikationsbus zu kommunizieren. Das Verfahren umfasst ein Empfangen des Datenpakets über ein Kommunikationsnetzwerk durch die Netzwerkschnittstelle, ein Verknüpfen des empfangenen Datenpakets mit einem kryptographischen Schlüssel durch den Schaltkreis, um ein verschlüsseltes Datenpaket zu erhalten, und ein Speichern des verschlüsselten Datenpakets mittels eines Speicherdirektzugriffs in einem Speicher der Datenverarbeitungsvorrichtung durch die Busschnittstelle.According to a fourth aspect, the invention relates to a method for encrypting a data packet using an encryption device. The encryption device comprises a network interface, a circuit and a bus interface, wherein the bus interface is configured to communicate with a data processing device via a communication bus. The method comprises receiving the data packet via a communication network through the network interface, linking the received data packet with a cryptographic key through the circuit to obtain an encrypted data packet, and storing the encrypted data packet by means of a direct memory access in a memory of the data processing device Bus Interface.

Das Verfahren kann durch die Verschlüsselungsvorrichtung ausgeführt werden. Weitere Merkmale des Verfahrens resultieren unmittelbar aus den Merkmalen und/oder der Funktionalität der Verschlüsselungsvorrichtung.The method may be performed by the encryption device. Further features of the method result directly from the features and / or functionality of the encryption device.

Gemäß einem fünften Aspekt betrifft die Erfindung ein Verfahren zum Entschlüsseln eines verschlüsselten Datenpakets unter Verwendung einer Datenverarbeitungsvorrichtung, wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist. Die Datenverarbeitungsvorrichtung umfasst eine Busschnittstelle, einen Speicher und einen Prozessor, wobei die Busschnittstelle ausgebildet ist, über einen Kommunikationsbus mit einer Verschlüsselungsvorrichtung zu kommunizieren, wobei die Busschnittstelle ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung zu gewähren, wobei der Speicher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung beschreibbar ist. Das Verfahren umfasst ein Speichern des verschlüsselten Datenpakets in dem Speicher mittels des Speicherdirektzugriffs, und ein Verknüpfen des verschlüsselten Datenpakets mit dem kryptographischen Schlüssel durch den Prozessor, um ein entschlüsseltes Datenpaket zu erhalten.According to a fifth aspect, the invention relates to a method for decrypting an encrypted data packet using a data processing device, wherein the encrypted data packet is encrypted using a cryptographic key. The data processing device comprises a bus interface, a memory and a processor, wherein the bus interface is adapted to communicate via a communication bus with an encryption device, wherein the bus interface is adapted to grant a memory direct access by the encryption device, wherein the memory by means of the memory direct access by the encryption device is writable. The method comprises storing the encrypted data packet in the memory by means of the memory direct access, and associating the encrypted data packet with the cryptographic key by the processor to obtain a decrypted data packet.

Das Verfahren kann durch die Datenverarbeitungsvorrichtung ausgeführt werden. Weitere Merkmale des Verfahrens resultieren unmittelbar aus den Merkmalen und/oder der Funktionalität der Datenverarbeitungsvorrichtung.The method may be performed by the data processing device. Further features of the method result directly from the features and / or the functionality of the data processing device.

Gemäß einem sechsten Aspekt betrifft die Erfindung ein Computerprogramm mit einem Programmcode zum Ausführen des Verfahrens gemäß dem vierten Aspekt der Erfindung oder des Verfahrens gemäß dem fünften Aspekt der Erfindung.According to a sixth aspect, the invention relates to a computer program with a program code for carrying out the method according to the fourth aspect of the invention or the method according to the fifth aspect of the invention.

Die Verschlüsselungsvorrichtung und/oder die Datenverarbeitungsvorrichtung können programmtechnisch eingerichtet sein, um das Computerprogramm auszuführen.The encryption device and / or the data processing device can be set up in terms of programming in order to execute the computer program.

Die Erfindung kann in Hardware und/oder Software implementiert werden.The invention may be implemented in hardware and / or software.

Weitere Ausführungsbeispiele werden Bezug nehmend auf die beiliegenden Figuren näher erläutert. Es zeigen:

  • 1 ein schematisches Diagramm einer Verschlüsselungsvorrichtung zum Verschlüsseln eines Datenpakets;
  • 2 ein schematisches Diagramm einer Datenverarbeitungsvorrichtung zum Entschlüsseln eines verschlüsselten Datenpakets;
  • 3 ein schematisches Diagramm eines Systems zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus;
  • 4 ein schematisches Diagramm eines Systems zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus;
  • 5 ein schematisches Diagramm eines Systems zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus;
  • 6 ein schematisches Diagramm eines Systems zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus;
  • 7 ein schematisches Diagramm eines Verfahrens zum Verschlüsseln eines Datenpakets unter Verwendung einer Verschlüsselungsvorrichtung; und
  • 8 ein schematisches Diagramm eines Verfahrens zum Entschlüsseln eines verschlüsselten Datenpakets unter Verwendung einer Datenverarbeitungsvorrichtu ng.
Further embodiments will be explained with reference to the accompanying figures. Show it:
  • 1 a schematic diagram of an encryption device for encrypting a data packet;
  • 2 a schematic diagram of a data processing device for decrypting an encrypted data packet;
  • 3 a schematic diagram of a system for transmitting an encrypted data packet over a communication bus;
  • 4 a schematic diagram of a system for transmitting an encrypted data packet over a communication bus;
  • 5 a schematic diagram of a system for transmitting an encrypted data packet over a communication bus;
  • 6 a schematic diagram of a system for transmitting an encrypted data packet over a communication bus;
  • 7 a schematic diagram of a method for encrypting a data packet using an encryption device; and
  • 8th a schematic diagram of a method for decrypting an encrypted data packet using a Datenverarbeitungsvorrichtu ng.

1 zeigt ein schematisches Diagramm einer Verschlüsselungsvorrichtung 100 zum Verschlüsseln eines Datenpakets. Die Verschlüsselungsvorrichtung 100 umfasst eine Netzwerkschnittstelle 101, welche ausgebildet ist, das Datenpaket über ein Kommunikationsnetzwerk zu empfangen, einen Schaltkreis 103, welcher ausgebildet ist, das empfangene Datenpaket mit einem kryptographischen Schlüssel zu verknüpfen, um ein verschlüsseltes Datenpaket zu erhalten, und eine Busschnittstelle 105, welche ausgebildet ist, mit einer Datenverarbeitungsvorrichtung über einen Kommunikationsbus zu kommunizieren, wobei die Busschnittstelle 105 ausgebildet ist, das verschlüsselte Datenpaket mittels eines Speicherdirektzugriffs in einem Speicher der Datenverarbeitungsvorrichtung zu speichern. 1 shows a schematic diagram of an encryption device 100 for encrypting a data packet. The encryption device 100 includes a network interface 101 which is adapted to receive the data packet via a communication network, a circuit 103 which is adapted to combine the received data packet with a cryptographic key to obtain an encrypted data packet, and a bus interface 105 , which is adapted to communicate with a data processing device via a communication bus, wherein the bus interface 105 is configured to store the encrypted data packet by means of a direct memory access in a memory of the data processing device.

2 zeigt ein schematisches Diagramm einer Datenverarbeitungsvorrichtung 200 zum Entschlüsseln eines verschlüsselten Datenpakets, wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist. Die Datenverarbeitungsvorrichtung 200 umfasst eine Busschnittstelle 201, welche ausgebildet ist, über einen Kommunikationsbus mit einer Verschlüsselungsvorrichtung zu kommunizieren, wobei die Busschnittstelle 201 ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung zu gewähren, einen Speicher 203, welcher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung beschreibbar ist, wobei der Speicher 203 ausgebildet ist, das verschlüsselte Datenpaket zu speichern, und einen Prozessor 205, welcher ausgebildet ist, das verschlüsselte Datenpaket mit dem kryptographischen Schlüssel zu verknüpfen, um ein entschlüsseltes Datenpaket zu erhalten. 2 shows a schematic diagram of a data processing device 200 for decrypting an encrypted data packet, wherein the encrypted data packet is encrypted using a cryptographic key. The data processing device 200 includes a bus interface 201 , which is adapted to communicate via a communication bus with an encryption device, wherein the bus interface 201 is designed to grant a memory direct access by the encryption device, a memory 203 , which is writable by the memory direct access by the encryption device, wherein the memory 203 is configured to store the encrypted data packet, and a processor 205 which is configured to associate the encrypted data packet with the cryptographic key to obtain a decrypted data packet.

3 zeigt ein schematisches Diagramm eines Systems 300 zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus 301. Das System 300 umfasst eine Verschlüsselungsvorrichtung 100 und eine Datenverarbeitungsvorrichtung 200, wobei die Verschlüsselungsvorrichtung 100 und die Datenverarbeitungsvorrichtung 200 über den Kommunikationsbus 301 miteinander verbunden sind. 3 shows a schematic diagram of a system 300 for transmitting an encrypted data packet over a communication bus 301 , The system 300 includes an encryption device 100 and a data processing device 200 , wherein the encryption device 100 and the data processing device 200 over the communication bus 301 connected to each other.

Die Verschlüsselungsvorrichtung 100 umfasst eine Netzwerkschnittstelle 101, welche ausgebildet ist, ein Datenpaket über ein Kommunikationsnetzwerk zu empfangen, einen Schaltkreis 103, welcher ausgebildet ist, das empfangene Datenpaket mit einem kryptographischen Schlüssel zu verknüpfen, um das verschlüsselte Datenpaket zu erhalten, und eine Busschnittstelle 105, welche ausgebildet ist, mit der Datenverarbeitungsvorrichtung 200 über den Kommunikationsbus 301 zu kommunizieren, wobei die Busschnittstelle 105 ausgebildet ist, das verschlüsselte Datenpaket mittels eines Speicherdirektzugriffs in einem Speicher 203 der Datenverarbeitungsvorrichtung 200 zu speichern.The encryption device 100 includes a network interface 101 configured to receive a data packet via a communication network, a circuit 103 which is adapted to combine the received data packet with a cryptographic key to obtain the encrypted data packet, and a bus interface 105 which is formed with the data processing apparatus 200 via the communication bus 301 to communicate, with the bus interface 105 is formed, the encrypted data packet by means of a memory direct access in a memory 203 the data processing device 200 save.

Die Datenverarbeitungsvorrichtung 200 umfasst eine Busschnittstelle 201, welche ausgebildet ist, über den Kommunikationsbus 301 mit der Verschlüsselungsvorrichtung 100 zu kommunizieren, wobei die Busschnittstelle 201 ausgebildet ist, den Speicherdirektzugriff durch die Verschlüsselungsvorrichtung 100 zu gewähren, den Speicher 203, welcher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung 100 beschreibbar ist, wobei der Speicher 203 ausgebildet ist, das verschlüsselte Datenpaket zu speichern, und einen Prozessor 205, welcher ausgebildet ist, das verschlüsselte Datenpaket mit dem kryptographischen Schlüssel zu verknüpfen, um ein entschlüsseltes Datenpaket zu erhalten.The data processing device 200 includes a bus interface 201 which is formed over the communication bus 301 with the encryption device 100 to communicate, with the bus interface 201 is formed, the memory direct access by the encryption device 100 to grant the store 203 , which by means of the memory direct access by the encryption device 100 is writable, the memory 203 is configured to store the encrypted data packet, and a processor 205 which is configured to associate the encrypted data packet with the cryptographic key to obtain a decrypted data packet.

Das System 300 kann ferner eine bidirektionale Kommunikation zwischen der Verschlüsselungsvorrichtung 100 und der Datenverarbeitungsvorrichtung 200 ermöglichen.The system 300 Furthermore, a bidirectional communication between the encryption device 100 and the data processing device 200 enable.

Der Prozessor 205 der Datenverarbeitungsvorrichtung 200 kann hierfür ausgebildet sein, ein weiteres Datenpaket bereitzustellen und mit dem kryptographischen Schlüssel zu verknüpfen, um ein verschlüsseltes weiteres Datenpaket zu erhalten. Der Prozessor 205 kann ferner ausgebildet sein, das verschlüsselte weitere Datenpaket in dem Speicher 203 abzulegen. Die Busschnittstelle 105 der Verschlüsselungsvorrichtung 100 kann ausgebildet sein, mittels eines Speicherdirektzugriffs das verschlüsselte weitere Datenpaket aus dem Speicher 203 der Datenverarbeitungsvorrichtung 200 auszulesen. Der Schaltkreis 103 kann ausgebildet sein, das ausgelesene verschlüsselte weitere Datenpaket mit dem kryptographischen Schlüssel zu verknüpfen, um ein entschlüsseltes weiteres Datenpaket zu erhalten. Die Netzwerkschnittstelle 101 kann ausgebildet sein, das entschlüsselte weitere Datenpaket über das Kommunikationsnetzwerk auszusenden. Folglich ist eine Kommunikation in Gegenrichtung von der Datenverarbeitungsvorrichtung 200 zu der Verschlüsselungsvorrichtung 100 möglich. Die Verschlüsselungsvorrichtung 100 bzw. der Schaltkreis 103 können mithin sowohl zum Verschlüsseln als auch zum Entschlüsseln eingesetzt werden.The processor 205 the data processing device 200 may be configured to provide another data packet and with the to combine cryptographic keys to obtain an encrypted further data packet. The processor 205 may further be configured, the encrypted further data packet in the memory 203 store. The bus interface 105 the encryption device 100 can be formed by means of a memory direct access the encrypted further data packet from the memory 203 the data processing device 200 read. The circuit 103 can be configured to associate the read encrypted further data packet with the cryptographic key to obtain a decrypted further data packet. The network interface 101 can be configured to send the decrypted further data packet via the communication network. Consequently, communication is in the opposite direction from the data processing device 200 to the encryption device 100 possible. The encryption device 100 or the circuit 103 can therefore be used both for encrypting and for decrypting.

4 zeigt ein schematisches Diagramm eines Systems 300 zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus 301. Das System 300 umfasst eine Verschlüsselungsvorrichtung 100 und eine Datenverarbeitungsvorrichtung 200, wobei die Verschlüsselungsvorrichtung 100 und die Datenverarbeitungsvorrichtung 200 über den Kommunikationsbus 301 miteinander verbunden sind. 4 shows a schematic diagram of a system 300 for transmitting an encrypted data packet over a communication bus 301 , The system 300 includes an encryption device 100 and a data processing device 200 , wherein the encryption device 100 and the data processing device 200 over the communication bus 301 connected to each other.

Die Verschlüsselungsvorrichtung 100 umfasst eine Netzwerkschnittstelle 101, einen Schaltkreis 103, und eine Busschnittstelle 105. Die Datenverarbeitungsvorrichtung 200 umfasst eine Busschnittstelle 201, einen Speicher 203, und einen Prozessor 205. Die Busschnittstelle 105 und die Busschnittstelle 201 sind jeweils als PCI-Bridges bzw. PCI-Brücken ausgebildet. Der Kommunikationsbus 301 ist ein PCI- bzw. ein PCIe-Kommunikationsbus.The encryption device 100 includes a network interface 101 , a circuit 103 , and a bus interface 105 , The data processing device 200 includes a bus interface 201 , a store 203 , and a processor 205 , The bus interface 105 and the bus interface 201 are each designed as PCI bridges or PCI bridges. The communication bus 301 is a PCI or a PCIe communication bus.

Durch das System 300 wird ermöglicht, nicht vertrauenswürdige IP-Cores nutzen zu können und zugleich ein vertrauenswürdiges System 300 zu realisieren. Im dargestellten System 300 werden Datenpakete von außerhalb empfangen und in einer eigenen FPGA- bzw. ASIC-Komponente geeignet vorverarbeitet. Bevor die empfangenen Datenpakete dann Richtung Speicher, beispielsweise Hauptspeicher, der Datenverarbeitungsvorrichtung 100 mittels eines Speicherdirektzugriffs oder einem vergleichbaren Verfahren, wie beispielweise I/O-Port, kopiert werden, werden diese durch einen im FPGA / ASIC implementierten Schaltkreis 103 als Crypto-Komponente verschlüsselt. Die verschlüsselten Datenpakete werden dann durch den Prozessor 205, beispielsweise die Haupt-CPU, der Datenverarbeitungsvorrichtung 200 wieder entschlüsselt.Through the system 300 allows to use untrusted IP cores and at the same time a trustworthy system 300 to realize. In the illustrated system 300, data packets are received from outside and preprocessed appropriately in a separate FPGA or ASIC component. Before the received data packets then direction memory, such as main memory, the data processing device 100 are copied by means of a memory direct access or a similar method, such as I / O port, they are encrypted by a implemented in FPGA / ASIC circuit 103 as a crypto-component. The encrypted data packets are then processed by the processor 205 For example, the main CPU, the data processing device 200 decrypted again.

Der Austausch der kryptographischen Schlüssel kann zur Laufzeit, beispielsweise bei Initialisierung, oder zur Synthese- bzw. Implementierungszeit des FPGA- bzw. des ASIC und eines zugehörigen Software-Treibers erfolgen.The exchange of the cryptographic keys can take place at runtime, for example during initialization, or during the synthesis or implementation time of the FPGA or ASIC and an associated software driver.

5 zeigt ein schematisches Diagramm eines Systems 300 zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus 301. Das System 300 umfasst eine Verschlüsselungsvorrichtung 100 und eine Datenverarbeitungsvorrichtung 200, wobei die Verschlüsselungsvorrichtung 100 und die Datenverarbeitungsvorrichtung 200 über den Kommunikationsbus 301 miteinander verbunden sind. 5 shows a schematic diagram of a system 300 for transmitting an encrypted data packet over a communication bus 301 , The system 300 includes an encryption device 100 and a data processing device 200 , wherein the encryption device 100 and the data processing device 200 over the communication bus 301 connected to each other.

Die Verschlüsselungsvorrichtung 100 wird durch eine Verschlüsselungseinheit 501 und eine Netzwerkkarte 503 gebildet, wobei die Verschlüsselungseinheit 501 eine Netzwerkschnittstelle 101 und einen Schaltkreis 103 umfasst, und wobei die Netzwerkkarte 503 eine Busschnittstelle 105 umfasst. Die Verschlüsselungseinheit 501 kann eine externe Komponente sein und die Netzwerkkarte 503 kann eine Standard-Netzwerkkarte sein. Die Verschlüsselungseinheit 501 kann in Hardware und/oder Software implementiert werden. Der Schaltkreis 103 wird folglich nicht gemeinsam mit der Busschnittstelle 105 in einem FPGA oder ASIC implementiert, sondern wird als externe Komponente vor der Netzwerkkarte 503 eingeschleift. Die Datenverarbeitungsvorrichtung 200 umfasst eine Busschnittstelle 201, einen Speicher 203, und einen Prozessor 205. Die Busschnittstelle 105 und die Busschnittstelle 201 sind jeweils als PCI-Bridges bzw. PCI-Brücken ausgebildet. Der Kommunikationsbus 301 ist ein PCI- bzw. ein PCIe-Kommunikationsbus.The encryption device 100 is through an encryption unit 501 and a network card 503 formed, wherein the encryption unit 501 a network interface 101 and a circuit 103 and wherein the network card 503 is a bus interface 105 includes. The encryption unit 501 can be an external component and the network card 503 can be a standard network card. The encryption unit 501 can be implemented in hardware and / or software. The circuit 103 Consequently, it will not work together with the bus interface 105 implemented in an FPGA or ASIC, but is considered an external component in front of the network card 503 looped. The data processing device 200 includes a bus interface 201 , a store 203 , and a processor 205 , The bus interface 105 and the bus interface 201 are each designed as PCI bridges or PCI bridges. The communication bus 301 is a PCI or a PCIe communication bus.

Das Datenpaket wird durch die Netzwerkschnittstelle 101 über ein Kommunikationsnetzwerk, beispielsweise ein Ethernet-Kommunikationsnetzwerk, empfangen. Die Kommunikation zwischen der Verschlüsselungseinheit 501 und der Netzwerkkarte 503 erfolgt über ein weiteres Kommunikationsnetzwerk, beispielsweise ein weiteres Ethernet-Kommunikationsnetzwerk. Die Kommunikation über das Kommunikationsnetzwerk und/oder das weitere Kommunikationsnetzwerk kann unter Verwendung eines Standard-Kommunikationsprotokolls durchgeführt werden.The data packet is through the network interface 101 via a communication network, such as an Ethernet communication network. The communication between the encryption unit 501 and the network card 503 takes place via a further communication network, for example a further Ethernet communication network. The communication via the communication network and / or the further communication network can be carried out using a standard communication protocol.

Das Konzept ermöglicht mithin ein Zusammenspiel von nicht vertrauenswürdigen Komponenten mit einer Datenverarbeitungsvorrichtung 100, beispielsweise einem Computersystem und dem darauf laufenden Betriebssystem. Ferner ermöglicht das Konzept eine Absicherung bereits fertiger Hardwarebausteine mittels einer externen Komponente. Da verschlüsselte Datenpakete durch die nicht vertrauenswürdigen Komponenten übertragen werden, brauchen diese in etwaige Sicherheitsanalysen gegebenenfalls nicht mit einbezogen zu werden.The concept thus allows an interaction of untrusted components with a data processing device 100 For example, a computer system and the operating system running on it. Furthermore, the concept makes it possible to secure already finished hardware components by means of an external component. Since encrypted data packets are transmitted through the untrusted components, they may not be included in any security analyzes.

6 zeigt ein schematisches Diagramm eines Systems 300 zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus 301. Das System 300 umfasst eine Verschlüsselungsvorrichtung 100 und eine Datenverarbeitungsvorrichtung 200, wobei die Verschlüsselungsvorrichtung 100 und die Datenverarbeitungsvorrichtung 200 über den Kommunikationsbus 301 miteinander verbunden sind. Die Verschlüsselungsvorrichtung 100 bildet eine Network Interface Card (NIC) in einem FPGA. 6 shows a schematic diagram of a system 300 for transmitting an encrypted data packet over a communication bus 301 , The system 300 includes an encryption device 100 and a data processing device 200 , wherein the encryption device 100 and the data processing device 200 over the communication bus 301 connected to each other. The encryption device 100 forms a Network Interface Card (NIC) in an FPGA.

Die Verschlüsselungsvorrichtung 100 umfasst eine Netzwerkschnittstelle 101, einen Schaltkreis 103, und eine Busschnittstelle 105. Die Netzwerkschnittstelle 101 umfasst eine Eingangs-/Ausgangsschnittstelle (I/O) sowie eine Logik zur Vorverarbeitung der empfangenen Datenpakete. Der Schaltkreis 103 kann als Encoder/Decoder (E/D) ausgebildet sein. Der Schaltkreis 103 kann für eine bidirektionale Kommunikation zwischen der Verschlüsselungsvorrichtung 100 und der Datenverarbeitungsvorrichtung 200 sowohl zum Verschlüsseln als auch zum Entschlüsseln von Datenpaketen eingesetzt werden. Die Busschnittstelle 105 kann einen DMA-Controller zum Speicherdirektzugriff umfassen. Die Datenverarbeitungsvorrichtung 200 umfasst eine nicht gezeigte Busschnittstelle 201, einen Speicher 203, und einen Prozessor 205. Der Speicher 203 kann ein Hauptspeicher, beispielsweise in Form eines Double Data Rate (DDR) Speichers, der Datenverarbeitungsvorrichtung 200 sein. Der Prozessor 205 kann einen Encoder/Decoder (E/D) sowie ein Betriebssystem (Operating System, OS) implementieren bzw. ausführen. Die Implementierung kann mittels eines Software-Treibers erfolgen. Die Busschnittstelle 105 und die Busschnittstelle 201 sind jeweils als PCI-Bridges bzw. PCI-Brücken ausgebildet. Der Kommunikationsbus 301 ist ein PCI- bzw. ein PCIe-Kommunikationsbus.The encryption device 100 includes a network interface 101 , a circuit 103 , and a bus interface 105 , The network interface 101 includes an input / output interface (I / O) and logic for pre-processing the received data packets. The circuit 103 can be designed as an encoder / decoder (E / D). The circuit 103 can for bidirectional communication between the encryption device 100 and the data processing device 200 both for encrypting and for decrypting data packets are used. The bus interface 105 may include a direct memory access DMA controller. The data processing device 200 includes a bus interface, not shown 201 , a store 203 , and a processor 205 , The memory 203 may be a main memory, for example in the form of a Double Data Rate (DDR) memory, the data processing device 200 be. The processor 205 can implement / execute an Encoder / Decoder (E / D) as well as an operating system (OS). The implementation can be done by means of a software driver. The bus interface 105 and the bus interface 201 are each designed as PCI bridges or PCI bridges. The communication bus 301 is a PCI or a PCIe communication bus.

Bei der Implementierung, beispielsweise mittels des FPGA, können für bestimmte Aufgaben Komponenten von Drittherstellern eingesetzt werden, welche ein potentielles Risiko darstellen. Durch das Konzept kann die Sicherheit der Kommunikation erhöht werden.In the implementation, for example by means of the FPGA, components of third-party manufacturers, which represent a potential risk, can be used for certain tasks. The concept can increase the security of communication.

Die Verschlüsselungsvorrichtung 100 ist beispielsweise auf einem FPGA mit Komponenten von Drittherstellern implementiert. Die Verschlüsselungsvorrichtung 100 weist einen Schaltkreis 103 bzw. Encoder/Decoder (E/D) auf, welcher in dem Datenpfad angeordnet ist, bevorzugt nahe an der Netzwerkschnittstelle 101 der Verschlüsselungsvorrichtung 100. Der Prozessor 205 führt ein Betriebssystem aus und implementiert einen korrespondierenden Encoder/Decoder (E/D).The encryption device 100 is implemented, for example, on an FPGA with third-party components. The encryption device 100 has a circuit 103 or Encoder / Decoder (E / D), which is arranged in the data path, preferably close to the network interface 101 the encryption device 100 , The processor 205 runs an operating system and implements a corresponding Encoder / Decoder (E / D).

Für die Kommunikation mit dem Betriebssystem werden die empfangenen Datenpakete durch die Verschlüsselungsvorrichtung 100 verschlüsselt und im Betriebssystem durch den Prozessor 205 entschlüsselt. Unverschlüsselte Kommunikationen, welche gegebenenfalls von Komponenten von Drittherstellern stammen, werden im Betriebssystem durch die anschließende Entschlüsselung wieder unbrauchbar gemacht.For communication with the operating system, the received data packets are encrypted by the encryption device 100 encrypted and in the operating system by the processor 205 decrypted. Unencrypted communications, which may come from third-party components, are rendered unusable in the operating system by the subsequent decryption.

Für die Kommunikation über die Verschlüsselungsvorrichtung 100 werden entsprechende Datenpakete im Betriebssystem durch den Prozessor 205 verschlüsselt und durch den Schaltkreis 103 der Verschlüsselungsvorrichtung 100 wieder entschlüsselt und unverschlüsselt durch die Netzwerkschnittstelle 101 über das Kommunikationsnetzwerk ausgesendet. Durch die Entschlüsselung werden jedoch nicht vom Betriebssystem stammende Kommunikationen wieder verschlüsselt und somit unbrauchbar gemacht. Somit können auch durch das Betriebssystem im Speicher 203 abgelegte Datenpakete gesichert werden.For communication via the encryption device 100 appropriate data packets in the operating system by the processor 205 encrypted and through the circuit 103 the encryption device 100 again decrypted and unencrypted by the network interface 101 sent out via the communication network. However, decryption does not re-encrypt communications that are not from the operating system and thus render them useless. Thus, also by the operating system in the memory 203 stored data packets are saved.

Das Konzept lässt sich generell in allen Arten von Netzwerkkarten, unabhängig von der Implementierungsart, wie beispielsweise in einem FPGA, implementieren.The concept can generally be implemented in all types of network cards, regardless of the type of implementation, such as in an FPGA.

7 zeigt ein schematisches Diagramm eines Verfahrens 700 zum Verschlüsseln eines Datenpakets unter Verwendung einer Verschlüsselungsvorrichtung. Die Verschlüsselungsvorrichtung umfasst eine Netzwerkschnittstelle, einen Schaltkreis und eine Busschnittstelle, wobei die Busschnittstelle ausgebildet ist, mit einer Datenverarbeitungsvorrichtung über einen Kommunikationsbus zu kommunizieren. 7 shows a schematic diagram of a method 700 for encrypting a data packet using an encryption device. The encryption device comprises a network interface, a circuit and a bus interface, wherein the bus interface is configured to communicate with a data processing device via a communication bus.

Das Verfahren 700 umfasst ein Empfangen 701 des Datenpakets über ein Kommunikationsnetzwerk durch die Netzwerkschnittstelle, ein Verknüpfen 703 des empfangenen Datenpakets mit einem kryptographischen Schlüssel durch den Schaltkreis, um ein verschlüsseltes Datenpaket zu erhalten, und ein Speichern 705 des verschlüsselten Datenpakets mittels eines Speicherdirektzugriffs in einem Speicher der Datenverarbeitungsvorrichtung durch die Busschnittstelle.The procedure 700 includes receiving 701 of the data packet over a communication network through the network interface, linking 703 the received data packet with a cryptographic key through the circuit to obtain an encrypted data packet, and a store 705 the encrypted data packet by means of a memory direct access in a memory of the data processing device through the bus interface.

8 zeigt ein schematisches Diagramm eines Verfahrens 800 zum Entschlüsseln eines verschlüsselten Datenpakets unter Verwendung einer Datenverarbeitungsvorrichtung, wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist. Die Datenverarbeitungsvorrichtung umfasst eine Busschnittstelle, einen Speicher und einen Prozessor, wobei die Busschnittstelle ausgebildet ist, über einen Kommunikationsbus mit einer Verschlüsselungsvorrichtung zu kommunizieren, wobei die Busschnittstelle ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung zu gewähren, wobei der Speicher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung beschreibbar ist. 8th shows a schematic diagram of a method 800 for decrypting an encrypted data packet using a data processing device, wherein the encrypted data packet is encrypted using a cryptographic key. The data processing device comprises a bus interface, a memory and a processor, wherein the bus interface is adapted to communicate via a communication bus with an encryption device, wherein the bus interface is adapted to grant a memory direct access by the encryption device, wherein the memory by means of the memory direct access by the encryption device is writable.

Das Verfahren 800 umfasst ein Speichern 801 des verschlüsselten Datenpakets in dem Speicher mittels des Speicherdirektzugriffs, und ein Verknüpfen 803 des verschlüsselten Datenpakets mit dem kryptographischen Schlüssel durch den Prozessor, um ein entschlüsseltes Datenpaket zu erhalten. The procedure 800 includes a save 801 the encrypted data packet in the memory by means of the memory direct access, and a link 803 the encrypted data packet containing the cryptographic key by the processor to obtain a decrypted data packet.

Alle in Verbindung mit einzelnen Ausführungsformen der Erfindung gezeigten oder beschriebenen Merkmale können in unterschiedlicher Kombination in dem erfindungsgemäßen Gegenstand vorgesehen sein, um gleichzeitig deren vorteilhafte Wirkungen zu realisieren.All the features shown or described in connection with individual embodiments of the invention may be provided in different combinations in the article according to the invention in order to simultaneously realize their advantageous effects.

BezugszeichenlisteLIST OF REFERENCE NUMBERS

100100
Verschlüsselungsvorrichtungencryptor
101101
NetzwerkschnittstelleNetwork Interface
103103
Schaltkreiscircuit
105105
Busschnittstelle bus interface
200200
DatenverarbeitungsvorrichtungData processing device
201201
Busschnittstellebus interface
203203
SpeicherStorage
205205
Prozessor processor
300300
Systemsystem
301301
Kommunikationsbus communication
501501
Verschlüsselungseinheitencryption unit
503503
Netzwerkkarte network card
700700
Verfahren zum Verschlüsseln eines DatenpaketsMethod for encrypting a data packet
701701
EmpfangenReceive
703703
VerknüpfenLink
705705
Speichern to save
800800
Verfahren zum Entschlüsseln eines verschlüsselten DatenpaketsMethod for decrypting an encrypted data packet
801801
Speichernto save
803803
VerknüpfenLink

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte Nicht-PatentliteraturCited non-patent literature

  • A. Waksman, S. Sethumadhavan, „Silencing Hardware Backdoors“, IEEE Symposium on Security and Privacy, 2011, S. 49-63 [0005]A. Waksman, S. Sethumadhavan, "Silencing Hardware Backdoors", IEEE Symposium on Security and Privacy, 2011, p. 49-63. [0005]

Claims (15)

Verschlüsselungsvorrichtung (100) zum Verschlüsseln eines Datenpakets, mit: einer Netzwerkschnittstelle (101), welche ausgebildet ist, das Datenpaket über ein Kommunikationsnetzwerk zu empfangen; einem Schaltkreis (103), welcher ausgebildet ist, das empfangene Datenpaket mit einem kryptographischen Schlüssel zu verknüpfen, um ein verschlüsseltes Datenpaket zu erhalten; und einer Busschnittstelle (105), welche ausgebildet ist, mit einer Datenverarbeitungsvorrichtung (200) über einen Kommunikationsbus (301) zu kommunizieren, wobei die Busschnittstelle (105) ausgebildet ist, das verschlüsselte Datenpaket mittels eines Speicherdirektzugriffs in einem Speicher (203) der Datenverarbeitungsvorrichtung (200) zu speichern.Encryption device (100) for encrypting a data packet, comprising: a network interface (101) configured to receive the data packet via a communication network; a circuit (103) configured to associate the received data packet with a cryptographic key to obtain an encrypted data packet; and a bus interface (105) which is designed to communicate with a data processing device (200) via a communication bus (301), the bus interface (105) being adapted to store the encrypted data packet in a memory (203) of the data processing device (200 ) save. Verschlüsselungsvorrichtung (100) nach Anspruch 1, wobei der Schaltkreis (103) einen Speicher umfasst, in welchem der kryptographische Schlüssel gespeichert ist.Encryption device (100) according to Claim 1 wherein the circuit (103) comprises a memory in which the cryptographic key is stored. Verschlüsselungsvorrichtung (100) nach einem der vorstehenden Ansprüche, wobei der Schaltkreis (103) ausgebildet ist, das empfangene Datenpaket mit dem kryptographischen Schlüssel unter Verwendung eines Blockchiffre-Algorithmus, insbesondere eines Advanced-Encryption-Standard (AES) Verschlüsselungsalgorithmus, zu verknüpfen.An encryption apparatus (100) according to any one of the preceding claims, wherein the circuit (103) is adapted to associate the received data packet with the cryptographic key using a block cipher algorithm, in particular an Advanced Encryption Standard (AES) encryption algorithm. Verschlüsselungsvorrichtung (100) nach einem der vorstehenden Ansprüche, wobei der Kommunikationsbus (301) ein Peripheral Component Interconnect (PCI) Kommunikationsbus ist, oder wobei der Kommunikationsbus (301) ein Peripheral Component Interconnect Express (PCle) Kommunikationsbus ist.The encryption apparatus (100) of any one of the preceding claims, wherein the communication bus (301) is a Peripheral Component Interconnect (PCI) communication bus, or wherein the communication bus (301) is a Peripheral Component Interconnect Express (PCle) communication bus. Verschlüsselungsvorrichtung (100) nach einem der vorstehenden Ansprüche, wobei die Verschlüsselungsvorrichtung (100), insbesondere die Netzwerkschnittstelle (101), der Schaltkreis (103) und/oder die Busschnittstelle (105), mittels eines Field-Programmable-Gate-Array (FPGA) oder mittels eines Application-Specific-Integrated-Circuit (ASIC) implementiert ist.The encryption device (100) according to one of the preceding claims, wherein the encryption device (100), in particular the network interface (101), the circuit (103) and / or the bus interface (105), by means of a Field Programmable Gate Array (FPGA). or implemented by means of an application-specific integrated circuit (ASIC). Verschlüsselungsvorrichtung (100) nach einem der vorstehenden Ansprüche, wobei die Verschlüsselungsvorrichtung (100) eine Verschlüsselungseinheit (501) und eine Netzwerkkarte (503) umfasst, wobei die Verschlüsselungseinheit (501) die Netzwerkschnittstelle (101) und den Schaltkreis (103) umfasst, und wobei die Netzwerkkarte (503) die Busschnittstelle (105) umfasst.The encryption apparatus (100) of any one of the preceding claims, wherein the encryption apparatus (100) comprises an encryption unit (501) and a network card (503), wherein the encryption unit (501) comprises the network interface (101) and the circuit (103), and wherein the network card (503) comprises the bus interface (105). Verschlüsselungsvorrichtung (100) nach Anspruch 6, wobei die Verschlüsselungseinheit (501) und die Netzwerkkarte (503) ausgebildet sind, über ein weiteres Kommunikationsnetzwerk miteinander zu kommunizieren.Encryption device (100) according to Claim 6 wherein the encryption unit (501) and the network card (503) are configured to communicate with each other via another communication network. Datenverarbeitungsvorrichtung (200) zum Entschlüsseln eines verschlüsselten Datenpakets, wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist, mit: einer Busschnittstelle (201), welche ausgebildet ist, über einen Kommunikationsbus (301) mit einer Verschlüsselungsvorrichtung (100) zu kommunizieren, wobei die Busschnittstelle (201) ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung (100) zu gewähren; einem Speicher (203), welcher mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung (100) beschreibbar ist, wobei der Speicher (203) ausgebildet ist, das verschlüsselte Datenpaket zu speichern; und einem Prozessor (205), welcher ausgebildet ist, das verschlüsselte Datenpaket mit dem kryptographischen Schlüssel zu verknüpfen, um ein entschlüsseltes Datenpaket zu erhalten.Data processing apparatus (200) for decrypting an encrypted data packet, wherein the encrypted data packet is encrypted using a cryptographic key, comprising: a bus interface (201) configured to communicate with an encryption device (100) via a communication bus (301), the bus interface (201) being adapted to provide a memory direct access by the encryption device (100); a memory (203) writable by the memory direct access by the encryption device (100), the memory (203) being adapted to store the encrypted data packet; and a processor (205) configured to associate the encrypted data packet with the cryptographic key to obtain a decrypted data packet. Datenverarbeitungsvorrichtung (200) nach Anspruch 8, wobei der Prozessor (205) ausgebildet ist, einen Programmcode zum Verknüpfen des verschlüsselten Datenpakets mit dem kryptographischen Schlüssel auszuführen.Data processing device (200) according to Claim 8 wherein the processor (205) is adapted to execute a program code for linking the encrypted data packet with the cryptographic key. Datenverarbeitungsvorrichtung (200) nach einem der Ansprüche 8 oder 9, wobei der kryptographische Schlüssel in dem Speicher (203) gespeichert ist.Data processing device (200) according to one of Claims 8 or 9 , wherein the cryptographic key is stored in the memory (203). System (300) zum Übertragen eines verschlüsselten Datenpakets über einen Kommunikationsbus (301), mit: einer Verschlüsselungsvorrichtung (100) nach einem der Ansprüche 1 bis 7; und einer Datenverarbeitungsvorrichtung (200) nach einem der Ansprüche 8 bis 10; wobei die Verschlüsselungsvorrichtung (100) und die Datenverarbeitungsvorrichtung (200) über den Kommunikationsbus (301) miteinander verbunden sind.A system (300) for transmitting an encrypted data packet over a communication bus (301), comprising: an encryption device (100) according to any one of Claims 1 to 7 ; and a data processing device (200) according to one of Claims 8 to 10 ; wherein the encryption device (100) and the data processing device (200) are interconnected via the communication bus (301). System (300) nach Anspruch 11, wobei die Verschlüsselungsvorrichtung (100) und die Datenverarbeitungsvorrichtung (200) ausgebildet sind, den kryptographischen Schlüssel mittels eines Diffie-Hellman-Schlüsselaustauschs zu bestimmen.System (300) after Claim 11 wherein the encryption device (100) and the data processing device (200) are adapted to determine the cryptographic key by means of a Diffie-Hellman key exchange. Verfahren (700) zum Verschlüsseln eines Datenpakets unter Verwendung einer Verschlüsselungsvorrichtung (100), wobei die Verschlüsselungsvorrichtung (100) eine Netzwerkschnittstelle (101), einen Schaltkreis (103) und eine Busschnittstelle (105) umfasst, wobei die Busschnittstelle (105) ausgebildet ist, mit einer Datenverarbeitungsvorrichtung (200) über einen Kommunikationsbus (301) zu kommunizieren, mit: Empfangen (701) des Datenpakets über ein Kommunikationsnetzwerk durch die Netzwerkschnittstelle (101); Verknüpfen (703) des empfangenen Datenpakets mit einem kryptographischen Schlüssel durch den Schaltkreis (103), um ein verschlüsseltes Datenpaket zu erhalten; und Speichern (705) des verschlüsselten Datenpakets mittels eines Speicherdirektzugriffs in einem Speicher (203) der Datenverarbeitungsvorrichtung (200) durch die Busschnittstelle (105).Method (700) for encrypting a data packet using an encryption device (100), wherein the encryption device (100) comprises a network interface (101), a circuit (103) and a bus interface (105), wherein the bus interface (105) is formed, to communicate with a data processing device (200) via a communication bus (301), comprising: Receiving (701) the data packet over a communication network through the network interface (101); Linking (703) the received data packet with a cryptographic key through the circuit (103) to obtain an encrypted data packet; and storing (705) the encrypted data packet by means of a memory direct access in a memory (203) of the data processing device (200) through the bus interface (105). Verfahren (800) zum Entschlüsseln eines verschlüsselten Datenpakets unter Verwendung einer Datenverarbeitungsvorrichtung (200), wobei das verschlüsselte Datenpaket unter Verwendung eines kryptographischen Schlüssels verschlüsselt ist, wobei die Datenverarbeitungsvorrichtung (200) eine Busschnittstelle (201), einen Speicher (203) und einen Prozessor (205) umfasst, wobei die Busschnittstelle (201) ausgebildet ist, über einen Kommunikationsbus (301) mit einer Verschlüsselungsvorrichtung (100) zu kommunizieren, wobei die Busschnittstelle (201) ausgebildet ist, einen Speicherdirektzugriff durch die Verschlüsselungsvorrichtung (100) zu gewähren, wobei der Speicher (203) mittels des Speicherdirektzugriffs durch die Verschlüsselungsvorrichtung (100) beschreibbar ist, mit: Speichern (801) des verschlüsselten Datenpakets in dem Speicher (203) mittels des Speicherdirektzugriffs; und Verknüpfen (803) des verschlüsselten Datenpakets mit dem kryptographischen Schlüssel durch den Prozessor (205), um ein entschlüsseltes Datenpaket zu erhalten.A method (800) for decrypting an encrypted data packet using a data processing device (200), wherein the encrypted data packet is encrypted using a cryptographic key, wherein the data processing device (200) comprises a bus interface (201), a memory (203) and a processor ( 205), wherein the bus interface (201) is adapted to communicate with an encryption device (100) via a communication bus (301), the bus interface (201) being adapted to provide a memory direct access by the encryption device (100), wherein the Memory (203) is writable by the memory direct access by the encryption device (100), with: Storing (801) the encrypted data packet in the memory (203) by means of the memory direct access; and Linking (803) the encrypted data packet with the cryptographic key by the processor (205) to obtain a decrypted data packet. Computerprogramm mit einem Programmcode zum Ausführen des Verfahrens (700) nach Anspruch 13 oder des Verfahrens (800) nach Anspruch 14.A computer program having a program code for performing the method (700) Claim 13 or the method (800) Claim 14 ,
DE102016123178.9A 2016-11-30 2016-11-30 Encryption device for encrypting a data packet Pending DE102016123178A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102016123178.9A DE102016123178A1 (en) 2016-11-30 2016-11-30 Encryption device for encrypting a data packet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016123178.9A DE102016123178A1 (en) 2016-11-30 2016-11-30 Encryption device for encrypting a data packet

Publications (1)

Publication Number Publication Date
DE102016123178A1 true DE102016123178A1 (en) 2018-05-30

Family

ID=62117410

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016123178.9A Pending DE102016123178A1 (en) 2016-11-30 2016-11-30 Encryption device for encrypting a data packet

Country Status (1)

Country Link
DE (1) DE102016123178A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209098B1 (en) * 1996-10-25 2001-03-27 Intel Corporation Circuit and method for ensuring interconnect security with a multi-chip integrated circuit package
US20090319775A1 (en) * 2002-12-05 2009-12-24 Broadcom Corporation Data Path Security Processing
US7673140B2 (en) * 2002-12-18 2010-03-02 Nxp B.V. Dedicated encrypted virtual channel in a multi-channel serial communications interface
US20130073843A1 (en) * 2010-05-27 2013-03-21 Qinetiq Limited Network Security Content Checking

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209098B1 (en) * 1996-10-25 2001-03-27 Intel Corporation Circuit and method for ensuring interconnect security with a multi-chip integrated circuit package
US20090319775A1 (en) * 2002-12-05 2009-12-24 Broadcom Corporation Data Path Security Processing
US7673140B2 (en) * 2002-12-18 2010-03-02 Nxp B.V. Dedicated encrypted virtual channel in a multi-channel serial communications interface
US20130073843A1 (en) * 2010-05-27 2013-03-21 Qinetiq Limited Network Security Content Checking

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. Waksman, S. Sethumadhavan, „Silencing Hardware Backdoors", IEEE Symposium on Security and Privacy, 2011, S. 49-63

Similar Documents

Publication Publication Date Title
EP2899714B1 (en) Secure provision of a key
DE19782075C2 (en) A circuit and method for securing connection security within a multi-chip package of an integrated circuit
DE102007044330B4 (en) Encryption processor and method for writing and reading data
DE102009013384B4 (en) System and method for providing a secure application fragmentation environment
EP2727277B1 (en) System and method for the secure transmission of data
DE102010027586B4 (en) Method for the cryptographic protection of an application
DE102009007345A1 (en) Safety device for protecting data stored in external memory e.g. multi media card, has controller to prevent coded memory access over interface or prevents output of data over other interface based on data received over former interface
DE102014208855A1 (en) Method for carrying out communication between control units
DE102014208851A1 (en) Method for preventing unauthorized operation of a motor vehicle
DE112020001061T5 (en) ENCRYPTED GEAR PROGRAMMING
DE112018007132T5 (en) In-vehicle function access control system, in-vehicle device and in-vehicle function access control method
EP2407843B1 (en) Secure data transfer in an automation network
DE102015201298A1 (en) Method for the cryptographic processing of data
EP3563209B1 (en) Whole apparatus having an authentication arrangement, and method for authentication
DE102007004280A1 (en) One-chip computer and tachograph
DE102009054753A1 (en) Method for operating a safety device
EP2434424A1 (en) Method for increasing the security of security-relevant online services
DE102008026697A1 (en) Data output encoding device e.g. safety dongle, for use in mobile telephone, has bus encoding mechanism for selectively encoding digital signals output by processor, and peripheral interface for outputting selectively encoded signals
DE102016123178A1 (en) Encryption device for encrypting a data packet
DE102009052454A1 (en) Method and system for confidential provision of software components
EP3422234B1 (en) Container image, computer program product and method
EP1930834A1 (en) Cryptographically secured processor system
EP3407242A1 (en) Personalisation of a semiconductor element
DE102018005284A1 (en) Chip personalization of an embedded system by a third party
EP3528165B1 (en) Method for processing a cryptographic key and processor chip card

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication