A data infringement detection and ownership provenance method and system
By converting data into images in SGX for feature extraction and verification, the problem of infringement judgment under encrypted data is solved, achieving efficient and accurate infringement detection and ownership tracing, and protecting the rights of data owners.
Patent Information
- Application Number
- CN202411043541.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-31
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2044-07-31
AI Technical Summary
In existing technologies, because transaction data is encrypted and encryption algorithms and keys vary, it is difficult to determine whether there is any infringement, and dishonest users may evade detection by registering false features.
By converting data into images for feature extraction in the Trusted Execution Environment (SGX), robust features are extracted using the SIFT algorithm, and blockchain is combined to verify data integrity, key correctness, and copyright association, thereby determining data similarity and copyright information and achieving infringement detection and ownership tracing.
It improves the accuracy and fairness of infringement judgment, protects the rights and interests of data owners, avoids the drawbacks of plaintext data leakage and centralized processing, and enhances the reliability and correctness of infringement judgment.
Smart Images

Figure CN119180010B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of data security and privacy protection, and particularly relates to a data infringement detection and ownership tracing method and system. BACKGROUND
[0002] The statements in this section merely provide background information related to the present application and do not necessarily constitute the prior art.
[0003] In order to solve the problem of data infringement, users will register and trade data through a third-party trading platform. The third-party platform not only has high security and can protect the security of data, but also can build a unified data registration platform to clearly determine the source and authenticity of data, thereby effectively preventing data infringement at the source. The third-party platform not only brings a certain convenience to users, but also brings risks such as data leakage, data monopoly and single point failure, and at the same time deprives users of the control right of data and causes the problem of unclear data ownership. In order to ensure the security of data, users usually encrypt the data before registration and trading. Without the decryption key, the third-party platform cannot calculate the similarity of the data, so as to determine whether the registered data has infringement.
[0004] In order to solve the problem of single point failure, the combination with the blockchain can be used to realize the decentralized data trading process. Users can decide whether to sell data and to whom according to their own will, so as to realize their control right of data.
[0005] However, the inventors found that although the distributed storage and non-tamperability of the blockchain ensure the transparency of data transaction and the integrity of records, it is difficult to determine whether there is infringement because the transaction data is in an encrypted state and the encryption algorithm and key are different. In order to solve the problem of infringement judgment, although the data can be extracted and the extracted plaintext features can be registered, dishonest users may evade detection by registering false features. SUMMARY
[0006] The embodiments of the present application provide a data infringement detection and ownership tracing method and system to solve the problems that it is difficult to determine whether there is infringement because the transaction data is in an encrypted state and the encryption algorithm and key are different, and although the data can be extracted and the extracted plaintext features can be registered, dishonest users may evade detection by registering false features.
[0007] According to a first aspect of the embodiments of the present application, a data infringement detection and ownership tracing method applied to SGX is provided, comprising:
[0008] In response to the infringement report request from the smart contract, the storage information of the two parties is obtained based on the data description identifiers corresponding to the reported party and the reporter in the infringement report request; wherein the infringement report request includes the hash values of the plaintext data, the hash values of the ciphertext data, the hash values of the copyright information, the ring signature verification public key set, the address and the data description identifier of the reporter and the reported party;
[0009] Based on the addresses of the two parties and the ciphertext data storage addresses in the storage information of the two parties, the ciphertext data of the two parties is downloaded in a non-secure environment, and the data integrity, key correctness and data and copyright association are verified based on the ciphertext data of the two parties;
[0010] After verification, the obtained plaintext data of the two parties is converted into image data, and feature extraction is performed on the image data respectively to obtain the feature representation corresponding to the plaintext data of the two parties; the similarity score is calculated based on the feature representation of the two parties, and whether the data of the two parties has similarity is determined based on the similarity score;
[0011] If there is similarity, the ring signature verification of the copyright information of the data of the two parties is performed, if the verification is successful, the verification of the copyright information holder of the data of the two parties is performed, if the verification fails, it is proved that there is infringement behavior; the infringement related information is sent to the smart contract, and the real owner of the data and the data transaction record are queried in the data ownership registration table and the transaction table according to the infringement related information through the smart contract, so as to realize the infringement detection and ownership tracing of the data.
[0012] Further, the generation of the infringement report request of the smart contract is specifically: when the data owner discovers the data infringement behavior, the reporter address, the data description identifier and the reported party address, the data description identifier are sent to the smart contract for reporting; the smart contract obtains the hash values of the plaintext data, the hash values of the ciphertext data, the hash values of the copyright information and the ring signature verification public key set of the two parties from the blockchain, and generates the infringement report request in combination with the addresses of the two parties and the data description identifiers.
[0013] Further, the data integrity verification is specifically: the hash values of the ciphertext data and the copyright information of the two parties are calculated respectively; the calculated hash values of the ciphertext data and the copyright information of the two parties are compared with the corresponding hash values in the infringement report request respectively, if they are equal, it is proved that the data has integrity.
[0014] Further, the key correctness and data and copyright association verification is specifically: the obtained ciphertext data of the two parties is decrypted, the hash values of the plaintext data of the two parties are calculated, and are compared with the hash values of the plaintext data in the copyright information of the two parties and the plaintext data in the infringement report request respectively, if they are all equal, the decryption key is correct, and the data is associated with the copyright.
[0015] Furthermore, the determination of whether the data from both parties is similar is specifically as follows:
[0016] The plaintext data of the whistleblower and the reported party are converted into the first image and the second image, respectively.
[0017] SIFT feature extraction is performed on the first image and the second image to obtain feature representations of the first image and the second image, wherein the feature representations include key points and descriptors;
[0018] Based on the key points and descriptors of the first and second images, key point matching is performed to obtain the optimal key point matching result;
[0019] Based on the matching results of key points in the first and second images, the average distance between the matching key points is used as the similarity score. If the similarity score is not less than a preset threshold, the data of the two images are similar.
[0020] Furthermore, the verification of the data copyright information holders of both parties specifically involves:
[0021] The addresses of the copyright holders in the copyright information of both the whistleblower and the accused are obtained separately and compared with the addresses of the whistleblower and the accused to determine the holder information. If the address of the accused is different from the address of the holder in the corresponding copyright information, then an infringement is deemed to have occurred; if the addresses are the same, then no infringement has occurred.
[0022] According to a second aspect of the present invention, a data infringement detection and ownership tracing method is provided, which is applied to a data owner and includes:
[0023] When a data infringement is discovered, the whistleblower's address, data description identifier, and the address and data description identifier of the reported party are sent to the smart contract to file a report. The smart contract obtains the hash values of the plaintext data, the ciphertext data, the copyright information, and the ring signature verification public key set from the blockchain, and generates an infringement report request by combining the addresses of both parties and the data description identifier, and sends it to SGX.
[0024] Specifically, the SGX performs the following processing steps: Based on the data description identifiers corresponding to the reported party and the reporter in the infringement report request, it obtains the storage information of both parties; based on the addresses of both parties and the encrypted data storage address in their storage information, it downloads the encrypted data of both parties in an insecure environment; it then verifies the data integrity, key correctness, and data-copyright association based on the encrypted data; after successful verification, it converts the obtained plaintext data of both parties into image data, extracts features from the image data to obtain the feature representations corresponding to the plaintext data of both parties; it calculates a similarity score based on the feature representations of both parties, and determines whether the data of both parties is similar based on the similarity score; if similar, it verifies the ring signature of the copyright information of both parties; if the verification is successful, it verifies the copyright holder of the data of both parties; if the verification fails, it proves that there is an infringement; and it sends the infringement-related information to the smart contract.
[0025] By using smart contracts to query the true owner of the data and data transaction records in the data ownership registry and transaction table based on the infringement-related information, infringement detection and ownership tracing of the data can be achieved.
[0026] Furthermore, the determination of whether the data from both parties is similar is specifically as follows:
[0027] The plaintext data of the whistleblower and the reported party are converted into the first image and the second image, respectively.
[0028] SIFT feature extraction is performed on the first image and the second image to obtain feature representations of the first image and the second image, wherein the feature representations include key points and descriptors;
[0029] Based on the key points and descriptors of the first and second images, key point matching is performed to obtain the optimal key point matching result;
[0030] Based on the matching results of key points in the first and second images, the average distance between the matching key points is used as the similarity score. If the similarity score is not less than a preset threshold, the data of the two images are similar.
[0031] According to a third aspect of the present invention, a method for data infringement detection and ownership tracing is provided, comprising:
[0032] When a data infringement is discovered, the data owner sends the whistleblower's address, data description identifier, and the reported party's address and data description identifier to the smart contract to file a report;
[0033] The smart contract obtains the hash values of the plaintext data, the ciphertext data, the copyright information, and the ring signature verification public key set from the blockchain, and generates an infringement report request by combining the addresses of both parties and the data description identifier, and sends it to SGX;
[0034] The SGX obtains the storage information of both the accused and the whistleblower in the infringement report request based on the data description identifiers corresponding to them. Based on the addresses of both parties and the encrypted data storage addresses in their storage information, it downloads the encrypted data of both parties in an insecure environment. It then verifies the data integrity, key correctness, and data-copyright association based on the encrypted data. After successful verification, the obtained plaintext data is converted into image data, and feature extraction is performed on the image data to obtain the feature representations corresponding to the plaintext data. A similarity score is calculated based on the feature representations of both parties, and the similarity score determines whether the data of both parties is similar. If similar, the ring signature of the copyright information of both parties is verified. If the verification is successful, the copyright holder of the data is verified. If the verification fails, it proves that infringement has occurred. The infringement-related information is then sent to the smart contract.
[0035] By using smart contracts to query the true owner of the data and data transaction records in the data ownership registry and transaction table based on the infringement-related information, infringement detection and ownership tracing of the data can be achieved.
[0036] According to a fourth aspect of the present invention, a data infringement detection and ownership tracing system is provided, comprising at least a data owner, an SGX, a smart contract, and a blockchain, wherein the SGX performs the aforementioned data infringement detection and ownership tracing method, and the data owner performs the aforementioned data infringement detection and ownership tracing method.
[0037] The above one or more technical solutions have the following beneficial effects:
[0038] (1) This invention provides a data infringement detection and ownership tracing method and system. Compared with the prior art, this invention converts numerical data into images and then extracts features, which can extract robust features and avoid the situation where completely different features are extracted after the same data is transformed; it uses SGX to judge the infringement of data in plaintext form in a trusted execution environment, which does not disclose any relevant information of the plaintext and can also solve the problem of not being able to compare the similarity of ciphertext generated by encrypting data with different keys; it uses a dual method of data similarity comparison and copyright information verification to avoid misjudgment, improve the accuracy and fairness of infringement judgment, and protect the rights and interests of data owners to the greatest extent; the judgment result is returned to the smart contract, which realizes fair and efficient data ownership tracing.
[0039] (2) Compared with existing technologies that do not use blockchain, this invention uses blockchain to realize on-chain data description publication, data ownership registration, data transaction, data transaction record storage and data ownership traceability. It uses on-chain and off-chain collaboration to realize transaction data information storage, conversion of numerical data to images, data infringement judgment, and on-chain storage of infringement judgment results, ensuring the feasibility and traceability of infringement judgment.
[0040] (3) Compared with existing technologies using blockchain, this method uses SGX to complete the infringement judgment of plaintext data. Compared with existing schemes that use trusted third parties for infringement judgment, it avoids the possibility of plaintext data being leaked, improves the efficiency of data processing, and avoids the drawbacks of centralized data processing. Compared with existing schemes that extract features from data, it can extract robust features and can eliminate the problem of inconsistent feature values caused by data deletion, addition, etc., to a certain extent, increasing the reliability and correctness of infringement judgment. Compared with existing schemes that use watermarking technology, it can perform secure infringement judgment after the data is re-encrypted, improve the accuracy of infringement judgment, and at the same time ensure the data owner's initiative over the data.
[0041] Advantages of additional aspects of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0042] The accompanying drawings, which form part of this invention, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an improper limitation of the invention.
[0043] Figure 1 This is a schematic diagram illustrating the interaction process of a data infringement detection and ownership tracing method as described in an embodiment of the present invention;
[0044] Figure 2 This is a schematic diagram of the system structure of a data infringement detection and ownership tracing method described in an embodiment of the present invention;
[0045] Figure 3 This is a flowchart of a data infringement detection and ownership tracing method described in an embodiment of the present invention. Detailed Implementation
[0046] It should be noted that the following detailed descriptions are exemplary and intended to provide further illustration of the invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.
[0047] It should be noted that the terminology used herein is for the purpose of describing particular implementations only and is not intended to limit the exemplary implementations of the present invention.
[0048] Where there is no conflict, the embodiments and features in the embodiments of the present invention can be combined with each other.
[0049] Terminology Explanation:
[0050] SGX, or Software Guard Extensions, is a security technology provided by Intel to enhance the isolation environment inside the processor, protecting sensitive data and code from malware and unauthorized access. Through hardware support, SGX allows applications to run in a protected area called the "Privacy Enhanced Memory (Enclave)," ensuring the confidentiality and integrity of data during computation.
[0051] IPFS, or Interplanetary File System, is a decentralized, distributed file system designed to make storing and sharing files more efficient, robust, and secure. By using content addressing and a peer-to-peer network, IPFS allows users to store, share, and access files globally without relying on a single server, thereby improving data availability and censorship resistance.
[0052] Delay embedding is a method used to transform time series data into a high-dimensional phase space. By sampling data at different time points, an embedding vector is created, allowing the original one-dimensional time series to be displayed in a multi-dimensional space, thereby revealing the dynamic characteristics and underlying structure of the system.
[0053] SIFT, or scale-invariant feature transform, is an image processing algorithm that detects and describes local features in images at different scales and rotations. By detecting keypoints and generating feature vectors, SIFT ensures that image features can still be accurately matched and recognized under different viewpoints, scaling, and lighting conditions, demonstrating robustness.
[0054] To facilitate understanding, the following detailed explanation of the solution described in this embodiment will be provided using a specific example (i.e., data infringement detection and ownership tracing in a medical data transaction scenario). First, combining... Figure 3 The process of trading medical data is explained in detail:
[0055] Obtaining medical data: After the data owner requests the data from the hospital, the hospital first uses a symmetric cryptographic algorithm and a symmetric key K. h Encrypt the medical data of the data owner to obtain... And generate the hash value H1 of the ciphertext = hash(C h Generate copyright information (CI) for the data (Data) and use the key ring (PK). A and your private key SK h Perform a ring signature on the copyright information to generate The copyright information includes the plaintext data hash value, the holder's address, etc.; then, the data owner's public key is used for PK. o For CI, r1 and K h Encrypt, obtain The hash value is generated as H2 = hash(C) CI ); Use your own private key SK h For C h C CI H1 and H2 signatures, generating Finally, Tx h ={C h ||H1||C CI ||H2||r h ||PK} is sent to the data owner, where PK = {PK1, PK2, ..., PK} i-1 PK h PK i+1 PK n} is the set of public keys of all hospitals involved in the ring signature.
[0056] Medical data storage: The data owner receives Tx h Then, first use the hospital's public key to PK. h Verify r h Determine if the data was sent by the hospital; calculate the encrypted hash value H′1 of the data and the encrypted hash value H′2 of the copyright information, and compare them with H1 and H2 respectively. If they are equal, the data integrity has been successfully verified; use your private key SK o Decrypting C CI Utilizing PK verification The correctness of the central signature r1 will be verified. If the verification passes, CI and C in h Store them separately in IPFS, and return the storage address Add. CI and Otherwise, the verification will fail, and step 1 will need to be repeated.
[0057] Data ownership registration: The data owner publishes a data description in a smart contract and obtains a data description identifier (ID). DSThe data owner transforms the data into a two-dimensional array, and then converts it into an image through delayed embedding with a delay step of 1 and a dimension of 3. SIFT feature extraction is then performed on the image to obtain the image's features FE, i.e., keypoints and feature values, which are then hashed to obtain the hash value. FE =hash(FE); The data owner calculates the hash value of the plaintext data to obtain the hash. po Finally, Send the application to the smart contract to register ownership; the smart contract verifies whether all public keys in the PK are registered under the hospital's identity. If so, send the Tx r Send the data to the smart contract to register it with the data owner; otherwise, return False to the data owner.
[0058] In practice, delayed embedding is a method for embedding time-series data into a high-dimensional space. Here, we treat each check by the data owner as time-series data, and multiple checks form a two-dimensional array.
[0059] The delay step (also known as the delay time) and the dimension (referring to the embedding dimension) are two parameters of the delayed embedding method. The delay step is the interval at which data points in the time series are selected to construct the embedding vector in the high-dimensional space. The delay dimension is the number of dimensions used to embed the time series data into the high-dimensional space during the delayed embedding process. For example, for a one-dimensional array [1, 3, 5, 7, 9, 11], when the delay time is 3 and the delay dimension is 2, it is specifically represented as: embedding the data into a 2-dimensional space, with the embedded vectors being x(0) = [1, 7], x(1) = [3, 9], and x(2) = [5, 11].
[0060] Authentication and parameter transmission: The data owner establishes remote authentication with SGX and establishes a secure channel to transmit information; SGX verifies and stores the decryption key and other parameters transmitted by the data owner; SGX verifies whether the data decryption key has been stored, and if so, returns the storage address of the encrypted data.
[0061] (1) The data owner and SGX use a remote authentication mechanism to complete identity authentication, determine the authenticity of the corresponding SGX identity, and establish a secure channel with SGX.
[0062] (2) The data owner uses the SGX public key PK SGX The transmitted parameters are encrypted to obtain Calculate C S H3 = hash(C S ), using your own private key SK o For C S H3 signature, obtain (r2, C) S H3) is sent to SGX, where K h It is the decryption key for transaction data, ID DS It is a data description identifier. This is the storage address of the encrypted data. (Add) CI This is the storage address for copyright information, and r is a random number;
[0063] (3) After receiving the data, SGX generates a ciphertext hash value H′3 and compares it with H3. If they are equal, the verification is successful. Then, the data owner's public key PK is used. o Verify the correctness of signature r2. If correct, use the private key SK. SGX Decrypting C S And calculate hash(ID) DS ||Add o The data is stored in the storage hash list as a unique identifier for the record. The above data and the address of the data owner are encrypted using seal() and stored in an insecure environment for sealing. Otherwise, the verification fails and False is returned to the data owner.
[0064] Requesting to purchase data: Data buyers find the data they want by viewing the data description and verifying the authenticity and reliability of the data by checking the copyright information based on the registration record; the data description identifier ID is then used. di Publisher's address Add o Add your own address b PK with public key b Send a request to the smart contract to purchase data.
[0065] Requesting data: The smart contract will send the ID. di PK b Send it to the data owner and store the record in the blockchain.
[0066] Transaction data: The data owner will decrypt the key K. h Use PK b Encrypt, obtain Then calculate its hash value to obtain H4; use the SGX public key to PK. SGX Encrypt the random number r to obtain Use your private key SK o right C r H4, ID di Sign it to get r o and (ID) di , C r H4, r oThe data is sent to the smart contract; the smart contract remotely authenticates with SGX and establishes a secure channel, then sends C... r Add o ID di and PK b Send to SGX; after receiving it, SGX uses hash(ID) di ||Add o Check if the data exists. If not, return False to the smart contract, and the smart contract rejects the transaction. If it is stored, decrypt the corresponding ciphertext using unseal() to obtain r; then use the private key SK. SGX Decrypting C r Get r′, determine if r′ is equal to r, if they are equal, obtain the data description ID. di The corresponding encrypted data storage address is then PK'd using the data buyer's public key. b Encrypt, obtain Use your private key SK SGX For C D Signature, get r D , will (r D ID di C D Send (rD, C) to the smart contract; otherwise, return False to the smart contract, and the smart contract will reject the transaction; after receiving it, the smart contract will send (rD, C) to the smart contract. D , r o ID di The data is sent to the data buyer, who, after verifying the data, sends the (ID) to the smart contract. di The smart contract will (True) and the corresponding transaction amount. Send the transaction amount to the data buyer's account, and store the transaction information in the transaction table.
[0067] The following is a detailed description of the solution described in this embodiment, based on the above scenario:
[0068] like Figure 1 The diagram illustrates the interaction process between data infringement detection and ownership tracing methods. Based on the above scenario, this embodiment of the invention provides a data infringement detection and ownership tracing method applied to SGX, including:
[0069] In response to an infringement report request from a smart contract, the storage information of both parties is obtained based on the data description identifiers corresponding to the reported party and the reporter in the infringement report request; wherein, the infringement report request includes the hash values of the plaintext data of the reporter and the reported party, the hash values of the encrypted data, the hash values of the copyright information, the ring signature verification public key set, the address, and the data description identifier;
[0070] Based on the addresses of both parties and the encrypted data storage addresses in the stored information of both parties, the encrypted data of both parties is downloaded in an insecure environment, and the data integrity, key correctness and data copyright association are verified based on the encrypted data of both parties;
[0071] After successful verification, the obtained plaintext data from both parties is converted into image data. Feature extraction is performed on the image data to obtain the feature representations corresponding to the plaintext data from both parties. A similarity score is calculated based on the feature representations of both parties, and the similarity score is used to determine whether the data from both parties are similar.
[0072] If similarity is found, the ring signature of the data copyright information of both parties is verified. If the verification is successful, the holder of the data copyright information of both parties is verified. If the verification fails, it proves that there is an infringement. The infringement-related information is sent to the smart contract. The smart contract queries the data ownership registry and transaction table based on the infringement-related information to find the true owner of the data and the data transaction records, thereby realizing the infringement detection and ownership tracing of the data.
[0073] In specific implementation, the generation of the infringement report request by the smart contract is as follows: when the data owner discovers a data infringement, he / she sends the address of the reporter, the data description identifier, and the address and data description identifier of the reported party to the smart contract to report the infringement; the smart contract obtains the hash values of the plaintext data, the hash values of the ciphertext data, the hash values of the copyright information, and the ring signature verification public key set from the blockchain, and generates an infringement report request by combining the addresses of both parties and the data description identifier.
[0074] In specific implementation, the data integrity verification involves: calculating the hash values of the encrypted data and copyright information of both parties respectively; comparing the calculated hash values of the encrypted data and copyright information of both parties with the corresponding hash values in the infringement report request; if they are equal, it proves that the data is intact.
[0075] In specific implementation, the verification of key correctness and data-copyright association involves: decrypting the obtained encrypted data from both parties, calculating the hash value of the plaintext data from both parties, and comparing it with the hash value of the plaintext data in the copyright information of both parties and the plaintext data in the infringement report request. If they are all equal, then the decryption key is correct and the data is associated with copyright.
[0076] In specific implementation, the determination of whether the data of the two parties are similar is as follows:
[0077] The plaintext data of the whistleblower and the reported party are converted into the first image and the second image, respectively.
[0078] SIFT feature extraction is performed on the first image and the second image to obtain feature representations of the first image and the second image, wherein the feature representations include key points and descriptors;
[0079] Based on the key points and descriptors of the first and second images, key point matching is performed to obtain the optimal key point matching result;
[0080] Based on the matching results of key points in the first and second images, the average distance between the matching key points is used as the similarity score. If the similarity score is not less than a preset threshold, the data of the two images are similar.
[0081] Specifically, such as Figure 3 As shown, data owners can initially determine whether their data has been infringed by reviewing the data description; if infringement is found, they can (Add) I Add h ID dI ID dh Send to the smart contract, where Add I ID dI These are the address of the reported party and the corresponding data description identifier, Add h ID dh These are the whistleblower's address and the corresponding data description identifier.
[0082] After receiving a report, the smart contract retrieves the hash value (hashpH, hashhpI) of the plaintext data and the hash value (hashI) of the ciphertext data from the blockchain. HH hash HI ), the hash value of copyright information CIH hash CII Ring signature verification public key set (PK) SH PK SI ) and (Add I Add h ID dI ID dh Send them together to SGX.
[0083] SGX based on ID dI ID dhThe process involves obtaining the storage information from both parties and decrypting the ciphertext downloaded from IPFS using their respective keys to obtain the plaintext. It then verifies the correlation between the plaintext data and the copyright information, calculates the data similarity, verifies the correctness of the ring signature in the copyright information, and identifies the copyright holder. Specifically:
[0084] (1) SGX based on ID dI ID dh Find the corresponding decryption key (K) using two parameters. h K I ) and the storage address of the encrypted data (Add) CIH Add CII Encrypted information such as ) can be decrypted using unseal();
[0085] (2) The enclave created in SGX uses the OCALL() mechanism to add (Add h Add I Add CIH Add CII The file is sent to an insecure environment; the insecure environment downloads the file from IPFS based on the address and returns the file to the enclave via the ECALL() mechanism.
[0086] (3) Calculate the hash values of the encrypted data and copyright information respectively, and compare them with the hash values. HH hash HI hash CIH hash CII If the comparisons are equal, then it proves that the expression is complete.
[0087] (4) By decrypting key K h K I Decrypt the ciphertext data to obtain the following results: and Calculate the hash values of the two to obtain hash(Data′). h ) and hash(Data′ I ), respectively with the hash(Data) in the copyright information h ) and hash(Data I ) and the hash in the registry pH hash pI If all values are equal, it means the decryption key is correct and the data is associated with the copyright; otherwise, the corresponding data description identifier, address, and INO are returned to the smart contract, where IN0 contains the relevant error information, namely, incorrect copyright information or incorrect decryption key.
[0088] (5) If the smart contract receives an error message, it sends the message to the user and asks the user to resend the correct message within a specified time. If SGX does not receive the message, it sets status=0 and executes step (6). If SGX receives the message, it re-executes step (4) to re-determine the association between the data and the copyright and the correctness of the key.
[0089] (6) SGX uses the delayed embedding algorithm to convert medical data, which is transformed into a two-dimensional array, into an image, and performs SIFT feature extraction on the image to obtain key points and descriptors, i.e., FE. h FE I The best match between two key points is found by using a brute-force search method. The average of the matching distance is calculated and converted into a similarity score to obtain Simil. If Simil reaches the threshold, the two data are judged to be similar and step (7) is continued. Otherwise, the two data are not similar.
[0090] (7) Using the public key dataset PK SH PK SI Verify the correctness of the signatures in the two copyright information documents separately; if the signature verification of the accused fails, it is determined that there is an infringement; if both verifications are successful, proceed to step (8).
[0091] (8) Obtain the address of the copyright holder from the copyright information. h and Add′ I , respectively with Add h Add I The information of the holder is compared to determine the infringement; if the information of the reported party is different, it is determined that there is an infringement; if the verification is successful, it means that there is no infringement.
[0092] Specifically, the addresses of the whistleblower and the reported party are Add. h Add I The data they sell is copyrighted, and their respective copyright information includes the data holder's address. h and Add′ I Here, we are comparing the whistleblower's address. h The address of the copyright holder in the copyright information corresponding to the data he sold: Add′ h Are they the same?; Address of the person being reported (Add) I The address Add' in the copyright information corresponding to the data he sold IAre they the same? If the address of the person being reported does not match the address in the corresponding copyright information, it means that they are not the true owner of the data in the copyright information. However, since it has been verified that the copyright information and the verified data are related, and the verified data is similar to the data of the person being reported, it means that the person being reported is not the true owner of the verified data and has committed an infringement.
[0093] (9) If infringement occurs, SGX sends an Add message to the smart contract. I Add h ID dI ID dh True, Add p Simil Otherwise, send (Add) I Add h ID dI ID dh ,False,Simil, ), where True / False indicates whether there is infringement, Add p This indicates the address of a potential infringer.
[0094] Furthermore, the data ownership traceability specifically involves: if infringement occurs, the smart contract, according to... The true owner of the data and its destination are found in the data ownership registry and transaction table, respectively.
[0095] (1) Smart contracts are based on The system finds the corresponding registration information in the data ownership registry based on the data description identifier and identifies the true owner of the data based on the registration timestamp. If the true owner of the data is one of these two individuals, a penalty function is triggered to punish the dishonest user; otherwise, the information is broadcast in the blockchain.
[0096] (2) In the transaction table, find the next buyer of the data based on the address and data description identifier of the penalized party, and penalize them.
[0097] In practical implementation, smart contracts will (Add) I Add h ID dI ID dh True / False, Simil Add p ) Stored in the blockchain, where Add p It is the address of the person who imposed the punishment.
[0098] In one or more embodiments, corresponding to the above embodiments, the present invention provides a data infringement detection and ownership tracing method, which is applied to data owners and includes:
[0099] When a data infringement is discovered, the whistleblower's address, data description identifier, and the address and data description identifier of the reported party are sent to the smart contract to file a report. The smart contract obtains the hash values of the plaintext data, the ciphertext data, the copyright information, and the ring signature verification public key set from the blockchain, and generates an infringement report request by combining the addresses of both parties and the data description identifier, and sends it to SGX.
[0100] Specifically, the SGX performs the following processing steps: Based on the data description identifiers corresponding to the reported party and the reporter in the infringement report request, it obtains the storage information of both parties; based on the addresses of both parties and the encrypted data storage address in their storage information, it downloads the encrypted data of both parties in an insecure environment; it then verifies the data integrity, key correctness, and data-copyright association based on the encrypted data; after successful verification, it converts the obtained plaintext data of both parties into image data, extracts features from the image data to obtain the feature representations corresponding to the plaintext data of both parties; it calculates a similarity score based on the feature representations of both parties, and determines whether the data of both parties is similar based on the similarity score; if similar, it verifies the ring signature of the copyright information of both parties; if the verification is successful, it verifies the copyright holder of the data of both parties; if the verification fails, it proves that there is an infringement; and it sends the infringement-related information to the smart contract.
[0101] By using smart contracts to query the true owner of the data and data transaction records in the data ownership registry and transaction table based on the infringement-related information, infringement detection and ownership tracing of the data can be achieved.
[0102] In specific implementation, the determination of whether the data of the two parties are similar is as follows:
[0103] The plaintext data of the whistleblower and the reported party are converted into the first image and the second image, respectively.
[0104] SIFT feature extraction is performed on the first image and the second image to obtain feature representations of the first image and the second image, wherein the feature representations include key points and descriptors;
[0105] Based on the key points and descriptors of the first and second images, key point matching is performed to obtain the optimal key point matching result;
[0106] Based on the matching results of key points in the first and second images, the average distance between the matching key points is used as the similarity score. If the similarity score is not less than a preset threshold, the data of the two images are similar.
[0107] In one or more embodiments, corresponding to the method described in the above embodiments, a data infringement detection and ownership tracing method is provided, including:
[0108] When a data infringement is discovered, the data owner sends the whistleblower's address, data description identifier, and the reported party's address and data description identifier to the smart contract to file a report;
[0109] The smart contract obtains the hash values of the plaintext data, the ciphertext data, the copyright information, and the ring signature verification public key set from the blockchain, and generates an infringement report request by combining the addresses of both parties and the data description identifier, and sends it to SGX;
[0110] The SGX obtains the storage information of both the accused and the whistleblower in the infringement report request based on the data description identifiers corresponding to them. Based on the addresses of both parties and the encrypted data storage addresses in their storage information, it downloads the encrypted data of both parties in an insecure environment. It then verifies the data integrity, key correctness, and data-copyright association based on the encrypted data. After successful verification, the obtained plaintext data is converted into image data, and feature extraction is performed on the image data to obtain the feature representations corresponding to the plaintext data. A similarity score is calculated based on the feature representations of both parties, and the similarity score determines whether the data of both parties is similar. If similar, the ring signature of the copyright information of both parties is verified. If the verification is successful, the copyright holder of the data is verified. If the verification fails, it proves that infringement has occurred. The infringement-related information is then sent to the smart contract.
[0111] By using smart contracts to query the true owner of the data and data transaction records in the data ownership registry and transaction table based on the infringement-related information, infringement detection and ownership tracing of the data can be achieved.
[0112] In one or more embodiments, corresponding to the method described in the above embodiments, a data infringement detection and ownership tracing system is provided, which includes at least a data owner, an SGX, a smart contract, and a blockchain, wherein the SGX executes the above-described data infringement detection and ownership tracing method, and the data owner executes the above-described data infringement detection and ownership tracing method.
[0113] In specific implementation, such as Figure 2 As shown, the data infringement detection and ownership tracing system mainly comprises five parts: data preparation, data registration, transaction, reporting, and infringement judgment and tracing. The following is a detailed explanation from a practical implementation perspective:
[0114] (a) Data preparation section: Data owners obtain data and copyright information through the data preparation section.
[0115] (1) User registration: Both the hospital and the data owner register users in the blockchain with different identities using their own public keys. Registration is completed after verifying the identity of the registrant.
[0116] (2) Generating encrypted medical data: After receiving the data access request from the data owner, the hospital uses a symmetric cryptographic algorithm and a symmetric key K. h The data owner's medical data is encrypted and generated. And generate the hash value of the ciphertext.
[0117] (3) Generate copyright data ciphertext: Generate copyright information CI for the data according to the prescribed copyright information generation format, including the hash value of the plaintext data, the holder's address, and other information; the hospital uses a key ring PK. A ={PK1, PK2, ..., PK i-1 PK i+1 ...PK n} and your private key SK h Perform a ring signature on the copyright information to generate The hospital uses the data owner's public key to perform a key-click attack. o CI, and K h Encryption generation And generate a hash value hash(C) CI ).
[0118] (4) Sending data: The hospital uses its own private key SK h right hash(C CI ), C CI and Signature, generation Finally Send to the data owner, where PK = {PK1, PK2, ..., PK} i-1 PK h PK i+1 , ..., PK n}
[0119] (5) Data storage: After receiving the data, the data owner first uses the hospital's public key PK. h Verify the authenticity of the hospital signature. Verify whether the data was sent by the hospital; calculate and hash(C′) CI ) respectively with and hash(C CI Compare whether they are equal to determine if the data has been modified; use your private key SK. o Decrypting C CI The correctness of the ring signature is verified using the public key set PK. If all are correct, then CI and C are... h Store them separately in IPFS, and obtain their respective storage addresses. CI and Otherwise, repeat steps (1)-(4) to retrieve data from the hospital again.
[0120] (ii) Data registration section: Data owners can publish data descriptions, convert data to images, extract SIFT features from images, and register data ownership through the data registration section.
[0121] (1) The data owner publishes a data description in the smart contract, describing the size of the data, the type of disease, the price of the data, etc., and obtains the data description identifier ID. DS .
[0122] (2) Data ownership registration: The data owner uses the decryption key K h Decrypting medical data to obtain Calculate the hash value of plaintext data (hash(Data)) po The data owner transforms the data into a two-dimensional array, and then converts it into an image through delayed embedding with a delay step of 1 and a dimension of 3. SIFT feature extraction is then performed on the image to obtain the image's features FE, i.e., keypoints and feature values, which are then hashed to obtain the hash value. FE =hash(FE); Send to the smart contract; the smart contract verifies whether all public keys in PK are registered with the hospital's identity. If so, it sends the registration information to the blockchain to register the data for the data owner; otherwise, it returns False to the data owner.
[0123] (III) Transaction Section: Remote authentication and establishment of a secure channel between the data buyer and the enclave in SGX, and transmission of parameters to SGX; The data buyer can view and verify the data and apply to purchase the data through the transaction section; The data buyer and the data owner can realize transactions through smart contracts.
[0124] (1) Authentication: The data owner remotely authenticates with the enclave in SGX and establishes a secure channel; the PK is performed using the SGX public key. SGX Decryption key K h Data Description Identifier ID DS1 Storage address of encrypted data Add the storage address for copyright information CI And encrypted with a random number r, to obtain And calculate its hash value H3 = hash(C SGX ), using private key SK o For C SGX Generate signature with H3 Will Send to SGX; upon receiving it, SGX calculates hash(C′). SGX Compare H3 with H3 to determine if they are equal and whether the data has been modified; use the data owner's public key to PK. o Verify signature The system verifies the data's correctness by determining if it was sent by the data owner. If all verifications are successful, SGX uses its private key SK. SGX Decrypting C SGX ,get SGX computes and stores the identifier hash(ID) DS1 ||Add o The process checks if the hash value already exists in the stored hash value list. If it does not exist, the identifier is stored in the hash list, and the decrypted information is added along with the data owner's address. o Encrypt the data using `seal()` and store it in an insecure environment; if the data already exists, do not store it; if verification fails, return `False` to the data owner, who will then resend the correct information.
[0125] (2) Request a transaction: The data buyer searches for the data they want to purchase in the smart contract and obtains the corresponding data description identifier ID. DS1 Send data description identifier ID to the smart contract DS1 Add the address of the data owner. o Add your own address b PK with public key b They requested to conduct a data transaction with the data owner.
[0126] (3) Request data: The smart contract will (ID) DS1 PK b It sends a request to the data owner to retrieve the data and store the record in the blockchain.
[0127] (4) Sending data: The data owner will decrypt the key K h PK using the data buyer's public key b Encryption obtained And generate hash value PK with SGX public key SGX Encrypt the random number r to obtain Use your private key SK o right ID DS1 Signature, get And Send to the smart contract; the smart contract remotely authenticates with SGX and establishes a secure channel, Add o ID DS1 and PK b Send to SGX.
[0128] (5) Verification: SGX calculates hash(ID) DS1 ||Add o The function checks if the hash value already exists in the stored hash value list. If it does, it retrieves the ciphertext data, decrypts the corresponding ciphertext using `unseal()`, and obtains `r`. SGX uses the private key `SK`. SGX Decryption Obtain r′; if r = r′, it means that the decryption key for the corresponding data has been stored, and the transaction has been agreed upon by the data owner. Use the buyer's public key to PK. b The storage address of the encrypted ciphertext data is obtained Use your private key SK SGX right Signature, get Will Send to the smart contract; otherwise, return False to the smart contract, and the smart contract will reject the transaction.
[0129] (6) Transaction data: After receiving the data, the smart contract will... The data is sent to the data buyer, who, after verifying the data, sends the ID to the smart contract. DS1 The smart contract will (True) and the corresponding transaction amount. Send the transaction amount to the data owner's account and store the transaction information in the transaction table.
[0130] (iv) Reporting stage: This includes reporting data infringement, smart contracts obtaining information from the blockchain, and interacting with SGX to initiate infringement detection.
[0131] (1) Infringement Reporting: Based on the data description in the smart contract, the data owner makes a preliminary judgment on whether their data may infringe on any rights. If so, the owner adds the address of the person being reported to the smart contract. I and the corresponding data description identifier ID dI, The whistleblower's address Add h and the corresponding data description identifier ID dh Send to the smart contract.
[0132] (2) The smart contract obtains the hash value of the plaintext data of both from the blockchain. pH hash pI ), the hash value of the encrypted data HH hash HI ), the hash value of copyright information CIH hash CII Ring signature verification public key set (PK) SH PK SI ) and (Add I Add h ID dI ID dh Together, they are sent to SGX for infringement detection.
[0133] (v) Infringement judgment and tracing: This includes SGX's function of judging infringement and transmitting the judgment result to the smart contract, which then implements the functions of tracing and punishing data ownership.
[0134] (1) Download data: SGX calculates hash(ID) di ||Add i (where i = I, h), find the storage address of the data, and decrypt the data using unseal(); the enclave created in SGX uses the OCALL() mechanism to add (Add CIi Add CDi (where i = I, h) is sent to the insecure environment; the insecure environment downloads the file from IPFS based on the address, and obtains... (where i = I, h) and copyright information, and return the file to enclave through the ECALL() mechanism.
[0135] (2) Calculate the hash values of the encrypted data and copyright information respectively, and compare them with the hash values. HH hash HI hash CIH hash CII If the comparisons are equal, then it proves that the expression is complete.
[0136] (3) SGX decrypts the key K h K I Decrypt the ciphertext data separately to obtain... and Calculate the hash values of the two to obtain hash(Data′).h ) and hash(Data′ I ), respectively with the hash(Data) in the copyright information h ) and hash(Data I ) and the hash in the registry pH hash pI If both are equal, it means the decryption key is correct and the data is associated with the copyright; otherwise, the corresponding data identifier, address, and INO are returned to the smart contract. The INO contains relevant error information, such as incorrect copyright information or an incorrect decryption key. The smart contract will then return the (INO, ID) to the smart contract. dI (T1) is sent to the user, requesting the user to resend the correct information within T1 time; if SGX does not receive it, then set status=0 and execute step (4); if SGX receives it, then execute the step again.
[0137] (4) Similarity Calculation: SGX uses the delayed embedding algorithm to convert the medical data, which is transformed into a two-dimensional array, into an image, and performs SIFT feature extraction on the image to obtain key points and descriptors, i.e., FE. h FE I The best match between two key points is found by using a brute-force search method. The average of the matching distance is calculated and converted into a similarity score to obtain Simil. If Simil reaches the threshold, the two data are judged to be similar. If status = 0, it means that there is infringement. Otherwise, continue to execute step (5). If Simil does not reach the threshold, the two data are not similar.
[0138] (5) Verify signature: Use public key dataset PK SH PK SI Verify the correctness of the signatures in the two copyright information documents respectively; if the signature verification of the accused fails, it is determined that there is an infringement; if both verifications are successful, proceed to step (6).
[0139] (6) Verify the holder: Obtain the holder's address (Add') from the copyright information. h and Add′ I , respectively with Add h Add I The information of the holder is compared to determine the infringement; if the information of the reported party is different, it is determined that there is an infringement; if the verification is successful, it means that there is no infringement.
[0140] (7) If infringement occurs, SGX sends an Add message to the smart contract. I Add h ID dI ID dhTrue, Add p Simil Otherwise, send (Add) I Add h ID dI ID dh ,False,Simil, ), where True / False indicates whether there is infringement, Add p This indicates the address of a potential infringer.
[0141] (8) Data Ownership Tracing: If an infringement occurs, the smart contract will, in accordance with... The data ownership registry is searched for the registered record using the data description identifier, and the true owner of the data is found based on the timestamp. If the true owner is one of these two individuals, a penalty function is triggered to punish the dishonest user; otherwise, the violation is broadcast in the blockchain. In the transaction table, the next buyer of the data is found based on the penalized user's address and the data description identifier, and that user is penalized. The smart contract will (Add) I Add h ID dI ID dh True / False, Simil Add p ) Stored in the blockchain, where Add p It is the address of the person who imposed the punishment.
[0142] Those skilled in the art will recognize that the units, i.e., algorithm steps, of the various examples described in connection with this embodiment can be implemented in electronic hardware or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this invention.
[0143] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A data infringement detection and ownership tracing method applied to SGX, characterized in that, The application comprises: In response to a copyright infringement report request from a smart contract, the storage information of both parties is obtained based on the data description identifiers corresponding to the reported party and the reporter in the copyright infringement report request; wherein the copyright infringement report request includes the hash values of the reporter and the reported party plaintext data, the hash values of the ciphertext data, the hash values of the copyright information, the ring signature verification public key set, the address and the data description identifier; Based on the addresses of both parties and the ciphertext data storage addresses in the storage information of both parties, the download of the ciphertext data of both parties is performed in a non-secure environment, and the data integrity, key correctness and data and copyright association verification are performed based on the ciphertext data of both parties; After the verification is passed, the obtained plaintext data of both parties is converted into image data by a delay embedding method, the feature representation corresponding to the plaintext data of both parties is obtained by respectively extracting the features of the image data; the similarity score is calculated based on the feature representation of both parties, and whether the data of both parties has similarity is determined based on the similarity score; the judgment of whether the data of both parties has similarity is specifically: The plaintext data of the reporter and the reported party is converted into a first image and a second image respectively; SIFT feature extraction is performed on the first image and the second image to obtain the feature representation of the first image and the second image, wherein the feature representation includes key points and descriptors; Based on the key points and descriptors of the first image and the second image, the matching of the key points is performed to obtain the optimal matching result of the key points; Based on the matching result of the key points of the first image and the second image, the mean value of the distance of the matching key points is taken as the similarity score, and if the similarity score is not less than a preset threshold, the data of both parties has similarity; If there is similarity, the verification of the copyright information ring signature of the data of both parties is performed, if the verification is successful, the verification of the copyright information holder of the data of both parties is performed, if the verification fails, it is proved that there is infringement behavior; the infringement related information is sent to the smart contract, and the real owner of the data and the data transaction record are queried in the data ownership registration table and the transaction table according to the infringement related information through the smart contract, so as to realize the infringement detection and ownership tracing of the data.
2. A method of data infringement detection and ownership tracing as claimed in claim 1, wherein, The generation of the copyright infringement report request of the smart contract is specifically: when the data owner finds the data infringement behavior, the reporter address, the data description identifier, the reported party address and the data description identifier are sent to the smart contract for reporting; The smart contract obtains the hash values of the plaintext data, the hash values of the ciphertext data, the hash values of the copyright information and the ring signature verification public key set of both parties from the blockchain, and generates the copyright infringement report request in combination with the addresses of both parties and the data description identifiers.
3. A method of data infringement detection and ownership tracing as claimed in claim 1, wherein, The data integrity verification is specifically: the hash values of the ciphertext data and the copyright information of both parties are calculated respectively; the calculated hash values of the ciphertext data and the copyright information of both parties are compared with the corresponding hash values in the copyright infringement report request respectively, and if they are equal, it is proved that the data has integrity.
4. A method of data infringement detection and ownership tracing as claimed in claim 1, wherein, The key correctness and data and copyright association verification specifically comprises: decrypting the obtained double ciphertext data, calculating the hash values of the double plaintext data, and comparing the hash values with the plaintext data hash values in the double data copyright information and the plaintext data in the infringement reporting request respectively, if they are all equal, the decryption key is correct, and the data is associated with the copyright.
5. A method of data infringement detection and ownership tracing as claimed in claim 1, wherein, The verification of the double data copyright information holder specifically comprises: obtaining the addresses of the holders in the copyright information of the reporter and the reported person respectively, and comparing the addresses of the reporter and the reported person to judge the information of the holder; If the address of the reported person is different from the address of the holder in the corresponding copyright information, it is determined that there is an infringement behavior; If the addresses are the same, there is no infringement behavior.
6. A data infringement detection and ownership tracing method applied to a data owner, characterized in that, It includes: When the data infringement behavior is found, the reporter address, data description identifier and reported person address, data description identifier are sent to the smart contract for reporting; The smart contract obtains the hash values of the double plaintext data, the hash values of the ciphertext data, the hash values of the copyright information and the ring signature verification public key set from the blockchain, and generates an infringement reporting request combining the addresses of the two parties and the data description identifiers, and sends it to the SGX; Wherein, the SGX specifically performs the following processing process: based on the data description identifiers of the reported person and the reporter in the infringement reporting request, obtain the storage information of the two parties; based on the addresses of the two parties and the ciphertext data storage addresses in the storage information of the two parties, download the ciphertext data of the two parties in a non-secure environment, verify the data integrity, key correctness and data and copyright association based on the ciphertext data of the two parties; after verification, the obtained double plaintext data is converted into image data by the delay embedding method, the feature representation corresponding to the double plaintext data is obtained by extracting the features of the image data respectively; based on the feature representation of the two parties, calculate the similarity score, and determine whether the data of the two parties has similarity based on the similarity score; if there is similarity, verify the ring signature of the double data copyright information, if the verification is successful, verify the holder of the double data copyright information, if the verification fails, it proves that there is an infringement behavior; send the infringement related information to the smart contract; the judgment of whether the data of the two parties has similarity specifically comprises: The plaintext data of the reporter and the reported person is converted into a first image and a second image respectively; SIFT feature extraction is performed on the first image and the second image to obtain the feature representation of the first image and the second image, wherein the feature representation includes key points and descriptors; Based on the key points and descriptors of the first image and the second image, the key points are matched to obtain the optimal matching result of the key points; Based on the matching result of the key points of the first image and the second image, the mean value of the distance of the matching key points is taken as the similarity score, if the similarity score is not less than a preset threshold, the data of the two parties has similarity; Through the smart contract, the real owner of the data and the data transaction record are queried in the data ownership registration table and the transaction table according to the infringement related information, the data infringement detection and ownership tracing are realized.
7. A data infringement detection and ownership tracing method, characterized by, It includes: When the data infringement is found, the data owner sends the reporter address, data description identifier, and the reported address, data description identifier to the smart contract for reporting; The smart contract obtains the hash value of the plaintext data, the hash value of the ciphertext data, the hash value of the copyright information, and the ring signature verification public key set of both parties from the blockchain, and generates an infringement report request in combination with the addresses of both parties and the data description identifiers, and sends it to the SGX; The SGX obtains the storage information of both parties based on the data description identifiers of the reported and the reporter in the infringement report request; Based on the addresses of both parties and the ciphertext data storage addresses in the storage information of both parties, the ciphertext data of both parties is downloaded in a non-secure environment, and the data integrity, key correctness, and data and copyright association are verified based on the ciphertext data of both parties; After verification, the obtained plaintext data of both parties is converted into image data by a delay embedding method, and feature extraction is performed on the image data respectively to obtain the feature representation corresponding to the plaintext data of both parties; The similarity score is calculated based on the feature representation of both parties, and whether the data of both parties has similarity is determined based on the similarity score; If there is similarity, the copyright information ring signature of both parties is verified, if the verification is successful, the copyright information holder of both parties is verified, if the verification fails, it is proved that there is infringement; The infringement related information is sent to the smart contract; The judgment of whether the data of both parties has similarity is specifically: The plaintext data of the reporter and the reported is converted into a first image and a second image respectively; SIFT feature extraction is performed on the first image and the second image to obtain the feature representation of the first image and the second image, wherein the feature representation includes key points and descriptors; Based on the key points and descriptors of the first image and the second image, the matching of the key points is performed to obtain the optimal matching result of the key points; Based on the matching result of the key points of the first image and the second image, the mean value of the distance of the matching key points is taken as the similarity score, and if the similarity score is not less than a preset threshold, the data of both parties has similarity; Through the smart contract, the real owner of the data and the data transaction record are queried in the data ownership registration table and the transaction table according to the infringement related information, the data infringement detection and ownership tracing are realized.
8. A data infringement detection and ownership tracing system, characterized in that, At least including data owner, SGX, smart contract and blockchain, wherein the SGX executes a data infringement detection and ownership tracing method as claimed in any one of claims 1-5, and the data owner executes a data infringement detection and ownership tracing method as claimed in claim 6.