[go: up one dir, main page]

CN116527278A - A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography - Google Patents

A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography Download PDF

Info

Publication number
CN116527278A
CN116527278A CN202310561034.7A CN202310561034A CN116527278A CN 116527278 A CN116527278 A CN 116527278A CN 202310561034 A CN202310561034 A CN 202310561034A CN 116527278 A CN116527278 A CN 116527278A
Authority
CN
China
Prior art keywords
information
image
sender
secret
network
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
CN202310561034.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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202310561034.7A priority Critical patent/CN116527278A/en
Publication of CN116527278A publication Critical patent/CN116527278A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/094Adversarial learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

The invention relates to a block chain hidden communication method based on a generation type hidden network and image double hidden, which comprises the following steps: the sending end generates a carrier picture by utilizing a WGAN countermeasure network and a convolution steganalysis network; the sender divides the secret information into two parts and sequentially embeds the secret information into carrier pictures by using an airspace steganography algorithm and a ciphertext domain reversible information hiding algorithm to obtain a second carrier picture, compresses and stores the second carrier picture into an IPFS file system, and returns a hash plaintext abstract; the sender encrypts the hash plaintext abstract based on a certificate-free public key cryptosystem to obtain a hash ciphertext abstract and signature information; the receiving party takes the hash plaintext abstract as input of an IPFS file system, and obtains a second encrypted picture embedded by the sending party; and the receiver decrypts the second encrypted picture by using a space domain steganography algorithm and a ciphertext domain reversible information hiding algorithm according to the encryption process of the sender on the private information to obtain the private information.

Description

一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信 方法A Blockchain Covert Communication Based on Generative Steganographic Network and Image Double Steganography method

技术领域technical field

本发明属于人工智能与数据安全技术领域,具体涉及一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法。The invention belongs to the technical field of artificial intelligence and data security, and in particular relates to a block chain covert communication method based on generative steganography network and image double steganography.

背景技术Background technique

隐蔽通信技术通过保护通信信道不被窃听,是一种用于秘密信息安全传输并隐藏双方通信过程的解决方案。现有隐蔽通信的实现方式包括匿名通信、数字水印和隐写术等。隐写术作为隐蔽通信的一种具体实现方法,通过将秘密信息嵌入到载体信息生成不被怀疑的载密信息,被广泛应用于隐藏信息。Covert communication technology is a solution for secure transmission of secret information and hiding the communication process between the two parties by protecting the communication channel from eavesdropping. The existing implementation methods of covert communication include anonymous communication, digital watermarking and steganography. As a specific implementation method of covert communication, steganography is widely used to hide information by embedding secret information into carrier information to generate unsuspected secret information.

随着深度学习技术的发展,针对攻击者通过观察或枚举隐写算法能够非法获取秘密信息的问题,基于深度学习的隐蔽通信可以通过生成对抗网络生成载体信息,生成的载体信息嵌密后与原始载体更相似,随后通过卷积神经网络对嵌密后的载密信息进行分类,当检测到该载密信息为未嵌入时,则作为最终的载密信息进行传输。该方法虽然最终能生成相似度更高的载密信息,但是必须配合嵌入率低的隐写算法使用,当传输的秘密信息量较大时,尽管使用卷积隐写分析网络,攻击者也能容易区分载体信息和载密信息。当攻击者使用更精确的隐写检测网络时,那么通过生成对抗网络生成的载体不能作为合适、有效的载体,仍然难以抵抗隐写分析攻击,并且该类方案始终在集中式的不可信网络上传输信息,难以保证秘密信息的安全性。With the development of deep learning technology, in view of the problem that attackers can illegally obtain secret information by observing or enumerating steganographic algorithms, covert communication based on deep learning can generate carrier information through generative adversarial networks, and the generated carrier information can be embedded with The original carrier is more similar, and then the embedded secret-carrying information is classified by the convolutional neural network. When the secret-carrying information is detected as not embedded, it is transmitted as the final secret-carrying information. Although this method can eventually generate secret information with higher similarity, it must be used in conjunction with a steganographic algorithm with a low embedding rate. When the amount of secret information transmitted is large, even if the convolutional steganalysis network is used, the attacker can It is easy to distinguish carrier information and secret information. When the attacker uses a more accurate steganographic detection network, the carrier generated by generating an adversarial network cannot be used as a suitable and effective carrier, and it is still difficult to resist steganalysis attacks, and this type of scheme is always on a centralized untrusted network It is difficult to guarantee the security of secret information when transmitting information.

区块链有着去中心化、节点匿名化、数据不可篡改和透明性等特点。基于深度学习的区块链隐蔽通信保证了信息在可信的去中心化的网络传输,同时保证了通信双方身份的匿名性。然而,引入区块链技术,生成载密信息的过程仍然面临存储开销大的问题,部分方法利用IPFS将载密信息压缩成字符串,降低在区块链网络传输字符串的存储压力。然而,大多方案使用LSB算法嵌入字符串,这种方法会产生大量的账户交易地址,导致传输字符串的成本仍然很高。此外,在区块的生成过程中,其它非接收方网络节点用户也能获取交易信息从而导致安全威胁。Blockchain has the characteristics of decentralization, node anonymization, data immutability and transparency. The covert communication of blockchain based on deep learning ensures the transmission of information in a trusted decentralized network, and at the same time ensures the anonymity of the identities of both parties in the communication. However, with the introduction of blockchain technology, the process of generating secret information still faces the problem of high storage overhead. Some methods use IPFS to compress secret information into strings to reduce the storage pressure of transmitting strings on the blockchain network. However, most solutions use the LSB algorithm to embed strings. This method will generate a large number of account transaction addresses, resulting in a high cost of transmitting strings. In addition, during the block generation process, other non-recipient network node users can also obtain transaction information, resulting in security threats.

本发明针对现有隐蔽通信发明中面临的隐写分析攻击、嵌入率低、信息传输不安全、和传输开销高等问题,提出了一种生成式隐写分析网络和图像双隐写的区块链隐蔽通信方案。Aiming at the problems of steganalysis attack, low embedding rate, insecure information transmission, and high transmission overhead faced in the existing covert communication invention, the present invention proposes a generative steganalysis network and image double steganographic blockchain Covert communication scheme.

发明内容Contents of the invention

为了解决背景技术中存在的问题,本发明提供一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,目的是为了保证隐蔽信息传输的安全性以及保证隐蔽信息的完整性,包括:In order to solve the problems existing in the background technology, the present invention provides a block chain covert communication method based on generative steganography network and image double steganography, the purpose is to ensure the security of covert information transmission and the integrity of covert information ,include:

S1:发送方利用WGAN对抗网络中的生成器生成图像样本G(z),通过空域隐写算法嵌入随机值到图像样本中得到生成图片Steg(G(z))作为判别器的输入,利用真实图片数据集对WGAN对抗网络进行训练;S1: The sender uses the generator in the WGAN confrontation network to generate an image sample G(z), and embeds random values into the image sample through the spatial steganography algorithm to obtain the generated image Steg(G(z)) as the input of the discriminator. The image data set trains the WGAN confrontation network;

S2:WGAN对抗网络训练完成后,发送方将生成图片Steg(G(z))作为卷积隐写分析网络的输入,利用真实图片数据集对卷积隐写分析网络进行训练,通过训练好的卷积隐写分析网络从生成图片Steg(G(z))中筛选出未嵌密图像作为载体图片;S2: After the WGAN confrontation network training is completed, the sender will generate the picture Steg(G(z)) as the input of the convolutional steganalysis network, and use the real picture data set to train the convolutional steganalysis network. The convolutional steganalysis network screens out the unembedded image from the generated image Steg(G(z)) as the carrier image;

S3:发送方将秘密信息分成两部分并利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片;并将第二载密图片压缩存储至IPFS文件系统,返回哈希明文摘要,并设置访问控制权限;S3: The sender divides the secret information into two parts and uses the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to sequentially embed the two parts of the secret information into the carrier image to obtain the second secret image; compress and store the second secret image in IPFS file system, return hash plaintext digest, and set access control permissions;

S4:发送方基于无证书公钥密码体制对哈希明文摘要加密得到哈希密文摘要和签名信息,将哈希密文摘要和签名信息分别使用Base58编码进行编码,在编码后的哈希密文摘要和签名信息之间添加字符串“0”进行拼接得到签名信息字符串δ';S4: The sender encrypts the hash plaintext digest based on the certificate-free public key cryptosystem to obtain the hash ciphertext digest and signature information, and encodes the hash ciphertext digest and signature information using Base58 encoding, and the encoded hash password The string "0" is added between the text abstract and the signature information for splicing to obtain the signature information string δ';

S5:发送方去掉签名信息字符串δ'中重复出现的字符,重新进行拼接得到字符各不相同的中间签名字符串δ”,将区块链网络中节点的交易地址与中间签名字符串δ”进行匹配,同时记录成功匹配的字符在δ'和节点交易地址中的索引,按照索引的顺序依次填充到节点交易的extraData字段;节点交易被验证通过后会打包成区块,当区块中的所有交易被其它节点验证通过后,区块会通过区块链网络传输;S5: The sender removes the repeated characters in the signature information string δ', re-splicing to obtain an intermediate signature string δ" with different characters, and combines the transaction address of the node in the blockchain network with the intermediate signature string δ" Match, and record the index of the successfully matched character in δ' and the node transaction address, fill in the extraData field of the node transaction in the order of the index; the node transaction will be packaged into a block after being verified, when the block in the After all transactions are verified by other nodes, the block will be transmitted through the blockchain network;

S6:接收方从区块中获取填充到节点交易extraData字段的索引信息,通过对索引信息进行解码获取哈希密文摘要和签名信息,验证签名信息并利用发送方的私钥将哈希摘要密文解密成哈希明文摘要;S6: The receiver obtains the index information filled in the extraData field of the node transaction from the block, obtains the hash ciphertext summary and signature information by decoding the index information, verifies the signature information and uses the sender's private key to encrypt the hash summary The text is decrypted into a hash plaintext summary;

S7:接收方将哈希明文摘要作为IPFS文件系统的输入,获取发送方嵌密的第二载密图片;S7: The receiver uses the hash plaintext abstract as the input of the IPFS file system, and obtains the second encrypted image embedded in the sender;

S8:接收方根据发送方对私密信息的加密过程利用空域隐写算法和密文域可逆信息隐藏算法对第二载密图片进行解密得到秘密信息。S8: According to the encryption process of the sender's private information, the receiver uses the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to decrypt the second encrypted picture to obtain the secret information.

进一步地,所述对WGAN对抗网络进行训练包括:Further, the training of the WGAN confrontation network includes:

计算Steg(G(z))的数据分布与真实图片的数据分布的距离,从而区分真实图片和生成图片,通过Kantorovich-Rubinstein duality将求解Wasserstein距离转化为:Calculate the distance between the data distribution of Steg(G(z)) and the data distribution of the real picture, so as to distinguish the real picture from the generated picture, and convert the Wasserstein distance into:

限制连续函数fw的变动幅度即梯度为w,w的取值为[-c,-c],转化成WGAN对抗网络的损失函数为:Limit the variation range of the continuous function f w , that is, the gradient is w, and the value of w is [-c,-c]. The loss function transformed into the WGAN confrontation network is:

其中,表示在随机噪声的分布为z~pz下判别器判别Steg(G(z))的概率,/>表示在真实数据集x的分布为x~pr下判别真实图像的概率;in, Indicates the probability that the discriminator distinguishes Steg(G(z)) under the distribution of random noise z~p z , /> Indicates the probability of discriminating the real image under the distribution of the real data set x is x~p r ;

生成器目的是要使得Wasserstein距离变小,它的损失函数为判别器的目的则是使得真实数据分布与生成数据分布的距离变大,它的损失函数为生成器和判别器进行梯度下降更新参数不断迭代优化,直到损失函数收敛。The purpose of the generator is to make the Wasserstein distance smaller, and its loss function is The purpose of the discriminator is to make the distance between the real data distribution and the generated data distribution larger, and its loss function is The generator and the discriminator perform gradient descent to update the parameters and optimize iteratively until the loss function converges.

进一步地,所述载体图片包括:Further, the carrier image includes:

当SRNet网络将生成的Steg(G(z))判别为无嵌密图片时,将该Steg(G(z))图片作为载体图片;否则,继续训练SRNet网络,直到将Steg(G(z))判别为无嵌密图片为止。When the SRNet network discriminates the generated Steg(G(z)) as a non-embedded picture, use the Steg(G(z)) picture as the carrier picture; otherwise, continue to train the SRNet network until the Steg(G(z)) ) until it is judged that there is no embedded image.

进一步地,所述利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片包括:Further, the step of using the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to embed two parts of secret information into the carrier picture in turn to obtain the second secret-carrying picture includes:

S31:利用空域隐写算法将一第一秘密信息嵌入到载体图片,得到第一载密图片;S31: Using an airspace steganography algorithm to embed a first secret information into the carrier picture to obtain a first secret-carrying picture;

S32:利用密文域可逆信息隐藏算法将第二秘密信息嵌入第一载密图片得到第二载密图片;S32: Using the ciphertext domain reversible information hiding algorithm to embed the second secret information into the first encrypted image to obtain the second encrypted image;

所述将第二秘密信息嵌入第一载密图片得到第二载密图片包括:Said embedding the second secret information into the first secret-carrying picture to obtain the second secret-carrying picture comprises:

S321:将第一载密图片的第一行和第一列作为固定像素,固定像素的预测值保持不变;其它非固定像素通过中值预测器MED预测像素,得到预测图像;S321: Use the first row and the first column of the first secret-carrying picture as fixed pixels, and the predicted values of the fixed pixels remain unchanged; other non-fixed pixels are predicted by the median predictor MED to obtain a predicted image;

S322:将第一载密图片与预测图像中非固定像素的像素值的二进制表示从最高位到最低位逐一比较,将相同像素值的比特位数作为对应的标记位置值,固定像素的标记位置值定为-1,非固定像素的标记位置值转化成八位二进制表示;S322: Compare the binary representations of the pixel values of the non-fixed pixels in the first secret-carrying picture and the predicted image from the highest bit to the lowest bit one by one, and use the number of bits of the same pixel value as the corresponding mark position value, and the mark position of the fixed pixel The value is set to -1, and the mark position value of the non-fixed pixel is converted into an eight-bit binary representation;

S323:统计每一个标记位置值出现的概率,构造哈夫曼树据,根据左0右1的规则求出每个标记位置值对应的哈夫曼编码,记录位置图信息;其中,位置图信息由附加信息和哈夫曼编码序列的二进制表示组成,附加信息包括标记位置值对应的哈夫曼编码的长度的二进制表示、哈夫曼编码序列和标记位置值的对应关系以及哈夫曼编码序列总长度的二进制表示;S323: Count the probability of occurrence of each mark position value, construct Huffman tree data, calculate the Huffman code corresponding to each mark position value according to the rule of left 0 right 1, and record the position map information; wherein, the position map information It consists of additional information and the binary representation of the Huffman code sequence. The additional information includes the binary representation of the length of the Huffman code corresponding to the mark position value, the correspondence between the Huffman code sequence and the mark position value, and the Huffman code sequence the binary representation of the total length;

S324:利用预设的加密密钥e1生成与第一载密图片大小相同的伪随机矩阵R,将伪随机矩阵R与第一载密图片对应像素相乘得到加密图像,加密图像的像素值用二进制表示;S324: Use the preset encryption key e1 to generate a pseudo-random matrix R of the same size as the first secret-carrying picture, multiply the pseudo-random matrix R and the corresponding pixels of the first secret-carrying picture to obtain an encrypted image, and encrypt the pixel value of the image expressed in binary;

S325:在加密图像中选取前N行和前M列像素作为加密固定像素,按照从左至右从上至下将记录的位置图信息依次嵌入加密固定像素;将加密图像的非固定像素按照2*2进行划分为多个像素块,将像素块中四个像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上,嵌入完成后,若该像素块还有嵌入空间,则嵌入按照从左向右从上往下的加密固定像素的二进制表示;若嵌入空间不足,则在下一个像素块中嵌入,直到所有加密固定像素的二进制表示值嵌入完成;S325: Select the first N rows and the first M columns of pixels in the encrypted image as encrypted fixed pixels, and embed the recorded position map information from left to right and from top to bottom in order to encrypt fixed pixels; *2 Divide into multiple pixel blocks, and embed the Huffman coding sequence corresponding to the marker position value in the four pixels in the pixel block to the pixel block. Binary representation of encrypted fixed pixels from left to right from top to bottom; if the embedding space is insufficient, embed in the next pixel block until the binary representation values of all encrypted fixed pixels are embedded;

S326:使用预设的加密密钥e2对第二秘密信息进行加密,在嵌入完加密固定像素后,像素块中的额外嵌入空间开始嵌入加密后的第二秘密信息,嵌入完成后得到第二载密图片。S326: Use the preset encryption key e 2 to encrypt the second secret information. After the encrypted fixed pixels are embedded, the extra embedding space in the pixel block starts to embed the encrypted second secret information. After the embedding is completed, the second secret information is obtained. Upload encrypted pictures.

进一步地,所述将像素块中四个非固定像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上包括:Further, embedding the Huffman coding sequence corresponding to the marker position value in the four non-fixed pixels in the pixel block into the pixel block includes:

其中,t表示非固定像素的标记位置值,bs表示标记位置值对应的哈夫曼编码序列,当像素块中非固定像素的标记位置值t小于等于7时,像素块中的像素的嵌入空间大小为t+1位。Among them, t represents the marked position value of the non-fixed pixel, and b s represents the Huffman coding sequence corresponding to the marked position value. When the marked position value t of the non-fixed pixel in the pixel block is less than or equal to 7, the embedding of the pixel in the pixel block The size of the space is t+1 bits.

进一步地,所述对哈希明文摘要加密包括:Further, said encrypting the hash plaintext digest includes:

S41:KGC产生随机数λ,将随机数λ作为系统私钥s,将系统私钥s与椭圆曲线上的基点G相乘,得到系统公钥Ppub=s.G;S41: KGC generates a random number λ, uses the random number λ as the system private key s, multiplies the system private key s by the base point G on the elliptic curve, and obtains the system public key P pub =sG;

S42:发送方的用户标识为ID,KGC产生随机数rID计算RID=rID·G,其中,G表示椭圆曲线上的一个固定基点,生成部分私钥DID=rID+s·H(ID,RID),并将RID和部分私钥DID返回给发送方,H表示哈希函数;S42: The sender's user ID is ID, and KGC generates a random number r ID to calculate R ID = r ID G, where G represents a fixed base point on the elliptic curve, and generates a partial private key D ID = r ID + s H (ID, R ID ), and return the R ID and part of the private key D ID to the sender, and H represents the hash function;

S43:发送方验证DID·G=RID+Ppub·H(ID,RID)是否成立,若成立,则DID有效,否则无效;S43: The sender verifies whether D ID ·G=R ID +P pub ·H(ID,R ID ) is established, if established, D ID is valid, otherwise invalid;

S44:发送方随机选择秘密数xID,计算XID=xID·G,公布发送方公钥PKID=(RID,XID),并计算私钥为SKID=(DID,xID);S44: The sender randomly selects the secret number x ID , calculates X ID = x ID G, publishes the sender's public key PK ID = (R ID , X ID ), and calculates the private key as SK ID = (D ID , x ID );

S45:发送方将私钥SKID通过协商的会话密钥加密传输给接收方,并且使用公钥PKID=(RID,XID)对哈希明文摘要m进行加密得到哈希密文摘要m';S45: The sender encrypts and transmits the private key SK ID to the receiver through the negotiated session key, and uses the public key PKID=(R ID , X ID ) to encrypt the hash plaintext digest m to obtain the hash ciphertext digest m';

S46:发送方选择随机数t,分别计算T=t·G、v=H(m,T,RID,XID)以及u=t=xID(H(ID,RID)+v)+DID生成签名信息δ=(u,v)。S46: The sender selects a random number t, and calculates respectively T=t·G, v=H(m,T,R ID ,X ID ) and u=t=x ID (H(ID,R ID )+v)+ D ID generates signature information δ=(u, v).

进一步地,所述对索引信息进行解码获取哈希密文摘要和签名信息包括:Further, said decoding the index information to obtain hash ciphertext digest and signature information includes:

S61:接收方从区块中查看与发送方相关的所有交易信息,过滤出所有交易信息的extraData字段含有的索引信息;根据所有交易信息的extraData字段含有的索引信息重新组合还原签名信息字符串δ';S61: The receiver checks all transaction information related to the sender from the block, filters out the index information contained in the extraData field of all transaction information; reassembles and restores the signature information string δ according to the index information contained in the extraData field of all transaction information ';

S62:接收方将还原的签名信息字符串δ'通过字符串“0”分隔出经过Base58编码后的签名信息和哈希密文摘要;使用Base58解码得到发送方的签名信息和哈希密文摘要;S62: The receiver separates the restored signature information string δ' through the string "0" to separate the Base58-encoded signature information and hash ciphertext digest; use Base58 decoding to obtain the sender's signature information and hash ciphertext digest ;

S63:接收方使用发送方的公钥验证签名信息,若验证通过;则利用发送方的私钥对哈希密文摘要解密得到哈希明文摘要。S63: The receiver uses the sender's public key to verify the signature information, and if the verification is passed; uses the sender's private key to decrypt the hashed ciphertext digest to obtain the hashed plaintext digest.

进一步地,所述接收方使用发送方的公钥验证签名信息包括:Further, the receiver using the sender's public key to verify the signature information includes:

h=H(ID,RID),T'=u·G-XID*(h+v)-Rid-Ppub*h,v'=H(m,T',RID,XID),若v=v',则验证通过。h=H(ID,R ID ),T'=u·GX ID *(h+v)-R id -P pub *h,v'=H(m,T',R ID ,X ID ), if v=v', then the verification is passed.

本发明至少具有以下有益效果The present invention has at least the following beneficial effects

(1)采用WGAN生成对抗网络和SRNet隐写分析网络,解决了传统GAN的训练问题和是否载密的检测精准问题,使用空域隐写算法在WGAN训练过程中处理生成的样本,确保最终生成的载体图片不失真并具备抵御隐写分析攻击的能力。(1) WGAN is used to generate confrontation network and SRNet steganalysis network, which solves the training problem of traditional GAN and the detection accuracy of whether it contains secrets, and uses the airspace steganography algorithm to process the generated samples during the WGAN training process to ensure the final generated The carrier image is not distorted and has the ability to resist steganalysis attacks.

(2)将载体信息分成两部分依次利用空域隐写算法和密文域可逆信息隐藏算法混合嵌入,解决了神经网络训练高嵌入率的算法困难的问题和防止攻击者通过枚举空域隐写算法提取信息,提高了安全性。(2) Divide the carrier information into two parts and use the spatial domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to embed in turn, which solves the problem of neural network training algorithms with high embedding rates and prevents attackers from enumerating the spatial domain steganographic algorithm. Information is extracted for increased security.

(3)通过对字符串索引存储的方式,减少了存储的开销,设置访问控制权限防止恶意内部节点的获取秘密信息,保证了去中心化网络的安全性。(3) By storing the string index, the storage overhead is reduced, access control permissions are set to prevent malicious internal nodes from obtaining secret information, and the security of the decentralized network is ensured.

附图说明Description of drawings

图1为本发明实施例的总体通信流程图;Fig. 1 is the overall communication flowchart of the embodiment of the present invention;

图2为本发明实施例的生成式隐写网络流程图;FIG. 2 is a flowchart of a generative steganographic network according to an embodiment of the present invention;

图3为本发明实施例的图像隐写嵌入流程图;FIG. 3 is a flow chart of image steganography embedding according to an embodiment of the present invention;

图4为本发明实施例的区块链数据传输流程图。Fig. 4 is a flow chart of blockchain data transmission according to an embodiment of the present invention.

具体实施方式Detailed ways

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。Embodiments of the present invention are described below through specific examples, and those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific implementation modes, and various modifications or changes can be made to the details in this specification based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the diagrams provided in the following embodiments are only schematically illustrating the basic concept of the present invention, and the following embodiments and the features in the embodiments can be combined with each other in the case of no conflict.

其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。Wherein, the accompanying drawings are for illustrative purposes only, and represent only schematic diagrams, rather than physical drawings, and should not be construed as limiting the present invention; in order to better illustrate the embodiments of the present invention, some parts of the accompanying drawings may be omitted, Enlargement or reduction does not represent the size of the actual product; for those skilled in the art, it is understandable that certain known structures and their descriptions in the drawings may be omitted.

本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。In the drawings of the embodiments of the present invention, the same or similar symbols correspond to the same or similar components; , "front", "rear" and other indicated orientations or positional relationships are based on the orientations or positional relationships shown in the drawings, which are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the referred devices or elements must It has a specific orientation, is constructed and operated in a specific orientation, so the terms describing the positional relationship in the drawings are for illustrative purposes only, and should not be construed as limiting the present invention. For those of ordinary skill in the art, the understanding of the specific meaning of the above terms.

请参阅图1,本发明提供一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,包括:Please refer to Figure 1, the present invention provides a block chain covert communication method based on generative steganography network and image double steganography, including:

请参阅图2,S1:发送方利用WGAN对抗网络中的生成器生成图像样本G(z),通过空域隐写算法嵌入随机值到图像样本中得到生成图片Steg(G(z))作为判别器的输入,利用真实图片数据集对WGAN对抗网络进行训练;Please refer to Figure 2, S1: The sender uses the generator in the WGAN confrontation network to generate an image sample G(z), and embeds random values into the image sample through the spatial domain steganography algorithm to obtain the generated image Steg(G(z)) as a discriminator The input of the WGAN confrontation network is trained using the real picture data set;

WGAN的生成模型G是一个多层感知机,主要用于生成假的图片样本,通过输入随机噪声z(z是一种服从高斯分布的随机变量)可以生成图片样本G(z);The generation model G of WGAN is a multi-layer perceptron, which is mainly used to generate fake picture samples. By inputting random noise z (z is a random variable subject to Gaussian distribution), picture samples G(z) can be generated;

生成图片样本G(z)后,通过空域自适应隐写算法将适量信息即随机值嵌入图片样本得到载密的图片样本Steg(G(z))作为判别器的输入。After the image sample G(z) is generated, the appropriate amount of information, that is, random values, is embedded in the image sample through the spatial adaptive steganography algorithm to obtain the encrypted image sample Steg(G(z)) as the input of the discriminator.

将得到的Steg(G(z))输入到WGAN的判别模型D,判别模型的另一部分则是真实图片数据集。The obtained Steg(G(z)) is input to the discriminant model D of WGAN, and the other part of the discriminant model is the real picture data set.

计算Steg(G(z))的数据分布与真实图片的数据分布的距离,从而区分真实图片和生成图片,通过Kantorovich-Rubinstein duality将求解Wasserstein距离转化为:Calculate the distance between the data distribution of Steg(G(z)) and the data distribution of the real picture, so as to distinguish the real picture from the generated picture, and convert the Wasserstein distance into:

限制连续函数fw的变动幅度即梯度为w,w的取值为[-c,-c],转化成WGAN对抗网络的损失函数为:Limit the variation range of the continuous function f w , that is, the gradient is w, and the value of w is [-c,-c]. The loss function transformed into the WGAN confrontation network is:

其中,表示在随机噪声的分布为z~pz下判别器判别Steg(G(z))的概率,/>表示在真实数据集x的分布为x~pr下判别真实图像的概率;in, Indicates the probability that the discriminator distinguishes Steg(G(z)) under the distribution of random noise z~p z , /> Indicates the probability of discriminating the real image under the distribution of the real data set x is x~p r ;

生成器目的是要使得Wasserstein距离变小,它的损失函数为判别器的目的则是使得真实数据分布与生成数据分布的距离变大,它的损失函数为生成器和判别器进行梯度下降更新参数不断迭代优化,直到损失函数收敛。The purpose of the generator is to make the Wasserstein distance smaller, and its loss function is The purpose of the discriminator is to make the distance between the real data distribution and the generated data distribution larger, and its loss function is The generator and the discriminator perform gradient descent to update the parameters and optimize iteratively until the loss function converges.

S2:WGAN对抗网络训练完成后,发送方将生成图片Steg(G(z))作为卷积隐写分析网络的输入,利用真实图片数据集对卷积隐写分析网络进行训练,通过训练好的卷积隐写分析网络从生成图片Steg(G(z))中筛选出未嵌密图像作为载体图片;S2: After the WGAN confrontation network training is completed, the sender will generate the picture Steg(G(z)) as the input of the convolutional steganalysis network, and use the real picture data set to train the convolutional steganalysis network. The convolutional steganalysis network screens out the unembedded image from the generated image Steg(G(z)) as the carrier image;

优选地,所述对卷积隐写分析网络SRNet进行训练包括:Preferably, the training of the convolutional steganalysis network SRNet includes:

卷积隐写分析网络SRNet的输入为Steg(G(z)),另一部分输入则为真实图片数据集,SRNet网络的前7层通过卷积操作提取Steg(G(z))隐写嵌入的高频噪声,随后8-12层使用残差连接的卷积层,并且使用平均池化操作用于缩小特征图的维度,最后全连接层用作分类器对图片进行分类;SRNet选择的感知损失函数形式如下:The input of the convolutional steganalysis network SRNet is Steg(G(z)), and the other part of the input is the real picture data set. The first 7 layers of the SRNet network extract the Steg(G(z)) steganographic embedded data through the convolution operation. High-frequency noise, followed by 8-12 layers of residual-connected convolutional layers, and average pooling operations are used to reduce the dimension of the feature map, and finally the fully-connected layer is used as a classifier to classify pictures; the perceptual loss selected by SRNet The function form is as follows:

PerceptualLoss=λ*ContentLoss+γ*StyleLossssPerceptualLoss=λ*ContentLoss+γ*StyleLossss

其中,λ和γ是权衡内容损失和风格损失的参数,控制了两种损失在总损失中的权重;Content Loss用于损失衡量生成图像与真实图像在特征级别上的相似性,Style Loss用于衡量生成图像与真实图像之间的风格差异即类别差异。Among them, λ and γ are parameters that weigh the content loss and style loss, and control the weight of the two losses in the total loss; Content Loss is used to measure the similarity between the generated image and the real image at the feature level, and Style Loss is used for The measure of the style difference between the generated image and the real image is the class difference.

卷积隐写分析网络SRNet的训练过程如下:The training process of the convolutional steganalysis network SRNet is as follows:

(a)将低分辨率图像输入SRNet,通过前向传播计算输出图像。然后,将输出图像与对应的高分辨率图像进行比较,计算损失函数的值。接下来,使用随机梯度下降反向传播算法更新网络参数,减小损失函数的值。(a) Input the low-resolution image into SRNet, and calculate the output image through forward propagation. Then, the output image is compared with the corresponding high-resolution image to calculate the value of the loss function. Next, the network parameters are updated using the stochastic gradient descent backpropagation algorithm, reducing the value of the loss function.

(b)在训练过程中,调整学习率、正则化项、批次大小等超参数,以获得更好的模型性能。(b) During training, hyperparameters such as learning rate, regularization term, and batch size are adjusted to obtain better model performance.

(c)迭代训练:重复执行步骤a和b,直到达到预定的训练轮数或模型性能满足要求为止。(c) Iterative training: Repeat steps a and b until the predetermined number of training rounds is reached or the model performance meets the requirements.

(2)获得载体图片:当SRNet网络将生成的Steg(G(z))判别为无嵌密图片时,将该Steg(G(z))图片作为载体图片;否则,继续训练SRNet网络,直到将Steg(G(z))判别为无嵌密图片为止。(2) Obtain the carrier image: When the SRNet network judges the generated Steg(G(z)) as a non-embedded image, use the Steg(G(z)) image as the carrier image; otherwise, continue to train the SRNet network until Steg(G(z)) is judged as a picture without embedding.

如附图3所示,S3:发送方将秘密信息分成两部分并利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片;并将第二载密图片压缩存储至IPFS文件系统,返回哈希明文摘要,并设置访问控制权限;As shown in Figure 3, S3: the sender divides the secret information into two parts and uses the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to embed the two parts of the secret information into the carrier picture to obtain the second secret picture; The second encrypted image is compressed and stored in the IPFS file system, and the hash plaintext summary is returned, and the access control permission is set;

优选地,所述利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片包括:Preferably, said using the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to sequentially embed two parts of secret information into the carrier image to obtain the second secret image includes:

S31:利用空域隐写算法将一第一秘密信息嵌入到载体图片,得到第一载密图片;S31: Using an airspace steganography algorithm to embed a first secret information into the carrier picture to obtain a first secret-carrying picture;

S32:利用密文域可逆信息隐藏算法将第二秘密信息嵌入第一载密图片得到第二载密图片;S32: Using the ciphertext domain reversible information hiding algorithm to embed the second secret information into the first encrypted image to obtain the second encrypted image;

所述将第二秘密信息嵌入第一载密图片(载密图片1)得到第二载密图片包括:Said embedding the second secret information into the first secret-carrying picture (secret-carrying picture 1) to obtain the second secret-carrying picture comprises:

S321:将第一载密图片的第一行和第一列作为固定像素,固定像素的预测值保持不变;其它非固定像素通过中值预测器MED预测像素,得到预测图像;S321: Use the first row and the first column of the first secret-carrying picture as fixed pixels, and the predicted values of the fixed pixels remain unchanged; other non-fixed pixels are predicted by the median predictor MED to obtain a predicted image;

优选地,所述通过MED预测像素包括:Preferably, the predicted pixels by MED include:

其中,p像素的左-上相邻三个像素分别c、b、a。Wherein, the left-upper adjacent three pixels of p pixel are respectively c, b, and a.

S322:将第一载密图片与预测图像中非固定像素的像素值的二进制表示从最高位到最低位逐一比较,将相同像素值的比特位数作为对应的标记位置值,固定像素的标记位置值定为-1,非固定像素的标记位置值转化成八位二进制表示:S322: Compare the binary representations of the pixel values of the non-fixed pixels in the first secret-carrying picture and the predicted image from the highest bit to the lowest bit one by one, and use the number of bits of the same pixel value as the corresponding mark position value, and the mark position of the fixed pixel The value is set to -1, and the mark position value of the non-fixed pixel is converted into an eight-bit binary representation:

S323:统计每一个标记位置值出现的概率,构造哈夫曼树据,根据左0右1的规则求出每个标记位置值对应的哈夫曼编码,记录位置图信息;其中,位置图信息由附加信息和哈夫曼编码序列的二进制表示组成,附加信息包括标记位置值对应的哈夫曼编码的长度的二进制表示、哈夫曼编码序列和标记位置值的对应关系以及哈夫曼编码序列总长度的二进制表示;S323: Count the probability of occurrence of each mark position value, construct Huffman tree data, calculate the Huffman code corresponding to each mark position value according to the rule of left 0 right 1, and record the position map information; wherein, the position map information It consists of additional information and the binary representation of the Huffman code sequence. The additional information includes the binary representation of the length of the Huffman code corresponding to the mark position value, the correspondence between the Huffman code sequence and the mark position value, and the Huffman code sequence the binary representation of the total length;

S324:利用预设的加密密钥e1生成与第一载密图片大小相同的伪随机矩阵R,将伪随机矩阵R与第一载密图片对应像素相乘得到加密图像,加密图像的像素值用二进制表示;S324: Use the preset encryption key e1 to generate a pseudo-random matrix R of the same size as the first secret-carrying picture, multiply the pseudo-random matrix R and the corresponding pixels of the first secret-carrying picture to obtain an encrypted image, and encrypt the pixel value of the image expressed in binary;

其中,xk(i,j)表示第一载密图片中的像素,表示加密图像中的像素,k表示像素值的二进制位数,i和j表示图像的行和列。Among them, x k (i,j) represents the pixel in the first classified image, Represents the pixel in the encrypted image, k represents the binary digits of the pixel value, i and j represent the row and column of the image.

S325:在加密图像中选取前N行和前M列像素作为加密固定像素,按照从左至右从上至下将记录的位置图信息依次嵌入加密固定像素;将加密图像的非固定像素按照2*2进行划分为多个像素块,将像素块中四个像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上,嵌入完成后,若该像素块还有嵌入空间,则嵌入按照从左向右从上往下的加密固定像素的二进制表示;若嵌入空间不足,则在下一个像素块中嵌入,直到所有加密固定像素的二进制表示值嵌入完成;S325: Select the first N rows and the first M columns of pixels in the encrypted image as encrypted fixed pixels, and embed the recorded position map information from left to right and from top to bottom in order to encrypt fixed pixels; *2 Divide into multiple pixel blocks, and embed the Huffman coding sequence corresponding to the marker position value in the four pixels in the pixel block to the pixel block. Binary representation of encrypted fixed pixels from left to right from top to bottom; if the embedding space is insufficient, embed in the next pixel block until the binary representation values of all encrypted fixed pixels are embedded;

S326:使用预设的加密密钥e2对第二秘密信息进行加密,在嵌入完加密固定像素后,像素块中的额外嵌入空间开始嵌入加密后的第二秘密信息,嵌入完成后得到第二载密图片。S326: Use the preset encryption key e 2 to encrypt the second secret information. After the encrypted fixed pixels are embedded, the extra embedding space in the pixel block starts to embed the encrypted second secret information. After the embedding is completed, the second secret information is obtained. Upload encrypted pictures.

优选地,所述将像素块中四个非固定像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上包括:Preferably, embedding the Huffman coding sequence corresponding to the marker position value in the four non-fixed pixels in the pixel block into the pixel block includes:

其中,t表示非固定像素的标记位置值,bs表示标记位置值对应的哈夫曼编码序列,当像素块中非固定像素的标记位置值t小于等于7时,像素块中的像素的嵌入空间大小为t+1位;Among them, t represents the marked position value of the non-fixed pixel, and b s represents the Huffman coding sequence corresponding to the marked position value. When the marked position value t of the non-fixed pixel in the pixel block is less than or equal to 7, the embedding of the pixel in the pixel block The space size is t+1 bits;

请参阅图4,S4:发送方基于无证书公钥密码体制对哈希明文摘要加密得到哈希密文摘要和签名信息,将哈希密文摘要和签名信息分别使用Base58编码进行编码,在编码后的哈希密文摘要和签名信息之间添加字符串“0”进行拼接得到签名信息字符串δ';Please refer to Figure 4, S4: The sender encrypts the hash plaintext digest based on the certificateless public key cryptography system to obtain the hash ciphertext digest and signature information, and encodes the hash ciphertext digest and signature information using Base58 encoding respectively. The string "0" is added between the final hash ciphertext digest and the signature information for splicing to obtain the signature information string δ';

S41:KGC产生随机数λ,将随机数λ作为系统私钥s,将系统私钥s与椭圆曲线上的基点G相乘,得到系统公钥Ppub=s.G;S41: KGC generates a random number λ, uses the random number λ as the system private key s, multiplies the system private key s by the base point G on the elliptic curve, and obtains the system public key P pub =sG;

S42:发送方的用户标识为ID,KGC产生随机数rID计算RID=rID·G,其中,G表示椭圆曲线上的一个固定基点,生成部分私钥DID=rID+s·H(ID,RID),并将RID和部分私钥DID返回给发送方,H表示哈希函数;S42: The sender's user ID is ID, and KGC generates a random number r ID to calculate R ID = r ID G, where G represents a fixed base point on the elliptic curve, and generates a partial private key D ID = r ID + s H (ID, R ID ), and return the R ID and part of the private key D ID to the sender, and H represents the hash function;

S43:发送方验证DID·G=RID+Ppub·H(ID,RID)是否成立,若成立,则DID有效,否则无效;S43: The sender verifies whether D ID ·G=R ID +P pub ·H(ID,R ID ) is established, if established, D ID is valid, otherwise invalid;

S44:发送方随机选择秘密数xID,计算XID=xID·G,公布发送方公钥PKID=(RID,XID),并计算私钥为SKID=(DID,xID);S44: The sender randomly selects the secret number x ID , calculates X ID = x ID G, publishes the sender's public key PK ID = (R ID , X ID ), and calculates the private key as SK ID = (D ID , x ID );

S45:发送方将私钥SKID通过协商的会话密钥加密传输给接收方,并且使用公钥PKID=(RID,XID)对哈希明文摘要m进行加密得到哈希密文摘要m';S45: The sender encrypts and transmits the private key SK ID to the receiver through the negotiated session key, and uses the public key PK ID = (R ID , X ID ) to encrypt the hash plaintext digest m to obtain the hash ciphertext digest m ';

S46:发送方选择随机数t,分别计算T=t·G、v=H(m,T,RID,XID)以及u=t+xID(H(ID,RID)+v)+DID生成签名信息δ=(u,v)。S46: The sender selects a random number t, and calculates respectively T=t·G, v=H(m,T,R ID ,X ID ) and u=t+x ID (H(ID,R ID )+v)+ D ID generates signature information δ=(u, v).

S5:发送方去掉签名信息字符串δ'中重复出现的字符,重新进行拼接得到字符各不相同的中间签名字符串δ”,将区块链网络中节点的交易地址与中间签名字符串δ”进行匹配,同时记录成功匹配的字符在δ'和节点交易地址中的索引,按照索引的顺序依次填充到节点交易的extraData字段;节点交易被验证通过后会打包成区块,当区块中的所有交易被其它节点验证通过后,区块会通过区块链网络传输;S5: The sender removes the repeated characters in the signature information string δ', re-splicing to obtain an intermediate signature string δ" with different characters, and combines the transaction address of the node in the blockchain network with the intermediate signature string δ" Match, and record the index of the successfully matched character in δ' and the node transaction address, fill in the extraData field of the node transaction in the order of the index; the node transaction will be packaged into a block after being verified, when the block in the After all transactions are verified by other nodes, the block will be transmitted through the blockchain network;

S6:接收方从区块中获取填充到节点交易extraData字段的索引信息,通过对索引信息进行解码获取哈希密文摘要和签名信息,验证签名信息并利用发送方的私钥将哈希摘要密文解密成哈希明文摘要;S6: The receiver obtains the index information filled in the extraData field of the node transaction from the block, obtains the hash ciphertext summary and signature information by decoding the index information, verifies the signature information and uses the sender's private key to encrypt the hash summary The text is decrypted into a hash plaintext summary;

优选地,所述对索引信息进行解码获取哈希密文摘要和签名信息包括Preferably, said decoding the index information to obtain hash ciphertext digest and signature information includes

S61:接收方从区块中查看与发送方相关的所有交易信息,过滤出所有交易信息的extraData字段含有的索引信息;根据所有交易信息的extraData字段含有的索引信息重新组合还原签名信息字符串δ';S61: The receiver checks all transaction information related to the sender from the block, filters out the index information contained in the extraData field of all transaction information; reassembles and restores the signature information string δ according to the index information contained in the extraData field of all transaction information ';

在重新组合时,由于索引信息包含字符在δ'和节点交易地址中的索引,因此通过extraData字段含有的索引信息和节点交易地址还原字符,在根据字符在δ'的索引还原δ'。When reassembling, since the index information includes the index of the character in δ' and the node transaction address, the character is restored through the index information contained in the extraData field and the node transaction address, and δ' is restored according to the index of the character in δ'.

S62:接收方将还原的签名信息字符串δ'通过字符串“0”分隔出经过Base58编码后的签名信息和哈希密文摘要;使用Base58解码得到发送方的签名信息和哈希密文摘要;S62: The receiver separates the restored signature information string δ' through the string "0" to separate the Base58-encoded signature information and hash ciphertext digest; use Base58 decoding to obtain the sender's signature information and hash ciphertext digest ;

S63:接收方使用发送方的公钥验证签名信息,若验证通过;则利用发送方的私钥对哈希密文摘要解密得到哈希明文摘要。S63: The receiver uses the sender's public key to verify the signature information, and if the verification is passed; uses the sender's private key to decrypt the hashed ciphertext digest to obtain the hashed plaintext digest.

优选地,所述接收方使用发送方的公钥验证签名信息包括:Preferably, the recipient uses the sender's public key to verify the signature information includes:

h=H(ID,RID),T'=u·G-XID*(h+v)Rid-Ppub*h,v'=H(m,T',RID,XID),若v=v',则验证通过。h=H(ID,R ID ), T'=u·GX ID *(h+v)R id -P pub *h,v'=H(m,T',R ID ,X ID ), if v =v', the verification is passed.

S7:接收方将哈希明文摘要作为IPFS文件系统的输入,获取发送方嵌密的第二载密图片;S7: The receiver uses the hash plaintext abstract as the input of the IPFS file system, and obtains the second encrypted image embedded in the sender;

S8:接收方根据发送方对私密信息的加密过程利用空域隐写算法和密文域可逆信息隐藏算法对第二载密图片(载密图片2)进行解密得到秘密信息。S8: The receiver decrypts the second secret-carrying picture (secret-carrying picture 2) by using the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm according to the encryption process of the private information by the sender to obtain the secret information.

优选地,所述对第二载密图片进行解密得到秘密信息包括:Preferably, said decrypting the second secret-carrying picture to obtain the secret information includes:

(1)从前N行和前M列像素中提取位置图信息;(1) Extract position map information from the first N rows and the first M columns of pixels;

(2)根据哈夫曼编码序列和位置标记值的对应关系、哈夫曼编码序列的总长度,得到所有非固定像素的位置标记值;(2) According to the corresponding relationship between the Huffman code sequence and the position mark value, the total length of the Huffman code sequence, obtain the position mark values of all non-fixed pixels;

(3)提取出所有固定像素的像素值;将固定像素放回前N行和前M列,得到图像I′e(3) Extract the pixel values of all fixed pixels; Put the fixed pixels back into the first N rows and the first M columns to obtain the image I'e ;

(4)从非固定像素提取哈夫曼编码序列和固定像素的像素值后,接收方获取加密密钥e2对应的解密密钥e'2,并利用解密密钥e'2提取一部分第二秘密信息,得到图像I'e(4) After extracting the Huffman coding sequence and the pixel value of the fixed pixel from the non-fixed pixel, the receiver obtains the decryption key e' 2 corresponding to the encryption key e 2 , and uses the decryption key e' 2 to extract a part of the second Secret information, get image I'e;

(5)接收方获取加密密钥e1对应的解密密钥e1',利用解密密钥e1'生成伪随机矩阵R对I'e进行异或操作得到解密后的I”,在图像I”中每一个非固定像素二进制的前t位或者t+1位与图像非固定像素二进制的I'e不同,若t≤7,则图像I'e的t+1位与图像I”像素预测值相反,按照先行后列的顺序依次恢复每一个非固定像素;恢复过程如下:根据图像I”还原的固定像素从行到列依次求非固定像素p'e1(x,y)的预测值若该像素位置标记值t≤7,那么图像I'e的像素值前t位与非固定像素预测值/>相同,图像I'e的像素值第t+1位与非固定像素预测值/>相反,图像I'e的像素值第t+2至第8位与非固定像素/>相同,还原完非固定像素的像素值后,将该还原后的像素值替换解密后图像I”的像素值,继续从左至右从上至下依次恢复每一个非固定像素,最后得到第一载密图片,图像恢复的公式如下:(5) The receiver obtains the decryption key e 1 ' corresponding to the encryption key e 1 , and uses the decryption key e 1 ' to generate a pseudo-random matrix R to perform an XOR operation on I' e to obtain the decrypted I", in the image I The first t bit or t+1 bit of each non-fixed pixel binary in "is different from the I' e of the non-fixed pixel binary of the image. If t≤7, the t+1 bit of the image I' e is predicted from the image I" pixel The values are opposite, and each non-fixed pixel is restored sequentially in the order of first row and then column; the restoration process is as follows: According to the restored fixed pixels of the image I", the predicted value of the non-fixed pixel p' e1 (x, y) is sequentially calculated from row to column If the pixel position mark value t≤7, then the first t bits of the pixel value of the image I' e and the non-fixed pixel prediction value> Same, the pixel value t+1 of the image I' e is the same as the non-fixed pixel prediction value /> On the contrary, the pixel value t+2 to the 8th bit of the image I' e is the same as the non-fixed pixel /> Similarly, after restoring the pixel value of the non-fixed pixel, replace the pixel value of the decrypted image I" with the restored pixel value, and continue to restore each non-fixed pixel from left to right from top to bottom, and finally get the first Confidential pictures, the formula for image recovery is as follows:

其中,表示预测像素高t位的值,/>表示预测像素第t+1位的值,表示对/>进行异或取反操作。in, Represents the value of the high t bits of the predicted pixel, /> Indicates the value of the t+1th bit of the predicted pixel, express yes Execute exclusive or negation operation.

(6)利用空域隐写算法的解码方式从第一载密图片中获取剩余第一秘密信息,最后将两部分秘密信息得到私密信息。(6) Obtain the remaining first secret information from the first secret-carrying picture by using the decoding method of the spatial domain steganography algorithm, and finally obtain the private information by combining the two parts of the secret information.

在本发明提出的方法中,通过对抗网络和隐写分析有效避免了基于深度学习的隐写分析检测,使用利用空域隐写算法和密文域可逆信息隐藏算法实现了更大的嵌入率和无损地还原原始图像同时避免了基于概率的特征检测。此外,在区块链网络中通过在extraData字段记录索引传输减少了需要交易的数量,使用无证书公钥密钥体制进行加密后签名,保护了发送方的身份隐私。In the method proposed by the present invention, steganalysis detection based on deep learning is effectively avoided through confrontational networks and steganalysis, and greater embedding rate and non-destructive It can effectively restore the original image while avoiding probabilistic feature detection. In addition, in the blockchain network, the number of required transactions is reduced by recording the index transmission in the extraData field, and the certificate-free public key key system is used for encryption and signature, which protects the identity privacy of the sender.

需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的软硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。It should be noted that those skilled in the art can understand that the implementation of all or part of the processes in the above method embodiments can be completed by instructing related software and hardware through computer programs, and the programs can be stored in computer-readable memory In the medium, when the program is executed, it may include the processes of the above-mentioned method embodiments. Wherein, the storage medium may be a magnetic disk, an optical disk, a read-only memory (Read-Only Memory, ROM) or a random access memory (Random Access Memory, RAM) and the like.

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。The above descriptions are only preferred embodiments of the present invention, and are not intended to limit the present invention. Any modifications, equivalent replacements and improvements made within the spirit and principles of the present invention shall be included in the protection of the present invention. within range.

最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。Finally, it is noted that the above embodiments are only used to illustrate the technical solutions of the present invention without limitation. Although the present invention has been described in detail with reference to the preferred embodiments, those of ordinary skill in the art should understand that the technical solutions of the present invention can be carried out Modifications or equivalent replacements, without departing from the spirit and scope of the technical solution, should be included in the scope of the claims of the present invention.

Claims (8)

1.一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,包括:1. A block chain covert communication method based on generative steganography network and image double steganography, characterized in that, comprising: S1:发送方利用WGAN对抗网络中的生成器生成图像样本G(z),通过空域隐写算法嵌入随机值到图像样本中得到生成图片Steg(G(z))作为判别器的输入,利用真实图片数据集对WGAN对抗网络进行训练;S1: The sender uses the generator in the WGAN confrontation network to generate an image sample G(z), and embeds random values into the image sample through the spatial steganography algorithm to obtain the generated image Steg(G(z)) as the input of the discriminator. The image data set trains the WGAN confrontation network; S2:WGAN对抗网络训练完成后,发送方将生成图片Steg(G(z))作为卷积隐写分析网络的输入,利用真实图片数据集对卷积隐写分析网络进行训练,通过训练好的卷积隐写分析网络从生成图片Steg(G(z))中筛选出未嵌密图像作为载体图片;S2: After the WGAN confrontation network training is completed, the sender will generate the picture Steg(G(z)) as the input of the convolutional steganalysis network, and use the real picture data set to train the convolutional steganalysis network. The convolutional steganalysis network screens out the unembedded image from the generated image Steg(G(z)) as the carrier image; S3:发送方将秘密信息分成两部分并利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片;并将第二载密图片压缩存储至IPFS文件系统,返回哈希明文摘要,并设置访问控制权限;S3: The sender divides the secret information into two parts and uses the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to sequentially embed the two parts of the secret information into the carrier image to obtain the second secret image; compress and store the second secret image in IPFS file system, return hash plaintext digest, and set access control permissions; S4:发送方基于无证书公钥密码体制对哈希明文摘要加密得到哈希密文摘要和签名信息,将哈希密文摘要和签名信息分别使用Base58编码进行编码,在编码后的哈希密文摘要和签名信息之间添加字符串“0”进行拼接得到签名信息字符串δ';S4: The sender encrypts the hash plaintext digest based on the certificate-free public key cryptosystem to obtain the hash ciphertext digest and signature information, and encodes the hash ciphertext digest and signature information using Base58 encoding, and the encoded hash password The string "0" is added between the text abstract and the signature information for splicing to obtain the signature information string δ'; S5:发送方去掉签名信息字符串δ'中重复出现的字符,重新进行拼接得到字符各不相同的中间签名字符串δ”,将区块链网络中节点的交易地址与中间签名字符串δ”进行匹配,同时记录成功匹配的字符在δ'和节点交易地址中的索引,按照索引的顺序依次填充到节点交易的extraData字段;节点交易被验证通过后会打包成区块,当区块中的所有交易被其它节点验证通过后,区块会通过区块链网络传输;S5: The sender removes the repeated characters in the signature information string δ', re-splicing to obtain an intermediate signature string δ" with different characters, and combines the transaction address of the node in the blockchain network with the intermediate signature string δ" Match, and record the index of the successfully matched character in δ' and the node transaction address, fill in the extraData field of the node transaction in the order of the index; the node transaction will be packaged into a block after being verified, when the block in the After all transactions are verified by other nodes, the block will be transmitted through the blockchain network; S6:接收方从区块中获取填充到节点交易extraData字段的索引信息,通过对索引信息进行解码获取哈希密文摘要和签名信息,验证签名信息并利用发送方的私钥将哈希摘要密文解密成哈希明文摘要;S6: The receiver obtains the index information filled in the extraData field of the node transaction from the block, obtains the hash ciphertext summary and signature information by decoding the index information, verifies the signature information and uses the sender's private key to encrypt the hash summary The text is decrypted into a hash plaintext summary; S7:接收方将哈希明文摘要作为IPFS文件系统的输入,获取发送方嵌密的第二载密图片;S7: The receiver uses the hash plaintext abstract as the input of the IPFS file system, and obtains the second encrypted image embedded in the sender; S8:接收方根据发送方对私密信息的加密过程利用空域隐写算法和密文域可逆信息隐藏算法对第二载密图片进行解密得到秘密信息。S8: According to the encryption process of the sender's private information, the receiver uses the space domain steganography algorithm and the ciphertext domain reversible information hiding algorithm to decrypt the second encrypted picture to obtain the secret information. 2.根据权利要求1所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述对WGAN对抗网络进行训练包括:2. A kind of block chain covert communication method based on generative steganography network and image double steganography according to claim 1, it is characterized in that, described WGAN confrontation network is trained to comprise: 计算Steg(G(z))的数据分布与真实图片的数据分布的距离,从而区分真实图片和生成图片,通过Kantorovich-Rubinstein duality将求解Wasserstein距离转化为:Calculate the distance between the data distribution of Steg(G(z)) and the data distribution of the real picture, so as to distinguish the real picture from the generated picture, and convert the Wasserstein distance into: 限制连续函数fw的变动幅度即梯度为w,w的取值为[-c,-c],转化成WGAN对抗网络的损失函数为:Limit the variation range of the continuous function f w , that is, the gradient is w, and the value of w is [-c,-c]. The loss function transformed into the WGAN confrontation network is: 其中,表示在随机噪声的分布为z~pz下判别器判别Steg(G(z))的概率,表示在真实数据集x的分布为x~pr下判别真实图像的概率;in, Indicates the probability that the discriminator distinguishes Steg(G(z)) under the distribution of random noise as z~p z , Indicates the probability of discriminating the real image under the distribution of the real data set x is x~p r ; 生成器目的是要使得Wasserstein距离变小,它的损失函数为判别器的目的则是使得真实数据分布与生成数据分布的距离变大,它的损失函数为生成器和判别器进行梯度下降更新参数不断迭代优化,直到损失函数收敛。The purpose of the generator is to make the Wasserstein distance smaller, and its loss function is The purpose of the discriminator is to make the distance between the real data distribution and the generated data distribution larger, and its loss function is The generator and the discriminator perform gradient descent to update the parameters and optimize iteratively until the loss function converges. 3.根据权利要求1所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述载体图片包括:3. A block chain covert communication method based on generative steganography network and image double steganography according to claim 1, wherein the carrier image comprises: 当SRNet网络将生成的Steg(G(z))判别为无嵌密图片时,将该Steg(G(z))图片作为载体图片;否则,继续训练SRNet网络,直到将Steg(G(z))判别为无嵌密图片为止。When the SRNet network discriminates the generated Steg(G(z)) as a non-embedded picture, use the Steg(G(z)) picture as the carrier picture; otherwise, continue to train the SRNet network until the Steg(G(z)) ) until it is judged that there is no embedded image. 4.根据权利要求1所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述利用空域隐写算法和密文域可逆信息隐藏算法依次将两部分秘密信息嵌入载体图片得到第二载密图片包括:4. A block chain covert communication method based on generative steganography network and image double steganography according to claim 1, characterized in that, the use of space domain steganography algorithm and ciphertext domain reversible information hiding algorithm in turn Embedding two parts of secret information into the carrier picture to obtain the second secret-carrying picture includes: S31:利用空域隐写算法将第一秘密信息嵌入到载体图片,得到第一载密图片;S31: Using an airspace steganography algorithm to embed the first secret information into the carrier picture to obtain the first secret-carrying picture; S32:利用密文域可逆信息隐藏算法将第二秘密信息嵌入第一载密图片得到第二载密图片;S32: Using the ciphertext domain reversible information hiding algorithm to embed the second secret information into the first encrypted image to obtain the second encrypted image; 所述将第二秘密信息嵌入第一载密图片得到第二载密图片包括:Said embedding the second secret information into the first secret-carrying picture to obtain the second secret-carrying picture comprises: S321:将第一载密图片的第一行和第一列作为固定像素,固定像素的预测值保持不变;其它非固定像素通过中值预测器MED预测像素,得到预测图像;S321: Use the first row and the first column of the first secret-carrying picture as fixed pixels, and the predicted values of the fixed pixels remain unchanged; other non-fixed pixels are predicted by the median predictor MED to obtain a predicted image; S322:将第一载密图片与预测图像中非固定像素的像素值的二进制表示从最高位到最低位逐一比较,将相同像素值的比特位数作为对应的标记位置值,固定像素的标记位置值定为-1,非固定像素的标记位置值转化成八位二进制表示;S322: Compare the binary representations of the pixel values of the non-fixed pixels in the first secret-carrying picture and the predicted image from the highest bit to the lowest bit one by one, and use the number of bits of the same pixel value as the corresponding mark position value, and the mark position of the fixed pixel The value is set to -1, and the mark position value of the non-fixed pixel is converted into an eight-bit binary representation; S323:统计每一个标记位置值出现的概率,构造哈夫曼树据,根据左0右1的规则求出每个标记位置值对应的哈夫曼编码,记录位置图信息;其中,位置图信息由附加信息和哈夫曼编码序列的二进制表示组成,附加信息包括标记位置值对应的哈夫曼编码的长度的二进制表示、哈夫曼编码序列和标记位置值的对应关系以及哈夫曼编码序列总长度的二进制表示;S323: Count the probability of occurrence of each mark position value, construct Huffman tree data, calculate the Huffman code corresponding to each mark position value according to the rule of left 0 right 1, and record the position map information; wherein, the position map information It consists of additional information and the binary representation of the Huffman code sequence. The additional information includes the binary representation of the length of the Huffman code corresponding to the mark position value, the correspondence between the Huffman code sequence and the mark position value, and the Huffman code sequence the binary representation of the total length; S324:利用预设的加密密钥e1生成与第一载密图片大小相同的伪随机矩阵R,将伪随机矩阵R与第一载密图片对应像素相乘得到加密图像,加密图像的像素值用二进制表示;S324: Use the preset encryption key e1 to generate a pseudo-random matrix R of the same size as the first secret-carrying picture, multiply the pseudo-random matrix R and the corresponding pixels of the first secret-carrying picture to obtain an encrypted image, and encrypt the pixel value of the image expressed in binary; S325:在加密图像中选取前N行和前M列像素作为加密固定像素,按照从左至右从上至下将记录的位置图信息依次嵌入加密固定像素;将加密图像的非固定像素按照2*2进行划分为多个像素块,将像素块中四个像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上,嵌入完成后,若该像素块还有嵌入空间,则嵌入按照从左向右从上往下的加密固定像素的二进制表示;若嵌入空间不足,则在下一个像素块中嵌入,直到所有加密固定像素的二进制表示值嵌入完成;S325: Select the first N rows and the first M columns of pixels in the encrypted image as encrypted fixed pixels, and embed the recorded position map information from left to right and from top to bottom in order to encrypt fixed pixels; *2 Divide into multiple pixel blocks, and embed the Huffman coding sequence corresponding to the marker position value in the four pixels in the pixel block to the pixel block. Binary representation of encrypted fixed pixels from left to right from top to bottom; if the embedding space is insufficient, embed in the next pixel block until the binary representation values of all encrypted fixed pixels are embedded; S326:使用预设的加密密钥e2对第二秘密信息进行加密,在嵌入完加密固定像素后,像素块中的额外嵌入空间开始嵌入加密后的第二秘密信息,嵌入完成后得到第二载密图片。S326: Use the preset encryption key e 2 to encrypt the second secret information. After the encrypted fixed pixels are embedded, the extra embedding space in the pixel block starts to embed the encrypted second secret information. After the embedding is completed, the second secret information is obtained. Upload encrypted pictures. 5.根据权利要求4所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述将像素块中四个非固定像素中标记位置值对应的哈夫曼编码序列嵌入到像素块上包括:5. A block chain covert communication method based on generative steganography network and image double steganography according to claim 4, characterized in that the four non-fixed pixels in the pixel block correspond to the tag position values The Huffman coding sequences embedded on the pixel block include: 其中,t表示非固定像素的标记位置值,bs表示标记位置值对应的哈夫曼编码序列,当像素块中非固定像素的标记位置值t小于等于7时,像素块中的像素的嵌入空间大小为t+1位。Among them, t represents the marked position value of the non-fixed pixel, and b s represents the Huffman coding sequence corresponding to the marked position value. When the marked position value t of the non-fixed pixel in the pixel block is less than or equal to 7, the embedding of the pixel in the pixel block The size of the space is t+1 bits. 6.根据权利要求5所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述对哈希明文摘要加密包括:6. A block chain covert communication method based on generative steganography network and image double steganography according to claim 5, wherein said encryption of hash plaintext digest comprises: S41:KGC产生随机数λ,将随机数λ作为系统私钥s,将系统私钥s与椭圆曲线上的基点G相乘,得到系统公钥Ppub=s.G;S41: KGC generates a random number λ, uses the random number λ as the system private key s, multiplies the system private key s by the base point G on the elliptic curve, and obtains the system public key P pub =sG; S42:发送方的用户标识为ID,KGC产生随机数rID计算RID=rID·G,其中,G表示椭圆曲线上的一个固定基点,生成部分私钥DID=rID+s·H(ID,RID),并将RID和部分私钥DID返回给发送方,H表示哈希函数;S42: The sender's user ID is ID, and KGC generates a random number r ID to calculate R ID = r ID G, where G represents a fixed base point on the elliptic curve, and generates a partial private key D ID = r ID + s H (ID, R ID ), and return the R ID and part of the private key D ID to the sender, and H represents the hash function; S43:发送方验证DID·G=RID+Ppub·H(ID,RID)是否成立,若成立,则DID有效,否则无效;S43: The sender verifies whether D ID ·G=R ID +P pub ·H(ID,R ID ) is established, if established, D ID is valid, otherwise invalid; S44:发送方随机选择秘密数xID,计算XID=xID·G,公布发送方公钥PKID=(RID,XID),并计算私钥为SKID=(DID,xID);S44: The sender randomly selects the secret number x ID , calculates X ID = x ID G, publishes the sender's public key PK ID = (R ID , X ID ), and calculates the private key as SK ID = (D ID , x ID ); S45:发送方将私钥SKID通过协商的会话密钥加密传输给接收方,并且使用公钥PKID=(RID,XID)对哈希明文摘要m进行加密得到哈希密文摘要m';S45: The sender encrypts and transmits the private key SK ID to the receiver through the negotiated session key, and uses the public key PK ID = (R ID , X ID ) to encrypt the hash plaintext digest m to obtain the hash ciphertext digest m '; S46:发送方选择随机数t,分别计算T=t·G、v=H(m,T,RID,XID)以及u=t+xID(H(ID,RID)+v)+DID生成签名信息δ=(u,v)。S46: The sender selects a random number t, and calculates respectively T=t·G, v=H(m,T,R ID ,X ID ) and u=t+x ID (H(ID,R ID )+v)+ D ID generates signature information δ=(u, v). 7.根据权利要求6所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述对索引信息进行解码获取哈希密文摘要和签名信息包括:7. A block chain covert communication method based on generative steganography network and image double steganography according to claim 6, characterized in that said decoding the index information to obtain the hash ciphertext summary and signature information include: S61:接收方从区块中查看与发送方相关的所有交易信息,过滤出所有交易信息的extraData字段含有的索引信息;根据所有交易信息的extraData字段含有的索引信息重新组合还原签名信息字符串δ';S61: The receiver checks all transaction information related to the sender from the block, filters out the index information contained in the extraData field of all transaction information; reassembles and restores the signature information string δ according to the index information contained in the extraData field of all transaction information '; S62:接收方将还原的签名信息字符串δ'通过字符串“0”分隔出经过Base58编码后的签名信息和哈希密文摘要;使用Base58解码得到发送方的签名信息和哈希密文摘要;S62: The receiver separates the restored signature information string δ' through the string "0" to separate the Base58-encoded signature information and hash ciphertext digest; use Base58 decoding to obtain the sender's signature information and hash ciphertext digest ; S63:接收方使用发送方的公钥验证签名信息,若验证通过;则利用发送方的私钥对哈希密文摘要解密得到哈希明文摘要。S63: The receiver uses the sender's public key to verify the signature information, and if the verification is passed; uses the sender's private key to decrypt the hashed ciphertext digest to obtain the hashed plaintext digest. 8.根据权利要求7所述的一种基于生成式隐写网络和图像双隐写的区块链隐蔽通信方法,其特征在于,所述接收方使用发送方的公钥验证签名信息包括:8. A block chain covert communication method based on generative steganography network and image double steganography according to claim 7, characterized in that the recipient uses the sender's public key to verify the signature information includes: h=H(ID,RID),T'=u·G-XID*(h+v)-Rid-Ppub*h,v'=H(m,T',RID,XID),若v=v',则验证通过。h=H(ID,R ID ),T'=u·GX ID *(h+v)-R id -P pub *h,v'=H(m,T',R ID ,X ID ), if v=v', then the verification is passed.
CN202310561034.7A 2023-05-18 2023-05-18 A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography Pending CN116527278A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310561034.7A CN116527278A (en) 2023-05-18 2023-05-18 A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310561034.7A CN116527278A (en) 2023-05-18 2023-05-18 A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography

Publications (1)

Publication Number Publication Date
CN116527278A true CN116527278A (en) 2023-08-01

Family

ID=87408160

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310561034.7A Pending CN116527278A (en) 2023-05-18 2023-05-18 A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography

Country Status (1)

Country Link
CN (1) CN116527278A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117278986A (en) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel
CN119203251A (en) * 2024-09-03 2024-12-27 北京电子科技学院 A method for signing electronic documents based on fixed neural network steganography technology
CN119815138A (en) * 2025-03-17 2025-04-11 湖北大学 A video watermarking method
CN119996007A (en) * 2025-02-14 2025-05-13 重庆邮电大学 A secure communication method for heterogeneous Internet of Things
CN120825342A (en) * 2025-09-16 2025-10-21 上海阅维科技股份有限公司 Network traffic restoration and monitoring method

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117278986A (en) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel
CN117278986B (en) * 2023-11-23 2024-03-15 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel
CN119203251A (en) * 2024-09-03 2024-12-27 北京电子科技学院 A method for signing electronic documents based on fixed neural network steganography technology
CN119996007A (en) * 2025-02-14 2025-05-13 重庆邮电大学 A secure communication method for heterogeneous Internet of Things
CN119815138A (en) * 2025-03-17 2025-04-11 湖北大学 A video watermarking method
CN120825342A (en) * 2025-09-16 2025-10-21 上海阅维科技股份有限公司 Network traffic restoration and monitoring method
CN120825342B (en) * 2025-09-16 2025-11-18 上海阅维科技股份有限公司 Network traffic restoration and monitoring method

Similar Documents

Publication Publication Date Title
CN116527278A (en) A Blockchain Covert Communication Method Based on Generative Steganographic Network and Image Double Steganography
Li et al. Reversible data hiding in encrypted images using cross division and additive homomorphism
Varghese et al. A detailed review based on secure data transmission using cryptography and steganography
CN114826730B (en) Blockchain covert communication model capable of hiding sensitive document and sender identity
Sugirtham et al. Modified playfair for text file encryption and meticulous decryption with arbitrary fillers by septenary quadrate pattern
CN115695675B (en) Video encryption method for network data secure exchange
Olewi et al. Enhanced Security Through Integrated Morse Code Encryption and LSB Steganography in Digital Communications.
Alenizi et al. A Review of Image Steganography Based on Multiple Hashing Algorithm.
Teotia et al. Enhancing audio and video steganography technique using hybrid algorithm
Chen et al. A region-selective anti-compression image encryption algorithm based on deep networks
Wazery et al. A hybrid technique based on RSA and data hiding for securing handwritten signature
Nalavade et al. Deep Neural Network and GAN-Based Reversible Data Hiding in Encrypted Images: A Privacy-Preserving Approach
Abu-Alhaija Crypto-Steganographic LSB-based System for AES-Encrypted Data
Saini et al. Secure communication framework using lattice-based encryption and image steganography
CN115765963A (en) Text image audit information recording and extracting method based on reversible steganography of ciphertext domain
Agarwal et al. Encrypted transfer of confidential information using steganography and identity verification using face data
Rajan et al. Dynamic pixel shuffling and hash LSB steganography with RC4 encryption: A robust data security framework
Anitha et al. Enhancing IoT Image Security Through Hybrid Encryption and Optimal Key Generation with Optimization
Jayanthi et al. Image encryption techniques for data transmission in networks: a survey
Shirole et al. Intensity-based randomised image steganography technique with novel AES encryption
Jana et al. A robust video steganographic scheme using sudoku puzzle for secured data hiding
Yu et al. DDIM-Driven Coverless Steganography Scheme with Real Key
Ismael Improved security using two levels of steganography
Ahmad et al. RGB Based Secure Share Creation in Steganography with ECC and DNN
Kumar et al. Randomized salt LSB: a novel approach to steganography with improved concealment and robustness

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