基于马尔可夫链的生成式区块链隐蔽通信模型

2023-01-09 12:33佘维荣欣鹏刘炜田钊
通信学报 2022年10期
关键词:马尔可夫二进制信道

佘维,荣欣鹏,刘炜,田钊

(1.郑州大学网络空间安全学院,河南 郑州 450001;2.河南省网络密码技术重点实验室,河南 郑州 450001;3.郑州市区块链与数据智能重点实验室,河南 郑州 450001)

0 引言

隐蔽通信通常被认为是在网络环境中满足现行协议或标准的通信双方制定相应规则进行不引起第三方注意的隐蔽信息传输行为[1]。随着个人计算机计算能力的大幅度提升与计算架构的快速发展,传统的保护隐私安全的方法受到了前所未有的挑战[2-3]。隐蔽通信是一种非常规的通信方法,近年来越来越多的研究者提出可将其作为对传统加密通信的有力补充手段之一。

研究者通常认为现代的隐蔽通信起源于Simmons 提出的囚徒模型[4]。有别于常用的隐蔽信息传输媒介,区块链作为一种具备去中心化、去信任、不可篡改、开放共识等特点的分布式技术平台,其特性契合隐蔽通信的需求,可解决传统隐蔽通信自身的诸多痛点[5]。因此自2018 年以来,研究者开始探索利用区块链构造隐蔽通信的方法。

Partala[6]首次尝试利用区块链作为媒介构建隐蔽通信信道,并提出区块链隐蔽信道(BLOCCE,blockchain covert channel)模型,该模型将信息隐藏至交易地址的最后一位,并顺序使用对应循环生成的交易地址使其保证秘密信息的顺序性。此后,研究者针对该模型的不足进行改进,提出改良的区块链隐蔽通信方法,并尝试降低其通信成本[7-8]。Guo 等[9]与蓝怡琴等[10]通过结合多层可链接自发匿名群签名实现混合,并引入新的椭圆曲线算法以及其他密码学技术的门罗币,在其区块链应用中构建隐蔽通信信道,利用了门罗币自身具备的高安全性以提高隐蔽信道的隐蔽性。She 等[11]提出了一种结合区块链和星际文件系统(IPFS,interplanetary file system)的双隐写模型,这种协作模型有效解决了区块链上构建隐蔽通信信道的隐藏容量问题,且由于链上存储的特殊信息较少,因此大大提高了信道隐蔽性。佘维等[12]提出了一种面向纯文本信息隐藏的区块链隐蔽通信模型,该模型相比于BLOCCE 在一定程度上提高了嵌入强度;随后,余维等[13]结合属性基加密(CP-ABE,ciphertext-policy attribute-based encryption)技术与基于生成式对抗网络(GAN,generative adversarial networks)的图像隐写术提出了一种可隐藏敏感文档和发送者身份的区块链隐蔽通信模型。姜鹏坤等[14]提出了一种利用哈希算法构建免传输密码表匹配二进制位的区块链隐蔽通信方案。近几年,基于区块链构建隐蔽通信信道的研究不断深入,区块链3.0 时代应用落地的需求日益强烈,但现有的研究中仍存在以下尚未完全解决的问题。

问题1预处理或信道构建过程中通常需要人工干预,为信道的隐蔽增添了不确定性;同时需要通过预先协商的方式确定开始标识符、结束标识符、信息接收对象或密钥等关键信息以达到通信同步,增加了隐蔽信道的构建成本和构建风险。

问题2一些基于区块链交易地址进行信息隐写的方案较简易,隐蔽性较差,难以抵抗常规的隐蔽信道检测。且由于区块链的透明性,所有节点都可查看区块信息,若该区块链网络中存在其他隐蔽通信对象,容易出现“信息交叉”的现象,即互相可探测其他隐蔽信道传输的秘密信息。

问题3传统隐蔽通信通常需要引入第三方公共媒介,若通过数学方法统计分析则可能存在一定身份暴露的风险。而完全严格基于区块链平台的隐蔽信道构建方法的隐蔽容量过小,导致完成一次通信过程的时延较长,或对出块交易顺序等条件要求苛刻,很难满足实际应用场景需求。

为解决以上问题,本文提出了一种基于马尔可夫链的生成式区块链隐蔽通信(MC-GBCC,generative blockchain-based covert communication based on Markov chain)模型。首先,发送方将秘密信息转换为二进制流,同时使用与接收方相同的文本数据集进行马尔可夫训练[15],再使用训练得到的条件转移概率矩阵构建哈夫曼树;然后,针对二进制流进行哈夫曼解码过程得到可读性较强的文字信息;最后,通过环签名进行签名后向区块链中发布带有该文字信息的交易[16],接收方查询到该信息后通过逆向操作便可获得该秘密信息。

本文的贡献主要有以下几个方面。

1) 本文在区块链隐蔽通信信道构建中使用生成式文本隐写技术,大大降低了人工干预可能带来的信道不稳定的风险,满足区块链网络合约执行自动化这一设计思想,更有利于隐蔽信道在区块链网络中的构建,同时为其带来更强的可拓展性与灵活性,减少了信道暴露的风险,一定程度上解决了问题1。

2) 本文在隐写过程中引入马尔可夫链与哈夫曼编码结合的形式,在保证其信道隐蔽性的前提下,免除了预协商过程,实现了完全的异步式通信,不需要协商隐蔽通信位置以及通信的开始与结束,降低了隐蔽传输的成本,进一步解决了问题1。

3) 不同“通信对”只需维持不同的模型训练文本数据集即可保证该通信双方信道的完全隐蔽,并将不同隐蔽通信对隔离开,不会存在其他用户“误读”的情况,解决了问题2。

4) 相较于以往基于区块链区块结构的隐写方法,在不接入第三方平台的情况下大大提高了信道隐藏容量,使其在隐藏容量与潜在风险两者中达到相对平衡;此外,严格将区块链作为通信媒介并引入环签名技术,实现了现实对象与网络节点的剥离,打破了可能存在的映射关系,使实际隐蔽通信对象完全实现现实身份的隐藏,区块链的透明性使通信发送方不需要将携带秘密信息的交易直接发给信息接收方,解决了问题3。

1 相关技术

本节主要介绍区块链隐蔽通信、马尔可夫链、生成式文本隐写与环签名以及哈夫曼编码的相关知识。

1.1 区块链隐蔽通信

比特币的诞生将区块链带入人们视野之中,智能合约的引入大大推动了区块链的爆发式发展,近年来,区块链已经开始在能源、医疗、教育、交通等领域崭露头角[17]。

区块链作为一种结合了密码学、数学、博弈论等多学科的分布式技术平台,其自身具备匿名性、不可篡改、可追溯、合约执行自动化、去信任等多种特性[18-19]。传统的隐蔽通信通常利用第三方媒体的单一信道定向发送方式,由于系统中心化以及极易受到网络环境的影响,可能降低隐蔽信道的可靠性与隐蔽性,而区块链技术为隐蔽通信信道的构建提供了更多的可能性,其特性能够弥补传统隐蔽通信方法易受篡改、可靠性不稳定、信道单一等不足。区块链隐蔽通信模型如图1 所示。

图1 区块链隐蔽通信模型

区块链隐蔽通信按照构建原理可分为基于区块结构、基于外部载体、基于业务操作时间和基于系统机制4 类[20]。本文所提MC-GBCC 模型可归类至基于结构的区块链隐蔽通信。

1.2 马尔可夫链

马尔可夫链是一组离散随机变量的集合,在状态空间中随机地从一个状态转移到另一个状态,且具备无记忆性,即在给定当前知识或信息的前提下,下一步的状态只与当前状态有关,与过去状态(即以前的状态)无关。马尔可夫链根据时间状态是否离散可分为连续时间马尔可夫链与离散时间马尔可夫链。本文使用的是离散时间马尔可夫链,即时间和状态都是离散取值的[21-22]。马尔可夫链时间与状态空间对应关系如图2 所示。

图2 马尔可夫链时间与状态空间对应关系

给定随机变量集合X={xn,n> 0},且该随机变量可能的取值都在有限状态集S={sn,n> 0}内,即xi=si,si∈S,若符合以下条件

则集合X被称为马尔可夫链;集合X的取值被称为状态空间;马尔可夫链在状态空间内的取值被称为状态,其性质被称为马尔可夫性质,即“无记忆性”。通过马尔可夫链的模型转换,便可以得到各状态之间的转换概率,从而得到条件转移概率矩阵(也称状态分布矩阵),例如

1.3 生成式文本隐写与环签名

现有的文本隐写算法通常可分为两大类:修改式隐写算法与生成式隐写算法[23]。近年来,随着自然语言处理技术的发展,以文本生成技术为基础的生成式隐写算法的发展愈加成熟。该类算法有别于传统文本隐写,其不需要人为选择文本载体,可自动生成载体并进行秘密信息嵌入,大大降低了人为因素所带来的不确定性和算法应用落地的门槛。

环签名是一种数字签名方案,目的在于允许用户在环内保持匿名的前提下代表环进行数字签名,其环成员中没有管理者和可信中心,成员权限地位平等,同时签名过程不需要成员合作,只需利用自身私钥以及集合中其他成员的公钥即可独立完成签名过程,其他成员并不知道自己已被包含其中。环签名满足如下性质。

1) 无条件匿名性。攻击者确定签名是由环中哪个成员生成的概率极低,即使攻击者获取了所有环成员的私钥,能确定真实签名者的概率也不超过,其中r为环成员个数。

2) 正确性。签名能被所有人验证。

3) 不可伪造性。环中其他成员与外部攻击者均无法伪造真实签名者签名。

1.4 哈夫曼编码

哈夫曼编码是一种在压缩字符编码的同时不需要添加额外分隔符,且能保证解码唯一性的不定长编码[24]。该编码方法完全依照字符出现概率来构造平均字长最短的编码,权值越大的节点越接近根节点,也被称为最佳编码方式,其构建过程如图3所示。

图3 哈夫曼编码构建过程

2 MC-GBCC 模型说明

MC-GBCC 模型如图4 所示。本节分为预处理、嵌入、传输、提取4 个过程对MC-GBCC 模型进行说明。

图4 MC-GBCC 模型

2.1 预处理过程

秘密信息发送方维持一份与接收方相同的文本数据集A,并且双方均使用数据集A 进行马尔可夫模型训练,因此双方可得到相同的模型及其条件转移概率矩阵。一般希望数据集A 足够大,通常数据量越大的文本数据集进行马尔可夫模型训练之后得到的生成式文本可读性越强,其对应的隐蔽信道的隐蔽性也越强。

在嵌入过程之前要先对所持有的文本数据集A进行文本预处理,操作如下

其中,f(x)表示删除x中的特殊字符,g(x)表示删除x中的网页链接,h(x)表示x全部转换为小写,u(x)表示删除x中的表情符号,SE 表示文本数据集 A 中以结束符为标志的句子集合,即SE={se1,se2,…,sen}。

接着,对预处理后的文本数据集A 进行马尔可夫模型训练,训练步骤如下。

1) 建立一个包含数据集内全部单词的集合D={d1,d2,… ,dnum},即给定的随机变量有限集合,将该字典中的所有单词放入候选池中作为备选。

2) 每个句子sei的相应位置和单词可对应至马尔可夫链中的离散取值的时间与状态,即

其中,i∈{1,2,…,n},j∈{1,2,…li},sei为句子编号,li为该句的单词个数。

3) 利用一阶马尔可夫链(实际使用中可根据需求采取二阶或三阶马尔可夫链使之生成更加具备可读性的文本)计算每个单词的转移概率为

同时满足

其中,SN 表示集合S的元素个数。

通过以上三步即可得到所需的条件转移概率矩阵为

4) 初始哈夫曼树t1表示所有可能位于初始位置的单词,利用出现概率作为权值构成初始哈夫曼树t1;除初始位置外,以某个单词wordi为基准转移到下一个位置 wordi+1的所有可能的每个单词转移概率p(wordi)为权值构成哈夫曼树,即对应矩阵Pnn中的某一行构成哈夫曼树(舍弃概率为0 的情况)。这样的情况共有n-1种,即除初始哈夫曼树t1以外还可构造n-1个状态转移哈夫曼树。定义以下函数

其中,i∈{2,3,…,n},o(x,y)表示哈夫曼树构造算法。利用该函数构造各状态哈夫曼树并与t1共同得到哈夫曼树集合T={t1,t2,…,tn}。

将训练得到的马尔可夫模型M与哈夫曼树集合T保存,以便未来使用该数据集与对方通信。以上预处理过程只需在双方第一次通信时进行即可。

2.2 嵌入过程

发送方嵌入秘密信息步骤如下。

1)发送方将需要传输的秘密信息文本secret_message 转换为二进制流bin1,即

其中,z(x) 表示将文本信息x转换为二进制流。

2) 从初始哈夫曼树t1中查找与二进制流开始阶段的对应单词,并将其放入初始位置,即

其中,c(x,y)表示哈夫曼解码函数;q(x,y)表示每完成一次解码过程则将y对应的二进制流,即解码读取的前n位二进制流从长二进制流x中删去。

3) 完成初始二进制流信息嵌入之后,继续对剩余信息进行嵌入,即

其中,i∈{2,3,4,…},r(x)表示查找单词x在集合T中对应的状态哈夫曼树。

4) 重复步骤3)直至二进制流信息嵌入完毕,若最后位置的二进制流无法顺利解码,则在末尾自动补0 直至完全解码完毕。例如,二进制流若为0110...01111,二进制流解码至最后的11 无法在哈夫曼树的叶子节点找到(无法解码),则在末尾自动补0直至能够完成解码。

5) 解码完毕后,得到len -1个wordi,其中,i∈{2,3,…,len},len 为解码得到的载密语句单词个数。并得到由 word1与wordi组成的向量SEN=(word1,word2,…,wordlen),将该向量按照其排列顺序组成语句作为载密语句输出。

2.3 传输过程

秘密信息嵌入过程完成后,得到载密信息cover-message,该载密信息是可读性较强的普通文本信息。传输过程中,秘密信息发送方创建一笔交易Transaction(cover-message) 。其中,载密信息cover-message 存入交易的data 字段,而由于区块链的公开透明性,任何本区块链网络中的用户均可访问链上的所有信息,因此为提高信道隐蔽性,这里交易接收方可任意选择区块链网络中的用户,并不要求交易接收方为本次隐蔽通信的实际秘密信息接收方。

为隐藏实际信息发送方身份,需要进行环签名操作,这里将简要描述环签名算法步骤。首先定义以下函数

其中,Ek为对称加密算法,k为Ek对应的密钥。对包含该秘密信息的区块链交易Transaction(cover-message)进行环签名,环签名中各成员公钥分别为P1,P2,…,Pn,消息发送方拥有公钥Ps及其对应的私钥。令k=hash(Transaction(cover-message)),即交易的hash 值作为环签名递推公式(对称加密)的密钥,发送方随机选取一个值v。然后,除发送方xs以外随机选取n-1个值 {x1,x2,…,xs-1,xs+1,…,xn},并利用对应的公钥Pi通过yi=gi(xi)计算得到相应的n-1 个值 {y1,y2,…,ys-1,ys+1,…,yn}。接下来,令Ck,v(y1,y2,…,ys,…,yn)=v,计算令等式成立的ys。可以把ys看作通过公钥Ps加密得到,而发送方拥有Ps对应的私钥,因此可通过解密ys得到xs。最后,利用递推式得到关于发送方创建的交易消息Transaction(cover-message)的环签名,该签名是一个2n+1 元组 (P1,P2,…,Pn;v;x1,x2,…,xn),区块链网络用户通过该签名无法获知真正的信息发送方。

发送方将通过环签名后的交易发布到区块链网络中,并在各节点中进行广播,被验证交易正确有效之后打包至区块内经过共识更新该新生成的区块,至此载密信息完成上链,包括隐蔽通信信息接收者在内的所有区块链用户都可收到并查看链上信息。

2.4 提取过程

秘密信息接收方拥有与发送方相同的文本数据集A,首先使用与预处理过程同样的方法构造哈夫曼树,如2.1 节所述,由于使用了完全相同的文本数据集与处理算法,因此可生成完全相同的集合T={t1,t2,…,tn}。同样地,处理一次之后可将模型M与哈夫曼树集合T保存以便以后的双方通信,降低其通信成本。接收方提取步骤如下。

1) 接收方遍历区块链网络中新生成的交易信息,即

其中,time 表示设定的区块链交易读取时间间隔,函数γ(x,y)表示每隔x时间间隔遍历y中新生成的交易字段。

2) 将message 设定为向量MES,即

3) 利用训练得到的哈夫曼树集合T对向量MES 中的元素word'i逐一解码,并定义以下函数

其中,v(x,y)表示在集合y中寻找合适的元素对单词x进行解码得到二进制流,并将解码得到的二进制codei放入向量C中,即

4) 若不能完全执行步骤3),则证明该消息并不是发给自身的秘密信息;若能得到完整有序集合C,则该有序集合元素组成的二进制流为发送给自身的秘密信息,即

其中,h(x1,x2,…,xn)表示将二进制x1,x2,…,xn进行拼接,拼接得到的秘密二进制流bin1进行逆操作,即

其中,z(x)表示将秘密信息文本x转化为二进制流。接收方通过上述步骤得到秘密信息文本secret_message。

由于区块链网络的透明性,网络中其他用户可任意查看区块交易信息,但无法辨别并区分含有秘密信息的交易信息,只可查看到合法交易内容,且由于该交易信息是可读性较强的文本信息,进一步增强了信道的隐蔽性,使其他用户无法察觉该信道的存在性。

3 仿真实验与性能分析

本节介绍了仿真实验,并结合实验结果对MC-GBCC 模型进行分析。实验采用的硬件平台为PC,处理器为AMD 5800H Ryzen 7@3.20 GHz,内存为16.0 GB。

3.1 仿真实验

仿真实验在Ubuntu 系统下使用FISCO BCOS模拟区块链网络,在区块链网络中创建20 个账户,各账户信息如表1 所示。

表1 FISCO BCOS 模拟区块链网络账户信息

假设账户1 是隐蔽通信发送方在FISCO BCOS区块链网络中的账户,账户2 是接收方账户。在构建隐蔽通信信道之前,双方约定用于马尔可夫链训练的文本数据集,通常马尔可夫模型训练要求该文本数据集由人书写并且具备足够数量,本文实验中选用Go 等[25]公开的用于情感分析的从Twitter 中提取的1 600 000 条评论,该类型文本更加符合人类日常语言习惯。在实际应用场景之下,为便于普通用户使用也可选择较大单词量的电子书。

预处理过程中,首先利用式(4)对文本数据集进行文本预处理,部分预处理后文本内容如表2 所示。然后,利用式(5)~式(9)进行马尔可夫链训练,训练得到的模型可存储至本地用于未来与该接收方的通信。表3 为通过该模型随机生成的文本。

表3 随机生成的文本

根据训练结果可知,该模型生成文本基本符合人类语言习惯,具有较强隐蔽性。

发送方希望传输的秘密信息为“we will do it tomorrow”。在嵌入过程中,发送方利用式(10)将文本信息转换为二进制流“1110111110010110000 01110111110100111011001101100100000110010011 011111000001101001111010010000011101001101111110110111011111110010111001011011111110111”。这里使用ASCII 码将字符转换为整数,再将整数转换为二进制。

接下来,利用式(11)~式(14)进行秘密信息嵌入,得到的载密文本为“i hate when i have so much school work to do and does anyone know if there is a book for student”。

在传输过程中发送方不需要直接选择接收方账户,而可任意选择账户发送交易信息。发送方将生成的文本放入交易data 字段中,并利用式(15)进行环签名,环签名后向区块链网络中发布交易,交易经过验证、共识后打包成块,为便于观察,将每个区块打包交易数设置为1。区块部分字段结构和交易部分字段结构分别如表4 和表5 所示。

表4 区块部分字段结构

由表5 可知,载密信息已成功上链。提取过程中,接收方利用式(16)~式(20)进行接收秘密信息的尝试,每隔一段时间主动利用通过文本数据集A 产生的哈夫曼森林对交易的data 字段进行编码,在对表5 中的交易data 字段编码时,能顺利得到一串匹配的二进制流“ 11101111100101100000111011 11101001110110011011001000001100100110111110 00001101001111010010000011101001101111110110 111011111110010111001011011111110111”,接着利用式(15)相关函数验证环签名,验证通过后利用式(21)进行该二进制流的逆向操作即可得到秘密信息“we will do it tomorrow”。至此,一次完整的隐蔽通信流程结束,此后双方通信中不需要预处理过程,只需发送方嵌入过程和传输过程、接收方提取过程即可。

表5 交易部分字段结构

3.2 效率分析

本节主要从嵌入强度、时间效率两方面对MC-GBCC 模型性能通过实验进行分析。

1) 嵌入强度

Houmansadr 等[26]认为隐蔽通信的传输效率可定义为每个隐蔽数据流所传递的隐蔽信息的比特数,对应本文模型为秘密信息发送方所提交的每笔交易信息(即生成的可读性较强的文本)中所包含的秘密信息的比特数,因此本文模型与其他区块链隐蔽信道嵌入强度可表示为

其中,r为每个隐蔽通信数据流所携带的秘密信息的比特数,K为使用N+1个隐蔽信息数据流发送的隐蔽信息比特数。

为保持对比的相对合理性,本节选择具有较强通用性的区块链隐蔽通信信道构建方法[6-10,12]与本文模型对比,条件设定为每个区块内打包一笔交易。本文利用模型生成1 000 轮并编码计算其可携带最大秘密信息的平均值。

嵌入强度对比如表6 所示。相比于其他基于区块字段结构进行隐蔽信道构建的模型,本文模型的嵌入强度具有较大的优势。文献[7]提出对地址空间的低α位进行秘密信息嵌入,但实际操作中α的增大会大大增加哈希函数计算的时间开销,严重降低系统效率,因此通常α取值较小。

表6 嵌入强度对比

2) 时间效率

时间效率同样是判断隐蔽通信信道性能的重要指标之一。除区块链网络交易发布时延外,影响本文模型时间效率的关键因素在于秘密信息的嵌入过程与提取过程。本文利用上述预处理后的文本数据集进行马尔可夫模型训练,并利用训练后的模型进行秘密信息嵌入与提取。

为了便于比较相关区块链隐蔽通信模型的时间效率,统一嵌入相同秘密信息量为8 bit,本文模型模拟嵌入过程与提取过程各50 次,嵌入过程与提取过程时间如图5 所示。从图5 可以看出,嵌入过程与提取过程时间为1.40~1.75 s,并无较大波动。

图5 嵌入过程与提取过程时间

若考虑到区块链网络自身每秒处理事务数(TPS,transaction per second),本文模型时间效率仍能达到秒级。文献[6]的隐蔽信道构建模型发送8 bit信息的时间大于30 min;文献[8]多次重用Vanitygen(比特币地址生成软件)生成地址嵌入信息,但随着每个地址嵌入位数的增加其难度呈指数级增长,若每个地址中直接嵌入8 bit 信息则地址生成时间将达到小时级,若采取降低每个地址嵌入信息比特数但提升发送交易数的方法,其时间效率过于依赖区块链网络TPS 且对交易顺序有严格要求;文献[11,13]由于引入了图像隐写术与IPFS,隐蔽通信时间为分钟级;文献[12]使用了基于空格法的信息隐藏技术,其每笔交易内所含的信息比特数较低,因此在传输与本文模型相同信息量的秘密信息的情况下传输时间为分钟级。

本文模型与文献[6,8,11-13]模型的传输时间对比如表7 所示,在相同嵌入量下,本文模型所使用的嵌入方法在时间效率上具有一定优势。

表7 传输时间对比

3.3 安全性分析

本文所提MC-GBCC 模型降低了隐蔽信道构建风险、避免了信息交叉、提升了隐蔽性,本节从上述三方面进行安全性分析。

3.3.1 降低隐蔽信道构建风险

MC-GBCC 模型基于马尔可夫链进行生成式文本隐写,一方面不需要人为操作即可实现载体文本与载密文本的自动生成,降低了人为误操作或选择载体不恰当所带来的信道暴露风险;另一方面通信双方不需要在区块链网络中交换信道关键参数,只需双方持有同一份文本数据集即可实现完全异步式通信,在缩减信道构建成本的同时降低了构建风险。

3.3.2 避免信息交叉

每对隐蔽通信方采取不同的文本数据集,能够保证即使区块链网络中存在其他使用同一方法构建隐蔽信道的通信对,仍不暴露己方信道,且不存在误读其他信道数据的风险,避免了其他区块链隐蔽通信模型可能出现的信息交叉现象。

3.3.3 提升隐蔽性

1) 本文模型生成的载密信息仍具备较强可读性,不易引起怀疑。在信息论领域中,perplexity(困惑度)通常用于度量概率分布或概率模型预测样本的好坏,同样地,在自然语言处理领域中,困惑度可用于度量句子的质量,其计算式为

其中,p(si)为句子si中单词的分布概率,N为句中单词总数。困惑度越小,生成文本与训练文本统计分布越一致,则模型越好,越不容易引起怀疑,但实际上困惑度很难界定一个安全区间。针对MC-GBCC 模型,本节完全随机生成了100 个已嵌入秘密信息的生成语句,并根据式(23)计算困惑度,结果如图6 所示。

图6 困惑度计算结果

由图6 可知,MC-GBCC 模型困惑度主要集中在1~3。而在文献[15]中,相同嵌入率下的困惑度可能超过200,与之相比,MC-GBCC 模型困惑度较低且更稳定,因此,本文模型在信息嵌入过程中自动生成的语句不易引起怀疑,具有较强的隐蔽性,在未知足够信息下证明该隐蔽信道存在基本不可行。

2) 区块链网络打破了现实身份与虚拟身份的映射关系,且包含载密信息的交易接收方并不一定与实际秘密信息接收方相同。

3) 环签名技术的无条件匿名性融入区块链交易发布之中进一步混淆了发送方身份,即使攻击者获得所有环成员的私钥,能确定真实发送方的概率也不超过,其中r为环成员个数。

以上三点共同保证了本文模型具备足够高的隐蔽性。

综上,本文所提MC-GBCC 模型与文献[6-13]模型相比,在嵌入强度与时间效率方面具有明显优势,解决了其他区块链隐蔽通信模型所未解决的通信对隔离问题,并且通信过程中免除了预协商过程,大大降低了信道构建风险,实现了异步式通信,并提升了隐蔽性。不同模型的综合对比如表8 所示。

表8 不同模型的综合对比

4 结束语

本文提出了一种基于马尔可夫链的生成式区块链隐蔽通信模型,一定程度上解决了目前区块链隐蔽通信中信道构建风险高、信息交叉、隐蔽性不足等问题。所提模型结合马尔可夫链与哈夫曼编码技术实现了隐蔽通信的完全异步式,并降低了信道构建的潜在风险,通过约定文本数据集将不同通信双方隔离开,避免了信息交叉,进一步提高了隐蔽性,并引入环签名隐藏发送方身份。实验结果表明,对比同类区块链隐蔽通信模型,所提模型具备更优秀的嵌入强度与时间效率以及足够的安全性。

猜你喜欢
马尔可夫二进制信道
用二进制解一道高中数学联赛数论题
信号/数据处理数字信道接收机中同时双信道选择与处理方法
有趣的进度
面向电力系统的继电保护故障建模研究
二进制在竞赛题中的应用
基于马尔可夫链共享单车高校投放研究
基于马尔可夫链共享单车高校投放研究
一种无人机数据链信道选择和功率控制方法
基于导频的OFDM信道估计技术
二进制宽带毫米波合成器设计与分析