EP3033855B1 - Support for decryption of encrypted data - Google Patents
Support for decryption of encrypted data Download PDFInfo
- Publication number
- EP3033855B1 EP3033855B1 EP14741870.1A EP14741870A EP3033855B1 EP 3033855 B1 EP3033855 B1 EP 3033855B1 EP 14741870 A EP14741870 A EP 14741870A EP 3033855 B1 EP3033855 B1 EP 3033855B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- user
- key
- installation
- encrypted
- secret key
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/062—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys
Definitions
- the present invention relates, inter alia, to methods, apparatuses, systems, programs, and storage media for supporting decryption of encrypted data.
- the content of electronic messages can be protected by end-to-end encryption, so that the message can not be read by any third party during transport from the sender to the recipient.
- a sender must cryptographically encrypt a message or part of a message, and the recipient must decrypt the message.
- the encryption can be a symmetric encryption; in that case, encryption and decryption are based on the same key.
- the encryption may be asymmetric encryption; in that case the encryption may be based on a public key of a key pair and the decryption on the private key of the key pair.
- the recipient must independently manage and protect his or her key or keys, the latter both from loss and from unauthorized reading by third parties.
- he must make the sender the key necessary for encryption.
- the installation of software modules and possibly additional devices, such as card readers is required.
- a trust center can support key generation and management.
- a trust center can provide recipients with secure key storage to prevent the loss of a key.
- the recipient must not only enter into a contractual relationship with an email provider or another message deliverer, but also enter into a contractual relationship with the trust center.
- a sender may need to retrieve keys for multiple recipients from multiple trust centers and ensure that they use the correct key of the recipient when encrypting a message.
- a trust center can additionally issue certificates for electronic signatures to certify the identity of a communication partner.
- a message delivery agent may act as a one-stop shop for secure messaging.
- the applicant offers such a method, for example, with the E-Postbrief. Both the recipient and the sender then only need a contract with the message courier, and they are provided with all the necessary functions for secure communication.
- a trust center can create a key for a user, who will then be managed by the message handler.
- a sender can receive the required keys from the message delivery agent and also deliver messages there.
- the encrypted messages can be decrypted on the message handler's side when the message is retrieved by the recipient on a server of the message carrier and transmitted to the recipient via a secure connection. Due to high demands on the identification of the participants and the provision of an address qualification service, the message transmitter can also determine or check the recipient address for the sender and ensure correct delivery.
- US 2011/293098 discloses a key recovery process for a lost or damaged key, where a password must be entered by a user.
- One of the objects of the invention is to support decryption of encrypted data in an alternative way to existing approaches.
- Another object of the invention is to enable a particularly user-friendly and at the same time particularly secure decryption of encrypted data.
- the object is achieved by a method according to claim 1, a device according to claim 4 a program according to claim 6, a A method according to claim 7, an apparatus according to claim 15, a program according to claim 17 and a system according to claim 18.
- an exemplary embodiment of a method performed by a device assumes that a first device is configured to provide a secret key of a user of the device, and that a second device is configured to provide data to the user ,
- the method includes logging in to the second device under authentication of the user.
- the method further comprises receiving encrypted data from the second device.
- the method further comprises generating a one-time password.
- the method further comprises encrypting the one-time password using a public key of the first device.
- the method further comprises transmitting the encrypted one-time password to the second device and causing the second device to retrieve the user's secret key from the first device using the encrypted one-time password and a key identifier associated with the user in the second device.
- the method further comprises receiving the user's secret key encrypted by the first one-time password device from the second device.
- the method further comprises decrypting the user's secret key using the one-time password.
- the method further comprises decrypting the encrypted data using the user's secret key.
- a second device is configured to provide data to a user.
- the method comprises receiving a key identifier and a one-time password encrypted by a device of a user and encrypted with a public key of the first device from a second device storing an association between users and key identifiers.
- the method further comprises reading out a user's secret key encrypted with the key identifier based on the key identifier from a memory of the first device.
- the method further comprises decrypting the encrypted secret key of the user by means of the key identifier.
- the method further comprises decrypting the encrypted one-time password using a private key of the first device.
- the method further comprises encrypting the user's secret key with the one-time password.
- the method further comprises communicating with the One-time password of the user's encrypted secret key to the second device for forwarding to the user's device to enable it to decrypt encrypted data received from the second device.
- the invention contemplates that the provision of data and the provision of a secret key for decrypting the data are separated.
- the key is provided by a first device and the data from a second device.
- the device of a user nevertheless communicates directly only with the second device.
- the second device itself has only one assignment of the user to a key identifier.
- the user can be identified for this assignment in any manner, for example by means of a user name specified at login or a user address for electronic messages.
- Encrypted data for the user is transmitted to the user device by the second device in encrypted form.
- the user device generates a one-time password, encrypts it with a public key of the first device, and forwards it to the second device.
- the second device forwards the encrypted one-time password together with a key identifier stored for the user to the first device.
- the first device decrypts the one-time password, retrieves a stored, encrypted secret key of the user based on the key identifier, decrypts it with the key identifier and encrypts it with the one-time password.
- the first device forwards the user's newly encrypted secret key to the user device via the second device. After a decryption of the secret key with the one-time password, the user device can now decrypt the encrypted data.
- Another possible advantage of the invention lies in the fact that, despite the user's access to a single device, the separation between the provision of data and the provision of keys makes it possible to achieve particularly high security with regard to confidentiality. That is, no device stores both encrypted data and the secret key required for decryption - even in encrypted form. The decryption is done exclusively in the domain of the recipient, i. on the user device.
- the one-time password can ensure that the user's secret key is also secured during transmission to the user via the second device. Since the one-time password itself is encrypted during transmission to the first device via the second device, the second device also does not receive access to the one-time password at any time.
- An exemplary device according to the invention according to the first aspect comprises means for carrying out the method according to the invention according to the first aspect.
- the device may be, for example, a user terminal or a module for a user terminal.
- An exemplary device according to the invention according to the second aspect comprises means for carrying out the method according to the invention according to the second aspect.
- the device may be, for example, a server or a module for a server.
- the server may in turn belong to a device such as a trust center.
- the means of the devices according to the first or second aspect could each comprise hardware and / or software components.
- the means could comprise only one circuit in which corresponding functions are implemented in hardware.
- the means could comprise at least one processor and at least one memory with a suitable program.
- an exemplary embodiment of a device comprises at least one processor and at least one memory, wherein a program comprising program instructions is stored in the memory, and wherein the memory and the program are arranged to communicate with the processor at least to cause the device to carry out the inventive method according to the first aspect or according to the second aspect when the program is executed on the processor.
- the device is set up by software in order to be able to carry out the method.
- the preparation of the device, which is necessary in order to be able to execute a method for example in the form of a program on the processor, should be understood as being set up by software.
- a processor should be understood to mean inter alia one or more control units, microprocessors, microcontroller units such as microcontrollers, digital signal processors (DSP), application specific integrated circuits (ASIC) or field programmable gate arrays (FPGA).
- DSP digital signal processors
- ASIC application specific integrated circuits
- FPGA field programmable gate arrays
- a memory is, for example, a program memory and / or a main memory of the processor.
- a program memory is to be understood inter alia a non-volatile memory and a main memory, a volatile or a non-volatile memory, in particular a random access memory (RAM) and / or a flash memory.
- Non-volatile memories are e.g. Random access memory (RAM), e.g. NOR flash memory or with sequential access, e.g. NAND flash memory and / or read only access memory (ROM), e.g. EPROM, EEPROM, or ROM memory.
- RAM Random access memory
- ROM read only access memory
- EPROM e.g. EPROM, EEPROM, or ROM memory
- the memory may be designed, for example objective.
- an exemplary embodiment of a program according to the invention comprises program instructions, wherein the program instructions cause an apparatus for carrying out the method according to the first aspect or according to the second aspect, when the program is executed by the processor.
- a program can be distributed, for example, via a network such as a local area network, a wide area network, a virtual area network, a radio network, such as a mobile radio network, another telephone network and / or the Internet.
- a program may be at least partially software and / or firmware of a processor.
- the program according to the invention is stored in a memory of the device according to the invention according to the first or second aspect. It understands itself, that the term program can be understood in each case also a compilation of several programs.
- an exemplary embodiment of a storage medium according to the invention stores a program according to the invention according to the first or second aspect.
- the storage medium is, for example, a computer-readable storage medium, which contains the program according to the invention and is designed, for example, as a magnetic, electrical, electro-magnetic, optical and / or different type of storage medium.
- the storage medium may in particular be a physical and / or physical storage medium.
- the storage medium is for example portable or permanently installed in a device.
- "Computer readable" is to be understood in particular as meaning that the storage medium can be read from and / or written to by a computer or a data processing device, for example by a processor.
- the storage medium is, for example, a program memory of a processor.
- a system according to the invention comprises a first device with a device according to the second aspect and a memory for storing a plurality of user key-encrypted secret keys.
- the system may comprise any further components, for example the second device and / or a device according to the first aspect.
- the device according to the first aspect is caused by program instructions permanently stored in a local memory of the device and executed by a processor of the device to perform the method.
- the device according to the first aspect is caused by program instructions received via a browser and executed by a processor of the device to perform the method.
- the program instructions can be provided, for example, by the second device in the form of a Java applet or another application and only temporarily stored temporarily in a working memory in the device. This may have the advantage of not requiring installation of a program with the program instructions, as well as updates of an installed program.
- the user's secret key encrypted with the key identifier may be in the memory of the first Device with assignment to a cryptographically derived from the key identifier value to be stored.
- a value could then be derived cryptographically for a received key identifier.
- the reading out of the encrypted with the key identifier secret key of the user could then be based on the cryptographically derived value of the received key identifier.
- the storage of the encrypted secret key with assignment to a cryptographically derived value of the key identifier can offer the advantage that only with knowledge of the key identifier the secret key can not be easily retrieved from a memory of the first device.
- An example of a cryptographic derived value is a hash value that is obtained by means of a hash function.
- a stored encrypted secret key of a user may be previously generated by the device of the first device when a request is received from the second device to generate a secret key for a user.
- the device of the first device can then generate a secret key for a user, in particular independently of a user input.
- the device of the first device may also generate a key identifier for the secret key for the user.
- the device of the first device may encrypt the secret key for the user with the key identifier and store the encrypted secret key in the first device for retrieval by a device of the user via the second device.
- Generating a secret key for a user independent of user input may provide the advantage that no communication with the user is required for the generation of the key.
- the key identifier may be communicated to the second device for storing the key identifier associated with a user. This can offer the advantage that the first device for a query of a secret key for a user need not receive any direct information about the respective user.
- the device may be the first Device in the context of the generation of a secret key from the generated key identifier cryptographic derive a value store the cryptographically derived value in the memory of the first device associated with the encrypted with the key identifier secret key, and delete the key identifier in the first device.
- a hash value can again be used as the cryptographically derived value.
- the secret key of the user may be, for example, a key for symmetric encryption or, for example, the private key of a key pair for asymmetric encryption.
- the device of the first device may further generate a public key for the user.
- the public key can then be stored only in the first device.
- it could be transmitted to the second means for storing only in the second device.
- Storing in the second device could have the advantage that the public key can be accessed more easily, for example if another user wishes to send encrypted data to the user with the public key.
- public keys generated by different first devices could also be stored. Since the public key is not secret, it can be easily stored in the second device and kept ready for retrieval. From the first device, the public key could again be retrieved only indirectly via the second device and thus more cumbersome, since in the first device preferably no assignment of the user to the stored keys is present.
- the public key of the user could be stored in the first device and transmitted in addition to the second device for storing in the second device. This may provide the advantage that the public key can be retrieved directly from the second device in a simple manner, while a backup copy is present in the first device.
- the encrypted data may be of any kind and previously made available to the second device by any party.
- the encrypted data has been encrypted by a third party device and provided to the second device. These may be, for example, encrypted parts or attachments of electronic messages.
- the encrypted data was encrypted by a device of the user and provided to the second device. This may be, for example, data that has been outsourced to conserve local storage capacity and / or to allow central access to the data.
- FIG. 1 is a block diagram of an exemplary embodiment of a system according to the invention.
- the system includes a device 100, a first device 200, and a second device 300.
- the device 100 is a user device, for example a personal computer (PC), a notebook, a tablet computer, a mobile telephone or any other device.
- PC personal computer
- notebook a notebook
- tablet computer a mobile telephone or any other device.
- the device 100 comprises a processor 101 and, connected to the processor 101, a program memory 102, a RAM 103, a main memory 104, a communication interface (interface I / F) 105 and a user interface (user interface UI) 106.
- the processor 101 could be a microprocessor. It could also be embedded in an integrated circuit (IC), for example along with a memory. By way of example, a chip 107, which could contain a circuit with the processor 101, the program memory 102 and the main memory 103, is indicated.
- IC integrated circuit
- the program memory 102 stores programs with program instructions permanently, i. usually until a user causes a deletion.
- the programs include, for example, at least one browser program.
- the main memory 103 can be used, for example, to temporarily store various information, such as intermediate results, programs or individual program instructions or data to be processed.
- the main memory 104 may be used to permanently store user data and other data, such as electronic messages downloaded from a mailbox and their unencrypted or decrypted attachments.
- the processor 101 is configured to execute programs and thereby cause the device 100 to perform certain actions.
- the processor 101 can access, for example, program instructions stored in the program memory 102 or else program instructions stored only in the working memory 103.
- any information from the processor 101 in the working memory 103 can be cached.
- the communication interface 105 may be any interface that facilitates exchange of data between the device 100 and the second device 300, but particularly not necessarily over the Internet. It can be a radio interface that allows access to the Internet, for example via a local wireless network (WLAN) or via a mobile network. It can also be a wired interface that allows access to the Internet via a cable, such as a DSL or local area network (LAN).
- WLAN local wireless network
- LAN local area network
- the user interface 106 may include any components for data input by a user and presentation of data, such as a keyboard, a mouse, a microphone, a screen, a touch screen and / or a speaker, etc. It is understood that such components may be wholly or partially integrated into the device 100 in certain embodiments, but could also be connected to the device 100 via cable or radio.
- the first device 200 may be, for example, a state-certified trust center.
- the device 200 includes a server 210 and an external memory 220.
- the server 210 comprises a processor 211 and, connected to the processor 211, a program memory 212, a RAM 213 configured as RAM, a main memory 214 and a communication interface (I / F) 215.
- the processor 211 could be a microprocessor. It could also be embedded in an integrated circuit, for example together with a memory. Illustrated by way of example is a plug-in card 217 which contains a circuit with the processor 211, the program memory 212 and the main memory 213.
- the program memory 212 permanently stores programs with program instructions intended for the operation of the server 210.
- the working memory 213 is adapted to temporarily store information.
- Main memory 214 is adapted to store a private key of a trust center key pair.
- the processor 211 is configured to execute programs from the program memory 212 and thereby cause the first device 200 to perform certain actions. In this case, any information from the processor 211 can be temporarily stored in the main memory 213.
- the communication interface 215 may be any interface that allows for exchange of data between the first device 200 and the second device 300, but not necessarily over the Internet, for example. It can in turn be a radio interface or a wired interface.
- the external memory 220 may be configured to store data from a database.
- the database can be created in such a way that in each case a record can be accessed via a hash value of a key identifier.
- the data associated with a hash value includes a public key and a private key encrypted with the key identifier, where public key and private key form a key pair for a particular user.
- the private key is an exemplary secret key of a user. The user is not identifiable in the device 200.
- memory 220 could also be integrated into server 210, or main memory 214 and external memory 220 could be pooled, either within server 210 or outside server 210. External memory 220 could also be provided by another server.
- the second device 300 may be, for example, a message courier device.
- the device 300 also includes a server 310 and an external memory 320.
- the server 310 comprises a processor 311 and, connected to the processor 311, a program memory 312, a RAM 313 configured as RAM, a main memory 314 and a communication interface (I / F) 315.
- the program memory 312 is a storage medium storing programs intended for the operation of the server 310.
- a program could also include data for a website provided by the message handler.
- the main memory 313 is adapted to temporarily store information.
- the main memory 314 is adapted to store user master data.
- the main memory 314 could store a public key of the trust center 200 if it is not intended to be stored in the main memory 104 of user devices 100.
- the processor 311 is configured to execute programs from the program memory 312 and thereby cause the second device 300 to perform certain actions. In this case, any information from the processor 311 in the main memory 313 be cached.
- the communication interface 315 can be any interface that allows an exchange of data between the second device 300 and a user device 100 on the one hand and the second device 300 and the first device 200 on the other hand. It can in turn be a radio interface or a wired interface. It goes without saying that two different interfaces can also be provided for communication with user devices and the first device.
- the external memory 320 may be configured to store data from a database.
- the database may provide electronic message mailboxes to various users. Attachments can optionally be saved separately. These can be encrypted or unencrypted. If they are encrypted, they are encrypted with the public key of a key pair of the mailbox user.
- the device 300 can also be put together in any other way.
- the system includes a program with program instructions for supporting decryption of encrypted user-side data.
- the program could be an embodiment of a program according to the first aspect of the invention.
- the program could be installed in program memory 102.
- the program memory 102 could be an embodiment of a computer-readable storage medium according to the first aspect of the invention
- the device 100 or the chip 107 could be an embodiment of a device according to the first aspect of the invention.
- the program could be, for example, an application permanently stored in program memory 312 or in main memory 314 of server 310, and downloaded from processor 310 via a browser stored in program memory 102, as needed, and stored in memory 103 as needed can.
- Such an application could be implemented, for example, as a Java applet.
- program memory 312 and main memory 314, respectively could be an embodiment of a computer-readable storage medium according to the first aspect of the invention, as well as FIG Memory 103 as long as the application is stored in the working memory 103.
- the device 100 or the chip 107 could accordingly be an embodiment of a device according to the invention according to the first aspect as long as the application is stored in the working memory 103.
- the system further includes a program with program instructions for supporting decryption of encrypted data on the server side.
- the program could be an embodiment of a program according to the second aspect of the invention.
- program memory 212 could be an embodiment of a computer-readable storage medium according to the second aspect of the invention
- server 210 or the plug-in card 217 could be an embodiment of a device according to the second aspect.
- the device 100 and devices 200 and 300 are made FIG. 1 can be modified in many ways, both by omitting components and by adding components. This may result in additional or alternative benefits.
- message issuer facility 300 could be implemented in Applicants' E-POSTBRIEF system; the functions of the trust center could, for example, be implemented in the applicant's separate system Signtrust; and the data provided could be e-mail letters that can be deposited by a sender at a web portal of the E-POSTBRIEF system and retrieved there by a recipient.
- Figures 2 and 3 13 are flowcharts illustrating exemplary embodiments of methods according to the first and second aspects of the invention.
- the illustrated actions of the user device 100 are exemplified when the processor 101 executes a program loaded via a browser and stored in memory 103.
- the depicted actions of message issuer device 300 are executed when processor 311 retrieves and executes a corresponding program from program memory 312.
- the shown actions of the trust center 200 are executed when the processor 211 retrieves and executes a corresponding program from program memory 212.
- FIG. 2 initially refers to the generation of a private user key according to the second aspect.
- the user device 100 is not directly involved here. It merely requests the activation of portal use in advance if a user wishes to use a service provided by the message carrier for the transmission of electronic messages.
- the message handler unlocks the portal usage when all intended conditions are met, and creates a set of user master data for the user.
- the user master data is stored in the main memory 314. For example, they may include data for authentication of the user, such as a username or message delivery address, and a password.
- the message delivery facility 300 automatically requests the generation of a key pair for asymmetric encryption at the trust center. (Action 401)
- the trust center 200 then generates a key pair for the user without external specifications by the user or the message delivery agent.
- the key pair consists of a private key and a public key, whereby data encrypted with the public key can only be decrypted with the private key.
- the trust center 200 continues to generate a unique key identifier (key ID) for the generated key pair. (Action 403)
- the trust center 200 transmits the key identifier and the public key to the message delivery facility 300, which stores the two values in the user master data for the user in the main memory 314. (Action 404) This completes the initialization of the key pair for the new user.
- the trust center 200 also encrypts the user's private key with the key identifier. (Action 405)
- the trust center 200 derive a hash value (or hash) from the key identifier. (Action 406) For example, a perfect hash function is used for this, so that a different hash value results for each possible key identifier.
- the trust center 200 now stores a new record in the external memory 220.
- the record comprises the hash value of the key identifier, and associated therewith the public key and the encrypted private key.
- the trust center 200 deletes the plaintext of the generated private key and the plaintext of the generated key identifier. (Action 408)
- the sender can request the public key of the user from the device 300.
- the device 300 may read the public key of the user from the main memory 314 based on a specified user name or a specified delivery address for the user from the user master data, for example, and make it available to the sender.
- the sender can then encrypt a file with the user's public key, append it to the message, and deliver the message to the message deliverer to the user.
- All electronic messages are assigned to the recipient mailbox regardless of the type of delivery and its contents within the device 300 of the message carrier and stored access protected in memory 320.
- FIG. 3 refers to the retrieval of a message with encrypted attachment by the user and the retrieval of an already generated and stored private key for decryption.
- the log-in may, for example, include the input and transmission of a username or a user delivery address and a password.
- the device 300 then performs authentication and, after successful authentication, enables access to a user's mailbox.
- the authentication may be based on the user master data stored in main memory 314. For example, the device 300 could check whether there is a record of the transmitted user name in the user master data and whether a password corresponding to the transmitted password is stored for this purpose.
- User device 100 may then retrieve the inbox at device 300. (Action 503)
- the device 300 reads out all new messages for the user in memory 320 and transmits them to the user device 100. (Action 504) There, the messages can be displayed.
- Attachments could be read out and communicated directly by device 300. Alternatively it can be provided that the user causes the user device 100 to retrieve the attachments of the displayed messages separately as needed. (Action 505) In this case, the device 300 first reads the selected attachments from the external memory 320 and transmits them to the user device 100. (Action 506) The browser of the user device 100 may maintain a representation of the file in the working memory 103.
- the user device 100 now checks whether one of the received attachments is encrypted. (Action 507) If this is not the case, the content of the attachment can be output directly, for example via a screen, if it is text and / or image data.
- the user device 100 first needs the user's private key for decryption. This is not stored in the user device 100.
- the user device 100 generates for this purpose a random key for a symmetric encryption, which is used as a one-time password or transport PIN (Personal Identification Number).
- the one-time password can be generated automatically and without involvement of the user and kept in the working memory 103.
- the user device 100 encrypts the one-time password with a public key of the trust center 200 and transmits it to the device 300 of the message exchanger.
- the public key may for example be stored permanently in the main memory 104 of the user device 100. However, it can also be stored, for example, in the main memory 314 of the message exchanger and made available to the user device 100 via the browser. For example, this could be done automatically if a first attachment is retrieved after logging in.
- the user device 100 could then temporarily store the public key of the trust center in the working memory 103 as long as the user is logged in to the message courier.
- the transmission of the one-time password to the message courier may be accompanied by a request to retrieve the user's private key from the trust center, the request being in the form of a predetermined parameter value.
- the transmission of the one-time password can also receive the request implicitly, for example because the transmission takes place in a specific message or at a specific relative time in the communication between user device 100 and device 300 of the message exchanger.
- the key identifier assigned to the user in the user master data is read from the main memory 314 and forwarded together with the encrypted one-time password to the trust center 200 in order to request the user's private key.
- the trust center 200 derives a hash value of the key identifier. (Action 511) The same hash function is used for this purpose as in action 406 FIG. 2 ,
- the trust center 200 searches in memory 220 for an encrypted private key of the user associated with the hash value. (Action 512)
- the trust center 200 decrypts the user's private key with the key identifier. (Action 513)
- the trust center 200 also reads the private key of the trust center from the main memory 214 and decrypts the received one-time password with the private key of the trust center 200. (Action 514)
- the trust center 200 can now encrypt the decrypted private key of the user with the decrypted one-time password. (Action 515) The obtained key code and the user's decrypted private password can now be deleted again in the trust center 200.
- the encrypted private key is transmitted from the trust center 200 to the message delivery facility 300. (Action 516)
- the message delivery facility 300 transmits the encrypted private key to the browser of the user device 100. (Action 517)
- the content of the decrypted attachment can then be stored in the main memory 104 and / or output via the user interface 106, for example by display on a screen, depending on the user specification.
- the user's one-time password, encrypted attachments, and private key may be deleted in the random access memory 103 when all available encrypted attachments have been decrypted and / or when the user logs out of the message deliverer via the browser.
- the procedure might be off FIG. 3 run without user input. It could be completely non-transparent and automatic. That is, it would not be apparent to the user if an electronic message has an unencrypted attachment or an encrypted attachment. In order to indicate to the user however the peculiarity of the received message and trust in the To promote procedures can be provided to show the process of decryption and the result clearly visible to the recipient.
- the actions of user device 100 in FIG. 3 illustrate an exemplary embodiment of a method according to the first aspect of the invention.
- the actions of the trust center 200 in Figures 2 and 3 illustrate an exemplary embodiment of a method according to the second aspect of the invention.
- the key generation in the trust center 200 is thus anonymous.
- an assignment of a key to a user is not known, and when using a hash function or other cryptographic derivation even the assignment of a key identifier to an encrypted private key is only temporary.
- a local reconstruction of the key identifier in the trust center 200 and thus the decryption of the private key of users is not possible.
- the private key (in encrypted form) is stored exclusively in the trust center 200. There is thus a separation between key management and data storage, so that it is ensured that no party receives independent access to keys and data. For a potential attacker, this means that he must be able to successfully penetrate at least two of the three parties and access the data in order to decrypt an encrypted message.
- all data can be stored encrypted in the device 300 of the message delivery as well as in the trust center 200 with additional system keys, so that the attacker would have to bring this into his power.
- the browser of the user device 100 there is no persistence of data in certain embodiments. This means that a potential attacker could try to access data in the browser only at runtime.
- any other security measures can be provided, such as secure data transmission by means of the Transport Layer Security (TLS) protocol in the context of a HyperText Transfer Protocol Secure (HTTPS) application.
- TLS Transport Layer Security
- HTTPS HyperText Transfer Protocol Secure
- actions 513 and 514 could also be performed in reverse order or in parallel.
- the application of a hash function to the key identifier in actions 406 and 511 could be dispensed with.
- the key identifier could then be stored in clear text in action 407 also in the trust center, and used in action 512 in plain text to search for the private key.
- the method can not be used only for attachments of electronic messages. It could also be used if the message itself is to be encrypted.
- a second device - similar to the device 300 - could, for example, belong to a database provider which stores data for users in the network.
- a first device-for example, again a trust center-could optionally also generate a symmetric key for a user instead of an asymmetrical key pair and keep it available as a secret key. This can be done essentially the same way as in FIG. 2 shown.
- a key for symmetric encryption is then generated, encrypted and stored, and the generation, transmission and storage of the public key is completely eliminated.
- the user device could then retrieve the symmetric encryption key stored in the first device each time stored cryptographic data is read to decrypt the data in the user device. This can be done essentially the same way as in FIG. 3 shown. Instead of messages and attachments, the user device only retrieves data from a memory in the second device, and instead of the user's private key, a user's key is used for symmetric encryption. The user device could also be encrypted each time data for storage in the second device first, in a similar manner, retrieve the symmetric encryption key stored in the first device.
- each of the illustrated components may also be formed by a plurality of components.
- a plurality of processors could be used and instead of each memory component a plurality of memory components.
- Multiple processors and / or multiple memory components could also be distributed among multiple servers of a particular device.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Description
Die vorliegende Erfindung betrifft unter anderem Verfahren, Vorrichtungen, Systeme, Programme und Speichermedien zum Unterstützen einer Entschlüsselung von verschlüsselten Daten.The present invention relates, inter alia, to methods, apparatuses, systems, programs, and storage media for supporting decryption of encrypted data.
Daten können heutzutage digital, beispielsweise als Email, versendet werden. Dabei eignet sich der herkömmliche Emailversand aus diversen Gründen nicht für vertrauliche Informationen. Zum einen sind weder Absender, noch Empfänger zweifelsfrei identifizierbar. Das bedeutet, dass der Empfänger einer Email nicht sicher sein kann, dass der Absender tatsächlich die Person oder Institution ist, die als Absender angegeben ist. Zum anderen wird die Information offen übertragen, was bedeutet, dass Fehlläufer von dem irrtümlichen Empfänger gelesen werden können. Zusätzlich kann der Provider der Emailfunktion, über dessen Server die Email übertragen wird, die Information aus der Email zur Kenntnis nehmen.Today, data can be sent digitally, for example by e-mail. Traditional email is not suitable for confidential information for a variety of reasons. On the one hand, neither sender nor recipient can be unequivocally identified. This means that the recipient of an email can not be sure that the sender is actually the person or institution specified as the sender. Second, the information is transmitted openly, which means that misusers can be read by the mistaken recipient. In addition, the provider of the email function, via whose server the email is transmitted, can take note of the information from the email.
Der Inhalt von elektronischen Nachrichten kann über eine Ende-zu-Ende Verschlüsselung geschützt werden, so dass die Nachricht während des Transports vom Absender zum Empfänger von keinem Dritten gelesen werden kann. Hierbei muss ein Absender eine Nachricht oder einen Teil einer Nachricht kryptografisch verschlüsseln, und der Empfänger muss die Nachricht entschlüsseln. Die Verschlüsselung kann eine symmetrische Verschlüsselung sein; in dem Fall basieren Verschlüsselung und Entschlüsselung auf dem gleichen Schlüssel. Alternativ kann die Verschlüsselung eine asymmetrische Verschlüsselung sein; in dem Fall kann die Verschlüsselung auf einem öffentlichen Schlüssel eines Schlüsselpaars basieren und die Entschlüsselung auf dem privaten Schlüssel des Schlüsselpaars. Herkömmlicherweise muss der Empfänger seinen Schlüssel oder seine Schlüssel eigenständig verwalten und schützen, letzteres sowohl vor einem Verlust wie auch vor einem unbefugten Auslesen durch Dritte. Zudem muss er dem Absender den zur Verschlüsselung notwendigen Schlüssel zugänglich machen. Außerdem sind auf Empfängerseite die Installation von Softwaremodulen und gegebenenfalls zusätzliche Geräte, wie Kartenlesegeräte, erforderlich.The content of electronic messages can be protected by end-to-end encryption, so that the message can not be read by any third party during transport from the sender to the recipient. Here, a sender must cryptographically encrypt a message or part of a message, and the recipient must decrypt the message. The encryption can be a symmetric encryption; in that case, encryption and decryption are based on the same key. Alternatively, the encryption may be asymmetric encryption; in that case the encryption may be based on a public key of a key pair and the decryption on the private key of the key pair. Traditionally, the recipient must independently manage and protect his or her key or keys, the latter both from loss and from unauthorized reading by third parties. In addition, he must make the sender the key necessary for encryption. In addition, on the receiver side the installation of software modules and possibly additional devices, such as card readers, is required.
Ein Trustcenter kann die Schlüsselgenerierung und -verwaltung unterstützen. Insbesondere kann ein Trustcenter Empfängern eine gesicherte Aufbewahrung von Schlüsseln anbieten, um den Verlust eines Schlüssels zu verhindern. Hierzu muss der Empfänger jedoch nicht nur ein Vertragsverhältnis mit einem Email-Provider oder einem anderen Nachrichtenzusteller, sondern zusätzlich noch ein Vertragsverhältnis mit dem Trustcenter eingehen. Ein Absender muss gegebenenfalls Schlüssel für mehrere Empfänger von mehreren Trustcentern abrufen und sicherstellen, dass er den jeweils korrekten Schlüssel des Empfängers bei der Verschlüsselung einer Nachricht verwendet. Ein Trustcenter kann zusätzlich Zertifikate für elektronische Signaturen zur Bescheinigung der Identität eines Kommunikationspartners ausstellen.A trust center can support key generation and management. In particular, a trust center can provide recipients with secure key storage to prevent the loss of a key. For this purpose, however, the recipient must not only enter into a contractual relationship with an email provider or another message deliverer, but also enter into a contractual relationship with the trust center. A sender may need to retrieve keys for multiple recipients from multiple trust centers and ensure that they use the correct key of the recipient when encrypting a message. A trust center can additionally issue certificates for electronic signatures to certify the identity of a communication partner.
In einer Variante kann ein Nachrichtenzusteller als Komplettanbieter für eine sichere Nachrichtenübermittlung auftreten. Die Anmelderin bietet ein solches Verfahren beispielsweise mit dem E-Postbrief an. Sowohl der Empfänger als auch der Absender benötigen dann nur einen Vertrag mit dem Nachrichtenzusteller, und sie erhalten alle notwendigen Funktionen für eine gesicherte Kommunikation bereitgestellt. Ein Trustcenter kann dabei einen Schlüssel für einen Nutzer erstellen, der dann von dem Nachrichtenzusteller verwaltet wird. Ein Absender kann von dem Nachrichtenzusteller die benötigten Schlüssel erhalten und dort auch Nachrichten einliefern. Um keinerlei technischen oder organisatorischen Maßnahmen auf Seiten des Empfängers vorauszusetzen, können die verschlüsselten Nachrichten auf Seiten des Nachrichtenzustellers bei Abruf der Nachricht durch den Empfänger bereits auf einem Server des Nachrichtenzustellers entschlüsselt und dem Empfänger über eine gesicherte Verbindung übertragen werden. Durch hohe Anforderungen an die Identifikation der Teilnehmer und die Bereitstellung eines Adressqualifikations-Dienstes kann der Nachrichtenübermittler für den Absender auch die Empfängeradresse bestimmen oder überprüfen und eine korrekte Zustellung sicherstellen.In one variation, a message delivery agent may act as a one-stop shop for secure messaging. The applicant offers such a method, for example, with the E-Postbrief. Both the recipient and the sender then only need a contract with the message courier, and they are provided with all the necessary functions for secure communication. A trust center can create a key for a user, who will then be managed by the message handler. A sender can receive the required keys from the message delivery agent and also deliver messages there. In order not to require any technical or organizational measures on the part of the recipient, the encrypted messages can be decrypted on the message handler's side when the message is retrieved by the recipient on a server of the message carrier and transmitted to the recipient via a secure connection. Due to high demands on the identification of the participants and the provision of an address qualification service, the message transmitter can also determine or check the recipient address for the sender and ensure correct delivery.
Eine der Aufgaben der Erfindung besteht darin, eine Entschlüsslung von verschlüsselten Daten auf eine alternative Weise zu bestehenden Ansätzen zu unterstützen. Eine andere Aufgabe der Erfindung besteht darin, eine besonders nutzerfreundliche und gleichzeitig besonders sichere Entschlüsselung von verschlüsselten Daten zu ermöglichen.One of the objects of the invention is to support decryption of encrypted data in an alternative way to existing approaches. Another object of the invention is to enable a particularly user-friendly and at the same time particularly secure decryption of encrypted data.
Die Aufgabe wird gelöst durch ein Verfahren gemäß Anspruch 1, eine Vorrichtung gemäß Anspruch 4 ein Programm gemäß Anspruch 6, ein Verfahren gemäß Anspruch 7, eine Vorrichtung gemäß Anspruch 15, ein Programm gemäß Anspruch 17 und ein System gemäß Anspruch 18.The object is achieved by a method according to claim 1, a device according to claim 4 a program according to claim 6, a A method according to claim 7, an apparatus according to claim 15, a program according to claim 17 and a system according to claim 18.
Weitere Ausführungsformen sind den abhängigen Ansprüchen zu entnehmen.Further embodiments can be found in the dependent claims.
Für einen ersten Aspekt wird für eine beispielhafte Ausführungsform eines Verfahrens, ausgeführt von einer Vorrichtung, angenommen, dass eine erste Einrichtung dazu eingerichtet ist, einen geheimen Schlüssel eines Nutzers der Vorrichtung bereitzustellen, und dass eine zweite Einrichtung dazu eingerichtet ist, Daten für den Nutzer bereitzustellen. Das Verfahren umfasst ein Einloggen bei der zweiten Einrichtung unter Authentifizierung des Nutzers. Das Verfahren umfasst ferner ein Empfangen von verschlüsselten Daten von der zweiten Einrichtung. Das Verfahren umfasst ferner ein Erzeugen eines Einmalpassworts. Das Verfahren umfasst ferner ein Verschlüsseln des Einmalpassworts mittels eines öffentlichen Schlüssels der ersten Einrichtung. Das Verfahren umfasst ferner ein Übermitteln des verschlüsselten Einmalpassworts an die zweite Einrichtung und ein Veranlassen der zweiten Einrichtung mittels des verschlüsselten Einmalpassworts und einer in der zweiten Einrichtung dem Nutzer zugeordneten Schlüsselkennung den geheimen Schlüssel des Nutzers von der ersten Einrichtung abzurufen. Das Verfahren umfasst ferner ein Empfangen des von der ersten Einrichtung mit dem Einmalpasswort verschlüsselten geheimen Schlüssels des Nutzers von der zweiten Einrichtung. Das Verfahren umfasst ferner ein Entschlüsseln des geheimen Schlüssels des Nutzers mittels des Einmalpassworts. Das Verfahren umfasst ferner ein Entschlüsseln der verschlüsselten Daten mittels des geheimen Schlüssels des Nutzers.For a first aspect, an exemplary embodiment of a method performed by a device assumes that a first device is configured to provide a secret key of a user of the device, and that a second device is configured to provide data to the user , The method includes logging in to the second device under authentication of the user. The method further comprises receiving encrypted data from the second device. The method further comprises generating a one-time password. The method further comprises encrypting the one-time password using a public key of the first device. The method further comprises transmitting the encrypted one-time password to the second device and causing the second device to retrieve the user's secret key from the first device using the encrypted one-time password and a key identifier associated with the user in the second device. The method further comprises receiving the user's secret key encrypted by the first one-time password device from the second device. The method further comprises decrypting the user's secret key using the one-time password. The method further comprises decrypting the encrypted data using the user's secret key.
Für einen zweiten Aspekt wird für eine beispielhafte Ausführungsform eines Verfahrens, ausgeführt von einer Vorrichtung einer ersten Einrichtung, angenommen, dass eine zweite Einrichtung dazu eingerichtet ist, Daten für einen Nutzer bereitzustellen. Das Verfahren umfasst ein Empfangen einer Schlüsselkennung und eines von einer Vorrichtung eines Nutzers generierten und mit einem öffentlichen Schlüssel der ersten Einrichtung verschlüsselten Einmalpassworts von einer zweiten Einrichtung, die eine Zuordnung zwischen Nutzern und Schlüsselkennungen speichert. Das Verfahren umfasst ferner ein Auslesen eines mit der Schlüsselkennung verschlüsselten geheimen Schlüssels des Nutzers basierend auf der Schlüsselkennung aus einem Speicher der ersten Einrichtung. Das Verfahren umfasst ferner ein Entschlüsseln des verschlüsselten geheimen Schlüssels des Nutzers mittels der Schlüsselkennung. Das Verfahren umfasst ferner ein Entschlüsseln des verschlüsselten Einmalpassworts mittels eines privaten Schlüssels der ersten Einrichtung. Das Verfahren umfasst ferner ein Verschlüsseln des geheimen Schlüssels des Nutzers mit dem Einmalpasswort. Das Verfahren umfasst ferner ein Übermitteln des mit dem Einmalpasswort verschlüsselten geheimen Schlüssels des Nutzers an die zweite Einrichtung zum Weiterleiten an die Vorrichtung des Nutzers, um diesem zu ermöglichen, von der zweiten Einrichtung erhaltene, verschlüsselte Daten zu entschlüsseln.For a second aspect, for an exemplary embodiment of a method performed by a device of a first device, it is assumed that a second device is configured to provide data to a user. The method comprises receiving a key identifier and a one-time password encrypted by a device of a user and encrypted with a public key of the first device from a second device storing an association between users and key identifiers. The method further comprises reading out a user's secret key encrypted with the key identifier based on the key identifier from a memory of the first device. The method further comprises decrypting the encrypted secret key of the user by means of the key identifier. The method further comprises decrypting the encrypted one-time password using a private key of the first device. The method further comprises encrypting the user's secret key with the one-time password. The method further comprises communicating with the One-time password of the user's encrypted secret key to the second device for forwarding to the user's device to enable it to decrypt encrypted data received from the second device.
Die Erfindung sieht also für bestimmte beispielhafte Ausführungsformen vor, dass die Bereitstellung von Daten und die Bereitstellung eines geheimen Schlüssels zum Entschlüsseln der Daten voneinander getrennt werden. Der Schlüssel wird von einer ersten Einrichtung bereitgestellt und die Daten von einer zweiten Einrichtung. Die Vorrichtung eines Nutzers kommuniziert dennoch direkt nur mit der zweiten Einrichtung. Die zweite Einrichtung selber weist nur eine Zuordnung des Nutzers zu einer Schlüsselkennung auf. Der Nutzer kann für diese Zuordnung auf beliebige Weise identifiziert werden, beispielsweise anhand eines beim Einloggen angegebenen Nutzernamens oder einer Nutzeradresse für elektronische Nachrichten. Verschlüsselte Daten für den Nutzer werden der Nutzervorrichtung von der zweiten Einrichtung in verschlüsselter Form übermittelt. Die Nutzervorrichtung generiert ein Einmalpasswort, verschlüsselt dieses mit einem öffentlichen Schlüssel der ersten Einrichtung und leitet es an die zweite Einrichtung weiter. Die zweite Einrichtung leitet das verschlüsselte Einmalpasswort zusammen mit einer für den Nutzer gespeicherten Schlüsselkennung an die erste Einrichtung weiter. Die erste Einrichtung entschlüsselt das Einmalpasswort, ruft anhand der Schlüsselkennung einen gespeicherten, verschlüsselten geheimen Schlüssel des Nutzers ab, entschlüsselt ihn mit der Schlüsselkennung und verschlüsselt ihn mit dem Einmalpasswort. Die erste Einrichtung leitet den so neu verschlüsselten geheimen Schlüssel des Nutzers über die zweite Einrichtung an die Nutzervorrichtung weiter. Nach einer Entschlüsselung des geheimen Schlüssels mit dem Einmalpasswort kann die Nutzervorrichtung nun die verschlüsselten Daten entschlüsseln.Thus, for certain exemplary embodiments, the invention contemplates that the provision of data and the provision of a secret key for decrypting the data are separated. The key is provided by a first device and the data from a second device. The device of a user nevertheless communicates directly only with the second device. The second device itself has only one assignment of the user to a key identifier. The user can be identified for this assignment in any manner, for example by means of a user name specified at login or a user address for electronic messages. Encrypted data for the user is transmitted to the user device by the second device in encrypted form. The user device generates a one-time password, encrypts it with a public key of the first device, and forwards it to the second device. The second device forwards the encrypted one-time password together with a key identifier stored for the user to the first device. The first device decrypts the one-time password, retrieves a stored, encrypted secret key of the user based on the key identifier, decrypts it with the key identifier and encrypts it with the one-time password. The first device forwards the user's newly encrypted secret key to the user device via the second device. After a decryption of the secret key with the one-time password, the user device can now decrypt the encrypted data.
Ein möglicher Vorteil der Erfindung liegt darin, dass der Nutzer selber keinen geheimen Schlüssel in seiner Vorrichtung vorrätig halten muss. Dadurch braucht der Nutzer nicht dafür Sorge zu tragen, dass der geheime Schlüssel sicher vor dem Zugriff anderer verwahrt ist und dass er nicht verlorengeht. Außerdem kann der Nutzer so gegebenenfalls über mehrere Vorrichtungen auf den gleichen, zentral gespeicherten geheimen Schlüssel zugreifen. Ein weiterer möglicher Vorteil der Erfindung liegt darin, dass der Nutzer dennoch nur mit einer Einrichtung kommunizieren muss; tritt der Betreiber der zweiten Einrichtung dabei als Komplettdienstleister auf, so benötigt der Nutzer in bestimmten Ausführungsformen auch nur einen Vertrag mit diesem. Ein weiterer möglicher Vorteil der Erfindung liegt darin, dass bei Verwendung eines Einmalpassworts für den Transport des geheimen Schlüssels für die Generierung des Passworts in bestimmten Ausführungsformen keine Nutzereingabe erforderlich ist. Der Ansatz könnte somit besonders komfortabel für den Nutzer ausgestaltet werden und unabhängig von dem Login-Verfahren sein, mit dem sich ein Nutzer bei der zweiten Einrichtung zum Abruf von Daten anmeldet.A possible advantage of the invention is that the user himself does not have to keep a secret key in his device in stock. As a result, the user does not need to ensure that the secret key is securely kept from the access of others and that it is not lost. In addition, the user can access the same, centrally stored secret key, if appropriate via a plurality of devices. Another possible advantage of the invention is that the user still only has to communicate with one device; If the operator of the second device occurs as a full-service provider, in certain embodiments the user only needs a contract with the latter. Another possible advantage of the invention is that when using a one-time password for the transport of the secret key for the generation of the password in certain embodiments no User input is required. The approach could thus be made particularly comfortable for the user and be independent of the login procedure with which a user logs on to the second device for retrieving data.
Für besonders vertrauliche Informationen können besonders hohe Anforderungen an eine Absicherung bestehen, dass nur der beabsichtigte Empfänger die bereitgestellten Informationen nutzen kann. Dies kann beispielsweise Berufsgeheimnisse von bestimmten Berufsgruppen, wie Ärzten oder Anwälten, betreffen, die besonderen Geheimhaltungspflichten unterliegen. Ein weiterer möglicher Vorteil der Erfindung liegt nun darin, dass durch die Trennung zwischen Datenbereitstellung und Schlüsselbereitstellung trotz des Zugriffs des Nutzers auf eine einzige Einrichtung eine besonders hohe Sicherheit bezüglich der Vertraulichkeit erzielt werden kann. Das heißt, keine Einrichtung speichert sowohl verschlüsselte Daten als auch den für die Entschlüsselung erforderlichen geheimen Schlüssel - auch nicht in verschlüsselter Form. Die Entschlüsselung erfolgt ausschließlich im Machtbereich des Empfängers, d.h. auf der Nutzervorrichtung. Das Einmalpasswort kann sicherstellen, dass der geheime Schlüssel des Nutzers auch während der Übertragung zum Nutzer über die zweite Einrichtung gesichert ist. Da das Einmalpasswort selber bei der Übertragung zur ersten Einrichtung über die zweite Einrichtung verschlüsselt ist, erhält die zweite Einrichtung auch zu keinem Zeitpunkt einen Zugriff auf das Einmalpasswort.For particularly confidential information, there may be particularly stringent requirements for securing that only the intended recipient can use the information provided. This may, for example, concern professional secrets of certain professional groups, such as doctors or lawyers, who are subject to special secrecy obligations. Another possible advantage of the invention lies in the fact that, despite the user's access to a single device, the separation between the provision of data and the provision of keys makes it possible to achieve particularly high security with regard to confidentiality. That is, no device stores both encrypted data and the secret key required for decryption - even in encrypted form. The decryption is done exclusively in the domain of the recipient, i. on the user device. The one-time password can ensure that the user's secret key is also secured during transmission to the user via the second device. Since the one-time password itself is encrypted during transmission to the first device via the second device, the second device also does not receive access to the one-time password at any time.
Eine beispielhafte erfindungsgemäße Vorrichtung gemäß dem ersten Aspekt umfasst Mittel zur Ausführung des erfindungsgemäßen Verfahrens gemäß dem ersten Aspekt. Die Vorrichtung kann beispielsweise ein Nutzerendgerät oder ein Modul für ein Nutzerendgerät sein.An exemplary device according to the invention according to the first aspect comprises means for carrying out the method according to the invention according to the first aspect. The device may be, for example, a user terminal or a module for a user terminal.
Eine beispielhafte erfindungsgemäße Vorrichtung gemäß dem zweiten Aspekt umfasst Mittel zur Ausführung des erfindungsgemäßen Verfahrens gemäß dem zweiten Aspekt. Die Vorrichtung kann beispielsweise ein Server oder ein Modul für einen Server sein. Der Server kann wiederum beispielsweise zu einer Einrichtung, wie einem Trustcenter, gehören.An exemplary device according to the invention according to the second aspect comprises means for carrying out the method according to the invention according to the second aspect. The device may be, for example, a server or a module for a server. The server may in turn belong to a device such as a trust center.
Die Mittel der Vorrichtungen gemäß dem ersten bzw. zweiten Aspekt könnten jeweils Hardware- und/oder Softwarekomponenten umfassen. In einer beispielhaften Ausführungsform könnten die Mittel nur einen Schaltkreis umfassen, in dem entsprechende Funktionen hardwaremäßig implementiert sind. In einer anderen beispielhaften Ausführungsform könnten die Mittel zumindest einen Prozessor und zumindest einen Speicher mit einem geeigneten Programm umfassen.The means of the devices according to the first or second aspect could each comprise hardware and / or software components. In an exemplary embodiment, the means could comprise only one circuit in which corresponding functions are implemented in hardware. In another exemplary embodiment, the means could comprise at least one processor and at least one memory with a suitable program.
So umfasst für den ersten bzw. den zweiten Aspekt eine beispielhafte Ausführungsform einer erfindungsgemäßen Vorrichtung zumindest einen Prozessor und zumindest einen Speicher, wobei in dem Speicher ein Programmanweisungen umfassendes Programm gespeichert ist, und wobei der Speicher und das Programm eingerichtet sind, um, mit dem Prozessor, die Vorrichtung zumindest zu veranlassen, das erfindungsgemäße Verfahren gemäß dem ersten Aspekt oder gemäß dem zweiten Aspekt auszuführen, wenn das Programm auf dem Prozessor ausgeführt wird. Die Vorrichtung ist beispielsweise softwaremäßig eingerichtet, um das Verfahren ausführen zu können. Unter softwaremäßig eingerichtet soll dabei insbesondere die Vorbereitung der Vorrichtung verstanden werden, die notwendig ist, um ein Verfahren beispielsweise in Form eines Programms auf dem Prozessor ausführen zu können.Thus, for the first and second aspects, an exemplary embodiment of a device according to the invention comprises at least one processor and at least one memory, wherein a program comprising program instructions is stored in the memory, and wherein the memory and the program are arranged to communicate with the processor at least to cause the device to carry out the inventive method according to the first aspect or according to the second aspect when the program is executed on the processor. By way of example, the device is set up by software in order to be able to carry out the method. In particular, the preparation of the device, which is necessary in order to be able to execute a method, for example in the form of a program on the processor, should be understood as being set up by software.
Unter einem Prozessor sollen unter anderem eine oder mehrere Kontrolleinheiten, Mikroprozessoren, Mikrokontrolleinheiten wie Mikrocontroller, digitale Signalprozessoren (DSP), Anwendungsspezifische Integrierte Schaltungen (ASIC) oder Field Programmable Gate Arrays (FPGA) verstanden werden.A processor should be understood to mean inter alia one or more control units, microprocessors, microcontroller units such as microcontrollers, digital signal processors (DSP), application specific integrated circuits (ASIC) or field programmable gate arrays (FPGA).
Ein Speicher ist beispielsweise ein Programmspeicher und/oder ein Hauptspeicher des Prozessors. Unter einem Programmspeicher soll unter anderem ein nicht-flüchtiger Speicher und unter einem Hauptspeicher ein flüchtiger oder ein nicht-flüchtiger Speicher, insbesondere ein Speicher mit wahlfreiem Zugriff (Random Access Memory RAM) und/oder ein Flash-Speicher, verstanden werden. Nicht-flüchtige Speicher sind z.B. Speicher mit wahlfreiem Zugriff (RAM) wie z.B. NOR-Flash-Speicher oder mit sequentiellem Zugriff wie z.B. NAND-Flash-Speicher und/oder Speicher mit Nur-Lese-Zugriff (ROM) wie z.B. EPROM-, EEPROM-, oder ROM-Speicher. Der Speicher kann beispielsweise gegenständlich ausgebildet sein.A memory is, for example, a program memory and / or a main memory of the processor. A program memory is to be understood inter alia a non-volatile memory and a main memory, a volatile or a non-volatile memory, in particular a random access memory (RAM) and / or a flash memory. Non-volatile memories are e.g. Random access memory (RAM), e.g. NOR flash memory or with sequential access, e.g. NAND flash memory and / or read only access memory (ROM), e.g. EPROM, EEPROM, or ROM memory. The memory may be designed, for example objective.
Für den ersten bzw. den zweiten Aspekt umfasst eine beispielhafte Ausführungsform eines erfindungsgemäßen Programms Programmanweisungen, wobei die Programmanweisungen eine Vorrichtung zur Ausführung des erfindungsgemäßen Verfahrens gemäß dem ersten Aspekt oder gemäß dem zweiten Aspekt veranlassen, wenn das Programm von dem Prozessor ausgeführt wird. Ein Programm ist beispielsweise über ein Netz wie ein lokales Netz, ein Weitverkehrsnetz, ein virtuelles Netz, ein Funknetz, wie ein Mobilfunknetz, ein sonstiges Telefonnetz und/oder das Internet verteilbar. Ein Programm kann zumindest teilweise Software und/oder Firmware eines Prozessors sein. Zum Beispiel ist das erfindungsgemäß Programm in einem Speicher der erfindungsgemäßen Vorrichtung gemäß dem ersten bzw. zweiten Aspekt gespeichert. Es versteht sich, dass unter dem Begriff Programm jeweils auch eine Zusammenstellung mehrerer Programme verstanden werden kann.For the first and second aspect, an exemplary embodiment of a program according to the invention comprises program instructions, wherein the program instructions cause an apparatus for carrying out the method according to the first aspect or according to the second aspect, when the program is executed by the processor. A program can be distributed, for example, via a network such as a local area network, a wide area network, a virtual area network, a radio network, such as a mobile radio network, another telephone network and / or the Internet. A program may be at least partially software and / or firmware of a processor. For example, the program according to the invention is stored in a memory of the device according to the invention according to the first or second aspect. It understands itself, that the term program can be understood in each case also a compilation of several programs.
Für den ersten bzw. den zweiten Aspekt speichert eine beispielhafte Ausführungsform eines erfindungsgemäßen Speichermediums ein erfindungsgemäßes Programm gemäß dem ersten oder zweiten Aspekt. Das Speichermedium ist beispielsweise ein computerlesbares Speichermedium, welches das erfindungsgemäße Programm enthält und zum Beispiel als magnetisches, elektrisches, elektro-magnetisches, optisches und/oder andersartiges Speichermedium ausgebildet ist. Das Speichermedium kann insbesondere ein physikalisches und/oder gegenständliches Speichermedium sein. Das Speichermedium ist beispielsweise tragbar oder in einer Vorrichtung fest installiert. "Computerlesbar" soll insbesondere so verstanden werden, dass das Speichermedium von einem Computer bzw. einer Datenverarbeitungsvorrichtung (aus)gelesen und/oder beschrieben werden kann, beispielsweise von einem Prozessor. Das Speichermedium ist beispielsweise ein Programmspeicher eines Prozessors.For the first and the second aspect, an exemplary embodiment of a storage medium according to the invention stores a program according to the invention according to the first or second aspect. The storage medium is, for example, a computer-readable storage medium, which contains the program according to the invention and is designed, for example, as a magnetic, electrical, electro-magnetic, optical and / or different type of storage medium. The storage medium may in particular be a physical and / or physical storage medium. The storage medium is for example portable or permanently installed in a device. "Computer readable" is to be understood in particular as meaning that the storage medium can be read from and / or written to by a computer or a data processing device, for example by a processor. The storage medium is, for example, a program memory of a processor.
In einer beispielhaften Ausführungsform umfasst ein erfindungsgemäßes System eine erste Einrichtung mit einer Vorrichtung gemäß dem zweiten Aspekt und einen Speicher zum Speichern einer Mehrzahl von mit Schlüsselkennungen verschlüsselten geheimen Schlüsseln von Nutzern. Des Weiteren kann das System beliebige weitere Komponenten umfassen, beispielsweise die zweite Einrichtung und/oder eine Vorrichtung gemäß dem ersten Aspekt.In an exemplary embodiment, a system according to the invention comprises a first device with a device according to the second aspect and a memory for storing a plurality of user key-encrypted secret keys. Furthermore, the system may comprise any further components, for example the second device and / or a device according to the first aspect.
In einer beispielhaften Ausführungsform wird die Vorrichtung gemäß dem ersten Aspekt von in einem lokalen Speicher der Vorrichtung dauerhaft gespeicherten und von einem Prozessor der Vorrichtung ausgeführten Programmanweisungen veranlasst, das Verfahren durchzuführen. In einer beispielhaften Ausführungsform wird die Vorrichtung gemäß dem ersten Aspekt von über einen Browser erhaltenen und von einem Prozessor der Vorrichtung ausgeführten Programmanweisungen veranlasst, das Verfahren durchzuführen. Die Programmanweisungen können beispielsweise von der zweiten Einrichtung in Form eines Java-Applets oder einer anderen Anwendung bereitgestellt und in der Vorrichtung lediglich temporär in einem Arbeitsspeicher zwischengespeichert werden. Dies kann den Vorteil bieten, dass eine Installation eines Programms mit den Programmanweisungen sowie Aktualisierungen eines installierten Programms nicht erforderlich ist.In an exemplary embodiment, the device according to the first aspect is caused by program instructions permanently stored in a local memory of the device and executed by a processor of the device to perform the method. In an exemplary embodiment, the device according to the first aspect is caused by program instructions received via a browser and executed by a processor of the device to perform the method. The program instructions can be provided, for example, by the second device in the form of a Java applet or another application and only temporarily stored temporarily in a working memory in the device. This may have the advantage of not requiring installation of a program with the program instructions, as well as updates of an installed program.
Für den zweiten Aspekt kann in einer beispielhaften Ausführungsform der mit der Schlüsselkennung verschlüsselte geheime Schlüssel des Nutzers in dem Speicher der ersten Einrichtung mit Zuordnung zu einem aus der Schlüsselkennung kryptografisch abgeleitetem Wert abgespeichert sein. In der ersten Einrichtung könnte dann für eine empfangene Schlüsselkennung zunächst ein Wert kryptografisch abgeleitet werden. Das Auslesen des mit der Schlüsselkennung verschlüsselten geheimen Schlüssels des Nutzers könnte dann anhand des kryptografisch abgeleiteten Werts der empfangenen Schlüsselkennung erfolgt. Die Abspeicherung des verschlüsselten geheimen Schlüssels mit Zuordnung zu einem kryptografisch abgeleiteten Wert der Schlüsselkennung kann den Vorteil bieten, dass nur mit Kenntnis der Schlüsselkennung der geheime Schlüssel noch nicht ohne weiteres aus einem Speicher der ersten Einrichtung abgerufen werden kann. Ein Beispiel für einen kryptografischen abgeleiteten Wert ist ein Hashwert, der mit Hilfe einer Hashfunktion erhalten wird.For the second aspect, in an exemplary embodiment, the user's secret key encrypted with the key identifier may be in the memory of the first Device with assignment to a cryptographically derived from the key identifier value to be stored. In the first device, a value could then be derived cryptographically for a received key identifier. The reading out of the encrypted with the key identifier secret key of the user could then be based on the cryptographically derived value of the received key identifier. The storage of the encrypted secret key with assignment to a cryptographically derived value of the key identifier can offer the advantage that only with knowledge of the key identifier the secret key can not be easily retrieved from a memory of the first device. An example of a cryptographic derived value is a hash value that is obtained by means of a hash function.
Für den zweiten Aspekt kann in einer beispielhaften Ausführungsform ein gespeicherter verschlüsselter geheimer Schlüssel eines Nutzers von der Vorrichtung der ersten Einrichtung zuvor erzeugt werden, wenn von der zweiten Einrichtung eine Aufforderung empfangen wird, einen geheimen Schlüssel für einen Nutzer zu erzeugen. Die Vorrichtung der ersten Einrichtung kann dann einen geheimen Schlüssel für einen Nutzer erzeugen, insbesondere unabhängig von einer Nutzereingabe. Die Vorrichtung der ersten Einrichtung kann ferner eine Schlüsselkennung für den geheimen Schlüssel für den Nutzer erzeugen. Die Vorrichtung der ersten Einrichtung kann den geheimen Schlüssel für den Nutzer mit der Schlüsselkennung verschlüsseln und den verschlüsselten geheimen Schlüssels in der ersten Einrichtung speichern für einen Abruf durch eine Vorrichtung des Nutzers über die zweite Einrichtung. Das Erzeugen eines geheimen Schlüssels für einen Nutzer unabhängig von Nutzereingaben kann den Vorteil bieten, dass für die Erzeugung des Schlüssels keine Kommunikation mit dem Nutzer erforderlich ist.For the second aspect, in an exemplary embodiment, a stored encrypted secret key of a user may be previously generated by the device of the first device when a request is received from the second device to generate a secret key for a user. The device of the first device can then generate a secret key for a user, in particular independently of a user input. The device of the first device may also generate a key identifier for the secret key for the user. The device of the first device may encrypt the secret key for the user with the key identifier and store the encrypted secret key in the first device for retrieval by a device of the user via the second device. Generating a secret key for a user independent of user input may provide the advantage that no communication with the user is required for the generation of the key.
Es versteht sich, dass diese spezielle Erzeugung eines geheimen Schlüssels für einen Nutzer durch eine Vorrichtung einer ersten Einrichtung auch als eigenständige Erfindung anzusehen ist.It is understood that this particular generation of a secret key for a user by a device of a first device is also to be regarded as an independent invention.
Für den zweiten Aspekt kann in einer beispielhaften Ausführungsform die Schlüsselkennung an die zweite Einrichtung übermittelt werden, zum Speichern der Schlüsselkennung mit Zuordnung zu einem Nutzer. Dies kann den Vorteil bieten, dass die erste Einrichtung für eine Abfrage eines geheimen Schlüssels für einen Nutzer keinerlei direkte Informationen über den jeweiligen Nutzer zu erhalten braucht.For the second aspect, in an exemplary embodiment, the key identifier may be communicated to the second device for storing the key identifier associated with a user. This can offer the advantage that the first device for a query of a secret key for a user need not receive any direct information about the respective user.
Für den zweiten Aspekt kann in einer beispielhaften Ausführungsform die Vorrichtung der ersten Einrichtung im Rahmen der Erzeugung eines geheimen Schlüssels von der erzeugten Schlüsselkennung einen Wert kryptografischen ableiten, den kryptografisch abgeleiteten Wert in dem Speicher der ersten Einrichtung mit Zuordnung zu dem mit der Schlüsselkennung verschlüsselten geheimen Schlüssel speichern, und die Schlüsselkennung in der ersten Einrichtung löschen. Als kryptografisch abgeleiteter Wert kann beispielsweise wiederum ein Hashwert verwendet werden.For the second aspect, in one exemplary embodiment, the device may be the first Device in the context of the generation of a secret key from the generated key identifier cryptographic derive a value store the cryptographically derived value in the memory of the first device associated with the encrypted with the key identifier secret key, and delete the key identifier in the first device. For example, a hash value can again be used as the cryptographically derived value.
Der geheimen Schlüssel des Nutzers kann beispielsweise ein Schüssel für eine symmetrische Verschlüsselung sein oder beispielsweise der private Schlüssel eines Schlüsselpaars für eine asymmetrische Verschlüsselung.The secret key of the user may be, for example, a key for symmetric encryption or, for example, the private key of a key pair for asymmetric encryption.
Für den zweiten Aspekt kann in letzterem Fall die Vorrichtung der ersten Einrichtung ferner einen öffentlichen Schlüssel für den Nutzer erzeugen. Der öffentliche Schlüssel kann dann nur in der ersten Einrichtung abgespeichert werden. Alternativ könnte er zur zweiten Einrichtung zum Abspeichern nur in der zweiten Einrichtung übermittelt werden. Ein Abspeichern in der zweiten Einrichtung könnte den Vorteil haben, dass leichter auf den öffentlichen Schlüssel zugegriffen werden kann, beispielsweise wenn ein anderer Nutzer dem Nutzer mit dem öffentlichen Schlüssel verschlüsselte Daten senden möchte. In der zweiten Einrichtung könnten so auch von verschiedenen ersten Einrichtungen erzeugte öffentliche Schlüssel gespeichert werden. Da der öffentliche Schlüssel nicht geheim ist, kann er ohne weiteres in der zweiten Einrichtung gespeichert und zum Abruf bereitgehalten werden. Aus der ersten Einrichtung könnte der öffentliche Schlüssel wieder nur indirekt über die zweite Einrichtung und damit umständlicher abgerufen werden, da in der ersten Einrichtung vorzugsweise keine Zuordnung des Nutzers zu den gespeicherten Schlüsseln vorhanden ist. Weiter alternativ könnte der öffentliche Schlüssel des Nutzers in der ersten Einrichtung abgespeichert werden und zusätzlich zur zweiten Einrichtung zum Abspeichern in der zweiten Einrichtung übermittelt werden. Dies kann den Vorteil bieten, dass der öffentliche Schlüssel auf einfache Weise direkt von der zweiten Einrichtung abgerufen werden kann, während aber eine Sicherheitskopie in der ersten Einrichtung vorhanden ist.For the second aspect, in the latter case, the device of the first device may further generate a public key for the user. The public key can then be stored only in the first device. Alternatively, it could be transmitted to the second means for storing only in the second device. Storing in the second device could have the advantage that the public key can be accessed more easily, for example if another user wishes to send encrypted data to the user with the public key. Thus, in the second device, public keys generated by different first devices could also be stored. Since the public key is not secret, it can be easily stored in the second device and kept ready for retrieval. From the first device, the public key could again be retrieved only indirectly via the second device and thus more cumbersome, since in the first device preferably no assignment of the user to the stored keys is present. Further alternatively, the public key of the user could be stored in the first device and transmitted in addition to the second device for storing in the second device. This may provide the advantage that the public key can be retrieved directly from the second device in a simple manner, while a backup copy is present in the first device.
Die verschlüsselten Daten können von beliebiger Art sein und der zweiten Einrichtung zuvor von beliebiger Seite zur Verfügung gestellt worden sein. In einer beispielhaften Ausführungsform wurden die verschlüsselten Daten von einer Vorrichtung eines Dritten verschlüsselt und der zweiten Einrichtung zur Verfügung gestellt. Hierbei kann es sich beispielsweise um verschlüsselte Teile oder Anhänge von elektronischen Nachrichten handeln. In einer anderen beispielhaften Ausführungsform wurden die verschlüsselten Daten von einer Vorrichtung des Nutzers verschlüsselt und der zweiten Einrichtung zur Verfügung gestellt. Hierbei kann es sich beispielsweise um Daten handeln, die ausgelagert wurden um lokale Speicherkapazitäten zu schonen und/oder um einen zentralen Zugriff auf die Daten zu ermöglichen.The encrypted data may be of any kind and previously made available to the second device by any party. In an exemplary embodiment, the encrypted data has been encrypted by a third party device and provided to the second device. These may be, for example, encrypted parts or attachments of electronic messages. In another example Embodiment, the encrypted data was encrypted by a device of the user and provided to the second device. This may be, for example, data that has been outsourced to conserve local storage capacity and / or to allow central access to the data.
Weitere vorteilhafte beispielhafte Ausgestaltungen der Erfindung sind der folgenden detaillierten Beschreibung einiger beispielhafter Ausführungsformen der vorliegenden Erfindung, insbesondere in Verbindung mit den Figuren, zu entnehmen. Die Figuren sollen jedoch nur dem Zwecke der Verdeutlichung, nicht aber zur Bestimmung des Schutzbereiches der Erfindung dienen. Die Figuren sind nicht maßstabsgetreu und sollen lediglich das allgemeine Konzept der vorliegenden Erfindung beispielhaft widerspiegeln. Insbesondere sollen Merkmale, die in den Figuren enthalten sind, keineswegs als zwingend notwendiger Bestandteil der vorliegenden Erfindung erachtet werden.Further advantageous exemplary embodiments of the invention can be found in the following detailed description of some exemplary embodiments of the present invention, in particular in conjunction with the figures. However, the figures should only serve the purpose of clarification, but not to determine the scope of the invention. The figures are not to scale and are merely intended to exemplify the general concept of the present invention. In particular, features included in the figures should by no means be regarded as a mandatory part of the present invention.
In den Figuren zeigt:
- Fig. 1
- ein Blockdiagramm einer Ausführungsform eines erfindungsgemäßen Systems;
- Fig. 2
- ein Ablaufdiagramme mit ersten beispielhaften Verfahrensschritten in den System aus
Figur 1 ; und - Fig. 3
- ein Ablaufdiagramme mit weiteren beispielhaften Verfahrensschritten in den System aus
Figur 1 .
- Fig. 1
- a block diagram of an embodiment of a system according to the invention;
- Fig. 2
- a flowchart with first exemplary method steps in the system
FIG. 1 ; and - Fig. 3
- a flowchart with further exemplary method steps in the system
FIG. 1 ,
Die vorliegende Erfindung wird im Folgenden anhand von beispielhaften Ausführungsformen beschrieben, die eine Entschlüsselung von verschlüsselten Daten unterstützen.The present invention will now be described by way of exemplary embodiments that support decryption of encrypted data.
Die Vorrichtung 100 ist eine Nutzervorrichtung, beispielsweise ein Personal Computer (PC), ein Notebook, ein Tablet-Computer, ein Mobiltelefon oder ein beliebiges anderes Gerät.The
Die Vorrichtung 100 umfasst einen Prozessor 101 und, mit dem Prozessor 101 verbunden, einen Programmspeicher 102, einen als RAM ausgebildeten Arbeitsspeicher 103, einen Hauptspeicher 104, eine Kommunikationsschnittstelle (Interface I/F) 105 und eine Benutzerschnittstelle (User Interface UI) 106.The
Der Prozessor 101 könnte ein Mikroprozessor sein. Er könnte auch in einen integrierten Schaltkreis (IC) eingebettet sein, zum Beispiel zusammen mit einem Speicher. Beispielhaft angedeutet ist ein Chip 107, der einen Schaltkreis mit dem Prozessor 101, dem Programmspeicher 102 und dem Arbeitsspeicher 103 enthalten könnte.The
Der Programmspeicher 102 speichert Programme mit Programmanweisungen dauerhaft, d.h. in der Regel bis ein Nutzer eine Löschung veranlasst. Die Programme umfassen zum Beispiel zumindest ein Browserprogramm. Der Arbeitsspeicher 103 kann beispielsweise dazu genutzt werden, um diverse Informationen, wie Zwischenergebnisse, Programme oder einzelne Programmanweisungen oder zu verarbeitende Daten, zeitweise zu speichern. Der Hauptspeicher 104 kann dazu genutzt werden, um Nutzerdaten und andere Daten dauerhaft zu speichern, beispielsweise aus einem Postfach heruntergeladene elektronische Nachrichten und deren unverschlüsselten oder entschlüsselten Anhänge.The
Der Prozessor 101 ist dazu eingerichtet, um Programme auszuführen und damit die Vorrichtung 100 zu veranlassen, bestimmte Aktionen auszuführen. Hierzu kann der Prozessor 101 beispielsweise auf im Programmspeicher 102 gespeicherte Programmanweisungen oder auch auf nur im Arbeitspeicher 103 gespeicherte Programmanweisungen zugreifen. Außerdem können beliebige Informationen vom Prozessor 101 im Arbeitsspeicher 103 zwischengespeichert werden.The
Die Kommunikationsschnittstelle 105 kann eine beliebige Schnittstelle sein, die einen Austausch von Daten zwischen der Vorrichtung 100 und der zweiten Einrichtung 300 ermöglicht, insbesondere aber nicht notwendigerweise über das Internet. Sie kann eine Funkschnittstelle sein, die den Zugang zum Internet beispielsweise über ein lokales Funknetz (Wireless Local Area Network WLAN) oder über ein Mobilfunknetz ermöglicht. Sie kann ebenso eine kabelgebundene Schnittstelle sein, die einen Zugang zum Internet über ein Kabel ermöglicht, wie beispielsweise über einen DSL-Anschluss oder ein lokales Netz (Local Area Network LAN).The
Die Nutzerschnittstelle 106 kann beliebige Komponenten zur Dateneingabe durch einen Nutzer und zur Präsentation von Daten umfassen, wie zum Beispiel eine Tastatur, eine Maus, ein Mikrofon, einen Bildschirm, einen Touchscreen und/oder einen Lautsprecher, usw. Es versteht sich, dass solche Komponenten in bestimmten Ausführungsformen ganz oder teilweise in die Vorrichtung 100 integriert sein können, aber ebenso über Kabel oder Funk an die Vorrichtung 100 angebunden sein könnten.The
Die erste Einrichtung 200 kann beispielsweise ein staatlich zertifiziertes Trustcenter sein.The
Die Einrichtung 200 umfasst einen Server 210 und einen externen Speicher 220.The
Der Server 210 umfasst einen Prozessor 211 und, mit dem Prozessor 211 verbunden, einen Programmspeicher 212, einen als RAM ausgebildeten Arbeitsspeicher 213, einen Hauptspeicher 214 und eine Kommunikationsschnittstelle (I/F) 215.The
Der Prozessor 211 könnte ein Mikroprozessor sein. Er könnte auch in einen integrierten Schaltkreis eingebettet sein, zum Beispiel zusammen mit einem Speicher. Beispielhaft angedeutet ist eine Steckkarte 217, die einen Schaltkreis mit dem Prozessor 211, dem Programmspeicher 212 und dem Arbeitsspeicher 213 enthält.The
Der Programmspeicher 212 speichert Programme mit Programmanweisungen, die für den Betrieb des Servers 210 vorgesehen sind, dauerhaft. Der Arbeitsspeicher 213 ist dazu eingereichtet, um Informationen zeitweise zu speichern. Der Hauptspeicher 214 ist dazu eingereichtet, um einen privaten Schlüssel eines Schlüsselpaars des Trustcenters zu speichern.The
Der Prozessor 211 ist dazu eingerichtet, um Programme aus dem Programmspeicher 212 auszuführen und damit die erste Einrichtung 200 zu veranlassen, bestimmte Aktionen auszuführen. Hierbei können beliebige Informationen vom Prozessor 211 im Arbeitsspeicher 213 zwischengespeichert werden.The
Die Kommunikationsschnittstelle 215 kann eine beliebige Schnittstelle sein, die einen Austausch von Daten zwischen der ersten Einrichtung 200 und der zweiten Einrichtung 300 ermöglicht, beispielsweise aber nicht notwendigerweise über das Internet. Sie kann wiederum eine Funkschnittstelle oder eine kabelgebundene Schnittstelle sein.The
Der externe Speicher 220 kann dazu eingerichtet sein, Daten einer Datenbank zu speichern. Die Datenbank kann so angelegt sein, dass jeweils auf einen Datensatz über einen Hashwert einer Schlüsselkennung zugegriffen werden kann. Die einem Hashwert zugeordneten Daten umfassen einen öffentlichen Schlüssel und einen mit der Schlüsselkennung verschlüsselten privaten Schlüssel, wobei öffentlicher Schlüssel und privater Schlüssel ein Schlüsselpaar für einen bestimmten Nutzer bilden. Der private Schlüssel ist dabei ein beispielhafter geheimer Schlüssel eines Nutzers. Der Nutzer ist in der Einrichtung 200 nicht identifizierbar.The
Es versteht sich, dass die Einrichtung 200 auch auf beliebige andere Art und Weise zusammengestellt sein kann. So könnte der Speicher 220 auch in den Server 210 integriert sein, oder der Hauptspeicher 214 und der externer Speicher 220 könnten zusammengefasst sein, entweder innerhalb von Server 210 oder außerhalb von Server 210. Der externe Speicher 220 könnte auch von einem weiteren Server bereitgestellt werden.It is understood that the
Die zweite Einrichtung 300 kann beispielsweise eine Einrichtung eines Nachrichtenzustellers sein.The
Die Einrichtung 300 umfasst ebenfalls einen Server 310 und einen externen Speicher 320.The
Der Server 310 umfasst einen Prozessor 311 und, mit dem Prozessor 311 verbunden, einen Programmspeicher 312, einen als RAM ausgebildeten Arbeitsspeicher 313, einen Hauptspeicher 314 und eine Kommunikationsschnittstelle (I/F) 315.The
Der Programmspeicher 312 ist ein Speichermedium, das Programme speichert, die für den Betrieb des Servers 310 vorgesehen sind. Ein Programm könnte insbesondere auch Daten für eine von dem Nachrichtenzusteller bereitgestellte Webseite umfassen. Der Arbeitsspeicher 313 ist dazu eingereichtet, um Informationen zeitweise zu speichern. Der Hauptspeicher 314 ist dazu eingereichtet, um Nutzerstammdaten zu speichern. Zusätzlich könnte der Hauptspeicher 314 einen öffentlichen Schlüssel des Trustcenters 200 speichern, falls nicht vorgesehen ist, dass dieser im Hauptspeicher 104 von Nutzervorrichtungen 100 gespeichert ist.The
Der Prozessor 311 ist dazu eingerichtet, um Programme aus dem Programmspeicher 312 auszuführen und damit die zweite Einrichtung 300 zu veranlassen, bestimmte Aktionen auszuführen. Hierbei können beliebige Informationen vom Prozessor 311 im Arbeitsspeicher 313 zwischengespeichert werden.The
Die Kommunikationsschnittstelle 315 kann eine beliebige Schnittstelle sein, die einen Austausch von Daten zwischen der zweiten Einrichtung 300 und einer Nutzervorrichtung 100 einerseits sowie der zweiten Einrichtung 300 und der ersten Einrichtung 200 andererseits ermöglicht. Sie kann wiederum eine Funkschnittstelle oder eine kabelgebundene Schnittstelle sein. Es versteht sich, dass für die Kommunikation mit Nutzervorrichtungen und der ersten Einrichtung auch zwei verschiedene Schnittstellen vorgesehen sein können.The
Der externe Speicher 320 kann dazu eingerichtet sein, Daten einer Datenbank zu speichern. Die Datenbank kann beispielsweise Postfächer für elektronische Nachrichten für verschiedene Nutzer bereitstellen. Anhänge können optional separat gespeichert werden. Diese können verschlüsselt oder unverschlüsselt sein. Wenn sie verschlüsselt sind, sind sie mit dem öffentlichen Schlüssels eines Schlüsselpaars des Postfachnutzers für verschlüsselt.The
Es versteht sich, dass die Einrichtung 300 auch auf beliebige andere Art und Weise zusammengestellt sein kann.It is understood that the
Das System umfasst ein Programm mit Programmanweisungen zum Unterstützen einer Entschlüsselung von verschlüsselten Daten auf Nutzerseite. Das Programm könnte ein Ausführungsbeispiel eines Programms gemäß dem ersten Aspekt der Erfindung sein.The system includes a program with program instructions for supporting decryption of encrypted user-side data. The program could be an embodiment of a program according to the first aspect of the invention.
Das Programm könnte in Programmspeicher 102 installiert sein. In diesem Fall könnte der Programmspeicher 102 ein Ausführungsbeispiel eines computerlesbaren Speichermediums gemäß dem ersten Aspekt der Erfindung sein, und die Vorrichtung 100 oder der Chip 107 könnte ein Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung gemäß dem ersten Aspekt sein.The program could be installed in
Alternativ könnte das Programm beispielsweise eine Anwendung sein, die dauerhaft in Programmspeicher 312 oder in Hauptspeicher 314 des Servers 310 gespeichert ist, und die von dem Prozessor 101 über einen im Programmspeicher 102 gespeicherten Browser vom Server 310 bei Bedarf jeweils heruntergeladen und im Arbeitsspeicher 103 gespeichert werden kann. Eine solche Anwendung könnte beispielsweise als Java-Applet ausgeführt sein. In dieser Alternative könnte der Programmspeicher 312 bzw. der Hauptspeicher 314 ein Ausführungsbeispiel eines computerlesbaren Speichermediums gemäß dem ersten Aspekt der Erfindung sein, und ebenso der Arbeitsspeicher 103, solange die Anwendung in dem Arbeitsspeicher 103 gespeichert ist. Die Vorrichtung 100 oder der Chip 107 könnte dementsprechend ein Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung gemäß dem ersten Aspekt sein, solange die Anwendung in dem Arbeitsspeicher 103 gespeichert ist.Alternatively, the program could be, for example, an application permanently stored in
Das System umfasst ferner ein Programm mit Programmanweisungen zum Unterstützen einer Entschlüsselung von verschlüsselten Daten auf Serverseite. Das Programm könnte ein Ausführungsbeispiel eines Programms gemäß dem zweiten Aspekt der Erfindung sein.The system further includes a program with program instructions for supporting decryption of encrypted data on the server side. The program could be an embodiment of a program according to the second aspect of the invention.
Es könnte beispielsweise in Programmspeicher 212 gespeichert sein. In diesem Fall könnte der Programmspeicher 212 ein Ausführungsbeispiel eines computerlesbaren Speichermediums gemäß dem zweiten Aspekt der Erfindung sein, und der Server 210 oder die Steckkarte 217 könnte ein Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung gemäß dem zweiten Aspekt sein.For example, it could be stored in
Die Vorrichtung 100 und Einrichtungen 200 und 300 aus
Die Funktionen der Einrichtung 300 des Nachrichtenzustellers könnten beispielsweise in dem E-POSTBRIEF System der Anmelderin implementiert werden; die Funktionen des Trustcenters könnte beispielsweise im hiervon separaten System Signtrust der Anmelderin implementiert werden; und die bereitgestellten Daten könnten E-Postbriefe sein, die von einem Absender bei einem Webportal des E-POSTBRIEF Systems hinterlegt und dort von einem Empfänger abgerufen werden können.For example, the functions of
Die gezeigten Aktionen der Nutzervorrichtung 100 werden beispielhaft ausgeführt, wenn der Prozessor 101 ein über einen Browser geladenes und in Arbeitsspeicher 103 gespeichertes Programm ausführt. Die gezeigten Aktionen der Einrichtung 300 des Nachrichtenzustellers werden ausgeführt, wenn der Prozessor 311 ein entsprechendes Programm aus Programmspeicher 312 abruft und ausführt. Die gezeigten Aktionen des Trustcenters 200 werden ausgeführt, wenn der Prozessor 211 ein entsprechendes Programm aus Programmspeicher 212 abruft und ausführt. Die dargestellten Kommunikationen zwischen der Nutzervorrichtung 100, der Einrichtung 300 des Nachrichtenzustellers und dem Trustcenter 200 erfolgt über die jeweilige Kommunikationsschnittstelle 105, 315, 215 unter Nutzung des Internets.The illustrated actions of the
Die Nutzervorrichtung 100 ist hier nicht direkt involviert. Sie beantragt lediglich im Vorfeld eine Freischaltung einer Portalbenutzung, wenn ein Nutzer einen von dem Nachrichtenzusteller bereitgestellten Dienst zur Übermittlung elektronsicher Nachrichten nutzen möchte. Der Nachrichtenzusteller schaltet die Portalbenutzung frei, wenn alle vorgesehenen Bedingungen erfüllt sind, und legt einen Satz Nutzerstammdaten für den Nutzer an. Die Nutzerstammdaten werden im Hauptspeicher 314 gespeichert. Sie können beispielsweise Daten für eine Authentifizierung des Nutzers beinhalten, wie einen Nutzernamen oder eine Nachrichtenzustelladresse und ein Passwort.The
Wurde die beantragte Portalbenutzung für einen Nutzer beim Nachrichtenzusteller freigeschaltet, so fordert die Einrichtung 300 des Nachrichtenzustellers automatisch die Generierung eines Schlüsselpaars für eine asymmetrische Verschlüsselung beim Trustcenter an. (Aktion 401)If the requested portal usage has been enabled for a user at the message originator, the
Das Trustcenter 200 generiert daraufhin ein Schlüsselpaar für den Nutzer ohne externe Vorgaben durch den Nutzer oder den Nachrichtenzusteller. (Aktion 402) Das Schlüsselpaar besteht aus einem privaten Schlüssel und einem öffentlichen Schlüssel, wobei mit dem öffentlichen Schlüssel verschlüsselte Daten nur mit dem privaten Schlüssel wieder entschlüsselt werde können.The
Das Trustcenter 200 generiert weiterhin eine eindeutige Schlüsselkennung (Schlüssel ID) für das generierte Schlüsselpaar. (Aktion 403)The
Das Trustcenter 200 übermittelt die Schlüsselkennung und den öffentlichen Schlüssel an die Einrichtung 300 des Nachrichtenzustellers, der die beiden Werte in den Nutzerstammdaten für den Nutzer im Hauptspeicher 314 speichert. (Aktion 404) Für den Nachrichtenzusteller ist damit die Initialisierung des Schlüsselpaars für den neuen Nutzer abgeschlossen.The
Das Trustcenter 200 verschlüsselt außerdem den privaten Schlüssel des Nutzers mit der Schlüsselkennung. (Aktion 405)The
Das Trustcenter 200 leiten einen Hashwert (oder Hash) von der Schlüsselkennung ab. (Aktion 406) Hierzu wird beispielsweise eine perfekte Hashfunktion verwendet, so dass sich für jede mögliche Schlüsselkennung ein anderer Hashwert ergibt.The
Das Trustcenter 200 speichert nun einen neuen Datensatz in dem externen Speicher 220. Der Datensatz umfasst den Hashwert der Schlüsselkennung, und diesem zugeordnet den öffentlichen Schlüssel und den verschlüsselten privaten Schlüssel. (Aktion 407)The
Schließlich löscht das Trustcenter 200 den Klartext des erzeugten privaten Schlüssels und den Klartext der erzeugten Schlüsselkennung. (Aktion 408)Finally, the
Damit ist die Initialisierung des Schlüsselpaars auch am Trustcenter 200 abgeschlossen.Thus, the initialization of the key pair is also completed at the
Will nun ein Absender dem Nutzer eine elektronische Nachricht mit verschlüsseltem Anhang übermitteln, so kann der Absender den öffentlichen Schlüssel des Nutzers von der Einrichtung 300 anfordern. Die Einrichtung 300 kann den öffentlichen Schlüssel des Nutzers beispielsweise anhand eines angegebenen Nutzernamens oder einer angegebenen Zustelladresse für den Nutzer aus den Nutzerstammdaten aus dem Hauptspeicher 314 auslesen und dem Absender zur Verfügung stellen. Der Absender kann dann eine Datei mit dem öffentlichen Schlüssel Nutzers verschlüsseln, an die Nachricht anhängen und die Nachricht mit Adressierung an den Nutzer an den Nachrichtenzusteller übermitteln.If a sender now wants to send the user an electronic message with an encrypted attachment, the sender can request the public key of the user from the
Alle elektronischen Nachrichten werde unabhängig von der Art der Einlieferung und ihren Inhalten innerhalb der Einrichtung 300 des Nachrichtenzustellers dem Empfängerpostfach zugeordnet und zugriffsgeschützt in Speicher 320 abgelegt.All electronic messages are assigned to the recipient mailbox regardless of the type of delivery and its contents within the
Wenn ein Nutzer Posteingänge abrufen möchte, kann er sich über einen Browser der Nutzervorrichtung 100 bei der Einrichtung 300 des Nachrichtenzustellers einloggen. (Aktion 501) Das Einloggen kann beispielsweise die Eingabe und Übermittlung eines Nutzernamens oder einer Nutzerzustelladresse und eines Passworts umfassen.If a user wishes to retrieve inboxes, he may log in to the
Die Einrichtung 300 führt daraufhin eine Authentifizierung durch und gibt nach erfolgreicher Authentifizierung den Zugriff auf ein Postfach des Nutzers frei. (Aktion 502) Die Authentifizierung kann auf Grundlage der in Hauptspeicher 314 gespeicherten Nutzerstammdaten erfolgen. Beispielsweise könnte die Einrichtung 300 überprüfen, ob in den Nutzerstammdaten ein Satz zu dem übermittelten Nutzernamen vorliegt und ob hierzu ein Passwort gespeichert ist, das dem übermittelten Passwort entspricht.The
Die Nutzervorrichtung 100 kann daraufhin bei der Einrichtung 300 den Posteingang abrufen. (Aktion 503)
Die Einrichtung 300 liest alle neuen Nachrichten für den Nutzer in Speicher 320 aus und übermittelt sie an die Nutzervorrichtung 100. (Aktion 504) Dort können die Nachrichten angezeigt werden.The
Anhänge könnten von der Einrichtung 300 direkt mit ausgelesen und übermittelt werden. Alternativ kann vorgesehen werden, dass der Nutzer die Nutzervorrichtung 100 veranlasst, die Anhänge der angezeigten Nachrichten je nach Bedarf separat abzurufen. (Aktion 505) In dem Fall liest die Einrichtung 300 erst dann die ausgewählten Anhänge aus dem externen Speicher 320 aus und übermittelt sie an die Nutzervorrichtung 100. (Aktion 506) Der Browser der Nutzervorrichtung 100 kann eine Repräsentation der Datei im Arbeitsspeicher 103 vorhalten.Attachments could be read out and communicated directly by
Die Nutzervorrichtung 100 überprüft nun, ob einer der erhaltenen Anhänge verschlüsselt ist. (Aktion 507) Ist dies nicht der Fall, kann der Inhalt des Anhangs unmittelbar ausgegeben werden, beispielsweise über einen Bildschirm, wenn es sich um Text und/oder Bilddaten handelt.The
Ist der Anhang verschlüsselt, so benötigt die Nutzervorrichtung 100 für die Entschlüsselung zunächst den privaten Schlüssel des Nutzers. Dieser ist in der Nutzervorrichtung 100 nicht gespeichert.If the attachment is encrypted, the
Die Nutzervorrichtung 100 generiert hierzu einen zufälligen Schlüssel für eine symmetrische Verschlüsselung, welcher als Einmalpasswort oder Transport-PIN (Persönliche Identifikationsnummer) eingesetzt wird. (Aktion 508) Das Einmalpasswort kann automatisch und ohne Einbindung des Nutzers generiert werden und im Arbeitsspeicher 103 vorgehalten werden. Die Nutzervorrichtung 100 verschlüsselt das Einmalpasswort mit einem öffentlichen Schlüssel des Trustcenters 200 und übermittelt ihn an die Einrichtung 300 des Nachrichtenzustellers. (Aktion 509) Der öffentliche Schlüssel kann beispielsweise dauerhaft im Hauptspeicher 104 der Nutzervorrichtung 100 gespeichert sein. Er kann aber beispielsweise auch im Hauptspeicher 314 des Nachrichtenzustellers gespeichert sein und der Nutzervorrichtung 100 über den Browser zur Verfügung gestellt werden. Dies könnte beispielsweise automatisch erfolgen, wenn nach einem Einloggen ein erster Anhang abgerufen wird. Die Nutzervorrichtung 100 könnte den öffentlichen Schlüssel des Trustcenters dann jeweils vorübergehend im Arbeitsspeicher 103 vorrätig halten, solange der Nutzer beim Nachrichtenzusteller eingeloggt ist.The
Die Übermittlung des Einmalpassworts an den Nachrichtenzusteller kann zusammen mit einer Aufforderung erfolgen, den privaten Schlüssel des Nutzers vom Trustcenter abzurufen, wobei die Aufforderung in Form eines vorgegebenen Parameterwerts. Alternativ kann die Übermittlung des Einmalpassworts die Aufforderung aber auch implizit erhalten, etwa weil die Übermittlung in einer bestimmten Nachricht oder zu einem bestimmten relativen Zeitpunkt in der Kommunikation zwischen Nutzervorrichtung 100 und Einrichtung 300 des Nachrichtenzustellers erfolgt.The transmission of the one-time password to the message courier may be accompanied by a request to retrieve the user's private key from the trust center, the request being in the form of a predetermined parameter value. Alternatively, the transmission of the one-time password can also receive the request implicitly, for example because the transmission takes place in a specific message or at a specific relative time in the communication between
In der Einrichtung 300 wird die dem Nutzer in den Nutzerstammdaten zugeordnete Schlüsselkennung aus dem Hauptspeicher 314 ausgelesen und zusammen mit dem verschlüsselten Einmalpasswort an das Trustcenter 200 weitergeleitet, um den privaten Schlüssel des Nutzers anzufordern. (Aktion 510)In the
Das Trustcenter 200 leitet einen Hashwert der Schlüsselkennung ab. (Aktion 511) Hierzu wird die gleiche Hashfunktion genutzt wie in Aktion 406 aus
Das Trustcenter 200 sucht in Speicher 220 einen verschlüsselten privaten Schlüssel des Nutzers, der dem Hashwert zugeordnet ist. (Aktion 512)The
Das Trustcenter 200 entschlüsselt den privaten Schlüssel des Nutzers mit der Schlüsselkennung. (Aktion 513)The
Das Trustcenter 200 liest außerdem den privaten Schlüssel des Trustcenters aus dem Hauptspeicher 214 aus und entschlüsselt das erhaltene Einmalpasswort mit dem privaten Schlüssel des Trustcenters 200. (Aktion 514)The
Das Trustcenter 200 kann nun den entschlüsselten privaten Schlüssel des Nutzers mit dem entschlüsselten Einmalpasswort verschlüsseln. (Aktion 515) Die erhaltene Schlüsselkennung und das entschlüsselte private Passwort des Nutzers können nun im Trustcenter 200 wieder gelöscht werden.The
Der verschlüsselte private Schlüssel wird vom Trustcenter 200 an die Einrichtung 300 des Nachrichtenzustellers übertragen. (Aktion 516)The encrypted private key is transmitted from the
Die Einrichtung 300 des Nachrichtenzustellers übermittelt den verschlüsselten privaten Schlüssel an den Browser der Nutzervorrichtung 100. (Aktion 517)The
Innerhalb des Browsers der Nutzervorrichtung 100 kann nun der verschlüsselte private Schlüssel des Nutzers mit Hilfe des im Arbeitsspeicher 103 gespeicherten Einmalpassworts entschlüsselt werden. (Aktion 518)Within the browser of the
Der private Schlüssel des Nutzers liegt nun im Klartext im Browser vor, und der im Arbeitsspeicher 103 gespeicherte verschlüsselte Anhang kann nun mit diesem privaten Schlüssel entschlüsselt werden. (Aktion 519)The private key of the user is now in plain text in the browser, and the encrypted attachment stored in the
Der Inhalt des entschlüsselten Anhangs kann dann je nach Benutzervorgabe im Hauptspeicher 104 abgespeichert und/oder über die Benutzerschnittstelle 106 ausgegeben werden, beispielsweise durch Anzeige auf einem Bildschirm.The content of the decrypted attachment can then be stored in the
Das Einmalpasswort, die verschlüsselten Anhänge und der private Schlüssel des Nutzers können in dem Arbeitsspeicher 103 gelöscht werden, wenn alle vorliegenden verschlüsselten Anhänge entschlüsselt wurden und/oder wenn sich der Nutzer über den Browser vom Nachrichtenzusteller abmeldet.The user's one-time password, encrypted attachments, and private key may be deleted in the
Abgesehen von der Anmeldung des Nutzers beim Nachrichtenzusteller könnte das Verfahren aus
Die Aktionen der Nutzervorrichtung 100 in
In beispielhaften Ausführungsformen der Erfindung ist die Schlüsselerzeugung im Trustcenter 200 somit anonym. Hier ist eine Zuordnung eines Schlüssels zu einem Nutzer nicht bekannt, und bei Verwendung einer Hashfunktion oder einer anderen kryptographischen Ableitung liegt selbst die Zuordnung einer Schlüsselkennung zu einem verschlüsselten privaten Schlüssel nur temporär vor. Eine lokale Rekonstruktion der Schlüsselkennung im Trustcenter 200 und damit der Entschlüsselung der privaten Schlüssel von Nutzern ist nicht möglich. Außerdem wird der private Schlüssel (in verschlüsselter Form) ausschließlich im Trustcenter 200 gespeichert. Es erfolgt also eine Trennung zwischen Schlüsselverwaltung und Datenspeicherung, so dass gewährleistet ist, dass keine Partei eigenständig Zugriff auf Schlüssel und Daten erhält. Für einen potentiellen Angreifer bedeutet dies, dass er zumindest in zwei der drei Parteien erfolgreich eindringen und auf die Daten zugreifen können muss, um eine verschlüsselte Nachricht entschlüsseln zu können.In exemplary embodiments of the invention, the key generation in the
Zusätzlich können sämtliche Daten sowohl in der Einrichtung 300 des Nachrichtenzustellers als auch im Trustcenter 200 durchgehend mit zusätzlichen Systemschlüsseln verschlüsselt gespeichert werden, so dass der Angreifer auch diese in seine Gewalt bringen müsste. Im Browser der Nutzervorrichtung 100 findet in bestimmten Ausführungsformen keinerlei Persistierung von Daten statt. Das bedeutet, dass ein potentieller Angreifer auch hier nur zur Laufzeit versuchen könnte auf Daten im Browser zuzugreifen. Für die eigentliche Übermittlung von Daten in dem System können noch beliebige andere Sicherheitsmaßnahmen vorgesehen werden, wie eine sichere Datenübertragung mittels des Transport Layer Security (TLS) Protokolls im Rahmen einer HyperText Transfer Protocol Secure (HTTPS) Anwendung.In addition, all data can be stored encrypted in the
Planerische und organisatorische Maßnahmen durch den Empfänger sind dabei nicht erforderlich, da alle erforderlichen Mittel über einen Browser zur Verfügung gestellt werden können.Planning and organizational measures by the recipient are not required, since all necessary funds can be made available via a browser.
Da der Abruf des privaten Schlüssels mittels eines Einmalpassworts als Transport-PIN erfolgt, das unabhängig von einem Nutzerpasswort generiert wird, ist der Ansatz auch unabhängig vom verwendeten Login-Verfahren. Das heißt, es müssen keine Maßnahmen vorgesehen werden, dass das Nutzerpasswort, das dem Nachrichtenzusteller letztendlich beim Login übermittelt wird, zunächst so abgewandelt wird, dass der Nachrichtenzusteller keine Rückschlüsse auf den Transport-PIN ziehen kann.Since the retrieval of the private key takes place by means of a one-time password as a transport PIN, the is generated independently of a user password, the approach is also independent of the login method used. This means that no measures have to be provided that the user password, which is finally transmitted to the message deliverer upon login, is initially modified so that the message delivery person can not draw any conclusions about the transport PIN.
Es versteht sich, dass die dargestellten und beschriebenen Verfahren im Rahmen der Erfindung in vielfältiger Weise abgewandelt werden können, sowohl durch Hinzufügen, Weglassen, Variieren als auch Vertauschen von einzelnen Aktionen. So könnten beispielsweise Aktionen 513 und 514 auch in umgekehrter Reihenfolge oder parallel zueinander durchgeführt werden. Des Weiteren könnte beispielsweise auf das Anwenden einer Hashfunktion auf die Schlüsselkennung in Aktionen 406 und 511 verzichtet werden. Die Schlüsselkennung könnte dann in Aktion 407 auch im Trustcenter im Klartext gespeichert werden, und in Aktion 512 im Klartext für die Suche nach dem privaten Schlüssel verwendet werden. Ferner kann das Verfahren nicht nur für Anhänge von elektronischen Nachrichten verwendet werden. Es könnte auch eingesetzt werden, wenn die Nachricht selber verschlüsselt werden soll.It is understood that the illustrated and described methods can be varied within the scope of the invention in many ways, both by adding, omitting, varying and interchanging individual actions. For example,
Der beispielhaft vorgestellte Ansatz könnte auch für andere Dienste als einen Nachrichtenzustelldienst genutzt werden. Eine zweite Einrichtung - ähnlich der Einrichtung 300 - könnte beispielsweise einem Datenbankanbieter gehören, der Daten für Nutzer im Netz speichert. In dem Fall könnte eine erste Einrichtung - beispielsweise wieder ein Trustcenter - optional statt eines asymmetrischen Schlüsselpaars für einen Nutzer auch einen symmetrischen Schlüssel erzeugen und als geheimen Schlüssel bereithalten. Dies kann im Wesentlichen auf die gleiche Weise erfolgen, wie in
Die dargestellten oder beschriebenen Verbindungen zwischen Komponenten sind als funktionale Verbindungen zu verstehen. Sie können direkt oder indirekt über mehrere andere Komponenten realisiert werden. Die geschilderten Aktionen können auf verschiedene Art und Weise implementiert werden; so ist eine Implementierung nicht nur in Software (durch Programmanweisungen), sondern auch nur in Hardware oder in einer Kombination von beidem denkbar. Jede der dargestellten Komponenten kann auch durch eine Mehrzahl von Komponenten gebildet werden. So könnte statt jedem Prozessors auch eine Mehrzahl an Prozessoren verwendet werden und anstelle jeder Speicherkomponente eine Mehrzahl an Speicherkomponenten. Mehrere Prozessoren und /oder mehrere Speicherkomponenten könnten auch auf mehrere Server einer jeweiligen Einrichtung verteilt sein.The illustrated or described compounds between components are to be understood as functional compounds. They can be implemented directly or indirectly via several other components. The described actions can be implemented in different ways; so an implementation is conceivable not only in software (by program instructions) but also only in hardware or in a combination of both. Each of the illustrated components may also be formed by a plurality of components. Thus, instead of each processor, a plurality of processors could be used and instead of each memory component a plurality of memory components. Multiple processors and / or multiple memory components could also be distributed among multiple servers of a particular device.
Es versteht sich, dass die beschriebenen Ausführungsformen lediglich Beispiele sind, die im Rahmen der Ansprüche auf vielfältige Weise modifiziert und/oder ergänzt werden können. Insbesondere kann jedes Merkmal, das für ein bestimmtes Ausführungsbeispiel beschrieben wurde, eigenständig oder in Kombination mit anderen Merkmalen in einem beliebigen anderen Ausführungsbeispiel genutzt werden. Jedes Merkmal, dass für ein Ausführungsbeispiel einer bestimmten Kategorie beschrieben wurde, kann auch in entsprechender Weise in einem Ausführungsbeispiel einer anderen Kategorie eingesetzt werden.It is understood that the embodiments described are merely examples that can be modified and / or supplemented in the context of the claims in many ways. In particular, each feature described for a particular embodiment may be used alone or in combination with other features in any other embodiment. Each feature described for one embodiment of a particular category may also be similarly employed in an embodiment of another category.
Claims (18)
- Method performed by an apparatus (100), wherein a first installation (200) is configured to provide a secret key of a user of the apparatus, and wherein a second installation (300) is configured to provide data for the user, the method comprising:- logging on to the second installation (300) with authentication of the user,- receiving encrypted data from the second installation (300),- creating a one-time password,- encrypting the one-time password by means of a public key of the first installation (200),- transmitting the encrypted one-time password to the second installation (300) and causing the second installation (300) to retrieve the secret key of the user from the first installation (200) by means of the encrypted one-time password and a key identification allocated to the user in the second installation (300),- receiving the secret key of the user, which was encrypted by the first installation (200) with the one-time password, from the second installation (300),- decrypting the secret key of the user by means of the one-time password and- decrypting the encrypted data by means of the secret key of the user.
- Method according to claim 1, wherein the one-time password is created automatically, when it is determined that encrypted data has been received from the second installation (300).
- Method according to claim 1 or 2, wherein the apparatus (100) is caused to perform the method- by program instructions stored in a local memory (102) of the apparatus (100) and executed by a processor (101) of the apparatus or- by program instructions received via a browser and executed by a processor (101) of the apparatus (100).
- Apparatus (100) comprising means (101, 102, 103) for performing the method according to one of claims 1 to 3.
- Apparatus according to claim 4, wherein the apparatus is a device (100) or a module (107) for a device (100).
- Program comprising:- program instructions, wherein the program instructions when executed by a processor (101) cause an apparatus (100) to perform the method according to one of Claims 1 to 3.
- Method performed by an apparatus (210) of a first installation (200), wherein a second installation (300) is configured to provide data for a user, the method comprising:- receiving a key identification and a one-time password, which was generated by an apparatus (100) of a user and encrypted with a public key of the first installation (200), from the second installation (300) which stores an allocation between users and key identifications,- reading a secret key of the user, which is encrypted with the key identification, based on the received key identification from a memory (220) of the first installation (200),- decrypting the encrypted secret key of the user by means of the key identification,- decrypting the encrypted one-time password by means of a private key of the first installation (200),- encrypting the secret key of the user with the one-time password and- transmitting the secret key of the user encrypted with the one-time password to the second installation (300) for passing on to the apparatus (100) of the user, in order to enable the user to decrypt encrypted data received from the second installation (300).
- Method according to claim 7, further comprising cryptographically deriving a value from the received key identification, wherein the secret key of the user encrypted with the key identification is stored in the memory (220) of the first installation (200) with an allocation to a value cryptographically derived from the key identification, and wherein reading the secret key of the user encrypted with the key identification is based on the cryptographically derived value of the received key identification.
- Method according to one of claims 7 and 8, wherein a stored, encrypted secret key of a user is generated beforehand by the apparatus (210) of the first installation (200) as follows:- receiving a request from the second installation (300) to generate a secret key for a user,- generating a secret key for a user independent of a user input,- generating a key identification for the secret key for the user,- encrypting the secret key for the user with the key identification and- storing the encrypted secret key in the memory (220) of the first installation (200) for retrieval by an apparatus (100) of the user via the second installation (300).
- Method according to claim 9, further comprising:- sending the key identification to the second installation (300) for storage of the key identification with an allocation to a user.
- Method according to one of claims 9 and 10, further comprising:- cryptographically deriving a value from the generated key identification,- storing the cryptographically derived value in the memory (220) of the first installation (200) with an allocation to the secret key encrypted with the key identification and- deleting the key identification in the first installation (200).
- Method according to any one of claims 9 to 11, wherein the secret key- is a private key of a key pair for asymmetric encryption or- a key for symmetric encryption.
- Method according to any one of claims 9 to 12, wherein the secret key is a private key of a key pair for asymmetric encryption, further comprising generating a public key for the user and- storing the public key in the first installation (200) only, or- transmitting the public key to the second installation (300) for storage in the second installation (300) only, or- storing the public key in the first installation (200) and transmitting the public key to the second installation (300) for storage in the second installation (300).
- Method according to any one of claims 9 to 13, wherein the encrypted data- was encrypted by a third party apparatus and made available to the second installation (300), or- was encrypted by a user apparatus and made available to the second installation.
- Apparatus (210) comprising means (211, 212) for performing the method according to any one of claims 7 to 14.
- Apparatus according to claim 15, wherein the apparatus is a server (210) or a module (217) for a server (210).
- Program comprising:- program instructions, wherein the program instructions when executed by a processor (211) cause an apparatus (210) to perform the method according to any one of claims 7 to 14.
- System comprising a first installation (200) having an apparatus (210) according to claim 15 or 16 and a memory (220) for storing a plurality of secret keys of users encrypted with key identifications, as well as the second installation (300).
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102013108714.0A DE102013108714B3 (en) | 2013-08-12 | 2013-08-12 | Support decryption of encrypted data |
| PCT/EP2014/065613 WO2015022150A1 (en) | 2013-08-12 | 2014-07-21 | Support for decryption of encrypted data |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP3033855A1 EP3033855A1 (en) | 2016-06-22 |
| EP3033855B1 true EP3033855B1 (en) | 2016-11-02 |
Family
ID=51212843
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP14741870.1A Active EP3033855B1 (en) | 2013-08-12 | 2014-07-21 | Support for decryption of encrypted data |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US12192367B2 (en) |
| EP (1) | EP3033855B1 (en) |
| CN (1) | CN105284072B (en) |
| DE (1) | DE102013108714B3 (en) |
| WO (1) | WO2015022150A1 (en) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| BR112017002747A2 (en) | 2014-08-29 | 2018-01-30 | Visa Int Service Ass | computer implemented method, and, computer system. |
| WO2016107622A1 (en) * | 2014-12-31 | 2016-07-07 | 1&1 Internet Ag | Method for the generation and configuration of keys for a second terminal |
| CN107210914B (en) * | 2015-01-27 | 2020-11-03 | 维萨国际服务协会 | Method for secure credential provisioning |
| US11257085B1 (en) | 2015-12-11 | 2022-02-22 | Wells Fargo Bank, N.A | Systems and methods for authentication device-assisted transactions |
| CN106022056B (en) * | 2016-05-27 | 2019-03-15 | Oppo广东移动通信有限公司 | Fingerprint information processing method and user terminal |
| CN106022060B (en) * | 2016-05-27 | 2019-04-26 | Oppo广东移动通信有限公司 | Fingerprint unlocking control method and equipment |
| US10158628B2 (en) | 2016-06-08 | 2018-12-18 | Bank Of America Corporation | Preventing unauthorized access to secured information systems based on contextual login information |
| US10158629B2 (en) | 2016-06-20 | 2018-12-18 | Bank Of America Corporation | Preventing unauthorized access to secured information systems using multi-device authentication techniques |
| US10642987B2 (en) * | 2017-01-19 | 2020-05-05 | Ebay Inc. | Cryptography based fraud tracking |
| EP3439229A1 (en) * | 2017-08-02 | 2019-02-06 | Siemens Aktiengesellschaft | Method and devices for achieving a safety function, particularly in the vicinity of a device control and/or system control |
| US11349659B2 (en) | 2017-08-29 | 2022-05-31 | Amazon Technologies, Inc. | Transmitting an encrypted communication to a user in a second secure communication network |
| US11095662B2 (en) | 2017-08-29 | 2021-08-17 | Amazon Technologies, Inc. | Federated messaging |
| US11368442B2 (en) * | 2017-08-29 | 2022-06-21 | Amazon Technologies, Inc. | Receiving an encrypted communication from a user in a second secure communication network |
| CN109064596B (en) * | 2018-07-25 | 2021-07-13 | 云丁智能科技(北京)有限公司 | Password management method and device and electronic equipment |
| US12081651B2 (en) | 2018-12-06 | 2024-09-03 | Schneider Electric Systems Usa, Inc. | One-time pad encryption for industrial wireless instruments |
| US11750391B2 (en) | 2020-12-20 | 2023-09-05 | Secret Double Octopus Ltd. | System and method for performing a secure online and offline login process |
| US11663318B2 (en) * | 2021-01-26 | 2023-05-30 | Secret Double Octopus Ltd. | Decentralized password vault |
| CN114629643B (en) * | 2022-03-25 | 2024-06-14 | 山东云海国创云计算装备产业创新中心有限公司 | Key processing method, device and medium |
Family Cites Families (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4924515A (en) * | 1988-08-29 | 1990-05-08 | International Business Machines Coprporation | Secure management of keys using extended control vectors |
| US6160891A (en) * | 1997-10-20 | 2000-12-12 | Sun Microsystems, Inc. | Methods and apparatus for recovering keys |
| US6092201A (en) * | 1997-10-24 | 2000-07-18 | Entrust Technologies | Method and apparatus for extending secure communication operations via a shared list |
| US7543325B2 (en) * | 1999-03-30 | 2009-06-02 | Tivo Inc. | System for remotely controlling client recording and storage behavior |
| US7711122B2 (en) * | 2001-03-09 | 2010-05-04 | Arcot Systems, Inc. | Method and apparatus for cryptographic key storage wherein key servers are authenticated by possession and secure distribution of stored keys |
| US7373330B1 (en) * | 2003-07-08 | 2008-05-13 | Copyright Clearance Center, Inc. | Method and apparatus for tracking and controlling e-mail forwarding of encrypted documents |
| US7743409B2 (en) * | 2005-07-08 | 2010-06-22 | Sandisk Corporation | Methods used in a mass storage device with automated credentials loading |
| US7822209B2 (en) * | 2006-06-06 | 2010-10-26 | Red Hat, Inc. | Methods and systems for key recovery for a token |
| US7899186B2 (en) * | 2007-09-20 | 2011-03-01 | Seagate Technology Llc | Key recovery in encrypting storage devices |
| US8374354B2 (en) * | 2007-09-27 | 2013-02-12 | Verizon Data Services Llc | System and method to pass a private encryption key |
| JP2009193125A (en) * | 2008-02-12 | 2009-08-27 | Hitachi Ltd | Storage system, computer system and method for managing encryption key |
| US8397084B2 (en) * | 2008-06-12 | 2013-03-12 | Microsoft Corporation | Single instance storage of encrypted data |
| US20100037050A1 (en) | 2008-08-06 | 2010-02-11 | Cuneyt Karul | Method and apparatus for an encrypted message exchange |
| US8213620B1 (en) * | 2008-11-17 | 2012-07-03 | Netapp, Inc. | Method for managing cryptographic information |
| US8327157B2 (en) * | 2010-02-15 | 2012-12-04 | Vistech LLC | Secure encrypted email server |
| US9137017B2 (en) * | 2010-05-28 | 2015-09-15 | Red Hat, Inc. | Key recovery mechanism |
| EP2665052B1 (en) * | 2011-01-13 | 2018-08-15 | Mitsubishi Electric Corporation | Data processing device and data archiving device |
| AU2013200916B2 (en) * | 2012-02-20 | 2014-09-11 | Kl Data Security Pty Ltd | Cryptographic Method and System |
| US8458494B1 (en) * | 2012-03-26 | 2013-06-04 | Symantec Corporation | Systems and methods for secure third-party data storage |
| US8966287B2 (en) * | 2012-03-26 | 2015-02-24 | Symantec Corporation | Systems and methods for secure third-party data storage |
| US9106721B2 (en) * | 2012-10-02 | 2015-08-11 | Nextbit Systems | Application state synchronization across multiple devices |
| DE102012222995B3 (en) | 2012-12-12 | 2013-10-02 | Deutsche Post Ag | Method for the secure transmission of a digital message |
| US9705674B2 (en) * | 2013-02-12 | 2017-07-11 | Amazon Technologies, Inc. | Federated key management |
| CN103428001B (en) * | 2013-09-05 | 2016-08-17 | 中国科学院信息工程研究所 | A kind of implicit expression strengthens convenient WEB identity authentication method |
| WO2015106248A1 (en) * | 2014-01-13 | 2015-07-16 | Visa International Service Association | Efficient methods for protecting identity in authenticated transmissions |
-
2013
- 2013-08-12 DE DE102013108714.0A patent/DE102013108714B3/en not_active Expired - Fee Related
-
2014
- 2014-07-21 EP EP14741870.1A patent/EP3033855B1/en active Active
- 2014-07-21 CN CN201480029931.2A patent/CN105284072B/en not_active Expired - Fee Related
- 2014-07-21 WO PCT/EP2014/065613 patent/WO2015022150A1/en not_active Ceased
-
2015
- 2015-10-30 US US14/927,582 patent/US12192367B2/en active Active
Non-Patent Citations (1)
| Title |
|---|
| None * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN105284072A (en) | 2016-01-27 |
| DE102013108714B3 (en) | 2014-08-21 |
| EP3033855A1 (en) | 2016-06-22 |
| WO2015022150A1 (en) | 2015-02-19 |
| US20160149705A1 (en) | 2016-05-26 |
| CN105284072B (en) | 2017-03-22 |
| US12192367B2 (en) | 2025-01-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3033855B1 (en) | Support for decryption of encrypted data | |
| EP3031226B1 (en) | Supporting the use of a secret key | |
| EP3732605B1 (en) | Secure storage of and access to files through a web application | |
| EP3121795B9 (en) | Establishment of a communication connection with a user device over an access control device | |
| DE69917803T2 (en) | MESSAGE IDENTIFICATION WITH CONFIDENTIALITY, INTEGRITY AND ORIGINAL CERTIFICATION | |
| DE102014100173B4 (en) | Method for the protected transmission of a data object | |
| DE202006020965U1 (en) | Communication system for providing the delivery of an e-mail message | |
| EP3182318B1 (en) | Signature generation by means of a security token | |
| DE112018000779T5 (en) | Token deployment for data | |
| EP3672142B1 (en) | Method and system for securely transferring a data set | |
| EP2409255A1 (en) | Method for creating asymmetrical cryptographic key pairs | |
| DE60309216T2 (en) | METHOD AND DEVICES FOR PROVIDING DATA ACCESS | |
| DE10124427A1 (en) | Communication device authentication method compares hash values of transmission and reception devices provided using hash value algorithm | |
| EP2932677B1 (en) | Method for secure transmission of a digital message | |
| EP3939226B1 (en) | Method for authenticating a computer system | |
| WO2015074745A1 (en) | Method, apparatuses and system for online data backup | |
| DE102012106177A1 (en) | Safe transmission method | |
| DE102012220774B4 (en) | Procedures for Conducting Transactions | |
| DE102018005284A1 (en) | Chip personalization of an embedded system by a third party | |
| DE102012106081A1 (en) | Method for encrypted and anonymous storing and managing personal data and codes on separate systems, involves authorizing third parties by encrypted and transaction-referred transferred authorization request by user for transactions | |
| EP4280139A1 (en) | Communication system, method and computer program product for providing documents from one or more senders to at least one recipient | |
| WO2020144123A1 (en) | Method and system for information transmission | |
| DE102022000857B3 (en) | Procedure for the secure identification of a person by a verification authority | |
| CH718131A1 (en) | Process and system for the secure transfer of data sets using icons. | |
| DE102015001817B4 (en) | Methods, devices and system for online data backup |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20150828 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| AX | Request for extension of the european patent |
Extension state: BA ME |
|
| GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
| DAX | Request for extension of the european patent (deleted) | ||
| INTG | Intention to grant announced |
Effective date: 20160708 |
|
| GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D Free format text: NOT ENGLISH |
|
| REG | Reference to a national code |
Ref country code: AT Ref legal event code: REF Ref document number: 842788 Country of ref document: AT Kind code of ref document: T Effective date: 20161115 Ref country code: CH Ref legal event code: EP |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D Free format text: LANGUAGE OF EP DOCUMENT: GERMAN |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 502014001863 Country of ref document: DE |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: NL Ref legal event code: MP Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170203 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170202 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170302 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170302 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: RS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 4 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 502014001863 Country of ref document: DE |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20170202 Ref country code: SM Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| 26N | No opposition filed |
Effective date: 20170803 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: IT Payment date: 20170731 Year of fee payment: 4 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
| REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170731 Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170721 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170731 |
|
| REG | Reference to a national code |
Ref country code: BE Ref legal event code: MM Effective date: 20170731 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170721 |
|
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: PLFP Year of fee payment: 5 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20170731 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20140721 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20180721 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20161102 |
|
| REG | Reference to a national code |
Ref country code: AT Ref legal event code: MM01 Ref document number: 842788 Country of ref document: AT Kind code of ref document: T Effective date: 20190721 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: AT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20190721 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 20220721 Year of fee payment: 9 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20220720 Year of fee payment: 9 |
|
| P01 | Opt-out of the competence of the unified patent court (upc) registered |
Effective date: 20230517 |
|
| GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 20230721 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20230721 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20230731 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20250722 Year of fee payment: 12 |