DISTRIBUTED PROCESSING OF A PRODUCT ON THE BASIS OF CENTRALLY ENCRYPTED STORED DATA

20170374041 · 2017-12-28

    Inventors

    Cpc classification

    International classification

    Abstract

    The invention provides a system for encryptedly storing product data of a product having an attached tag centrally on a product data server, and reading out the centrally stored product data by production stations which are to process the product. The product data are encrypted with a document key which in turn is encrypted with a public key of the tag. The tag contains access information for the centrally stored product data. When a production station accesses product data on the product data server, the tag carries out a re-encryption of the document key from the key system of the tag to that of the accessing production station.

    Claims

    1-14. (canceled)

    15. A system for processing, in particular storing and reading out, product data, comprising: a product data server on which a product data file is stored or storable, in which are comprised: the product data in a form encrypted with a document key, and the document key in a form encrypted with a public key of an asymmetric key pair; a product; a tag, attached to the product, in which access information is stored or storable for the product data file on the product data server; at least one production station or several production stations which are devised for processing the product according to the product data; wherein an asymmetric key pair is stored in the tag, comprising a private tag key and a public tag key, wherein the private tag key is inaccessible to the production station; an asymmetric key pair is stored in the production station comprising a private station key and a public station key; an encryption device is devised in the tag; the document key is encrypted in the product data file on the product data server with the public tag key.

    16. The system according to claim 15, wherein the encryption device in the tag is devised for: upon a storing of product data encrypted with the document key by the production station on the product data server: supplying the public tag key to the production station for encrypting the document key; upon a reading out of the product data file from the product server to the production station while employing the access information from the tag: re-encrypting the encrypted document key from the public tag key to the public station key and supplying the hereby re-encrypted document key to the production station.

    17. A method, in a system according to claim 15, for creating a product data file for storing product data by the production station on the product data server, comprising the steps: supplying product data at the production station; by the production station, generating or supplying a document key; by the production station, encrypting at least the product data with the document key into encrypted product data; by the production station, reading out the public tag key from the tag; by the production station, encrypting the document key with the tag key into an encrypted document key; by the production station, generating a product data file comprising the encrypted product data and the encrypted document key.

    18. The method according to claim 17, further comprising: upon the reading out of the public tag key from the tag to the production station, mutual authentication between the tag and the production station.

    19. The method, in a system according to claim 15, for storing a product data file created by a method by supplying product data at the production station comprising the steps: supplying product data at the production station; by the production station, generating or supplying a document key; by the production station, encrypting at least the product data with the document key into encrypted product data; by the production station, reading out the public tag key from the tag; by the production station, encrypting the document key with the tag key into an encrypted document key; by the production station, generating a product data file comprising the encrypted product data and the encrypted document key; wherein the method for creating a product data file for storing product data by the production station on the product data server, further comprising the steps: by the production station, sending the product data file to the product data server; at the product data server, storing the product data file; by the product data server, generating access information for the stored product data file; by the product data server, sending the access information to the production station; by the production station, sending the access information to the tag; at the tag: storing the access information.

    20. The method according to claim 19, further comprising: upon the sending of the access information from the product data server to the production station, mutual authentication between the product data server and the production station.

    21. The method according to claim 19, wherein upon the sending of the access information from the production station to the tag, a station signature is generated by means of the private station key and sent to the tag with the access information, and the station signature is stored in the tag.

    22. The method according to claim 21, wherein a tag signature is generated in the tag, in particular is derived from the station signature, and is stored in the tag.

    23. The method, in a system according to claim 15, for reading out encrypted product data by the production station, comprising the steps: by the production station, reading out the access information from the tag; by the production station, while employing the access information read out from the tag, reading out the product data file, comprising the encrypted product data and the encrypted document key, from the product data server.

    24. The method according to claim 23, further comprising the steps: upon the reading out of the access information from the tag: establishing a secure communication channel between the tag and the production station, or/and mutual authentication between the tag and the production station; or/and after the reading out of the access information from the tag: by the production station, authenticating the access information, in particular by verifying a station signature added to the access information and generated with a private station key by means of the corresponding public station key or the tag signature generated with a private tag key by means of the corresponding public tag key.

    25. A method, in a system according to claim 15, for encrypting encrypted product data by the production station, including for reading out encrypted product data by the production station the steps by the production station, reading out the access information from the tag, and by the production station, while employing the access information read out from the tag, reading out the product data file, comprising the encrypted product data and the encrypted document key, from the product data server. the product data read out, wherein the comprises the steps: by the production station, transferring the encrypted document key and its own public station key to the tag; by the tag, re-encrypting the document key from the public tag key to the public station key into a re-encrypted document key; by the tag, sending the re-encrypted document key to the production station; by the production station, decrypting the re-encrypted document key with the production station's own private key; by the production station, decrypting the encrypted product data with the document key into plaintext product data.

    26. The method according to claim 18, wherein the authentication of the production station vis-à-vis the product data server, which is effected upon the mutual authentication, is carried out by means of an, in particular electively static or dynamic, authentication token sent from the tag to the production station, and electively moreover generated by the tag.

    27. The method according to claim 24, wherein the authentication of the production station vis-à-vis the product data server, which is effected upon the mutual authentication, is carried out by means of an, in particular electively static or dynamic, authentication token sent from the tag to the production station, and electively moreover generated by the tag.

    28. The method according to claim 17, wherein at least some public keys, preferably all public keys, are verifiable by means of the tag, in particular by means of a certificate, stored in the tag, for the respective public key.

    29. A tag, attached to or attachable to a product, devised to enable a production station to process, in particular store and read out, encrypted product data from a product data server to the production station; wherein on the product data server a product data file is stored or storable, in which are comprised: product data in a form encrypted with a document key, and the document key in a form encrypted with a public key of an asymmetric key pair; wherein in the tag access information is stored or storable for the product data file on the product data server; wherein an asymmetric key pair is stored in the tag, comprising a private tag key and a public tag key, wherein the private tag key is inaccessible to the production station; the document key in the product data file on the product data server is encrypted with the public tag key, as an encrypted document key; In the tag an encryption device is provided which is devised for: upon a storing of product data, encrypted with the document key by the production station on the product data server: supplying the public tag key to the production station for encrypting the document key; upon a reading out of the product data file from the product server to the production station while employing the access information from the tag, re-encrypting the encrypted document key from the public tag key to the public station key and supplying the hereby re-encrypted document key to the production station.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0030] Hereinafter, the invention will be explained more closely on the basis of exemplary embodiments and with reference to the drawings, in which are shown:

    [0031] FIG. 1 a system for the illustration of the invention;

    [0032] FIG. 2 a protocol diagram about the storing of product data from a production station on the product data server, according to a basic embodiment form of the invention;

    [0033] FIG. 3 a protocol diagram about the reading out of product data from a product data server to a production station, according to a basic embodiment form of the invention;

    [0034] FIG. 4 a detailed protocol diagram about the storing of product data from a production station on the product data server, according to a more complex embodiment of the invention;

    [0035] FIG. 5 a detailed protocol diagram about the reading out of product data from the product data server to a production station, according to a more complex embodiment of the invention.

    DETAILED DESCRIPTION OF EMBODIMENT EXAMPLES

    [0036] FIG. 1 shows, for the illustration of the invention, a system for the reading out and storing of product data PD.

    [0037] The system comprises a product data server or cloud server CS on which product data are stored in a product data file PDD in the cloud.

    [0038] The system further comprises several, here three by way of example, production stations PS1, PS2, PS3 at which a product P is to be processed. For processing, the product P is handed on from station to station, in the example from FIG. 1 in the order PS1, PS2, PS3, . . . . Each production station PSi carries out processing steps in the product P and in doing so builds on working steps which were carried out by preceding production stations PSj, j<i. Each of the production stations PS1, PS2, PS3, comprises a computer system. For the purposes of the invention, the production station PSi is equated with the computer system comprised therein. Functionalities of the production stations PSi provided for the processing of the product P are unimportant for the invention. What kind of product P is, is not relevant for the invention. The individual production stations PSi read out product data Doc from the product data server CS and as a result of this ascertain which production steps are to be carried out. Every production station PSi logs the production steps carried out by it by changes in the product data Doc and stores the changed product data Doc on the product data server CS for subsequent production stations. The product data Doc are stored in encrypted form Doc* in a product data file PDD on the product data server CS as described in detail further below.

    [0039] An asymmetric key pair comprising a private station key and a public station key KP is respectively stored in the production stations PS1, 2, 3. The production stations PSi further comprises encryption devices.

    [0040] In the product P, a contactless tag T is attached, in which access information URL for the product data file PDD on the product data server (cloud server) CS is stored. Further, an asymmetric key pair is stored in the tag T, comprising a private tag key PrivKeyTag and a public tag key KT=PubKeyTag. The private tag key is inaccessible for the production stations PSi, i=1, 2, 3(, . . . ). Further, an encryption device is devised in the tag T.

    [0041] The product data Doc in the product data file PDD on the product data (cloud) server CS are encrypted with a document key KDoc, into D. The document key KDoc in turn is encrypted with the public tag key KT and stored as an encrypted document key K*Doc in the product data file PDD.

    [0042] FIG. 2 shows a protocol diagram about the storing of product data Doc of a production station PSi in the product data server CS, according to a basic embodiment form of the invention. First, the product data Doc are supplied at the production station PSi. A document key KDoc is either generated by the production station PSi itself or supplied in another way. The production station PSi encrypts the product data Doc with the document key KDoc into D=enc (KDoc, Doc). Further, the production station PSi reads out the public tag key KT from the tag T. This reading out can be effected before or after the encrypting of the product data Doc, the order is irrelevant. The production station PSi encrypts the document key KDoc with the tag key KT into K*Doc=enc (KT, KDoc). Further, the production station PSi generates a product data file PDD comprising the product data D encrypted with the document key KDoc, and the document key K*Doc encrypted with the public tag key KT. The production station PSi sends the product data file PDD to the product data server CS. The product data file PDD is stored on the product data server CS. Further, access information (i.e. a link) URL to the stored product data file PDD is generated by the product data server CS and sent to the production station PSi. The production station PSi sends the access information URL to the tag T, which stores the access information URL. Therefore, the product data Doc are stored encryptedly, as D, on the product data server CS, and access information URL to the product data file PDD (containing Doc) is stored in the tag T. The relevant keys for again reading out or decrypting the product data Doc are stored in the tag T.

    [0043] FIG. 3 shows a protocol diagram about the reading out of product data Doc from a product data server CS to a production station PSi, according to a basic embodiment form of the invention.

    [0044] The production station PSi reads out the access information URL from the tag T and reads, while employing the access information URL read out from the tag T, the product data file PDD, comprising the encrypted product data D=enc(KDoc,Doc) and the encrypted document key K*Doc, from the product data server CS. The production station PSi transfers the encrypted document key K*Doc and its own public station key KP to the tag T. The tag T re-encrypts the document key K*Doc from the public tag key KT to the public station key KP. For re-encrypting, the tag T decrypts the encrypted document key K*Doc with its own private tag key and newly encrypts the document key KDoc, obtained in plain text as a result of this, with public station key KP obtained from the production station PSi into a ciphertext K**Doc=enc(KP,KDoc). Thereafter, the tag T sends the re-encrypted document key K**Doc to the production station PSi. The production station PSi decrypts the re-encrypted document key K**Doc with the production station's PSi own private key. With the document key KDoc obtained in plain text as a result of this, the production station PSi decrypts the product data D back to Doc.

    [0045] FIG. 4 shows a detailed protocol diagram about the storing of product data Doc from a production station PS1 on the product data server CS, according to a more complex embodiment of the invention. The product data Doc are supplied in a file. As opposed to the embodiment of FIG. 2, authentication steps are provided at several locations of the process flow as they are expedient in the practical implementation of the method. More precisely, prior to transferring the public tag key KT to the production station PS1, tag T and production station PS1 establish a secure communication channel. First, the production station PS1 (User1) authenticates vis-à-vis the tag (secure tag) T as indicated by the pseudo command code “Authenticate”. Thereafter the tag T authenticates vis-à-vis the production station PS1 likewise with “Authenticate”. Within the scope of the authentication, the public tag key KT can have been transferred to the production station PS1. If not, the public tag key KT=PubKey-Tag will now be transferred to the production station PS1. Further, the tag T transfers a certificate Cert-Tag to the production station PS1. The production station verifies the public tag key KT with the certificate Cert-Tag and the public key, known to the product station PSi, of the certifying body (CA, Certification Authority). Further, the production station PS1 generates, with its own private key PrivKey-User1, a signature SD via the product data Doc, according to SD=sign (PrivKey-User1, Doc). Thereupon the production station PS1 (=User1) generates a document key KDoc, forms a concatenation from the product data Doc, the signature, the own public key KP=PubKey-User1 and an own certificate Cert-User1, and encrypts the concatenation with the document key KDoc into a ciphertext D=enc(KDoc, Doc/SD/PubKey-User1/Cert-User1). The exact point in time of generating the document key KDoc is not decisive and can lie in particular before or after the signature generation SD. The production station PS1 encrypts the document key KDoc with the public tag key KT=PubKey-Tag into a ciphertext K*Doc. Next, the production station PS1 requests an authentication token from the tag T for authenticating vis-à-vis the product data server CS and is supplied the authentication token by the tag T. By means of the authentication token, the production station PS1 authenticates vis-à-vis the product data server CS. In the same communication session, the production station PS1 generates a product data file PDD which comprises the ciphertexts D and K*Doc, thus the encrypted product data Doc and the encrypted document key KDoc and a header with further information about the management of the product data file PDD, and sends them to the product data server CS. The product data file PDD is stored on the product data server CS. The product data server CS generates access information URL to the product data file PDD and sends back them to the production station PS1. The production station PS1 signs the access information URL and a tag identifier Tag-ID of tag T with its own private station key into a signature SU=sign(PrivKey-User1, URL/Tag-ID) and sends the access information URL, the signature SU, the certificate Cert-User1 and its own public station key KP to the tag T, which stores the sent data URL, SU, KP, Cert-User1 in the tag T. Instead of the signature SU, alternatively a tag signature can be stored in the tag, in particular a tag signature derived from the signature SU, so that the subsequent production stations, which read out the product data, do not have to trust the previous product station, but only the tag. The tag T now contains access information URL to encrypted product data PD on the product data server CS, as well as a signature SU and a public product station key KP, which enable a subsequent production station PSi to check whether an authorized production station has previously stored data in the tag T and in the product data server CS.

    [0046] FIG. 5 shows a detailed protocol diagram about the reading out of product data PD by the product data server CS to another, subsequent production station PS2=User2 than that PS1 from FIG. 4, according to a more complex embodiment of the invention, after a production station PS1 has carried out writing product data, e.g. according to FIG. 4. As opposed to the embodiment of FIG. 3, authentication steps are provided at several locations of the process flow as they are expedient in the practical implementation of the method. More precisely, prior to the transferring of the access information URL and the public tag key KT to the production station PS2, tag T and production station PS2 establish a secure communication channel. First, the production station PS2 (User2) authenticates vis-à-vis the tag (secure tag) T as indicated by the pseudo command code “Authenticate”. Thereafter the tag T authenticates vis-à-vis the production station PS2, likewise with “Authenticate”. The tag replies with the signed access information URL of the product data file PDD on the product data server (cloud server) CS. The production station PS2 verifies the correctness of the access information URL with the signature SU, the public key to KP=PubKey1 and the certificate Cert-User1, which the production station PS2 reads out from the tag T, and which the preceding production station PS1 has previously written to the tag T. Next, the production station PS2 requests an authentication token from the tag T for authenticating vis-à-vis the product data server CS and is supplied the authentication token by the tag T. By means of the authentication token, the production station PS2 authenticates vis-à-vis the product data server CS. In the same communication session, the production station PS2 sends a data read-out command “Get Data URL” to the product data server CS, with the request to send the data deposited in the memory location URL, thus the product data file PDD, to the production station PS2, and downloads, as a result of this, the product data file PDD (Header/D/K*Doc) (D=enc(KDoc, Doc/SD/PubKey-User1/Cert-User1)) from the product data server CS to the production station PS2. The production station PS2 extracts the document key K*Doc from the product data file PDD encrypted with the public tag key KT and sends it to the tag T, together with the own public station key KP=PubKey-User2 of the production station PS2 and an own certificate Cert-User2, created with the own private station key of the production station PS2. The tag T checks the public station key KP=PubKey-User2 of the production station PS2 with the certificate Cert-User2 by the command “Verify”. Thereafter the tag T decrypts the encrypted document key K*Doc with the tag-own private tag key PrivKeyTag (KDoc=dec (PrivKeyTag, K*Doc)) and newly encrypts it with the public station key KP=PubKey-User2 of the production station PS2 (K**Doc=enc (PubKeyUser2,KDoc)). The tag sends the newly encrypted document key K**Doc to the production station PS2 (User2). The public key KP=PubKeyUser1, the certificate Cert-User1 and associated signatures were already read out together with the access information URL from the tag T or are contained in the product data file PDD. With its own private station key PrivKey-User2, the production station PS2 (User2) decrypts the newly encrypted document key K**Doc into the document key KDoc in plain text, and with this the product data Doc. With the attached certificate Cert-User1 of the document author, the production station PS2 verifies the correctness of the public station key KP=PubKey-User1 of the document author. With the signature SD of the document author and the public station key KP=PubKey-User1, the production station PS2 verifies the correctness of the document of the product data Doc.

    [0047] The second production station PS2 thus now has the decrypted and verified product data Doc in plain text available, with all changes the preceding production station PS1 has performed in the product data Doc. In that context, the tag T has the function of itself supplying a public key KT=PubKey-Tag for the permanent encrypted storage of product data PD on the product data server CS. The tag T further has the function of carrying out upon request of a production station PSi a re-encryption of the public tag key KT=PubKey-Tag to the public station key KP=PubKey-Useri, i=1, 2, 3, . . . so that the requesting production station PSi, i=1, 2, 3, . . . gets the product data Doc in plain text.

    [0048] In FIG. 4, 5 the method was described with two different, preferably consecutive production stations PS1, PS2. The method runs analogously when a single production station PSi accesses the product data file PDD on the product data server CS twice in a row.

    [0049] The order of the steps can be divergent from the described order. However, security-critical operations, for example transfer or decryption of sensitive data, may be effected only after successful authentication.

    [0050] An authentication of the production station PSi (user) vis-à-vis the tag is carried out so that no unauthorized attacker obtains the product data Doc to tamper with them or spy them out. An authentication of the tag T vis-à-vis the production station PS is carried out so that a tag T still tampered with in some way or a tag T which was supplied by an attacker, is not further employed. The steps establishment of a secure communication channel and authentication can be more or less separated from each other, or be realized in a single method as well, e.g. in a protocol for the authentication with key derivation.

    [0051] The mutual authentication between tag T and user PS can be effected, for example, by means of asymmetric cryptographic methods. Each of the two partners possesses a key pair of a public and a private key, the public key is certified by a generally accepted Certification Authority (CA) and is thereby verifiable by the other partner. Certificate chains can be also employed. The authentication is then effected by challenge/responses methods.

    [0052] Alternatively, more complex certification structures can also be used in scenarios having several companies: Each of the companies operates its own CA for certifying its users PS, besides which a tag issuer can also operate own CAs for certifying its tags T. By cross-certifying the CAs, users PS of several companies can thus work with tags T which are supplied by a tag issuer.

    [0053] The mutual authentication and the thereto coupled establishing of a secure channel, over which then further messages can be arbitrarily exchanged, is a widespread method, in the field of smart cards (Secure Messaging) as well as on the Internet (e.g. SSL/TLS, IPsec). The secure channel then guarantees the authenticity, integrity and confidentiality of the subsequently exchanged messages.

    [0054] Alternatively, a secure communication channel can be waived here, when instead the necessary security is guaranteed via special embodiment of the exchanged messages. How this can be implemented is shown in other patent applications filed or to be filed by the same applicant. Alternatively, a secure channel can be established which ensures only the authenticity and integrity of the exchanged messages, the confidentiality could be implemented via the special embodiment of the exchanged messages.

    [0055] In the above-described procedures, the document with the product data Doc is signed for ensuring the authenticity and integrity before the storing by the user/production station PSi. Signature, public key and certificate of the user are encrypted together with the signed document and are stored on the product data server/cloud server CS. This has the consequence that when reading the data set with the product data Doc by another user/production station PSi, the data set first has to be decrypted before the signature can be checked. Only an authorized user/production station PSi is thus able to check the correctness of the document and also to ascertain the identity of the author.

    [0056] In an alternative variant, the signature could be computed via the encrypted document D. Then the correctness of the data set D stored on the product data server/cloud server CS could be checked without having to decrypt it. The identity of the author would then be ascertainable also for non-authorized users. In a further variant, the signature can be computed by the tag T. Indeed, the correctness of the document Doc can then be verified, the author, however, remains anonymous. It would be ensured only that the author was an authorized user.

    [0057] Different key (systems) or the same key can be employed for the authenticating vis-à-vis the communication partner, for the signing of the (product) data Doc and for the encrypting of the document key systems KDoc. If different keys are employed, several certificates also have to be present, made available to the partner and verified by him. Alternatively, a key can be made authentically available to a partner also by the fact that it is transferred via the secure communication channel, upon opening of which an authentication with another key has taken place.

    [0058] The signing of the link URL is not compulsory for the security of the system. All requirements as to the security of the stored document D can also be attained by other means. With a signed URL, however, some tampering can be detected earlier. The correctness of the URL upon transferring can also be ensured by the secure channel between user and tag. Besides the URL, the signature should also protect the Tag-ID and possible further data.

    [0059] If the secure channel between user/production station PSi and tag T also protects the confidentiality of the transferred messages, the encryption with the public key KP of the user PSi can be waived for the use case/case of application reading the document D upon the transmission of the document key KDoc from the tag T to the user/production station PSi.

    [0060] Typically the writing or reading of data stored on the product data server/cloud provider CS requires an authentication of the user PSi. The method described above ensures the confidentiality of the document. Also, an attacker cannot insert self-generated documents unnoticedly. If, however, the cloud provider CS requires no authentication, an attacker could delete the stored document or make it unusable in another way. Ideally, the tag T supplies the authentication data (credentials) which the user PSi requires for authenticating with the cloud provider CS. This can be static authentication data/credentials (e.g. name and password) or better dynamic authentication data (e.g. OTP, one-time tokens, challenge response . . . ).