[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN109495478B - Block chain-based distributed secure communication method and system - Google Patents

Block chain-based distributed secure communication method and system Download PDF

Info

Publication number
CN109495478B
CN109495478B CN201811384049.6A CN201811384049A CN109495478B CN 109495478 B CN109495478 B CN 109495478B CN 201811384049 A CN201811384049 A CN 201811384049A CN 109495478 B CN109495478 B CN 109495478B
Authority
CN
China
Prior art keywords
communication
session key
key
block chain
public
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
CN201811384049.6A
Other languages
Chinese (zh)
Other versions
CN109495478A (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.)
Guilin University of Electronic Technology
Original Assignee
Guilin University of Electronic Technology
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 Guilin University of Electronic Technology filed Critical Guilin University of Electronic Technology
Priority to CN201811384049.6A priority Critical patent/CN109495478B/en
Publication of CN109495478A publication Critical patent/CN109495478A/en
Application granted granted Critical
Publication of CN109495478B publication Critical patent/CN109495478B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/126Applying verification of the received information the source of the received data
    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a distributed safety communication method based on a block chain, which comprises the following steps: generating a system public parameter, and writing the system public parameter into a block chain; each user generates a respective public key and a private key according to the system public parameters, and writes the respective public key into the block chain, wherein the users comprise a communication initiator and a communication receiver; a communication initiator executes an encryption process according to a group of public keys of the communication receiver and generates parameters related to a session key and ciphertext data, and the parameters related to the session key and the ciphertext data are written into a block chain; and each communication receiver reads the relevant session key relevant parameters and the ciphertext data from the block chain, recovers the session key and further decrypts the session key to obtain plaintext data. The invention provides a method for processing, distributing and recovering the session key and encrypting and decrypting the data under a distributed environment, which can ensure the privacy of the session key and the user data in the transmission process.

Description

Block chain-based distributed secure communication method and system
Technical Field
The invention relates to the field of information security passwords, in particular to a distributed security communication method and system based on a block chain.
Background
With the rapid development and popularization of information technology, various intelligent devices have been gradually applied to various aspects of people's work and life. When people hold intelligent devices to work under the field condition, the intelligent devices are often required to be capable of self-organizing networking and cooperate with each other to complete target tasks. In this process, each smart device, as a distributed communication node, needs to be able to maintain effective communication with other nodes and to be able to effectively verify the source of the received information. In addition, in some special application scenarios, all previous communication information often needs to be audited retrospectively, for example, malicious information sources are tracked. Therefore, it is important to ensure the security, confidentiality and verifiability of the communication content in the distributed communication environment.
With existing broadcast encryption techniques, a user can send the same data content to multiple recipients at the same time. However, when the amount of data to be transmitted is large, the method of directly encrypting the message by using the broadcast encryption technology is inefficient. The mixed encryption technology consisting of broadcast encryption and symmetric encryption can be used, namely, a user selects a random session key, the session key is protected by using the broadcast encryption technology, plaintext information is processed by using the symmetric encryption technology, and finally the key in the form of ciphertext and the information are sent out simultaneously. Although the hybrid encryption method improves certain computational efficiency compared with the single use of the broadcast encryption technology, the problems of verification and audit of communication sources are still not solved.
Disclosure of Invention
In view of the above shortcomings in the prior art, the present invention aims to provide a block chain based distributed secure communication method and system, which aim to solve the problems of privacy protection, source verification and audit of communication data in a distributed environment.
To achieve the above and other related objects, the present invention provides a block chain-based distributed secure communication method, including:
generating a system public parameter, and writing the system public parameter into a block chain;
each user generates a respective public key and a private key according to the system public parameters, and writes the respective public key into the block chain, wherein the users comprise a communication initiator and a communication receiver;
a communication initiator executes an encryption process according to a group of public keys of the communication receiver and generates parameters related to a session key and ciphertext data, and the parameters related to the session key and the ciphertext data are written into a block chain;
and each communication receiver reads the relevant session key relevant parameters and the ciphertext data from the block chain, recovers the session key and further decrypts the session key to obtain plaintext data.
Optionally, the system disclosure parameter para is specifically: para ═ G, (G, q, H (·), S), where G is a group with order prime q, G denotes a generator of G, H (·) denotes an anti-collision hash function, and S is a symmetric encryption scheme.
Optionally, the generating, by each user, a respective public key and a respective private key according to the public parameter specifically includes:
user PiRandom selection of ZqOne non-0 element in a Domain
Figure GDA0002910865670000021
Representation field ZqAnd (2) and (q-1) and computing a non-zero subset of elements {1,2
Figure GDA0002910865670000023
XiRepresenting an exponentiation on group G;
user PiGet the public key pki=XiAnd the private key ski=xi
Optionally, the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, which specifically includes:
communication initiator P0Random selection of ZqTwo non-0 elements alpha in the domain,
Figure GDA0002910865670000024
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key and k is the session key,
Figure GDA0002910865670000025
represents ZqA subset of non-zero elements of the domain {1, 2., q-1}, gαRepresenting an exponentiation in group G;
communication initiator P0Is constructed as follows ZqPolynomial over domain:
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure GDA0002910865670000026
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k;
communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m;
communication initiator P0The parameter b of the session key k is measuredn,bn-1,…,b1,b0And writing the data m and the ciphertext C of the data m into a block chain.
Optionally, the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, which specifically includes:
communication receiver PiUsing its private key xiComputing
Figure GDA0002910865670000027
Communication receiver PiResume session key k ← phi (h)i)mod q;
Communication receiver PiDecryption yields the message m ← s.dec (k, C).
To achieve the above and other related objects, the present invention also provides a block chain based distributed secure communication system, comprising:
the initialization module is used for generating a system public parameter and writing the system public parameter into a block chain;
the user key generation module is used for generating a respective public key and a private key by each user according to the system public parameters and writing the respective public key into the block chain, and the users comprise a communication initiator and a communication receiver;
the data encryption module is used for executing an encryption process by a communication initiator according to a group of public keys of the communication receivers and generating parameters related to a session key and ciphertext data, wherein the parameters related to the session key and the ciphertext data are written into a block chain;
and the data decryption module is used for reading the related session key related parameters and the ciphertext data from the block chain by each communication receiver, recovering the session key and further decrypting to obtain plaintext data.
Optionally, the system disclosure parameter para is specifically: para ═ G, (G, q, H (·), S), where G is a group with order prime q, G denotes a generator of G, H (·) denotes an anti-collision hash function, and S is a symmetric encryption scheme.
Optionally, the generating, by each user, a respective public key and a respective private key according to the public parameter specifically includes:
user PiRandom selection of ZqOne non-0 element in a Domain
Figure GDA0002910865670000031
Representation field ZqAnd (2) and (q-1) and computing a non-zero subset of elements {1,2
Figure GDA0002910865670000033
XiRepresenting an exponentiation on group G;
user PiGet the public key pki=XiAnd the private key ski=xi
Optionally, the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, which specifically includes:
communication initiator P0Random selection of ZqTwo non-0 elements alpha in the domain,
Figure GDA0002910865670000034
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key and k is the session key,
Figure GDA0002910865670000035
represents ZqA subset of non-zero elements of the domain {1, 2., q-1 };
communication initiator P0Is constructed as follows ZqPolynomial over domain:
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure GDA0002910865670000036
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k;
communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m;
communication initiator P0The parameter b of the session key k is measuredn,bn-1,…,b1,b0And writing the data m and the ciphertext C of the data m into a block chain.
Optionally, the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, which specifically includes:
communication receiver PiUsing its private key xiComputing
Figure GDA0002910865670000041
Communication receiver PiResume session key k ← phi (h)i)mod q;
Communication receiver PiDecryption yields the message m ← s.dec (k, C).
As described above, the distributed secure communication method and system based on the block chain of the present invention have the following beneficial effects:
the invention provides a distributed secure communication method and a distributed secure communication system based on a block chain. All data generated by the system, including system public parameters, session key parameters and ciphertext data, are written into the block chain, and any user can verify the data, so that non-repudiation of data communication is realized. Since all data is stored on the blockchain, the method provided by the invention also supports verification of the data source and auditing of communication information written into all blockchains.
Drawings
To further illustrate the description of the present invention, the following detailed description of the embodiments of the present invention is provided with reference to the accompanying drawings. It is appreciated that these drawings are merely exemplary and are not to be considered limiting of the scope of the invention.
Fig. 1 is a flowchart of a block chain-based distributed secure communication method according to the present invention;
fig. 2 is a block diagram of a distributed secure communication system based on a blockchain according to the present invention.
Fig. 3 is a system architecture diagram of a distributed secure communication system based on a blockchain according to the present invention.
Detailed Description
The embodiments of the present invention are described below with reference to specific embodiments, and other advantages and effects of the present invention will be easily understood by those skilled in the art from the disclosure of the present specification. The invention is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present invention. It is to be noted that the features in the following embodiments and examples may be combined with each other without conflict.
It should be noted that the drawings provided in the following embodiments are only for illustrating the basic idea of the present invention, and the components related to the present invention are only shown in the drawings rather than drawn according to the number, shape and size of the components in actual implementation, and the type, quantity and proportion of the components in actual implementation may be changed freely, and the layout of the components may be more complicated.
In order to make the technical solution of the present invention more clearly understood, some technical terms used in the present invention will be described.
(1) System Manager (SM): and trusted by each user, the system is responsible for initializing the system, generating system public parameters and writing the system public parameters into the block chain.
(2) Communication initiator (Sender, SE): also called data sender, using P0The method comprises the steps that a pair of public and private keys of a user is calculated according to system public parameters, and the public keys are written into a block chain; when the data encryption algorithm is executed, a random session key can be selected, the session key is processed by using a key distribution mechanism, and the message is encrypted by using the session key and the selected symmetric encryption algorithm, so that only the selected receiver can recover the session key and decrypt the data by using the session key, and finally all information generated in the encryption process is written into the block chain.
(3) Communication Recipient (RE): also called data receiver, n in total, using Pi(i is more than or equal to 1 and less than or equal to n) represents that a pair of public and private keys of the user is calculated according to the public parameters of the system, and the public keys are written into the block chain; the corresponding session key parameters and ciphertext data can be read from the blockchain, the session key is recovered, and then a decryption process is performed.
The hash function used in the present invention has two basic characteristics: unidirectionality and impact resistance; unidirectionality means that it is efficient to derive an output from the input of the hash function, but it is infeasible to calculate its input from the output of the hash function; crashworthiness means that two different inputs cannot be found to have the same hash function value.
As shown in fig. 1, the present invention provides a block chain-based distributed secure communication method, which includes the following steps:
step 1, a system administrator SM selects a safety parameter, an anti-collision Hash function and a symmetric encryption scheme to generate an open parameter and a block chain initial block.
Specifically, the step 1 specifically includes the following substeps:
step 11: the system administrator SM inputs a system safety parameter lambda and runs an initialization algorithm Π (1)λ) Outputting a group G with a prime number q;
wherein, the initialization algorithm II (1)λ) The operation method comprises the following steps: the system administrator SM inputs a system security parameter lambda, and the system forms a group G with prime number q order according to the size of lambda.
Step 12: a system administrator SM runs a random number generation algorithm and randomly selects a generation element G in a group G;
step 13: the system administrator SM selects an anti-collision hash function H (-) that satisfies all the characteristics of the anti-collision hash function. The input of the anti-collision hash function H (-) is two elements in the group G, and the output is
Figure GDA0002910865670000051
The elements of (1);
step 14: the system administrator SM selects a secure symmetric encryption scheme S ═ K, Enc, Dec >;
wherein, K represents the key space of the symmetric encryption scheme S, Enc represents the encryption algorithm of the symmetric encryption scheme S, the input of the encryption algorithm is a key K belonging to K and a message m, the output of the encryption algorithm is a ciphertext C, Dec represents the decryption algorithm of the symmetric encryption scheme S, the input of the encryption algorithm is a key K belonging to K and a ciphertext C, and the output of the decryption algorithm is a message m; here, the binary length of the key k is required to be equal to or less than the length of the prime number q.
Finally, the system disclosure parameter is denoted as para ═ (G, q, H (·), S).
Step 15: the system administrator SM generates a block chain initial block with the public parameter para and writes it into the block chain.
And 2, each user generates a respective public key and a private key according to the public parameters and writes the public key into the block chain, wherein the users comprise a communication initiator and a communication receiver.
Specifically, the step 2 specifically includes the following sub-steps:
step 21: user PiRandom selection of ZqOne non-0 element in a Domain
Figure GDA0002910865670000061
And calculate
Figure GDA0002910865670000062
User PiGet the public key pki=XiAnd the private key ski=xi;XiRepresenting an exponentiation on the group G.
Wherein,
Figure GDA0002910865670000063
representation field ZqIs given as a non-zero subset of elements {1, 2., q-1 }.
Step 22: user PiIts public key pkiThe block chain is written.
And 3, the communication initiator executes an encryption process according to the public keys of the n communication receivers and generates parameters related to the session key and ciphertext data, and the parameters related to the session key and the ciphertext data are written into the block chain.
Specifically, the step 3 specifically includes the following sub-steps:
step 31: communication initiator P0Random selection of ZqTwo non-0 elements alpha in the domain,
Figure GDA0002910865670000064
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key and k is the session key,
Figure GDA0002910865670000065
represents ZqA subset of non-zero elements of the domain {1, 2., q-1}, G α representing a power operation in group G;
step 32: communication initiator P0The following domain Z is constructedqPolynomial of (c):
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
step 33: communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure GDA0002910865670000066
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k.
Step 34: communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m.
Step 35: communication initiator P0Parameter b of session key kn,bn-1,…,b1,b0And is written into the block chain together with the ciphertext C of the data m.
And 4, each communication receiver reads the relevant session key parameters and the ciphertext data from the block chain, recovers the session key and further decrypts the session key to obtain plaintext data.
Specifically, the step 4 specifically includes the following sub-steps:
step 41: communication receiver PiUsing its private key xiComputing
Figure GDA0002910865670000067
Step 42: communication receiver PiResume session key k ← phi (h)i)mod q;
Step 43: communication receiver PiDecryption yields the message m ← s.dec (k, C).
In summary, the present invention provides a method for distributed secure communication based on a block chain. Firstly, a system administrator writes system parameters into a block chain, and any user can access and verify the system parameters; secondly, in a distributed environment, a communication initiator can process a randomly selected session key according to a public key of a group of receivers and write the obtained parameters into a block chain, and any communication receiver involved can access and verify the session key and recover the correct session key; thirdly, the communication initiator can generate ciphertext data by using a symmetric encryption scheme and write the ciphertext data and the session key parameters into the block chain together, so that a legal communication receiver can access, verify and decrypt the ciphertext data; finally, because the system parameters, all the session key parameters and the ciphertext data are stored on the block chain, the method supports the verification of the source of the ciphertext data and the audit of the communication content at the later stage.
As shown in fig. 2, the present invention further provides a distributed secure communication system based on a blockchain, which includes an initialization module, a user key generation module, a data encryption module, and a data decryption module.
The initialization module is used for generating a system public parameter and writing the system public parameter into a block chain;
the system administrator SM inputs a system safety parameter lambda and runs an initialization algorithm Π (1)λ) Outputting a group G with a prime number q;
wherein, the initialization algorithm II (1)λ) The operation method comprises the following steps: the system administrator SM inputs a system security parameter lambda, and the system forms a group G with prime number q order according to the size of lambda.
A system administrator SM runs a random number generation algorithm and randomly selects a generation element G in a group G;
the system administrator SM selects an anti-collision hash function H (-) that satisfies all the characteristics of the anti-collision hash function. The input of the anti-collision hash function H (-) is two elements in the group G, and the output is
Figure GDA0002910865670000071
The elements of (1);
the system administrator SM selects a secure symmetric encryption scheme S ═ K, Enc, Dec >;
wherein, K represents the key space of the symmetric encryption scheme S, Enc represents the encryption algorithm of the symmetric encryption scheme S, the input of the encryption algorithm is a key K belonging to K and a message m, the output of the encryption algorithm is a ciphertext C, Dec represents the decryption algorithm of the symmetric encryption scheme S, the input of the encryption algorithm is a key K belonging to K and a ciphertext C, and the output of the decryption algorithm is a message m; here, the binary length of the key k is required to be equal to or less than the length of the prime number q.
Finally, the system disclosure parameter is denoted as para ═ (G, q, H (·), S).
The system administrator SM generates a block chain initial block with the public parameter para and writes it into the block chain.
The user key generation module is used for generating a respective public key and a private key by each user according to the system public parameters and writing the respective public key into the block chain, and the users comprise a communication initiator and a communication receiver;
user PiRandom selection of ZqOne non-0 element in a Domain
Figure GDA0002910865670000072
And calculate
Figure GDA0002910865670000073
User PiGet the public key pki=XiAnd the private key ski=xi;XiRepresenting an exponentiation over the group G, wherein,
Figure GDA0002910865670000074
representation field ZqIs given as a non-zero subset of elements {1, 2., q-1 }.
User PiIts public key pkiThe block chain is written.
The data encryption module is used for the communication initiator to execute an encryption process according to a group of public keys of the communication receiver and generate parameters related to a session key and ciphertext data, and the parameters related to the session key and the ciphertext data are written into a block chain;
communication initiator P0Randomly selecting field ZqIs not a 0 element a in the group,
Figure GDA0002910865670000081
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key.
Communication initiator P0The following domain Z is constructedqPolynomial of (c):
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure GDA0002910865670000082
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k.
Communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m.
Communication initiator P0Parameter b of session key kn,bn-1,…,b1,b0And is written into the block chain together with the ciphertext C of the data m.
And the data decryption module is used for reading the related parameters of the related session key and the ciphertext data from the block chain by each communication receiver, recovering the session key and further decrypting to obtain plaintext data.
Communication receiver PiUsing its private key xiComputing
Figure GDA0002910865670000083
Communication receiver PiResume session key k ← phi (h)i)mod q;
Communication receiver PiDecryption yields the message m ← s.dec (k, C).
The method proposed by the invention allows a user to construct a key distribution polynomial from the public key of the recipient, so that the coefficients of the polynomial, called session key parameters, are public, and accessible to any user, but only the relevant recipient can compute and recover the session key from the public session key parameters using its private key. Compared with the distribution of the session key by using the broadcast encryption technology, the polynomial distribution mode requires that the communication initiator only bears 1 more exponentiation than the number of receivers, and each receiver only needs to perform one exponentiation. Only computationally intensive exponentiation operations are considered here, since other modulo additions and multiplications are comparatively efficient.
The invention uses the block chain to store the public parameters of the communication system, and the session key parameters and the ciphertext data involved in all communication processes. The block chain realizes a distributed operation architecture by using a digital signature and consensus mechanism, and can realize the characteristics of data such as non-falsification, openness, transparency, traceability and the like without depending on a credible central node. Based on these excellent properties of the blockchain, all parameters related to the distributed communication system, session key parameters and ciphertext data can be publicly verified by any user, but only relevant receivers are allowed to recover the session key and decrypt the data, so that the blockchain technology does not affect the security and privacy of the session key and communication content, but also enhances the verifiability of the system.
The foregoing embodiments are merely illustrative of the principles and utilities of the present invention and are not intended to limit the invention. Any person skilled in the art can modify or change the above-mentioned embodiments without departing from the spirit and scope of the present invention. Accordingly, it is intended that all equivalent modifications or changes which can be made by those skilled in the art without departing from the spirit and technical spirit of the present invention be covered by the claims of the present invention.

Claims (8)

1. A distributed secure communication method based on a block chain is characterized by comprising the following steps:
generating a system public parameter, and writing the system public parameter into a block chain;
each user generates a respective public key and a private key according to the system public parameters, and writes the respective public key into the block chain, wherein the users comprise a communication initiator and a communication receiver;
a communication initiator executes an encryption process according to a group of public keys of the communication receiver and generates parameters related to a session key and ciphertext data, and the parameters related to the session key and the ciphertext data are written into a block chain;
each communication receiver reads the relevant parameters of the relevant session key and the ciphertext data from the block chain, recovers the session key and further decrypts the session key to obtain plaintext data;
the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, and the method specifically includes:
communication initiator P0Random selection of ZqTwo non-0 elements alpha in the domain,
Figure FDA0002910865660000011
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key and k is the session key,
Figure FDA0002910865660000012
represents ZqA subset of non-zero elements of the domain {1, 2., q-1}, gαRepresenting an exponentiation in group G;
communication initiator P0Is constructed as follows ZqPolynomial over domain:
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure FDA0002910865660000013
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k;
communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m;
communication initiator P0The parameter b of the session key k is measuredn,bn-1,…,b1,b0And writing the data m and the ciphertext C of the data m into a block chain.
2. The distributed secure communication method based on the blockchain according to claim 1, wherein the system disclosure parameter para is specifically: para ═ G, (G, q, H (·), S), where G is a group with order prime q, G denotes a generator of G, H (·) denotes an anti-collision hash function, and S is a symmetric encryption scheme.
3. The block chain-based distributed secure communication method according to claim 1, wherein each user generates a public key and a private key according to the public parameters, specifically comprising:
user PiRandom selection of ZqOne non-0 element in a Domain
Figure FDA0002910865660000014
Figure FDA0002910865660000015
Representation field ZqAnd (2) and (q-1) and computing a non-zero subset of elements {1,2
Figure FDA0002910865660000021
XiRepresenting an exponentiation on group G;
user PiGet the public key pki=XiAnd the private key ski=xi
4. The block chain-based distributed secure communication method according to claim 3, wherein the communication initiator performs an encryption process according to a public key of a group of communication receivers and generates parameters and ciphertext data related to a session key, specifically comprising:
communication receiver PiUsing its private key xiComputing
Figure FDA0002910865660000022
Communication receiver PiResume session key k ← phi (h)i)mod q;
Communication receiver PiDecryption yields the message m ← s.dec (k, C).
5. A block chain based distributed secure communications system, the system comprising:
the initialization module is used for generating a system public parameter and writing the system public parameter into a block chain;
the user key generation module is used for generating a respective public key and a private key by each user according to the system public parameters and writing the respective public key into the block chain, and the users comprise a communication initiator and a communication receiver;
the data encryption module is used for executing an encryption process by a communication initiator according to a group of public keys of the communication receivers and generating parameters related to a session key and ciphertext data, wherein the parameters related to the session key and the ciphertext data are written into a block chain;
the data decryption module is used for reading related session key related parameters and ciphertext data from the block chain by each communication receiver, recovering the session key and further decrypting to obtain plaintext data;
the communication initiator performs an encryption process according to a group of public keys of the communication receiver and generates parameters and ciphertext data related to a session key, and the method specifically includes:
communication initiator P0Random selection of ZqTwo non-0 elements alpha in the domain,
Figure FDA0002910865660000023
and calculate c0=gα,c1=(pk1)α,c2=(pk2)α,……,cn=(pkn)α(ii) a Where k is the session key and k is the session key,
Figure FDA0002910865660000024
represents ZqA subset of non-zero elements of the domain {1, 2., q-1 };
communication initiator P0Is constructed as follows ZqPolynomial over domain:
φ(x)=(x-H(c0,c1))(x-H(c0,c2))…(x-H(c0,cn))+k
communication initiator P0The above polynomial phi (x) is arranged into the following form:
Figure FDA0002910865660000025
wherein the coefficient b of the polynomial phi (x)n,bn-1,…,b1,b0And c0A parameter called session key k;
communication initiator P0C ← s.enc (k, m) is executed to obtain ciphertext C of data m;
communication initiator P0The parameter b of the session key k is measuredn,bn-1,…,b1,b0And writing the data m and the ciphertext C of the data m into a block chain.
6. The system according to claim 5, wherein the system disclosure parameter para is specifically: para ═ G, (G, q, H (·), S), where G is a group with order prime q, G denotes a generator of G, H (·) denotes an anti-collision hash function, and S is a symmetric encryption scheme.
7. The distributed secure communication system based on the blockchain according to claim 5, wherein each user generates a public key and a private key according to the public parameters, specifically comprising:
user PiRandom selection of ZqOne non-0 element in a Domain
Figure FDA0002910865660000031
Figure FDA0002910865660000032
Representation field ZqAnd (2) and (q-1) and computing a non-zero subset of elements {1,2
Figure FDA0002910865660000033
XiRepresenting an exponentiation on group G;
user PiGet the public key pki=XiAnd the private key ski=xi
8. The system according to claim 5, wherein the communication initiator performs an encryption process according to a public key of a group of communication receivers and generates parameters and ciphertext data related to a session key, and specifically comprises:
communication receiver PiUsing its private key xiComputing
Figure FDA0002910865660000034
Communication receiver PiResume session key k ← phi (h)i)mod q;
Communication receiver PiDecryption yields the message m ← s.dec (k, C).
CN201811384049.6A 2018-11-20 2018-11-20 Block chain-based distributed secure communication method and system Active CN109495478B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811384049.6A CN109495478B (en) 2018-11-20 2018-11-20 Block chain-based distributed secure communication method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811384049.6A CN109495478B (en) 2018-11-20 2018-11-20 Block chain-based distributed secure communication method and system

Publications (2)

Publication Number Publication Date
CN109495478A CN109495478A (en) 2019-03-19
CN109495478B true CN109495478B (en) 2021-05-04

Family

ID=65697092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811384049.6A Active CN109495478B (en) 2018-11-20 2018-11-20 Block chain-based distributed secure communication method and system

Country Status (1)

Country Link
CN (1) CN109495478B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180131511A1 (en) * 2016-08-03 2018-05-10 James Taylor Systems and Methods for Dynamic Cypher Key Management
CN113242133B (en) * 2021-04-29 2022-12-13 中国人民银行数字货币研究所 Digital certificate management method and device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106375306A (en) * 2016-08-31 2017-02-01 武汉钢铁工程技术集团通信有限责任公司 Mobile phone application data transmission encrypting method and system
WO2017090041A1 (en) * 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy
CN107122449A (en) * 2017-04-25 2017-09-01 安徽大学 File classification method and system based on public key encryption in multi-user environment
CN107147652A (en) * 2017-05-18 2017-09-08 电子科技大学 A kind of safety fusion authentication method of the polymorphic identity of user based on block chain
CN107196934A (en) * 2017-05-18 2017-09-22 电子科技大学 A kind of cloud data managing method based on block chain
CN107528688A (en) * 2017-09-30 2017-12-29 矩阵元技术(深圳)有限公司 A kind of keeping of block chain key and restoration methods, device based on encryption commission technology

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10158492B2 (en) * 2015-02-25 2018-12-18 Guardtime Ip Holdings Limited Blockchain-supported device location verification with digital signatures

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017090041A1 (en) * 2015-11-24 2017-06-01 Ben-Ari Adi A system and method for blockchain smart contract data privacy
CN106375306A (en) * 2016-08-31 2017-02-01 武汉钢铁工程技术集团通信有限责任公司 Mobile phone application data transmission encrypting method and system
CN107122449A (en) * 2017-04-25 2017-09-01 安徽大学 File classification method and system based on public key encryption in multi-user environment
CN107147652A (en) * 2017-05-18 2017-09-08 电子科技大学 A kind of safety fusion authentication method of the polymorphic identity of user based on block chain
CN107196934A (en) * 2017-05-18 2017-09-22 电子科技大学 A kind of cloud data managing method based on block chain
CN107528688A (en) * 2017-09-30 2017-12-29 矩阵元技术(深圳)有限公司 A kind of keeping of block chain key and restoration methods, device based on encryption commission technology

Also Published As

Publication number Publication date
CN109495478A (en) 2019-03-19

Similar Documents

Publication Publication Date Title
Perlner et al. Quantum resistant public key cryptography: a survey
JP4809598B2 (en) Use of isojani in the design of cryptographic systems
CN110235409B (en) Method for protected RSA signature or decryption using homomorphic encryption
US8429408B2 (en) Masking the output of random number generators in key generation protocols
EP1710952B1 (en) Cryptographic Applications of the Cartier Pairing
Liu et al. Verifiable attribute-based keyword search over encrypted cloud data supporting data deduplication
Iyer et al. A novel idea on multimedia encryption using hybrid crypto approach
CN105071937B (en) Ciphertext policy ABE base encryption method with the revocation of efficient attribute
Garg et al. Comparative analysis of cloud data integrity auditing protocols
CN114095170B (en) Data processing method, device, system and computer readable storage medium
CN109327304A (en) The lightweight homomorphic cryptography method of secret protection is realized in a kind of cloud computing
CN115549891B (en) Homomorphic encryption method, homomorphic decryption method, homomorphic calculation method and equipment
CN109726567A (en) A kind of mobile target encryption method based on full homomorphic cryptography
CN112737764A (en) Lightweight multi-user multi-data all-homomorphic data encryption packaging method
Rangasami et al. Comparative study of homomorphic encryption methods for secured data operations in cloud computing
Song et al. A multi-bit fully homomorphic encryption with shorter public key from LWE
CN109495478B (en) Block chain-based distributed secure communication method and system
Rastogi et al. Cloud computing security and homomorphic encryption
Ramesh et al. Secure data storage in cloud: an e-stream cipher-based secure and dynamic updation policy
CA2742530C (en) Masking the output of random number generators in key generation protocols
JP7125857B2 (en) Encryption system, encryption device, decryption device, encryption method, decryption method, and program
Backes et al. Fully secure inner-product proxy re-encryption with constant size ciphertext
CN113872757B (en) Broadcast encryption method based on SM2 public key encryption algorithm
Yadav et al. Hybrid cryptography approach to secure the data in computing environment
GEORGE et al. ADVANCED DATA COMMUNICATION WITH INCREASED SECURITY LEVEL USING REVOCATION PROCESS

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
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20190319

Assignee: Guilin ruiweisaide Technology Co.,Ltd.

Assignor: GUILIN University OF ELECTRONIC TECHNOLOGY

Contract record no.: X2023980046266

Denomination of invention: A Distributed Secure Communication Method and System Based on Blockchain

Granted publication date: 20210504

License type: Common License

Record date: 20231108

EE01 Entry into force of recordation of patent licensing contract