CN117061128B - Verification method and device for data replacement, storage medium and electronic equipment - Google Patents

Verification method and device for data replacement, storage medium and electronic equipment Download PDF

Info

Publication number
CN117061128B
CN117061128B CN202311309486.2A CN202311309486A CN117061128B CN 117061128 B CN117061128 B CN 117061128B CN 202311309486 A CN202311309486 A CN 202311309486A CN 117061128 B CN117061128 B CN 117061128B
Authority
CN
China
Prior art keywords
data
secret
target
value
random number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311309486.2A
Other languages
Chinese (zh)
Other versions
CN117061128A (en
Inventor
俞海清
张舒畅
宋英齐
胡益榕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Tianrun Foundation Technology Development Co ltd
Original Assignee
Beijing Tianrun Foundation Technology Development Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Tianrun Foundation Technology Development Co ltd filed Critical Beijing Tianrun Foundation Technology Development Co ltd
Priority to CN202311309486.2A priority Critical patent/CN117061128B/en
Publication of CN117061128A publication Critical patent/CN117061128A/en
Application granted granted Critical
Publication of CN117061128B publication Critical patent/CN117061128B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

The application provides a verification method and device for data replacement, a storage medium and electronic equipment, and relates to the technical field of information security. The data replacement method comprises the following steps: constructing a target polynomial for verifying data replacement based on first secret data acquired from a data providing end and second secret data acquired from a data calculating end, wherein the first secret data is generated by homomorphic encryption of target data by utilizing a public key sent by a data decrypting end, and the second secret data is generated by replacing the first secret data; substituting the target random number into a target polynomial to obtain a target true value; the target true value is sent to a data decryption end, so that the data decryption end decrypts the target true value to obtain a check value; acquiring a check value sent by a data decryption end; based on the check value, it is verified whether the first and second secret data are permuted with each other. The method and the device prevent the attacker from tampering the data, and ensure the safety of the target data.

Description

Verification method and device for data replacement, storage medium and electronic equipment
Technical Field
The present invention relates to the field of information security technologies, and in particular, to a data replacement verification method, device, storage medium, and electronic apparatus.
Background
In anonymous networks, it is often necessary to sort the secret data after it has been permuted twice to prevent attackers from listening to and acquiring data. However, since the data is in an encrypted state, it is difficult to find whether an attacker tampers the data, thereby reducing the security of the data.
Disclosure of Invention
In view of this, the embodiments of the present application provide a method, an apparatus, a storage medium, and an electronic device for verifying data replacement.
In a first aspect, an embodiment of the present application provides a data replacement verification method, which is applied to a data verification terminal. The method comprises the following steps: constructing a target polynomial for verifying data replacement based on first secret data acquired from a data providing end and second secret data acquired from a data calculating end, wherein the first secret data is generated by homomorphic encryption of target data by utilizing a public key sent by a data decrypting end, and the second secret data is generated by replacing the first secret data; substituting the target random number into a target polynomial to obtain a target true value; the target true value is sent to a data decryption end, so that the data decryption end decrypts the target true value to obtain a check value; acquiring a check value sent by a data decryption end; based on the check value, it is verified whether the first and second secret data are permuted with each other.
With reference to the first aspect, in certain implementation manners of the first aspect, constructing a target polynomial for verifying data substitution based on first secret data acquired from a data providing end and second secret data acquired from a data computing end includes: if the number of the first secret data and the second secret data is n, determining a first data sequence corresponding to the n first secret data and a second data sequence corresponding to the n second secret data, wherein the first secret data on the serial number of the first data sequence and the second secret data on the serial number of the second data sequence are corresponding, and n is a positive integer greater than 1; determining n singletons, wherein the coefficient of each singleton is determined based on the coefficient of the singleton adjacent to the previous singleton and the first secret state data on the serial number of the first data sequence and the second secret state data on the serial number of the second data sequence, which are the same as the number of items where the singletons are located; and carrying out addition data operation or subtraction data operation on the n single expressions to obtain a target polynomial.
With reference to the first aspect, in certain implementations of the first aspect, the target polynomial includes:
wherein,,/>a first data sequence representing a first secret data composition,/a first data sequence representing a second secret data composition >Representing a second data sequence of second secret data, b representing a constant term.
With reference to the first aspect, in certain implementations of the first aspect, the target random number includes a first random number and a second random number, and where the first secret data and the second secret data are permutations of each other, a value of a coefficient of an argument in the target polynomial is zero. Substituting the target random number into the target polynomial to obtain a target true value, including: assigning a value to the independent variable in the target polynomial by using the first random number to obtain the value of the target polynomial; and carrying out addition or subtraction operation on the value of the target polynomial and the second random number to obtain a target true value.
With reference to the first aspect, in certain implementations of the first aspect, verifying whether the first and second secret data are permuted with each other based on the check value includes: and if the check value is equal to the sum of the second random number and the constant term of the target polynomial, determining that the first secret data and the second secret data are replaced.
With reference to the first aspect, in certain implementations of the first aspect, the method further includes: iteratively generating a new target random number according to the target test times; and verifying whether the first secret data and the second secret data are mutually replaced or not by using the new target random number and the target polynomial until the actual verification times reach the target verification times.
With reference to the first aspect, in certain implementations of the first aspect, the data providing end includes a buyer end, the data computing end includes a third party transaction end, and the data decrypting end includes a seller end.
In a second aspect, an embodiment of the present application provides a verification device for data replacement, which is applied to a data verification terminal. The device comprises: the construction module is used for constructing a target polynomial for verifying data replacement based on first secret state data acquired from the data providing end and second secret state data acquired from the data calculating end, wherein the first secret state data is generated by homomorphic encryption of the target data by utilizing a public key sent by the data decrypting end, and the second secret state data is generated by replacing the first secret state data; the determining module is used for substituting the target random number into the target polynomial to obtain a target true value; the sending module is used for sending the target true value to the data decryption end so that the data decryption end decrypts the target true value to obtain a check value; the acquisition module is used for acquiring the check value sent by the data decryption end; and the verification module is used for verifying whether the first secret state data and the second secret state data are mutually replaced or not based on the verification value.
In a third aspect, an embodiment of the present application provides a computer readable storage medium storing a computer program for executing the method according to the first aspect.
In a fourth aspect, an embodiment of the present application provides an electronic device, including: a processor; a memory for storing processor-executable instructions; the processor is configured to perform the method of the first aspect.
The method and the device utilize a zero knowledge verification means to provide verification for the first ciphertext data and the second ciphertext data encrypted by the same homomorphic state, and ensure consistency of the encrypted data before and after processing. Specifically, a target polynomial for verifying data replacement is constructed according to the first secret state data and the second secret state data, a target random number generated by a data verification terminal is substituted into the target polynomial, and whether the first secret state data and the second secret state data are replaced or not is verified through an obtained target true value and a verification value. On one hand, the verification is performed by constructing the target polynomial, the method does not need to preprocess the first secret state data and the second secret state data, is simple and has wide universality, can meet more data replacement verification requirements, and does not leak information of real secret state data. On the other hand, by verifying the first secret state data and the second secret state data, cheating behaviors during data processing can be found more easily, an attacker is prevented from tampering with the data, and data security is ensured.
Drawings
The foregoing and other objects, features and advantages of the present application will become more apparent from the following more particular description of embodiments of the present application, as illustrated in the accompanying drawings. The accompanying drawings are included to provide a further understanding of embodiments of the application and are incorporated in and constitute a part of this specification, illustrate the application and not constitute a limitation to the application. In the drawings, like reference numerals generally refer to like parts or steps.
Fig. 1 is a schematic diagram of an implementation environment of a data replacement method according to an exemplary embodiment of the present application.
Fig. 2 is a flow chart of a verification method of data permutation according to an exemplary embodiment of the present application.
FIG. 3 is a flow chart of a target polynomial construction according to an exemplary embodiment of the present application.
Fig. 4 is a schematic flow chart of obtaining a target true value according to an exemplary embodiment of the present application.
Fig. 5 is a schematic structural diagram of a verification device for data replacement according to an exemplary embodiment of the present application.
Fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
The following description of the technical solutions in the embodiments of the present application will be made clearly and completely with reference to the drawings in the embodiments of the present application, and it is apparent that the described embodiments are only some embodiments of the present application, not all embodiments. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present disclosure.
Fig. 1 is a schematic diagram of an implementation environment of a data replacement method according to an exemplary embodiment of the present application. As shown in fig. 1, the implementation environment provided in the embodiment of the present application includes a data decryption end 10, a data providing end 20, a data calculating end 30, and a data verifying end 40. The data providing terminal 20 is respectively connected with the data decrypting terminal 10, the data calculating terminal 30 and the data verifying terminal 40 in a communication manner, and the data verifying terminal 40 is respectively connected with the data decrypting terminal 10, the data providing terminal 20 and the data calculating terminal 30 in a communication manner.
According to some scene calculation requirements, the data decryption end 10 and the data providing end 20 have low calculation power requirements, and the data calculation end 30 and the data verification end 40 have high calculation power requirements, so in the verification method of data substitution provided in the embodiment of the application, the embodiment corresponding to the data decryption end 10 and the data providing end 20 can be executed by a terminal, and the embodiment corresponding to the data calculation end 30 and the data verification end 40 can be executed by a server. The server may be a stand-alone physical server, or a server cluster composed of a plurality of servers, or a cloud server capable of cloud computing, for example. In addition, the server may be a physical machine or a virtual machine, and the number of the servers may be one or more, which is not limited in the embodiment of the present application. The terminal may be a smart phone, tablet computer, desktop computer, etc.
Specifically, the data decrypting side 10 generates a public key and transmits the public key to the data providing side 20. The data provider 20 encrypts the target data using the public key to obtain first encrypted data. In the specific transaction execution stage, the data providing end 20 sends the first secret data to the data computing end 30 for subsequent processing, and the data computing end 30 processes the first secret data to obtain the second secret data. In order to verify whether the second secret data is tampered, the data verification stage is entered, at which time the data providing terminal 20 sends the first secret data to the data verification terminal 40, and at the same time, the data computing terminal 30 also sends the second secret data to the data verification terminal 40. The data verification terminal 40 constructs a target polynomial for verifying data substitution according to the first secret state data and the second secret state data, generates a target random number, and obtains a target true value by solving the value of the target polynomial by using the target random number. Since the target true value is associated with the public key of the data decryption terminal 10, the data verification terminal 40 transmits the target true value to the data decryption terminal 10. The data decryption terminal 10 decrypts the target true value by using the stored private key to obtain a check value, and sends the check value to the data verification terminal 40. The data verification terminal 40 determines whether the first encrypted data and the second encrypted data are replaced with each other according to the verification value, that is, determines whether the plaintext data corresponding to the first encrypted data and the plaintext data corresponding to the second encrypted data are replaced with each other.
Fig. 2 is a flow chart of a verification method of data permutation according to an exemplary embodiment of the present application. Specifically, the verification method of data substitution relates to a data providing end, a data calculating end, a data decrypting end and a data verifying end. As shown in fig. 2, in the embodiment of the present application, the data permutation method includes the following steps.
Step S210, generating public and private key pairs.
Specifically, the data decryption end generates a public-private key pair, the data decryption end is a trusted third party authority and has a private key for homomorphic decryptionIts corresponding public key for homomorphic encryption ++>Is available to all participants of the same transaction (in this embodiment the data provider).
The data decryption end generates a public-private key pair by using a public-private key generation algorithm, wherein the public-private key generation algorithm is an encryption algorithm, and the generated public-private key pair can be used in the fields of digital signature, data encryption, identity authentication and the like. The basic principle of the public and private key generation algorithm is as follows: selecting two large primesAnd->And calculate their product +.>The method comprises the steps of carrying out a first treatment on the surface of the According to the definition of Euler function, calculate +.>Integer number of mutual substances->=/>The method comprises the steps of carrying out a first treatment on the surface of the Selecting a value less than->Integer>So that->And- >Mutual quality; calculate->About->Is modulo reverse element->I.e. satisfy->=1; public key is +.>The private key is +.>
Step S220, the public key in the public-private key pair is transmitted.
Specifically, the data decryption end sends the public key in the public-private key pair to the data providing end. In this embodiment, before the data decryption end sends the public key to the data providing end, the communication environment of the data decryption end and the public key is ensured to be safe and reliable, for example, the data decryption end sends the public key to the data providing end through a trusted execution environment. The trusted execution environment is a safe area constructed by a software and hardware method on the computing platform, can ensure that codes and data loaded in the safe area are protected in terms of confidentiality and integrity, and aims to ensure that a task is executed according to expectations, and ensure confidentiality and integrity of an initial state and confidentiality and integrity of a running state. That is, code running in a trusted execution environment, as well as the associated data generated, may be considered trusted.
In step S230, homomorphic encryption is performed on the target data by using the public key, so as to generate first encrypted data.
The data providing end owns the target dataAnd use public key +.>Homomorphic encryption is carried out on target data to obtain first secret state data +. >. The format of the first secret data may be binary, quaternary, etc.
With the rapid popularization of intelligent terminal devices, a large amount of personal information data is collected by various network platforms. While in real life personal information is easily revealed; or, in the data transmission of multiparty interaction, the data is easily intercepted and tampered. Thus, data encryption is a very effective way to combat data attacks, both active and passive, in terms of privacy and security protection. In the data encryption technology, homomorphic encryption is an algorithm for completely transferring and calculating data in a ciphertext form, and the algorithm can ensure that the calculation of the ciphertext form is identical to the calculation of a plaintext form and is suitable for scenes such as outsourcing calculation, joint modeling and the like. Common homomorphic encryption components include addition homomorphic, multiplication homomorphic, partial homomorphic, and full homomorphic. Addition homomorphism: the family of homomorphic functions supported is all functions that can be implemented by addition only, with the paillier addition homomorphic being used more widely. Multiplication homomorphism: the family of homomorphic functions supported is all functions that can be implemented by multiplication only, such as classical RSA encryption schemes. Partially fully homomorphic: the family of homomorphic functions supported is a function that can be implemented with a limited number of additions and a limited number of multiplications. All homomorphism: all additions and multiplications of the supported homomorphic function families may implement functions such as BGV, BFV, CKKS.
Specifically, for target dataHomomorphic encryption is performed to obtain first secret data +.>Satisfy->Is->Ciphertext of->Is arbitrarily belonging to a certain function family->The target data may be a single plaintext or a plaintext vector, and the corresponding first ciphertext data may be a single ciphertext or a ciphertext vector. Function family->Is a homomorphic family of functions for the scheme, i.e., a collection of all functions supported by the homomorphic encryption scheme that can be homomorphically computed. Such as->,/>Is->Ciphertext (f)Is->Is a ciphertext of (a).
In some implementations, before homomorphic encrypting the target data, further comprising: determining the data length of target data; judging whether the data length meets the length condition or not; if the data length meets the length condition, homomorphic encryption is carried out on the target data; if the data length does not meet the length condition, filling the length of the target data according to a data filling rule to obtain filled target data; homomorphic encryption is carried out on the filled target data. The length condition may be set according to the requirement, and the preset data filling rule may be PKCS7 (a syntax standard of an encrypted message). If the length of the target data is too short, and if the public key is not specially set, the length of the first encrypted data obtained after encryption is not long, then an attacker easily enumerates and lists all the mappings of the target data and the first encrypted data, so that the security of the generated first encrypted data can be ensured by fixing the target data at a certain length.
In other implementations, in order to avoid using the same public key to encrypt the target data multiple times, the target data is associated by a malicious node, so that the identity or the data of the data providing end is revealed, a random number g is increased according to a probability encryption idea during encryption, and the random number g is encrypted and sent to the data computing end together with the first secret state data during encryption, so that the attack of selecting plaintext is resisted.
In addition, the target data in this embodiment may select whether to store in the uplink or not, considering the importance of the communication content in different scenes. For important target data, it can be recorded in the blockchain network to prevent the data from being attacked and lost. Non-important target data can be stored through the IPFS system to improve communication efficiency. When the target data with traceable requirements are in uplink, short data smaller than 1KB can be encrypted and then directly stored in a block chain, long data larger than 1KB is firstly stored in an IPFS system, and then file addresses are in uplink storage.
When the digest data of the target data needs to be uplink, in order to ensure the credibility and the non-tamper property of the content of the target data, in this embodiment, hash digest calculation is performed on the target data, and the digest value is recorded. Illustratively, the digest value is packed into a data block, the data block comprising a data header and a data body, the data header being comprised of a timestamp and a total hash value of the data block in a merck tree structure; the data block contains a plurality of data entries, each data entry containing a timestamp associated with the piece of data, a sender, a receiver, and an address of the data in the IPFS system. The size of each piece of data is controlled within 1KB, so that the verification of the node is facilitated. If the metadata is common data, the metadata hash value stored in the data entry is an IPFS file hash address value. In the blockchain, each data entry is stored in a merck tree structure, facilitating verification of the data.
Step S240, the first secret data is sent.
Specifically, the data providing end sends the first secret state data to the data computing end in the trusted execution environment, and the data computing end provides the identical data processing capability due to the fact that no secret key is arranged on the handThe plaintext cannot be decrypted, but the data may be added or removed or tampered with by using isomorphous properties.
Step S250, the first secret data is replaced to generate second secret data.
Specifically, the data computing end performs permutation on the first secret state data to generate second secret state data. The format of the second encrypted data is the same as the format of the first encrypted data.
In this embodiment, the permutation refers to processing the first secret data in a specific manner to change it into the second secret data with another data rule. For example, the first secret data is recorded asThe second secret data may be denoted +.>. In this embodiment, the specific processing manner of the first secret data is not limited.
The data replacement can be applied to the field of data comparison, common comparison algorithms comprise order preserving encryption and order uncovering encryption derived from the order preserving encryption, and the order preserving encryption and the order uncovering encryption can reflect the property of the size relation of plaintext data directly through the size relation of the secret state data, so that the data are compared. However, this means that an attacker with access to the secret database can perform a certain calculation on the plaintext data, which in turn causes a certain degree of privacy disclosure. In a voting system or an auction system, the secret data is often hooked directly with the identity of the message source, and if an attacker can directly judge the relative size of the plaintext data according to the secret data, the calculation about the plaintext data which the attacker can make threatens to the security of the voting system and the auction system directly. In particular, an attacker can directly obtain accurate estimation of plaintext data according to the self-guessed secret data by generating some guessed secret data and continuously approximating the guessed secret data to given secret data. Therefore, the security of the data can be further ensured by replacing the secret data and sequencing the replaced secret data. In an auction system: multiple buyers (i.e., data providers) respectively present respective prices for the target orders, the prices being noted as Homomorphic encryption is carried out on the data by utilizing a public key provided by a data decryption end, so as to obtain first secret state data which is recorded as. Data computing terminal pair->Re-encrypting to obtain->Second secret data, and for +.>The comparison of the data sizes is performed to obtain an arrangement, of which the mostFront +.>The corresponding buyer is marked as the winning bid.
Step S260, the second secret data is sent.
Similarly, the data computing end sends the second secret data to the data verification end in the trusted execution environment.
Step S270, the first secret data is sent.
Specifically, the data providing end sends the first secret state data to the data verification end in the trusted execution environment.
Step S280, constructing a target polynomial for verifying data substitution based on the first secret data and the second secret data.
Specifically, the data verification terminal constructs a target polynomial for verifying data substitution based on the first secret data and the second secret data. Illustratively, the target polynomial+……+/>Coefficients +/of each individual in the target polynomial>(/>) Are jointly determined by the first and second secret data.
In step S290, the target random number is substituted into the target polynomial to obtain the target true value.
Specifically, the data verification terminal substitutes the target random number into the target polynomial to obtain the target true value. That is, according to the target random number, the independent variable x in the target polynomial is assigned to obtain the value of the target polynomial, namely the target true value.
In step S2100, a target truth value is sent.
Specifically, the data verification end sends a target true value to the data decryption end through the trusted execution environment.
Step S2110, decrypting the target true value to obtain the check value.
Specifically, the data decryption end decrypts the target true value to obtain the check value. And the data decryption end decrypts the target true value by using the private key to obtain a check value. In some implementations, before the data decryption end decrypts the target true value, the attribute features of the data verification end are verified, if the attribute features meet the access requirement, the target true value is decrypted, and if not, the target true value is stopped from being decrypted.
Step S2120, a check value is transmitted.
Specifically, the data decryption end sends the check value to the data verification end in the trusted execution environment.
In step S2130, based on the check value, it is verified whether the first and second secret data are permuted with each other.
If the first encrypted data before processing isThe second secret data after treatment is +.>Verifying whether the first secret data and the second secret data are replaced by each other, namely proving +.>Corresponding plaintext->Andcorresponding plaintext->Whether or not they are substituted for each other.
Specifically, the data verification terminal verifies whether the first secret data and the second secret data are mutually replaced or not based on the verification value. If the check value is consistent with the preset value, the first secret data and the second secret data are proved to be replaced, namely, the plaintext corresponding to the first secret data and the plaintext corresponding to the second secret data are proved to be replaced; and if the second secret data is inconsistent, the second secret data is characterized with high probability of being tampered.
The method and the device utilize a zero knowledge verification means to provide verification for the first ciphertext data and the second ciphertext data encrypted by the same homomorphic state, and ensure consistency of the encrypted data before and after processing. Specifically, a target polynomial for verifying data replacement is constructed according to the first secret state data and the second secret state data, a target random number generated by a data verification terminal is substituted into the target polynomial, and whether the first secret state data and the second secret state data are replaced or not is verified through an obtained target true value and a verification value. On one hand, the verification is performed by constructing the target polynomial, the method does not need to preprocess the first secret state data and the second secret state data, is simple and has wide universality, can meet more data replacement verification requirements, and does not leak information of real secret state data. On the other hand, by verifying the first secret state data and the second secret state data, cheating behaviors during data processing can be found more easily, an attacker is prevented from tampering with the data, and data security is ensured.
In some embodiments, a new target random number may also be iteratively generated based on the target verification times; and verifying whether the first secret data and the second secret data are mutually replaced or not by using the new target random number and the target polynomial until the actual verification times reach the target verification times.
If one verification is successful, there may be a small probability of being tampered, and in order to prevent the occurrence of accidental risk events, the target verification times may be set(/>Positive integer greater than 1) and generate +.>Target random numberContinuously verifying the check value corresponding to the target polynomial, if +.>And the secondary results show that the first secret data and the second secret data are replaced, and the second secret data is considered not to be tampered. By the method in the embodiment, the safety of the second secret state data can be ensured to the greatest extent, and tolerance events with small probability are prevented from occurring.
In some embodiments, the data providing end comprises a buyer end, the data computing end comprises a third party transaction end, and the data decrypting end comprises a seller end.
In a privacy auction scenario, it is often necessary to cryptographically protect the price of a bid, and one common approach is to fully homomorphic encrypt the bid. The full homomorphic encryption is utilized, the calculation can be directly carried out on the secret state data, and therefore the optimal bidding is obtained. However, for the calculation result, a person without a key cannot verify whether the optimal bid is indeed out of these bids, and since all bids are encryption status, it is difficult to find cheating in the calculation.
In an exemplary scenario in this embodiment, a seller side provides a tradable order, sets an order base price for the order, generates a public-private key pair, and sends a public key of the public-private key pair to a buyer side. The buyer side provides respective bid prices for the tradable order, in order to ensure privacy security of the bid prices of the buyer side and avoid price change of other buyers, the buyer side encrypts the bid prices by using a public key provided by the seller side to obtain first secret state data, and the first secret state data is sent to the third party transaction side. The third party transaction end sorts the first secret state data of the plurality of buyer ends, and the arrangement result of the second secret state data based on the first secret state data is obtained. In order to prevent the data from being attacked and tampered, the buyer side sends the first secret data and the third party transaction side sends the second secret data to the data verification side, and the data verification side verifies the first secret data and the second secret data by using the method in the embodiment shown in fig. 2. By the method in the embodiment, cheating behaviors in the bid price can be found as early as possible, and the safety and fairness of transactions are ensured.
FIG. 3 is a flow chart of a target polynomial construction according to an exemplary embodiment of the present application. The embodiment shown in fig. 3 is extended on the basis of the embodiment corresponding to the data verification end shown in fig. 2, and differences between the embodiment shown in fig. 3 and the embodiment shown in fig. 2 are described in detail, and are not repeated.
As shown in fig. 3, in the embodiment of the present application, a target polynomial for verifying data substitution is constructed based on first secret data acquired from a data providing end and second secret data acquired from a data calculating end, which includes the following steps.
In step S310, if the number of the first secret data and the second secret data is n, determining a first data sequence corresponding to the n first secret data and a second data sequence corresponding to the n second secret data.
The first secret data on the serial number of the first data sequence corresponds to the second secret data on the serial number of the second data sequence, and n is a positive integer greater than 1. The first data sequence is illustratively expressed asThe second data sequence is denoted +.>
Step S320, n single expressions are determined.
The coefficient of each single is determined based on the coefficient of the single immediately preceding the single, and the first secret data on the sequence number of the first data sequence and the second secret data on the sequence number of the second data sequence that are the same as the number of items in which the single is located.
Illustratively, the target polynomial includes:
wherein,,/>a first data sequence representing a first secret data composition,/a first data sequence representing a second secret data composition>Representing a second data sequence of second secret data, b representing a constant term.
In step S330, the n single expressions are subjected to addition data operation or subtraction data operation to obtain the target polynomial.
In addition to the addition of each single equation shown in step S320, each single equation may be subtracted. As long as the first secret data and the second secret data corresponding to the serial numbers are replaced by each other, whether the polynomial is subjected to addition operation or subtraction operation, the calculation result plaintext of the target polynomial is b.
The above target polynomial may also be expressed as follows:
the above formula is developed as follows:
*……*/>*……*/>
it can be seen that when the first secret dataAnd second secret data->When the two are replaced, the corresponding plaintext is the same, then the data is decodedDense end pair->During decryption, the->And->The values of (2) are identical, likewise, (-)>Andis the same, +.>And->The values of (2) are the same, therefore +.>Equal to->
As can be seen by way of example in this embodiment, when the first secret data and the second secret data are permuted with each other, the target polynomial may have multiple expression forms, but the calculation result of the target polynomial of each form is zero. Through the target polynomial in this embodiment, verification whether the first secret data and the second secret data are replacement data or not can be achieved. In addition, in the target polynomial, the coefficients of each single term are dependent on the coefficients of the previous polynomial except the first term polynomial, so that the difficulty of data tampering is increased, the cheating cost is increased, and the accuracy of the verification result is further ensured.
Fig. 4 is a schematic flow chart of obtaining a target true value according to an exemplary embodiment of the present application. The embodiment shown in fig. 4 is extended from the embodiment shown in fig. 2, and differences between the embodiment shown in fig. 4 and the embodiment shown in fig. 2 are described with emphasis, and the details of the differences are not repeated.
As shown in fig. 4, in the embodiment of the present application, the target random number includes a first random number and a second random number, and in the case where the first secret data and the second secret data are permutated with each other, the value of the coefficient of the argument in the target polynomial is zero. Substituting the target random number into the target polynomial to obtain a target true value, comprising the following steps.
In step S410, the first random number is used to assign a value to the argument in the target polynomial, so as to obtain the value of the target polynomial.
In this embodiment, the constant term of the target polynomial may be an arbitrary value. Illustratively, the first random number is noted asThe second random number is marked +.>The value of the target polynomial is recorded as +.>
In step S420, the value of the target polynomial and the second random number are added or subtracted to obtain a target true value.
Illustratively, the target truth value is recorded as
Based on the embodiment shown in fig. 4, when the constant term of the target polynomial is zero, verifying whether the first secret data and the second secret data are permuted with each other based on the check value includes: and if the check value is the same as the second random number, determining that the first secret data and the second secret data are replaced.
In other words, in the case where the first secret data and the second secret data are permutated from each other,the decrypted plaintext data is zero, then the check value is +.>. Therefore, whether the first secret data and the second secret data are replaced can be determined by only comparing whether the check value is the same as the second random number.
Based on the implementation shown in fig. 4, when the constant term of the target polynomial is not zero, the data verification end records the constant term when the target polynomial is constructedAt this time, verifying whether the first and second secret data are permuted with each other based on the check value includes: and if the check value is equal to the sum of the second random number and the constant term of the target polynomial, determining that the first secret data and the second secret data are replaced.
Similarly, in the case where the first secret data and the second secret data are permuted with each other,the decrypted plaintext data is zero and the check value is +.>Therefore, if the check value received by the data verification terminal is exactly equal to the sum of the constant term and the second random number, it indicates that the first secret data and the second secret data are replaced with each other.
In this embodiment, when the first secret data and the second secret data are replaced with each other, it is ensured that the value of the coefficient of the argument of the target polynomial is 0, and the target polynomial is constructed by the data verification terminal, and the second random number is generated by the data verification terminal, that is, the constant term and the second random number are known to the data verification terminal, the data verification terminal can verify whether the first secret data and the second secret data are replaced with each other simply and quickly by the second random number or the sum of the constant term and the second random number of the target polynomial, and specific data will not be revealed.
The embodiment of the verification method for data permutation of the present application is described in detail above with reference to fig. 2 to 4, and the embodiment of the verification apparatus for data permutation of the present application is described in detail below with reference to fig. 5. It should be understood that the description of the verification method embodiment of the data permutation corresponds to the description of the verification apparatus embodiment of the data permutation, and thus, a part not described in detail may refer to the previous method embodiment.
Fig. 5 is a schematic structural diagram of a verification device for data replacement according to an exemplary embodiment of the present application. The device is illustratively applied to a data verification terminal. As shown in fig. 5, the verification device 50 for data permutation provided in the embodiment of the present application includes:
the construction module 510 is configured to construct a target polynomial for verifying data replacement based on first secret data obtained from the data providing end and second secret data obtained from the data computing end, where the first secret data is generated by homomorphic encryption of the target data using a public key sent by the data decrypting end, and the second secret data is generated by replacing the first secret data;
a determining module 520, configured to substitute the target random number into the target polynomial to obtain a target true value;
The sending module 530 is configured to send the target true value to the data decryption end, so that the data decryption end decrypts the target true value to obtain a check value;
an obtaining module 540, configured to obtain a check value sent by the data decryption end;
the verification module 550 is configured to verify whether the first secret data and the second secret data are permuted with each other based on the check value.
In an embodiment of the present application, if the number of the first secret data and the second secret data is n, determining a first data sequence corresponding to the n first secret data and a second data sequence corresponding to the n second secret data, where the first secret data on the serial number of the first data sequence and the second secret data on the serial number of the second data sequence are corresponding, and n is a positive integer greater than 1; determining n singletons, wherein the coefficient of each singleton is determined based on the coefficient of the singleton adjacent to the previous singleton and the first secret state data on the serial number of the first data sequence and the second secret state data on the serial number of the second data sequence, which are the same as the number of items where the singletons are located; and carrying out addition data operation or subtraction data operation on the n single expressions to obtain a target polynomial.
In one embodiment of the present application, the target polynomial includes:
wherein,,/>a first data sequence representing a first secret data composition,/a first data sequence representing a second secret data composition>Representing a second data sequence of second secret data, b representing a constant term.
In an embodiment of the present application, the target random number includes a first random number and a second random number, and in a case where the first secret data and the second secret data are permutated with each other, a value of a coefficient of an argument in the target polynomial is zero. The determining module 520 is further configured to assign a value to the argument in the target polynomial by using the first random number, so as to obtain a value of the target polynomial; and carrying out addition or subtraction operation on the value of the target polynomial and the second random number to obtain a target true value.
In an embodiment of the present application, the verification module 550 is further configured to determine that the first secret data and the second secret data are permuted if the verification value is equal to a sum of the second random number and a constant term of the target polynomial.
In an embodiment of the present application, the verification module 550 is further configured to iteratively generate a new target random number according to the target verification number; and verifying whether the first secret data and the second secret data are mutually replaced or not by using the new target random number and the target polynomial until the actual verification times reach the target verification times.
In an embodiment of the present application, the data providing end includes a buyer end, the data calculating end includes a third party transaction end, and the data decrypting end includes a seller end.
Next, an electronic device according to an embodiment of the present application is described with reference to fig. 6. Fig. 6 is a schematic structural diagram of an electronic device according to an exemplary embodiment of the present application.
As shown in fig. 6, the electronic device 60 includes one or more processors 601 and memory 602.
The processor 601 may be a Central Processing Unit (CPU) or other form of processing unit having data processing and/or instruction execution capabilities and may control other components in the electronic device 60 to perform desired functions.
The memory 602 may include one or more computer program products that may include various forms of computer-readable storage media, such as volatile memory and/or non-volatile memory. The volatile memory may include, for example, random Access Memory (RAM) and/or cache memory (cache), and the like. The non-volatile memory may include, for example, read Only Memory (ROM), hard disk, flash memory, and the like. One or more computer program instructions may be stored on the computer readable storage medium that can be executed by the processor 601 to implement the verification method of data permutation and/or other desired functions of the various embodiments of the present application described above. Various content, such as including first secret data, second secret data, target polynomials, target random numbers, target true values, check values, etc., may also be stored in the computer-readable storage medium.
In one example, the electronic device 60 may further include: input device 603 and output device 604, which are interconnected by a bus system and/or other form of connection mechanism (not shown).
The input device 603 may include, for example, a keyboard, a mouse, and the like.
The output device 604 may output various information to the outside, including the first secret data, the second secret data, the target polynomial, the target random number, the target true value, the check value, and the like. The output means 604 may include, for example, a display, speakers, a printer, and a communication network and remote output devices connected thereto, etc.
Of course, only some of the components of the electronic device 60 that are relevant to the present application are shown in fig. 6 for simplicity, components such as buses, input/output interfaces, etc. are omitted. In addition, the electronic device 60 may include any other suitable components depending on the particular application.
In addition to the methods and apparatus described above, embodiments of the present application may also be a computer program product comprising computer program instructions which, when executed by a processor, cause the processor to perform the steps in the verification method of data permutation according to various embodiments of the present application described above in the present specification.
The computer program product may write program code for performing the operations of embodiments of the present application in any combination of one or more programming languages, including an object oriented programming language such as Java, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device, partly on a remote computing device, or entirely on the remote computing device or server.
Furthermore, embodiments of the present application may also be a computer-readable storage medium, having stored thereon computer program instructions, which when executed by a processor, cause the processor to perform the steps in the verification method of data permutation according to various embodiments of the present application described above in the present specification.
The computer readable storage medium may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may include, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The basic principles of the present application have been described above in connection with specific embodiments, however, it should be noted that the advantages, benefits, effects, etc. mentioned in the present application are merely examples and not limiting, and these advantages, benefits, effects, etc. are not to be considered as necessarily possessed by the various embodiments of the present application. Furthermore, the specific details disclosed herein are for purposes of illustration and understanding only, and are not intended to be limiting, as the application is not intended to be limited to the details disclosed herein as such.
The block diagrams of the devices, apparatuses, devices, systems referred to in this application are only illustrative examples and are not intended to require or imply that the connections, arrangements, configurations must be made in the manner shown in the block diagrams. As will be appreciated by one of skill in the art, the devices, apparatuses, devices, systems may be connected, arranged, configured in any manner. Words such as "including," "comprising," "having," and the like are words of openness and mean "including but not limited to," and are used interchangeably therewith. The terms "or" and "as used herein refer to and are used interchangeably with the term" and/or "unless the context clearly indicates otherwise. The term "such as" as used herein refers to, and is used interchangeably with, the phrase "such as, but not limited to.
It is also noted that in the apparatus, devices and methods of the present application, the components or steps may be disassembled and/or assembled. Such decomposition and/or recombination should be considered as equivalent to the present application.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the scope of the application. Thus, the present application is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
The foregoing description has been presented for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of the application to the form disclosed herein. Although a number of example aspects and embodiments have been discussed above, a person of ordinary skill in the art will recognize certain variations, modifications, alterations, additions, and subcombinations thereof.

Claims (8)

1. A method for verifying data permutation, applied to a data verification terminal, the method comprising:
Constructing a target polynomial for verifying data replacement based on first secret data acquired from a data providing end and second secret data acquired from a data calculating end, wherein the first secret data is generated by homomorphic encryption of target data by using a public key sent by a data decrypting end, and the second secret data is generated by replacing the first secret data;
substituting the target random number into the target polynomial to obtain a target true value;
the target true value is sent to the data decryption end, so that the data decryption end decrypts the target true value to obtain a check value;
acquiring a check value sent by the data decryption end;
verifying whether the first secret data and the second secret data are replaced with each other based on the verification value;
the construction of the target polynomial for verifying data substitution based on the first secret data obtained from the data providing end and the second secret data obtained from the data calculating end comprises the following steps:
if the number of the first secret data and the number of the second secret data are n, determining a first data sequence corresponding to the n first secret data and a second data sequence corresponding to the n second secret data, wherein the first secret data on the serial number of the first data sequence and the second secret data on the serial number of the second data sequence are corresponding, and n is a positive integer greater than 1;
Determining n singletons, wherein the coefficient of each singleton is determined based on the coefficient of a singleton adjacent to the singleton before and the first secret state data on the serial number of the first data sequence and the second secret state data on the serial number of the second data sequence, wherein the number of the items of the first secret state data is the same as that of the singletons;
performing addition data operation or subtraction data operation on the n single expressions to obtain the target polynomial;
the target random number comprises a first random number and a second random number, and the value of the coefficient of the independent variable in the target polynomial is zero under the condition that the first secret state data and the second secret state data are replaced; substituting the target random number into the target polynomial to obtain a target true value, including:
assigning a value to the independent variable in the target polynomial by using the first random number to obtain the value of the target polynomial;
and carrying out addition or subtraction operation on the value of the target polynomial and the second random number to obtain the target true value.
2. The method of claim 1, wherein the target polynomial comprises:
wherein,first secret data representing a sequence number i in a first data sequence,/for the first data sequence >And b represents a constant term.
3. The method of claim 1, wherein verifying whether the first and second secret data are permuted with each other based on the check value comprises:
and if the check value is equal to the sum of the second random number and the constant term of the target polynomial, determining that the first secret data and the second secret data are replaced by each other.
4. A method according to any one of claims 1 to 3, further comprising:
iteratively generating a new target random number according to the target test times;
and verifying whether the first secret state data and the second secret state data are mutually replaced or not by utilizing the new target random number and the target polynomial until the actual verification times reach the target verification times.
5. A method according to any one of claims 1 to 3, wherein the data providing end comprises a buyer end, the data computing end comprises a third party transaction end, and the data decrypting end comprises a seller end.
6. A data permutation verification apparatus for use at a data verification terminal, the apparatus comprising:
The construction module is used for constructing a target polynomial for verifying data replacement based on first secret state data acquired from a data providing end and second secret state data acquired from a data calculating end, wherein the first secret state data is generated by homomorphic encryption of target data by utilizing a public key sent by a data decrypting end, and the second secret state data is generated by replacing the first secret state data;
the determining module is used for substituting the target random number into the target polynomial to obtain a target true value;
the sending module is used for sending the target true value to the data decryption end so that the data decryption end decrypts the target true value to obtain a check value;
the acquisition module is used for acquiring the check value sent by the data decryption end;
the verification module is used for verifying whether the first secret state data and the second secret state data are replaced or not based on the verification value;
the construction module is further configured to determine, if the number of the first secret data and the second secret data is n, a first data sequence corresponding to the n first secret data and a second data sequence corresponding to the n second secret data, where the first secret data on the serial number of the first data sequence and the second secret data on the serial number of the second data sequence are corresponding, and n is a positive integer greater than 1; determining n singletons, wherein the coefficient of each singleton is determined based on the coefficient of a singleton adjacent to the singleton before and the first secret state data on the serial number of the first data sequence and the second secret state data on the serial number of the second data sequence, wherein the number of the items of the first secret state data is the same as that of the singletons; performing addition data operation or subtraction data operation on the n single expressions to obtain the target polynomial;
The target random number comprises a first random number and a second random number, and the value of the coefficient of the independent variable in the target polynomial is zero under the condition that the first secret state data and the second secret state data are replaced; the determining module is further configured to assign a value to an argument in the target polynomial by using the first random number, so as to obtain a value of the target polynomial; and carrying out addition or subtraction operation on the value of the target polynomial and the second random number to obtain the target true value.
7. A computer readable storage medium, characterized in that the storage medium stores a computer program for executing the method of any of the preceding claims 1 to 5.
8. An electronic device, comprising:
a processor;
a memory for storing the processor-executable instructions;
the processor being configured to perform the method of any of the preceding claims 1 to 5.
CN202311309486.2A 2023-10-11 2023-10-11 Verification method and device for data replacement, storage medium and electronic equipment Active CN117061128B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311309486.2A CN117061128B (en) 2023-10-11 2023-10-11 Verification method and device for data replacement, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311309486.2A CN117061128B (en) 2023-10-11 2023-10-11 Verification method and device for data replacement, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN117061128A CN117061128A (en) 2023-11-14
CN117061128B true CN117061128B (en) 2023-12-22

Family

ID=88663009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311309486.2A Active CN117061128B (en) 2023-10-11 2023-10-11 Verification method and device for data replacement, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN117061128B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2112518A1 (en) * 1992-12-30 1994-07-01 Jacques Stern Process for the authentication of at least one identification device using a verification device and implementation device
JP2007133860A (en) * 2005-10-12 2007-05-31 Matsushita Electric Ind Co Ltd Program loader with tampering verification function for load-destination information, processor including program loader, data processing device including processor, program loading method, and integrated circuit
CN107766909A (en) * 2017-11-01 2018-03-06 厦门物之联智能科技有限公司 The method and system of anti-tamper processing is carried out to two-dimension code pattern

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9274976B2 (en) * 2010-11-05 2016-03-01 Apple Inc. Code tampering protection for insecure environments

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2112518A1 (en) * 1992-12-30 1994-07-01 Jacques Stern Process for the authentication of at least one identification device using a verification device and implementation device
JP2007133860A (en) * 2005-10-12 2007-05-31 Matsushita Electric Ind Co Ltd Program loader with tampering verification function for load-destination information, processor including program loader, data processing device including processor, program loading method, and integrated circuit
CN107766909A (en) * 2017-11-01 2018-03-06 厦门物之联智能科技有限公司 The method and system of anti-tamper processing is carried out to two-dimension code pattern

Also Published As

Publication number Publication date
CN117061128A (en) 2023-11-14

Similar Documents

Publication Publication Date Title
US11082482B2 (en) Block chain encoding with fair delay for distributed network devices
US10552631B2 (en) Efficient implementation for differential privacy using cryptographic functions
CN111523891A (en) Block chain based information encryption method, device, equipment and storage medium
CN108197439A (en) A kind of file encrypting method, device and server
CN113051590A (en) Data processing method and related equipment
WO2017006118A1 (en) Secure distributed encryption system and method
CN115102688A (en) Data processing method, polynomial calculation method and electronic equipment
CN114154174A (en) State synchronization for post-quantum signature facilities
CN114443718A (en) Data query method and system
WO2014030706A1 (en) Encrypted database system, client device and server, method and program for adding encrypted data
CN108229192A (en) A kind of file decryption method, apparatus and client
CN112800479B (en) Multi-party combined data processing method and device by using trusted third party
Syam Kumar et al. RSA-based dynamic public audit service for integrity verification of data storage in cloud computing using Sobol sequence
CN114514550A (en) Partitioning requests into blockchains
CN117061128B (en) Verification method and device for data replacement, storage medium and electronic equipment
WO2022110716A1 (en) Cold start recommendation method and apparatus, computer device and storage medium
CN113645022A (en) Method and device for determining privacy set intersection, electronic equipment and storage medium
CN113347270A (en) Method and device for preventing horizontal unauthorized network transmission file
CN114006689B (en) Data processing method, device and medium based on federal learning
JP2011109510A (en) Originality assurance device, originality assurance program, and recording medium for recording the same
Keerthana et al. Slicing, Tokenization, and Encryption Based Combinational Approach to Protect Data-at-Rest in Cloud Using TF-Sec Model
CN116975935B (en) Data comparison method, storage medium and electronic device
Yu et al. A novel fair and verifiable data trading scheme
CN117454437B (en) Transaction processing method, storage medium and electronic device
Arora et al. A Variant of Secret Sharing Protected with Poly-1305

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant