CN114745101A - Hidden information transmission method and device based on multiple block chains - Google Patents

Hidden information transmission method and device based on multiple block chains Download PDF

Info

Publication number
CN114745101A
CN114745101A CN202210157113.7A CN202210157113A CN114745101A CN 114745101 A CN114745101 A CN 114745101A CN 202210157113 A CN202210157113 A CN 202210157113A CN 114745101 A CN114745101 A CN 114745101A
Authority
CN
China
Prior art keywords
slice
transmitted
message
transmission
block chain
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.)
Pending
Application number
CN202210157113.7A
Other languages
Chinese (zh)
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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN202210157113.7A priority Critical patent/CN114745101A/en
Publication of CN114745101A publication Critical patent/CN114745101A/en
Pending legal-status Critical Current

Links

Images

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0847Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving identity based encryption [IBE] schemes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application discloses a hidden information transmission method and device based on a plurality of block chains, wherein the method comprises the following steps: segmenting at least one block chain to obtain a plurality of slices, and filling the message to be transmitted to the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted; embedding a transmission slice to be transmitted into a preset field of at least one block chain, serializing preset field information according to a block chain transaction coding rule, and broadcasting the serialized preset field information; and restoring the preset field information according to the sequence of the transmission slices to be transmitted to obtain the message to be transmitted. Therefore, the information transmission efficiency is improved, meanwhile, the security of hidden information transmission is improved, and the risk that information leakage is increased when the information is only embedded into one block chain is avoided. Therefore, the problems of low efficiency, low safety and the like of single block chain hidden transmission during information transmission are solved.

Description

Hidden information transmission method and device based on multiple block chains
Technical Field
The present invention relates to the field of information security technologies, and in particular, to a hidden information transmission method and apparatus based on multiple block chains.
Background
At present, in order to meet the requirements of efficient, safe, concealed and stable information transmission and enable the transmission behavior of concealed data to be more natural, a mainstream block chain with a large number of users and a large transaction amount is generally selected for research, such as a bitcoin, an ether house and the like. There are many fields in these blockchain data structures to store data so that a hidden channel can be constructed from these fields. There are two main ways to do this: the first is to store the covert information directly or indirectly through a digital signature process, and the second is to store it directly using other fields in the transaction.
The method for carrying out concealed transmission through the digital signature of the block chain transaction generally includes the steps that concealed messages are embedded into random numbers used in a signature process, and a receiver can acquire the signature random numbers in two modes, wherein the first mode is a mode that information is directly agreed to be embedded into the random numbers, for example, the last byte of the random numbers is concealed information; the second way is that a receiver calculates a random number according to the signature content and the private key by revealing the private key during signature, so as to extract the hidden information. The related art proposes to reveal the private key by reusing the random number k in the signing process to receive the concealed message. Reusing the random number k makes the first part r of the signature equal, which makes this technique easy to find by adversaries. In addition to the covert channel being detectable, the adversary can also calculate the private key d thereby impersonating the owner of the corresponding bitcoin address.
In order to avoid the problems that the secret key leaks from a fake bit currency holder and is monitored by an adversary to a hidden channel due to the reuse of the random number, the method for avoiding the secret key from leaking to the adversary, which is provided by the related technology, is to agree a random number k on a message transceiver in advanceleakAnd the receiving party is informed in advance of the transmission address a of the transactions. The sender then divides the hidden information into a plurality of portions, each of which is embeddedTo different random numbers kmsgIn combination of these kmsgCompleting signature, after the transaction of embedded information is finished, finally using k by the senderleakA transaction is signed. The receiver continuously calculates d-r-1·(s·kleak-z) mod n deriving a private key and deriving therefrom a bitcoin address, the derived address and AsAnd comparing, if the two are equal, the calculated private key is the private key of the signature of the sender. For the previous one from AsThe receiving party calculates k ═ s using the obtained private key-1(z + r. d) mod n obtains all kmsgThereby obtaining the hidden information. The related technology proposes that two parties of the message sending and receiving negotiate a symmetric key k in advance through an ECDH algorithmchatThe sender sends two transactions, for the first one, with kchatThe ciphertext after the hidden information is encrypted is used as a random number in the signature process; the signature process of the second transaction uses kchatAs a random number. The receiver recovers the private key of the sender through the second transaction, thereby recovering the ciphertext according to the first transaction.
Further, there is also a related art proposal of the block scheme that 1bit of information is hidden at a time by an output address field and both sides need to be informed in advance of an identifier for identifying encryption information and an encryption key. The embedding rate is too low and also requires that only one such piece of covert information can be transmitted for each block, resulting in poor communication efficiency. The related art proposes an improved method for the block scheme, so that the number of bits embedded each time is increased, but the embedding rate is always low on the whole, and the requirement of communication cannot be met. The related art uses the script field OP _ RETURN in the bitcoin as a concealment channel and indicates that the field can conceal 80 bits of information. However, the distribution of OP _ RETURN is not considered in the related art, so that the hidden channel is likely to be detected by statistical analysis.
The above hidden transmission methods based on block chains all have a common disadvantage that only one block chain (mostly bit coins) can be used as a carrier for transmission, and the block-out time of the bit coins is about ten minutes, so that the time for a receiver to recover information is long, and the real-time performance of the message is very poor. The time for the appearance of the Ether Fang and the Laite currency is 12 seconds and 2.5 minutes respectively, and the time is greatly reduced compared with the time for the Leite currency. If the security of the block chain concealed transmission method is not enough, once an attacker acquires the association between the address and the transaction through technologies such as aggregation analysis and the like, the attacker can intercept the transaction sent from the address on the block chain, and finally the concealed transmission message can be leaked. And the above technology does not discuss a fragmentation scheme when a long message is sent and a recovery scheme when the message is received, and when a message is long, the hidden information cannot be transmitted through a blockchain transaction. In addition, sending the hidden information through a block chain has higher risk of information leakage, and once the sending address is exposed, the information sent by each address is intercepted. Therefore, the current block chain-based covert transmission method has the defects of low transmission efficiency, low safety and the like.
Disclosure of Invention
The application provides a hidden information transmission method and device based on a plurality of block chains, and aims to solve the problems that single block chain hidden transmission is low in efficiency and low in safety during information transmission.
The embodiment of the first aspect of the present application provides a hidden information transmission method based on multiple block chains, including the following steps: segmenting at least one block chain to obtain a plurality of slices, and filling a message to be transmitted to the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted; embedding the transmission slice to be transmitted into a preset field of the at least one block chain, serializing the preset field information according to a block chain transaction coding rule, and broadcasting the serialized preset field information; and restoring the preset field information according to the sequence of the transmission slices to be transmitted to obtain the message to be transmitted.
Optionally, in an embodiment of the present application, before the segmenting the at least one block chain to obtain the plurality of slices, the method further includes: the two communication parties respectively carry out identification of the identities of the two parties and negotiation of a symmetric encryption key and a signature private key by using an identity authentication mechanism and a key negotiation mechanism under a chain.
Optionally, in an embodiment of the present application, the segmenting at least one block chain to obtain a plurality of slices, and filling the message to be transmitted into the plurality of slices according to a preset filling rule includes: calling a random number generation function, and randomly selecting at least one block chain for data transmission; dividing the at least one block chain into a plurality of slices according to the field structure characteristics, and dividing the message to be transmitted; determining a message filling mode according to the slice sequence; if the slice is a first slice, embedding the message type and the total length of the message to be transmitted into a payload header of the first slice, sequentially filling the cut message to be transmitted into the payload header according to the slice capacity, marking the end of the slice message through a slice end symbol, adding a slice serial number into the slice header, adding an initialization vector used for encryption after the slice serial number, encrypting the payload in the slice by using a symmetric encryption key negotiated by two communication parties, splicing the encrypted payload to the initialization vector, and generating the transmission slice to be transmitted; and if the slice is not the first slice, sequentially filling the cut messages to be transmitted to the header of the payload according to the slice capacity, marking the end of the slice messages through a slice end symbol, adding the slice serial number to the header of the slice, encrypting the payload in the slice by using a symmetric encryption key negotiated by both communication sides, splicing the encrypted payload to the slice serial number, and generating the transmission slice to be transmitted.
Optionally, in an embodiment of the present application, when the cut messages to be transmitted are sequentially filled into the payload header according to the slice capacity, the method further includes: and after the message to be transmitted is filled into the slice, filling the slice with 0 until the slice capacity is reached when the slice reaches the slice capacity.
Optionally, in an embodiment of the present application, recovering the preset field information according to the to-be-transmitted transmission slice sequence to obtain the to-be-transmitted message includes: selecting a slice corresponding to the message to be transmitted according to the session message identifier, and decoding the preset field information of the selected slice according to the block chain transaction coding rule to obtain each transaction field information; and solving the information of each transaction field according to the inverse process of the preset filling rule, and sequencing the solving results to obtain the message to be transmitted.
The embodiment of the second aspect of the present application provides a hidden information transmission apparatus based on multiple block chains, including: the segmentation module is used for segmenting at least one block chain to obtain a plurality of slices, and filling a message to be transmitted to the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted; the broadcasting module is used for embedding the transmission slice to be transmitted into a preset field of the at least one block chain, serializing the preset field information according to a block chain transaction coding rule, and broadcasting the serialized preset field information; and the recovery module is used for recovering the preset field information according to the transmission slice sequence to be transmitted to obtain the message to be transmitted.
Optionally, in an embodiment of the present application, before the dividing module, the method further includes: and the identification module is used for respectively identifying the identities of the two parties and negotiating the symmetric encryption key and the signature private key by using an identity authentication mechanism and a key negotiation mechanism under the chain by the two parties before the at least one block chain is segmented to obtain a plurality of slices.
Optionally, in an embodiment of the present application, the dividing module includes: the calling unit is used for calling a random number generation function and randomly selecting at least one block chain for data transmission; the cutting unit is used for cutting the at least one block chain into a plurality of slices according to the field structure characteristics and cutting the message to be transmitted; a filling unit for determining a message filling mode according to the slice order; a first generation unit, configured to embed, if the slice is a first slice, a message type and a total length of the message to be transmitted into a payload header of the first slice, sequentially fill the cut message to be transmitted into the payload header according to the slice capacity, identify an end of the slice message by a slice end indicator, add a slice serial number to the slice header, add an initialization vector used for encryption after the slice serial number, encrypt the payload in the slice by using a symmetric encryption key negotiated by both communication parties, and splice the encrypted payload to the initialization vector to generate the transmission slice to be transmitted; and a second generation unit, configured to, if the slice is not the first slice, sequentially fill the to-be-transmitted messages to the header of the payload in sequence according to the slice capacity, identify the end of the slice message by a slice end identifier, add the slice serial number to the header of the slice, encrypt the payload in the slice by using a symmetric encryption key negotiated by both communication parties, and splice the encrypted payload to the slice serial number, so as to generate the to-be-transmitted slice.
Optionally, in an embodiment of the present application, the filling unit is further configured to, when the cut messages to be transmitted are sequentially filled to the payload header according to the slice capacity, fill the slice with 0 until the slice capacity is reached after the message to be transmitted is filled to the slice and when the slice is the slice capacity.
Optionally, in an embodiment of the present application, the recovery module includes: the decoding unit is used for selecting a slice corresponding to the message to be transmitted according to the session message identifier, decoding the preset field information of the selected slice according to the block chain transaction coding rule, and acquiring the transaction field information; and the sequencing unit is used for solving the information of each transaction field according to the inverse process of the preset filling rule and sequencing the solved result to obtain the message to be transmitted.
Therefore, the application has at least the following beneficial effects:
this application is through splitting long message, for the blockchain that every section random selection will be embedded into, then imbed the section of message respectively in the transaction of different blockchains to when improving information transmission efficiency, also promoted the security of hiding information transmission, avoid the message to only imbed the risk that increases information leakage on a blockchain. Therefore, the problems of low efficiency, low safety and the like of single block chain hidden transmission during information transmission are solved.
Additional aspects and advantages of the present application will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present application.
Drawings
The foregoing and/or additional aspects and advantages of the present application will become apparent and readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
fig. 1 is a flowchart of a hidden information transmission method based on multiple block chains according to an embodiment of the present application;
fig. 2 is a diagram of a structure of a payload of a first slice when a message is fragmented in a multi-chain cooperative transmission process according to an embodiment of the present application;
fig. 3 is a final tx _ slice structure diagram of a first slice of a message fragment according to an embodiment of the present application;
fig. 4 is a schematic diagram of an execution logic of a multi-chain cooperative transmission service according to an embodiment of the present application;
FIG. 5 is a schematic diagram of an implementation logic of a received message service according to an embodiment of the present application;
fig. 6 is a diagram of an example of a hidden information transmission apparatus based on multiple block chains according to an embodiment of the present application.
Description of reference numerals: a cutting module-100, a broadcasting module-200 and a restoring module-300.
Detailed Description
Reference will now be made in detail to embodiments of the present application, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are exemplary and intended to be used for explaining the present application and should not be construed as limiting the present application.
A method and an apparatus for hidden information transmission based on multiple block chains according to an embodiment of the present application are described below with reference to the accompanying drawings. The related art mentioned in the background above is to transmit the concealment information through a single block chain. The block-out rate in the bitcoin public chain is about one block out every ten minutes, and if the covert information is transmitted only in bitcoins, the receiver will wait a long time in receiving the information. And all hidden information is transmitted through a block chain, so that the risk of being analyzed by the flow is increased. The application provides a hidden information transmission method based on a plurality of block chains, in the method, through splitting long messages, the block chain to be embedded is randomly selected for each slice, then the slices of the messages are respectively embedded into transactions of different block chains, so that the information transmission efficiency is improved, meanwhile, the security of hidden information transmission is improved, and the risk of information leakage increase caused by the fact that the messages are only embedded into one block chain is avoided. Therefore, the problems of low efficiency, low safety and the like of single block chain hidden transmission during information transmission are solved.
Specifically, fig. 1 is a schematic flowchart of a hidden information transmission method based on multiple block chains according to an embodiment of the present application.
As shown in fig. 1, the hidden information transmission method based on multiple block chains includes the following steps:
in step S101, at least one block chain is segmented to obtain a plurality of slices, and a message to be transmitted is filled into the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted.
Embodiments of the present application may transmit information via multiple blockchains, for example, where two communicating parties send transactions via addresses on three blockchains (bitcoin, letelc, etherhouse). In an embodiment of the application, the sending and broadcasting of the transaction comprises the following processes: information splitting, information embedding and transaction coding. A session is newly established each time the sender sends a message, and is uniquely identified by a session _ id, and each session includes the following main information, as shown in table 1. The specific implementation will be described in detail below.
Table 1 main information contained in Session
Figure BDA0003513211780000051
Figure BDA0003513211780000061
Optionally, in an embodiment of the present application, the segmenting at least one block chain to obtain a plurality of slices, and filling the message to be transmitted into the plurality of slices according to a preset filling rule includes: calling a random number generation function, and randomly selecting at least one block chain for data transmission; cutting at least one block of block chain into a plurality of slices according to the field structure characteristics, and cutting the message to be transmitted; determining a message filling mode according to the slice sequence; if the slice is a first slice, embedding the message type and the total length of the message to be transmitted into the header of the payload of the first slice, sequentially filling the cut message to be transmitted to the header of the payload according to the slice capacity, identifying the end of the slice message through a slice end identifier, adding a slice serial number to the header of the slice, adding an initialization vector used for encryption after the slice serial number is cut, encrypting the payload in the slice by using a symmetric encryption key negotiated by two communication parties, splicing the encrypted payload to the initialization vector, and generating the transmission slice to be transmitted; if the slice is not the first slice, sequentially filling the cut messages to be transmitted to a payload header according to the slice capacity, identifying the end of the slice messages through a slice end symbol, adding a slice serial number to the slice header, encrypting the payload in the slice by using a symmetric encryption key negotiated by both communication sides, splicing the encrypted payload to the slice serial number, and generating the transmission slice to be transmitted.
It should be noted that, in the embodiment of the present application, when the cut messages to be transmitted are sequentially filled into the payload header according to the slice capacity, the method further includes: after the message to be transmitted is filled into the slice, when the slice reaches the slice capacity, the slice is filled with 0 until the slice capacity is reached.
Specifically, in the embodiment of the present application, the information splitting may be performed according to the following steps:
(1) and calling a random number generation function, and randomly selecting a block chain to embed the message. According to the structural characteristics of the selected block chain, the embedded fields are reserved in advance, and the capacity tx _ capacity of the information which can be contained in each transaction, namely the maximum byte number which can be contained in the slice, is calculated according to the size of the fields.
(2) Judging the type of the message and calculating the total length of the message, wherein the message type msg _ type is represented by one byte, such as the text type is 0x01, adding the msg _ type and the total length msg _ size of the message to the payload header of the first slice, then cutting the hidden information to be transmitted, sequentially taking a part of the message according to the slice capacity to fill the payload of the slice, and finally identifying the end of the slice message by an end symbol 0x 80.
(3) The 4-byte sequence number sequence of the message is then added to the slice header to facilitate in-order recovery of subsequent messages. The sequence number is obtained by left shifting 24 bits of a session _ id with the length of 1 byte, the session _ id uniquely identifies one session and is transmitted as a parameter when the session is created, each slice in the session is uniquely identified by a sequence, and the length of each slice is 4 bytes. If the slice is the first slice of the message transmitted this time, an initialization vector msg _ IV used for encryption is further added after the slice serial number, and no msg _ IV needs to be added in subsequent slices. When the session is established, the initial value of IV _ pushed is false, when the first slice is embedded into msg _ IV, the IV _ pushed in the session is set to true, and the subsequent slices can judge whether msg _ IV is added according to the flag.
And the symmetric encryption key negotiated by the two parties is aes _ key, then the key is used for encrypting the payload in the slice, and the obtained result enc _ msg is spliced behind msg _ IV to form the final slice tx _ slice. The final slice composition is shown in fig. 3.
It should be noted that, before the at least one block chain is segmented to obtain a plurality of slices, the two communicating parties need to respectively perform identification of identities of the two parties and negotiation of a symmetric encryption key and a signature private key by using an identity authentication mechanism and a key negotiation mechanism under the chain.
Specifically, before the transmission of the hidden message, the two communicating parties need to respectively perform identification of the identities of the two parties and negotiation of a symmetric encryption key and a signature private key through a traditional identity authentication and key negotiation mechanism under a chain.
In step S102, a transmission slice to be transmitted is embedded into a preset field of at least one block chain, the preset field information is serialized according to a block chain transaction coding rule, and the serialized preset field information is broadcasted.
After the information splitting operation, information embedding and transaction coding are required to be carried out so as to realize the sending and broadcasting of the transaction.
In the embodiment of the present application, the specific steps of information embedding are as follows: respectively embedding slice contents into corresponding fields according to a block chain selected during information splitting, and storing corresponding fields constructed by hidden information by using a structural body tx _ msg, wherein the fields used for hiding the information in the bitcoin and the ledike comprise a transaction amount value, an output address toaddr, a signature of a transaction and the like; the hidden field of the Etherhouse has two fields of gas and gaslimit besides the transaction amount value, the output address toaddr and the signature sig of the transaction.
The transaction coding comprises the following specific steps: and serializing the transaction by the constructed field information tx _ msg according to the transaction coding rule of the corresponding block chain to finally obtain the serialized transaction rawtx, and transmitting and broadcasting the message by calling the rpc interface corresponding to the block chain. The multi-chain cooperative transmission service execution logic is shown in fig. 4.
In step S103, the preset field information is restored according to the transmission slice sequence to be transmitted, so as to obtain the message to be transmitted.
It should be noted that the receiver continuously scans the transaction sent by the communication address on the block chain, establishes a session for receiving the message by transmitting the session _ id parameter, screens the transaction containing the hidden information by the session _ id, and then recovers and integrates all slices in sequence to obtain the real hidden information. The whole process can be divided into three steps of transaction screening and analysis, slice processing and slice sequential recovery. The specific implementation is described in detail below.
Optionally, in an embodiment of the present application, recovering the preset field information according to the sequence of the transmission slice to be transmitted to obtain the message to be transmitted, where the recovering includes: selecting a slice corresponding to a message to be transmitted according to the session message identifier, and decoding preset field information of the selected slice according to a block chain transaction coding rule to obtain transaction field information; and solving the information of each transaction field according to the inverse process of the preset filling rule, and sequencing the solved results to obtain the message to be transmitted.
It is understood that the multi-chain message reception process can be divided into transaction screening and parsing, and slicing processing and slicing recovery in sequence. Specifically, in the embodiment of the present application, the specific process of transaction screening and decoding is as follows: establishing a received message session, transmitting parameters such as a session _ id and a communication address, screening out a blockchain transaction sent by three communication addresses, decoding the transaction to obtain field information of the transaction, recovering a first 4 bytes (namely a sequence) in one slice according to a field used for embedding information in the transaction, if the first byte of the sequence is the same as the session _ id, proving that the transaction belongs to one slice in the session transmission, and storing the subsequent part of the slice and the sequence as an index into a database. The slicing treatment comprises the following specific processes: after the transactions belonging to a certain session are screened out, slice data are firstly obtained from a database according to an initial sequence number of session _ id left-shifted by 24 bits, 16 bytes behind the sequence number are msg _ IV used for encryption and decryption, and then an encrypted payload is obtained. And after decrypting the payload by the receiver, acquiring the payload with the end character and the padding character, and deleting the padding character and the end character at the tail to obtain the real effective part of the slice. The specific process of sequential slice recovery is as follows: when the true valid part msg _ slice of the first slice is recovered, the first byte of msg _ slice is msg _ type, the next two bytes are msg _ size, and the rest are true hidden information slices. And the receiver continuously performs similar operation on the subsequent slices belonging to the session until the slices belonging to the session are processed, and finally the hidden information transmitted by the sender can be recovered. The receive message service execution logic is shown in fig. 5.
It should be noted that, the multiple blockchains (bitcoin, ledebur, etherhouse) in the present application may be replaced by other blockchains, and the transmission and reception of the message may also be performed in the same manner of message slicing and sequential recovery.
According to the hidden information transmission method based on the multiple block chains, the long message is split, the block chains to be embedded are randomly selected for each slice, and then the slices of the message are respectively embedded into transactions of different block chains, so that the information transmission efficiency is improved, the security of hidden information transmission is improved, and the risk of information leakage caused by the fact that the message is only embedded into one block chain is avoided.
Next, a hidden information transmission apparatus based on a plurality of block chains according to an embodiment of the present application will be described with reference to the drawings.
Fig. 6 is a block diagram of a hidden information transmission apparatus based on multiple block chains according to an embodiment of the present application.
As shown in fig. 6, the hidden information transmission apparatus 10 based on a plurality of block chains includes: a slicing module 100, a broadcasting module 200, and a restoring module 300.
The segmentation module 100 is configured to segment at least one block chain to obtain multiple slices, and fill a message to be transmitted to the multiple slices according to a preset filling rule to generate a transmission slice to be transmitted; the broadcasting module 200 is configured to embed a transmission slice to be transmitted into a preset field of at least one block chain, serialize preset field information according to a block chain transaction coding rule, and broadcast the serialized preset field information; the recovery module 300 is configured to recover the preset field information according to the transmission slice sequence to be sent, so as to obtain a message to be transmitted.
Optionally, in an embodiment of the present application, the method further includes: and the identification module is used for respectively identifying the identities of the two parties and negotiating the symmetric encryption key and the signature private key by using an identity authentication mechanism and a key negotiation mechanism under the chain by the two parties before the at least one block chain is segmented to obtain a plurality of slices.
Optionally, in an embodiment of the present application, the cutting module 100 includes: the calling unit is used for calling a random number generation function and randomly selecting at least one block chain for data transmission; the cutting unit is used for cutting at least one block of block chain into a plurality of slices according to the field structure characteristics and cutting the message to be transmitted; a filling unit for determining a message filling mode according to the slice order; the first generation unit is used for embedding the message type and the total length of a message to be transmitted into a payload header of a first slice if the slice is the first slice, sequentially filling the cut message to be transmitted into the payload header according to the slice capacity, identifying the end of the slice message through a slice end symbol, adding a slice serial number to the slice header, adding an initialization vector used for encryption after the slice serial number, encrypting the payload in the slice by using a symmetric encryption key negotiated by two communication parties, splicing the encrypted payload to the initialization vector, and generating a transmission slice to be transmitted; and the second generation unit is used for sequentially filling the cut messages to be transmitted to the head of the payload according to the slice capacity if the slice is not the first slice, identifying the end of the slice messages through the slice end symbol, adding a slice serial number to the head of the slice, encrypting the payload in the slice by using a symmetric encryption key negotiated by both communication parties, splicing the encrypted payload to the slice serial number, and generating the transmission slice to be transmitted.
Optionally, in an embodiment of the present application, the filling unit is further configured to, when the cut messages to be transmitted are sequentially filled to the payload header according to the slice capacity, fill the slice with 0 until the slice capacity is reached after the messages to be transmitted are filled to the slice and the slice is the slice capacity.
Optionally, in an embodiment of the present application, the recovery module 300 includes: the decoding unit is used for selecting a slice corresponding to the message to be transmitted according to the session message identifier, decoding the preset field information of the selected slice according to the block chain transaction coding rule, and acquiring the transaction field information; and the sequencing unit is used for solving the information of each transaction field according to the inverse process of the preset filling rule and sequencing the solved result to obtain the message to be transmitted.
It should be noted that the foregoing explanation on the embodiment of the method for transmitting hidden information based on multiple block chains is also applicable to a device for transmitting hidden information based on multiple block chains in this embodiment, and is not repeated herein.
According to the hidden information transmission device based on the multiple block chains, the long message is split, the block chains to be embedded are randomly selected for each slice, then the slices of the message are respectively embedded into transactions of different block chains, so that the information transmission efficiency is improved, the security of hidden information transmission is improved, and the risk of information leakage caused by the fact that the message is only embedded into one block chain is avoided.
In the description herein, reference to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the application. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or N embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "N" means at least two, e.g., two, three, etc., unless explicitly defined otherwise.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more N executable instructions for implementing steps of a custom logic function or process, and alternate implementations are included within the scope of the preferred embodiment of the present application in which functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art of implementing the embodiments of the present application.

Claims (10)

1. A hidden information transmission method based on a plurality of block chains is characterized by comprising the following steps:
segmenting at least one block chain to obtain a plurality of slices, and filling a message to be transmitted to the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted;
embedding the transmission slice to be transmitted into a preset field of the at least one block chain, serializing the preset field information according to a block chain transaction coding rule, and broadcasting the serialized preset field information;
and restoring the preset field information according to the sequence of the transmission slices to be transmitted to obtain the message to be transmitted.
2. The method of claim 1, wherein before the slicing the at least one blockchain into the plurality of slices, further comprising:
the two communication parties respectively carry out identification of the identities of the two parties and negotiation of a symmetric encryption key and a signature private key by using an identity authentication mechanism and a key negotiation mechanism under a chain.
3. The method according to claim 1, wherein the segmenting at least one block chain to obtain a plurality of slices, and the filling of the plurality of slices with the message to be transmitted according to a preset filling rule comprises:
calling a random number generation function, and randomly selecting at least one block chain for data transmission;
dividing the at least one block chain into a plurality of slices according to the field structure characteristics, and dividing the message to be transmitted;
determining a message filling mode according to the slice sequence;
if the slice is a first slice, embedding the message type and the total length of the message to be transmitted into a payload header of the first slice, sequentially filling the cut message to be transmitted into the payload header according to the slice capacity, marking the end of the slice message through a slice end symbol, adding a slice serial number into the slice header, adding an initialization vector used for encryption after the slice serial number, encrypting the payload in the slice by using a symmetric encryption key negotiated by two communication parties, splicing the encrypted payload to the initialization vector, and generating the transmission slice to be transmitted;
and if the slice is not the first slice, sequentially filling the cut messages to be transmitted to the header of the payload according to the slice capacity, marking the end of the slice messages through a slice end symbol, adding the slice serial number to the header of the slice, encrypting the payload in the slice by using a symmetric encryption key negotiated by both communication sides, splicing the encrypted payload to the slice serial number, and generating the transmission slice to be transmitted.
4. The method of claim 3, wherein when the sliced messages to be transmitted are sequentially filled into the payload header according to the slice capacity, the method further comprises:
and after the message to be transmitted is filled into the slice, filling the slice with 0 until the slice capacity is reached when the slice reaches the slice capacity.
5. The method of claim 1, wherein recovering the preset field information according to the transmission slice order to be transmitted to obtain the message to be transmitted comprises:
selecting a slice corresponding to the message to be transmitted according to the session message identification, and decoding the preset field information of the selected slice according to the blockchain transaction coding rule to obtain each transaction field information;
and solving the information of each transaction field according to the inverse process of the preset filling rule, and sequencing the solved results to obtain the message to be transmitted.
6. A hidden information transmission apparatus based on a plurality of block chains, comprising:
the segmentation module is used for segmenting at least one block chain to obtain a plurality of slices, and filling a message to be transmitted to the plurality of slices according to a preset filling rule to generate a transmission slice to be transmitted;
the broadcasting module is used for embedding the transmission slice to be transmitted into a preset field of the at least one block chain, serializing the preset field information according to a block chain transaction coding rule, and broadcasting the serialized preset field information;
and the recovery module is used for recovering the preset field information according to the transmission slice sequence to be transmitted to obtain the message to be transmitted.
7. The apparatus of claim 6, further comprising:
and the identification module is used for respectively identifying the identities of the two parties and negotiating the symmetric encryption key and the signature private key by using an identity authentication mechanism and a key negotiation mechanism under the chain by the two parties before the at least one block chain is segmented to obtain a plurality of slices.
8. The apparatus of claim 6, wherein the dicing module comprises:
the calling unit is used for calling a random number generating function and randomly selecting at least one block chain for data transmission;
the cutting unit is used for cutting the at least one block chain into a plurality of slices according to the field structure characteristics and cutting the message to be transmitted;
a filling unit for determining a message filling mode according to the slice order;
a first generation unit, configured to embed, if the slice is a first slice, a message type and a total length of the message to be transmitted into a payload header of the first slice, sequentially fill the cut message to be transmitted into the payload header according to the slice capacity, identify an end of the slice message by a slice end indicator, add a slice serial number to the slice header, add an initialization vector used for encryption after the slice serial number, encrypt the payload in the slice by using a symmetric encryption key negotiated by both communication parties, and splice the encrypted payload to the initialization vector to generate the transmission slice to be transmitted;
and a second generating unit, configured to, if the slice is not the first slice, sequentially fill the to-be-transmitted message after being cut to the header of the payload in accordance with the slice capacity, identify the end of the slice message by a slice end identifier, add the slice serial number to the header of the slice, encrypt the payload in the slice by using a symmetric encryption key negotiated by both communication parties, and splice the encrypted payload to the slice serial number, thereby generating the to-be-transmitted transmission slice.
9. The apparatus according to claim 8, wherein the padding unit is further configured to, when the cut messages to be transmitted are sequentially padded to the payload header according to the slice capacity, pad the slice with 0 until the slice capacity is reached when the slice reaches the slice capacity after the messages to be transmitted are padded to the slice.
10. The apparatus of claim 6, wherein the recovery module comprises:
the decoding unit is used for selecting a slice corresponding to the message to be transmitted according to the session message identifier, decoding the preset field information of the selected slice according to the block chain transaction coding rule, and acquiring the transaction field information;
and the sequencing unit is used for solving the information of each transaction field according to the inverse process of the preset filling rule and sequencing the solving results to obtain the message to be transmitted.
CN202210157113.7A 2022-02-21 2022-02-21 Hidden information transmission method and device based on multiple block chains Pending CN114745101A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210157113.7A CN114745101A (en) 2022-02-21 2022-02-21 Hidden information transmission method and device based on multiple block chains

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210157113.7A CN114745101A (en) 2022-02-21 2022-02-21 Hidden information transmission method and device based on multiple block chains

Publications (1)

Publication Number Publication Date
CN114745101A true CN114745101A (en) 2022-07-12

Family

ID=82274833

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210157113.7A Pending CN114745101A (en) 2022-02-21 2022-02-21 Hidden information transmission method and device based on multiple block chains

Country Status (1)

Country Link
CN (1) CN114745101A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567331A (en) * 2022-12-07 2023-01-03 珠海市鸿瑞信息技术股份有限公司 Information safety monitoring system and method based on industrial control protocol

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105743896A (en) * 2016-02-01 2016-07-06 成都三零瑞通移动通信有限公司 Encrypted voice communication key negotiation data exchange and transmission method
CN111767342A (en) * 2020-06-12 2020-10-13 黄颖 Multi-block chain based evidence storage method
CN112532613A (en) * 2020-11-25 2021-03-19 山东师范大学 Block chain address-based covert communication method
CN112600665A (en) * 2020-12-25 2021-04-02 江苏通付盾区块链科技有限公司 Covert communication method, device and system based on block chain and encryption technology
CN112667647A (en) * 2020-12-11 2021-04-16 深圳前海微众银行股份有限公司 Block chain transaction data transmission method and device
WO2021124226A1 (en) * 2019-12-18 2021-06-24 Jaj Technology Pte. Ltd. Blockchain implemented data hiding solutions for improvements in secure communication, storage and transmission of data
CN113595734A (en) * 2020-07-03 2021-11-02 支付宝实验室(新加坡)有限公司 Method, system and apparatus for managing transactions in multiple blockchain networks
CN113691376A (en) * 2021-08-04 2021-11-23 深圳前海微众银行股份有限公司 Key management method and device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105743896A (en) * 2016-02-01 2016-07-06 成都三零瑞通移动通信有限公司 Encrypted voice communication key negotiation data exchange and transmission method
WO2021124226A1 (en) * 2019-12-18 2021-06-24 Jaj Technology Pte. Ltd. Blockchain implemented data hiding solutions for improvements in secure communication, storage and transmission of data
CN111767342A (en) * 2020-06-12 2020-10-13 黄颖 Multi-block chain based evidence storage method
CN113595734A (en) * 2020-07-03 2021-11-02 支付宝实验室(新加坡)有限公司 Method, system and apparatus for managing transactions in multiple blockchain networks
CN112532613A (en) * 2020-11-25 2021-03-19 山东师范大学 Block chain address-based covert communication method
CN112667647A (en) * 2020-12-11 2021-04-16 深圳前海微众银行股份有限公司 Block chain transaction data transmission method and device
CN112600665A (en) * 2020-12-25 2021-04-02 江苏通付盾区块链科技有限公司 Covert communication method, device and system based on block chain and encryption technology
CN113691376A (en) * 2021-08-04 2021-11-23 深圳前海微众银行股份有限公司 Key management method and device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567331A (en) * 2022-12-07 2023-01-03 珠海市鸿瑞信息技术股份有限公司 Information safety monitoring system and method based on industrial control protocol

Similar Documents

Publication Publication Date Title
CN107248994B (en) Information sending method, processing method and device
CN111818031B (en) Block chain based covert communication message security encoding method, system and medium
Mare et al. Secret data communication system using Steganography, AES and RSA
CN114493593B (en) Multi-block chain hidden communication method
WO2017185872A1 (en) Short message processing method, device, and system, and storage medium
CN101594229A (en) A kind of trusted network connection system and method based on combined public key
CN111698084B (en) Block chain-based concealed communication method
CN110138795B (en) Multi-step mixed encryption and decryption method in communication process
CN109005027B (en) Random data encryption and decryption method, device and system
CN110544101A (en) SM 9-based alliance chain identity authentication method
CN105553618B (en) Safety of image transmission method based on fountain codes and adaptive population
CN114726538B (en) Hidden communication method based on block link signature
WO2016015222A1 (en) Data encryption and transmission method and device
CN106713415A (en) Data transmission method and system
CN111654484B (en) Ethernet workshop covert communication method based on whisper protocol
CN114567427B (en) Block chain hidden data segmented transmission method
CN108768920B (en) Recorded broadcast data processing method and device
CN114745101A (en) Hidden information transmission method and device based on multiple block chains
CN115334497A (en) Satellite terminal key distribution method, device and system
CN109951378B (en) File encryption transmission and sharing method in instant messaging
CN115277094A (en) Block chain-based communication method, terminal, system and storage medium
CN114422135A (en) Verifiable accidental transmission method based on elliptic curve
CN117314427A (en) Efficient hidden communication method and communication system based on blockchain remarks
CN112291196B (en) End-to-end encryption method and system suitable for instant messaging
CN117200965A (en) Block chain hidden communication method for avoiding multiplexing address and negotiating private key in advance

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