CN112818378B - 一种基于“火星文”生成的文本隐写方法 - Google Patents
一种基于“火星文”生成的文本隐写方法 Download PDFInfo
- Publication number
- CN112818378B CN112818378B CN202110002500.9A CN202110002500A CN112818378B CN 112818378 B CN112818378 B CN 112818378B CN 202110002500 A CN202110002500 A CN 202110002500A CN 112818378 B CN112818378 B CN 112818378B
- Authority
- CN
- China
- Prior art keywords
- module
- information
- steganography
- character
- text
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000000605 extraction Methods 0.000 claims abstract description 42
- 238000006243 chemical reaction Methods 0.000 claims abstract description 21
- 238000007781 pre-processing Methods 0.000 claims abstract description 14
- 238000006467 substitution reaction Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 239000000203 mixture Substances 0.000 claims 2
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 230000015572 biosynthetic process Effects 0.000 abstract description 2
- 238000013461 design Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000000969 carrier Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001953 sensory effect Effects 0.000 description 2
- 241000219112 Cucumis Species 0.000 description 1
- 235000015510 Cucumis melo subsp melo Nutrition 0.000 description 1
- FJJCIZWZNKZHII-UHFFFAOYSA-N [4,6-bis(cyanoamino)-1,3,5-triazin-2-yl]cyanamide Chemical compound N#CNC1=NC(NC#N)=NC(NC#N)=N1 FJJCIZWZNKZHII-UHFFFAOYSA-N 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Document Processing Apparatus (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种基于“火星文”生成的文本隐写方法,构建包含预处理模块、控制模块和隐写模块的文本隐写系统,通过对汉字结构特征的研究以及“火星文”构字方式的分析,将隐写模块分为简繁体转换模块、字音转换模块、字体重构模块、同音字替换模块、字体拆分模块以及非汉字字符替换模块,其中,每个子模块都拥有特定的信息嵌入模式与信息提取模式。本发明将网络语言“火星文”作为隐写载体,利用“火星文”较于传统平面媒介的语言形式而言,信息冗余度高的特点,将信息隐藏至文本中,生成“火星文”文本,在一定程度上保障了信息传递的安全性。
Description
技术领域
本发明属于中文文本信息隐藏领域,具体设计一种基于“火星文”生成的文本隐写方法。
背景技术
随着互联网的普及与发展,信息传递与交流方式日益多样,所带来的信息安全问题日益增多。信息隐藏作为保障信息传递安全的一种重要技术手段,其利用人类感官冗余与载体数据冗余,将信息以特定方式嵌入至所选载体中,从而实现隐蔽通信。如今,以图片、视频、音频为载体的信息隐藏研究已取得不少学术成果。然而,文本信息隐藏研究显得相对滞后,其中针对中文文本信息隐藏的研究更是少之又少。虽然与图片、视频、音频等载体相比,文本存在着信息冗余度低、数据量少的缺点,但作为互联网信息传递与交流的重要载体,以文本为载体的信息隐藏仍具有一定的研究价值。目前,针对中文文本的信息隐藏可大致分为三类,即基于文本图像的算法、基于文本格式的算法,以及基于文本内容的算法。其中,基于文本内容的算法又可分为基于语义的算法、基于语法的算法,以及基于汉字结构的算法。除了以上三类算法,中文文本信息隐藏中存在着以诗词为载体的信息隐藏算法,这类算法往往具有较高的嵌入率。但传统中文文本信息隐藏算法大多基于对原始文本进行微小的修改,存在着嵌入容量小鲁棒性弱的缺点,且本文信息隐藏算法隐写性能低。为了设计出具有较好性能且适用于中文文本的信息隐藏方案,本发明选择了网络语言“火星文”作为隐写载体。“火星文”作为网络语言的一种存在形式,是网络语言发展到一定阶段的产物,其普遍存在于互联网中。其主要构成方式为:网络符号构成、数字的不同组成构成、拼音和字母构成、繁简体汉字构成,以及生造字—脑残体。早期的“火星文”是社会中的青年群体为追求个性而设计出的语言符号。现如今,“火星文”又增添了新的用途,其常常被用于躲避关键词拦截,例如,淘宝、拼多多等电商平台为避免商品分享链接被QQ、微信等社交软件拦截而使用“火星文”。对于文本信息隐藏领域,“火星文”较于传统平面媒介的语言形式而言,具有信息冗余度高的特点。因此,“火星文”是一个理想的文本信息嵌入载体。
发明内容
发明目的:本发明提出一种基于“火星文”生成的中文文本隐写系统,具有更大的隐写容量和更高的安全性。
技术方案:本发明所述的一种基于“火星文”生成的文本隐写方法,包括以下步骤:
(1)构建包含预处理模块、控制模块和隐写模块的文本隐写系统;所述隐写模块包括简繁体转换模块、字音转换模块、字体重构模块、同音字替换模块、字体拆分模块以及非汉字字符替换模块;
(2)基于预处理模块对待嵌信息进行数据预处理;
(3)信息嵌入时,将预先获取的原始文本与预处理后的待嵌信息作为控制模块的输入,生成4种类型的隐写控制字符,每种类型包含多个Unicode不可见控制字符,控制模块将根据输入字符的特征将隐写任务分配至相应的隐写子模块中,隐写子模块执行信息嵌入操作,并将反馈信息传递至控制模块;控制模块根据反馈信号继续进行信息嵌入,直到待嵌信息全部嵌入;
(4)信息嵌入执行完毕后,隐写模型执行信息提取操作;首先,从含密文本“火星文”中获取控制字符信息,控制模块根据含密载体字符的类型将信息提取任务分配至相应的隐写模块中,隐写子模块执行信息提取操作,并将反馈信息发送至控制模块;控制模块根据反馈信号继续进行信息提取,直到待嵌信息全部提取完毕。
进一步地,所述步骤(2)实现过程如下:
对待嵌信息进行二进制转换,生成带嵌信息比特串M;对带嵌信息比特串M进行辅助信息增添,生成新的待嵌字符比特串M′,以便信息提取的顺利进行;对待嵌信息执行加密操作,生成密文待嵌比特串Me,加密方案满足如下公式:
M′=Deck(Enck(M′,P),P)
式中,k为密钥,P为辅助参数,Enc()为加密函数,Dec()为解密函数。
进一步地,步骤(3)所述的4种类型的隐写控制字符分别为:第一类为空集,即无任何字符,适用隐写子模块为:简繁体转化模块、字音替换模块和非汉字处理模块;第二类包含4个Unicode不可见控制字符,分别为:U+200B、U+200C、U+200D、U+200E,并分别编码为00、01、10、11,所适用隐写子模块为字体重构模块;第三类包含4个Unicode不可见控制字符,分别为:U+202A、U+202B、U+202C、U+202D,并分别编码为00、01、10、11,所适用隐写子模块为同音字替换模块;第四类包含4个Unicode不可见控制字符,分别为:U+206A、U+206B、U+206C、U+206D,并分别编码为00、01、10、11,所适用隐写子模块为字体拆分模块。
进一步地,步骤(3)所述的隐写任务分配流程如下:
生成随机数α,α∈(0,1);为5个针对汉字的隐写子模块,设置相应的选择域,分别为(0,ε1]、(ε1,ε2]、(ε2,ε3]、(ε3,ε4],以及(ε4,1),其中,εi为预先设置的参数;根据α落入的值域选取特定的隐写子模块,获取该隐写子模块所对应的隐写控制字符种类,在该类中查找编码为{mi,mi+1}的Unicode不可见控制字符;将当前原始文本字符ci与获得的隐写控制字符Cinvisible作为参数传入所选隐写子模块中。
进一步地,步骤(4)所述的信息提取任务分配流程如下:
控制模块首先判别含密字符si的字符类型,若为Unicode不可见控制字符,则可查找其所属类别和对应的适用隐写子模块,继而将si作为参数分配至该隐写子模块中进行信息提取操作;否则,将根据si的是否为汉字进行信息提取时的任务分配;若si为汉字则直接分配至简繁体转换模块中,若为英文字符或者阿拉伯数字,则直接分配至非汉字字符替换模块。
有益效果:与现有技术相比,本发明的有益效果:本发明所生成的含密载体“火星文”与网络中存在的“火星文”在形式上并无差异,因此具有一定的隐蔽性。本发明所提出的隐写方案利用“火星文”较于传统平面媒介语言形式具有更多信息冗余的优点,因此,具有更大的隐写容量。本中文文本隐写系统涵盖多种信息嵌入模式,所生成的含密载体也符合自然语言形式,目前暂未有成熟的针对“火星文”检测文本隐写分析算法,因此,具有一定的安全性。本发明可利用于规避互联网中常见的文本信息过滤,因此,具有一定的实用价值。
附图说明
图1“火星文”文本隐写系统框架图;
图2部分汉字部件编码;
图3汉字部件的6种空间关系图;
图4信息嵌入流程图;
图5信息提取流程图;
图6信息嵌入与提取任务分配流程图;
图7汉字的树形结构图;
图8同音字完全二叉编码树;
图9基于“火星文”生成的文本隐写系统在互联网中的使用。
具体实施方式
下面结合附图来对本发明作进一步的说明:
本发明中的参数定义如下:英文字符集E,数字集合为N,标点符号集合为Ψ,简体字集合为Ωsc,繁体字集合为Ωtc,原始输入为C,C={c1,c2,…cn},其中ci∈E∪N∪Ψ∪Ωsc,待嵌入秘密信息为M,M={0,1}q,q为待嵌信息的长度,含密文本为S,S={s1,s2,…sd},si为“火星文”字符,Cinvisible为不可见隐写控制字符,Modulek,k=1,2,…,6对应6个隐写子模块且接受参数ci与Cinvisible,∈为反馈信息。
本发明提供一种基于“火星文”生成的文本隐写方法,利用网络语言“火星文”作为隐写载体,通过对汉字结构特征的研究以及“火星文”构字方式的分析,进行信息的嵌入与提取操作;具体包括以下步骤:
步骤1:构建“火星文”文本隐写系统,如图1所示,包含预处理模块、控制模块和隐写模块的文本隐写系统;隐写模块包括简繁体转换模块、字音转换模块、字体重构模块、同音字替换模块、字体拆分模块以及非汉字字符替换模块。
步骤2:基于预处理模块对待嵌信息进行数据预处理。
由于信息嵌入过程中,所选原始文本C中字符可能会遗留部分未被使用,这会增加信息提难度。因此,本发明对待嵌信息比特流M进行辅助信息增添,操作如下:
计算待嵌信息比特流M的长度L,将L转换为二进制Lb,若Lb不足λ位则采取高位补0,其中λ是预先设置的参数;
生成预处理信息M′,M′=Lb∪M;
在辅助信息添加后,需对M′进行加密,得到密文信息比特流Me,
Me=Enck(M′,P)
式中k为密钥,P为辅助参数,所选择加密方案只需满足如下等式即可:
M′=Deck(Enck(M′,P),P)。
步骤3:执行信息嵌入操作,如图4所示,信息嵌入时,将预先获取的原始文本与预处理后的待嵌信息作为控制模块的输入,生成4种类型的隐写控制字符,每种类型包含多个Unicode不可见控制字符,控制模块将根据输入字符的特征将隐写任务分配至相应的隐写子模块中,隐写子模块执行信息嵌入操作,并将反馈信息传递至控制模块;控制模块根据反馈信号继续进行信息嵌入,直到待嵌信息全部嵌入。
为解决简体字信息提取过程中的混淆问题,例如简繁体转化模块与字体重构模块都有可能生成简体字,则必定会给信息提取带来困扰,因此,须在每一次隐写操作过程中引入一个嵌入标志符。本发明采用了Unicode不可见控制字符(零宽度字符)。为了增加隐写容量,使引入的不可见控制字符也能携带信息,本发明对其进行了编码,具体内容如下:第一类为空集,即无任何字符,适用隐写子模块为:简繁体转化模块、字音替换模块和非汉字处理模块;第二类包含4个Unicode不可见控制字符,分别为:U+200B、U+200C、U+200D、U+200E,并分别编码为00、01、10、11,所适用隐写子模块为字体重构模块;第三类包含4个Unicode不可见控制字符,分别为:U+202A、U+202B、U+202C、U+202D,并分别编码为00、01、10、11,所适用隐写子模块为同音字替换模块。表2显示了不可见控制字符Cinvisible的编码和所属类别的标号,并给出所适用的隐写子模块。在每轮信息嵌入中,信息嵌入方式取决于随机数α的值,α∈(0,1)。本发明为5个针对汉字的隐写子模块,设置相应的选择域,分别为(0,ε1]、(ε1,ε2]、(ε2,ε3]、(ε3,ε4],以及(ε4,1),其中,εi为预先设置的参数,根据α落入的值域选取特定的隐写子模块,获取该隐写子模块所对应的隐写控制字符种类,在该类中查找编码为{mi,mi+1}的Unicode不可见控制字符,将当前原始文本字符ci与获得的隐写控制字符Cinvisible作为参数传入所选隐写子模块中,该隐写子模块将根据所传参数进行信息嵌入,并将反馈信息∈传入至控制模块以便执行下一步信息嵌入操作。
步骤4:进行信息提取,如图5所示,信息嵌入执行完毕后,隐写模型执行信息提取操作;首先,从含密文本“火星文”中获取控制字符信息,控制模块根据含密载体字符的类型将信息提取任务分配至相应的隐写模块中,隐写子模块执行信息提取操作,并将反馈信息发送至控制模块;控制模块根据反馈信号继续进行信息提取,直到待嵌信息全部提取完毕。
控制模块会判别含密字符si的字符类型,若为不可见控制字符,则可根据表2查找其所属类别和对应的隐写子模块Modulek,继而将si作为参数分配至该隐写子模块。否则,将根据si的是否为汉字进行信息提取时的任务分配。无论si的字符类型如何,其都会作为参数传入至Modulek。由于控制模块已经对si做出判断,对于各个隐写子模块Modulek而言,所接受的字符si的类型是已知的。当控制模块分配信息提取任务至Modulek后,Modulek根据当前含密字符si执行相应的信息提取操作,并将反馈信息∈传入至控制模块以便执行下一步信息提取操作。
如图2、图3所示为本发明所使用的部分汉字部件编码与汉字部件的6种空间关系;
对汉字进行有效的编码可使汉字的操作与处理更为简便。设Ω为汉字集合,Θ为汉字部件集合,Ξ为Θ中任意两个汉字部件位置关系集合,则存在如下两种情况:
第一种情况,Θ={‘点’,‘横’,‘竖’,‘撇’,‘捺’,‘折’,‘钩’,‘提’},则Ω=(Θ,Ξ);
第二种情况,Θ=Ω,则Ω=(Θ,Ξ)。
第一种情况下,Θ为8种汉字基本笔画,构造最为简单,任意汉字部件可由此8种笔画组合而成。然而汉字部件繁杂,组合方式繁多。因此,位置关系集合Ξ便极其复杂。第二种情况下,Ξ为空集,则Θ为整个汉字集合Ω,这便使得Θ中的元素过多。为了平衡Θ与Ξ构造时的复杂度问题,作者对汉字的组成部件进行了统计分析,选取了505个汉字部件作为集合Θ的元素,如图1所示。6种位置关系作为集合Ξ的元素,如图3所示。其中,“()”操作符的运算优先级最高,we、lu、ld、ru运算优先级次之,lr与ud的运算优先级最低,如表1所示。将Θ中的元素作为操作对象,Ξ中的元素作为操作符,根据符号优先级,则每个汉字都有其唯一的编码形式,如挨:430lr(308ud170)。本发明选取了2500个常用简体汉字,记为Ωsc,其对应繁体字集合为Ωtc,且有:
Ωsc∪Ωsc∈Ω。
表1算符优先表
操作符 | 优先级 | 运算方向 |
() | 1 | |
we,lu,ld,rd | 2 | 从左至右 |
lr,ud | 3 | 从左至右 |
图6为控制模块的核心信息嵌入与信息提取任务分配流程图。为解决简体字信息提取过程中的混淆问题,例如简繁体转化模块与字体重构模块都有可能生成简体字,则必定会给信息提取带来困扰,因此,须在每一次隐写操作过程中引入一个嵌入标志符。本发明采用了Unicode不可见控制字符(零宽度字符)。由于原始字符ci大都为汉字字符、阿拉伯数字和英文字母,这些不可见控制字符并不会对文本的显示造成太大的影响。为了增加隐写容量,使引入的不可见控制字符也能携带信息,本发明对其进行了编码。表2显示了不可见控制字符Cinvisible的编码和所属类别的标号,并给出所适用的隐写子模块。在每轮信息嵌入中,信息嵌入方式取决于随机数α的值,α∈(0,1)。为了表达简便,设当前待嵌字符为ci,待嵌信息比特为mj,Modulek,k=1,2,…,6对应6个隐写子模块且接受参数ci与Cinvisibee,Cinvisible的取值由表2与待嵌比特串{mj,mj+1}得出,∈为反馈信号。例如,当α的值落入Module3也就是字体重构模块的判定域中,则控制模块会选取Module3进行信息嵌入操作。由表2可知,Module3适用于第2类不可见控制字符,因此,控制模块根据{mj,mj+1}的值选取对应的不可见控制字符Cinvisible并将其作为参数与ci一并传入至Module3。在信息提取过程中,控制模块首先判别含密字符si的字符类型,若为不可见控制字符,则可根据表2查找其所属类别和对应的隐写子模块Modulek,继而将si作为参数分配至该隐写子模块。否则,将根据si的是否为汉字进行信息提取时的任务分配。图7展示了信息提取时的任务分配流程,由图可知,无论si的字符类型如何,其都会作为参数传入至Modulek。由于控制模块已经对si做出判断,对于各个隐写子模块Modulek而言,所接受的字符si的类型是已知的。
表2不可见控制字符表
下面对6种隐写子模块做出详细的信息嵌入与信息提取算法描述。
简繁体转换模块。本发明设计字典D:Ωsc→Ωtc,其中,Ωsc与Ωtc信分别为简体字集合与繁体字集合,信息嵌入过程如下:
1)若待嵌信息mj=0,则含秘字符sk=Cinvisible∪ci,∈=True,否则执行步骤2)。
2)从字典D中找到ci对应的繁体字tci,若ci≠tci,则sk=Cinvisible∪tci,∈=True,否则嵌入失败,∈=False。
3)信息提取过程中,若当前含秘字符si∈Ωtc,则提取信息mj=1,否则,mj=0。
字音转换模块。简体字与拼音的转化本质为简体字与英文字符的替换。本文本隐写系统利用Unicode协会所提出的“混淆”字符表进行信息嵌入,该方案对字符的外形相似度具有较高要求。然而,“火星文”对字符的相似度约束更加宽泛,只需满足外形相似或者语义相似。本发明并没有对相似字符表中的具体内容做出约束,只需满足通信双方的约定即可。表3显示了部分相似字符,如此设计表的原因主要有两方面:1)部分字符相似字符较少。2)单字符嵌入容量过大会减弱系统鲁棒性,如面对恶意篡改时,当含密字符被篡改,则信息恢复准确率会大大降低。信息提取过程中,只需在表3中查找当前含秘字符si对应编码即为提取信息mj。
例如26个小写英文字符和0至9阿拉伯数字寻找相似字符,这36个字符中的每个字符都拥有3个相似字符,本发明为每个原始字符与和其相似的3个字符进行编码,分别为00、01、10、11,最终生成一个相似字符表;将接受汉字ci转换为拼音形式,从相似字符表中,根据当前待嵌信息内容,为此拼音中的每一个英文字符进行相似字符替换,从而完成信息嵌入操作;对于信息提取,只需在相似字符表中查找当前含秘字符si所对应的编码即为提取信息mj。
表3相似字符表
字体重构模块。在“火星文”中,字体重构的表现形式分为两种,第一种为偏旁增添,如:打→咑,第二种为偏旁替换,如:嗷→遨,然而无论是偏旁增添还是偏旁替换,为了不造成过大的感官差异,增添或替换的偏旁对于整个汉字的其他部件而言应在结构上显得更加简单。根据第二节所介绍的汉字编码知识,本发明提出一种汉字的二叉树表示形式,图7展示了部分汉字的树形结构。为简便表达,设α,β∈Θ*,f(·)为笔画数函数,h(·)为树高函数,且有如下定义:
定义1.若h(α)-h(β)≥θ1,定义:β≤Hα。
定义2.若f(α)-f(β)≥θ2,定义:β≤Sα。
表4以笔画数为索引的汉字部件表
笔画数 | 汉子部件 | 编码 |
≤2 | 一、乙、二、十、… | 00 |
3 | 广、干、土、士、… | 01 |
4 | 王、卅、丰、车、… | 10 |
≥5 | 瓜、乐、母、央、… | 11 |
考虑到单字符嵌入容量对系统鲁棒性的影响,本发明对505个汉字部件笔画数进行了统计,对汉字部件笔画数索引表进行如表4所示的设计。针对信息嵌入,本发明设计出两种模式的信息嵌入方式:汉字偏旁增添与汉字偏旁替换。偏旁增添信息嵌入算法具体步骤如下:
1)获取当前汉字ci的树形结构BT与当前待嵌信息子串{mj,mj+1};
2)从表4中获得编码满足{mj,mj+1}的汉字部件集合;
3)从该汉字部件集合中选取一个部件π与汉字ci以图3中的6中方式结合,若π≤Hci,则执行步骤4,否则执行步骤5;
4)若部件π与汉字ci能组成汉字cnew,则生成含密字符sk=Cinvisible∪cnew,设置反馈信息∈=True,信息嵌入结束,否则重新执行步骤3;
5)若π≤Sci,,则执行步骤4,否则重新执行步骤3;
偏旁替换信息嵌入算法如下:
1)获取当前汉字ci的左右子树结构BTl与BTr,当前待嵌信息子串{mj,mj+1};
2)从表4中获得编码满足{mj,mj+1}的汉字部件集合;
3)若BTl≤HBTr或者BTr≤HBTl,则按照定义1选取两者中相对复杂部件Ccomplxx,否则,按照定义2选取两者中相对复杂部件Ccomplex;执行步骤4;
4)从所选取的汉字部件集合中选取一个部件π与部件Ccomplex以图3中的6中方式结合,若π≤HCcomplex,则执行步骤5,否则执行步骤6;
5)若部件π与部件Ccomplex能组成汉字cnew,则生成含密字符sk=Cinvisible∪cnew,设置反馈信息∈=True,并发送至控制模块,否则重新执行步骤4;
6)若π≤SCcomplex,,则执行步骤5,否则重新执行步骤4;
信息提取步骤如下:
1)查找表2,获取当前含密字符si对应的编码controlcode;
2)获取含密字符si+1的左右子树BTl与BTr;
3)若BTl≤HBTr或者BTr≤HBTl,则按定义1选取两者中相对简单的部件Csimple,否则,按照定义2选取相对简单部件Csimple;执行步骤4;
4)查找表4,获取Csimple的对应的编码code,则提取信息mj=controlcode∪code,设置反馈信息∈=True并传送至控制模块;
同音字替换模块。同音字替换普遍存在于“火星文”中,且所替换的同音字可为简体字也可为繁体字。本发明在所使用的的简体字集合与繁体字集合的基础上建立了一张同音字表以供信息嵌入与提取。对于每个同音字集合,本文提出一种完全二叉树字符编码方案,图8展示了利用完全二叉树进行同音汉字编码。对于一个完全二叉编码树,汉字的编码长度是变化的,并且汉字只存储在叶子节点,其他节点存储的数据都为空。为了解决由一字多音所造成的信息提取失败问题,本文在设计同音字表时,保证相同汉字不会在多行出现,表5展示同音字表的部分信息。信息嵌入过程中,首先获取ci的拼音,根据该拼音获取对应的二叉编码树,接着,从树的根节点开始,若当前待嵌比特mj=0,则访问左孩子节点,否则,访问右孩子节点,并获取mj之后的下一个待嵌比特mj+1,作为下一次访问的当前待嵌比特,如此递归访问,直到遇到叶子节点停止,返回叶子节点中的汉字即为所获取的同音字。信息提取过程中,当接收到含密字符si,则可知si+1为经过同音字替换模块处理过的汉字,具体信息提取步骤如下:
1)根据表2,获取si的编码controlcode。
2)获取si+1的拼音SPi+1。
3)在表5中查找SPi+1所在行,在该行检索si+1,并获取si+1的二叉树编码btc。
4)提取信息mj=controlcode∪btc,并将反馈信号∈设置为True返回至控制模块。
表5同音字表
字体拆分模块。据调查,火星文中大部分的拆分字都是左右形式和上下的形式,其中以左右形式的拆分居多,如:行→彳亍,好→女子。由于上下形式的拆分已经破坏汉字视觉上的结构,一定程度上影响读者的理解,因此发明仅考虑左右结构汉字的拆分。信息嵌入过程如下:
1)获取ci的二叉树形结构BT;
2)获取二叉树BT的根节点root;
3)若root为“lr”,即代表ci为左右结构型汉字,则执行步骤4),否则执行步骤6);
4)若当前待嵌字符mj=0,所生成含密字符sk=ci,嵌入成功,发送反馈信号至控制模块,否则执行操作步骤5);
5)将汉字ci拆分为左部分cil与右部分cir,所生成含密字符sk=Cinvisible∪cil∪cir,嵌入成功,发送反馈信号至控制模块;
6)嵌入失败,发送反馈信号至控制模块。
对于信息提取,当该隐写子模块接收含密字符si,则根据隐写控制字符表获取si所对应的编码controlcode,同时可知si+1与si+2为一个汉字的左右部分,根据字体拆分模块嵌入算法,最终该模块提取信息mj={controlcode,1}。
非汉字字符替换模块:信息嵌入过程中,该子模块主要利用相似字符表3对原始生成样本中英文字符或者数字字符采取相似字符替换进行信息嵌入。信息提取过程中,该模块会查找当前含秘字符在相似字符表中对应的编码,并做出相应的信息提取操作。具体的嵌入与提取算法与字音转换模块所提供的方法相似,此处不再赘述。
在应对文本内容拦截方面,本发明将“淘口令”这类载有重要信息的特殊字符串嵌入至文本中,使其不再暴露于文本中,一定程度上降低了重要内容被检测的风险,从而在根本上解决了文本敏感信息被拦截的问题,进一步保障了信息传递的安全性,图9展示了基于“火星文”生成的文本隐写系统在互联网中的使用案例。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (5)
1.一种基于“火星文”生成的文本隐写方法,其特征在于,包括以下步骤:
(1)构建包含预处理模块、控制模块和隐写模块的文本隐写系统;所述隐写模块包括简繁体转换模块、字音转换模块、字体重构模块、同音字替换模块、字体拆分模块以及非汉字字符替换模块;
(2)基于预处理模块对待嵌信息进行数据预处理;
(3)信息嵌入时,将预先获取的原始文本与预处理后的待嵌信息作为控制模块的输入,生成4种类型的隐写控制字符,每种类型包含多个Unicode不可见控制字符,控制模块将根据输入字符的特征将隐写任务分配至相应的隐写子模块中,隐写子模块执行信息嵌入操作,并将反馈信息传递至控制模块;控制模块根据反馈信号继续进行信息嵌入,直到待嵌信息全部嵌入;
(4)信息嵌入执行完毕后,隐写模型执行信息提取操作;首先,从含密文本“火星文”中获取控制字符信息,控制模块根据含密载体字符的类型将信息提取任务分配至相应的隐写模块中,隐写子模块执行信息提取操作,并将反馈信息发送至控制模块;控制模块根据反馈信号继续进行信息提取,直到待嵌信息全部提取完毕。
2.根据权利要求1所述的基于“火星文”生成的文本隐写方法,其特征在于,所述步骤(2)实现过程如下:
对待嵌信息进行二进制转换,生成待嵌信息比特串M;对带嵌信息比特串M进行辅助信息增添,生成新的待嵌字符比特串M',以便信息提取的顺利进行;对待嵌信息执行加密操作,生成密文待嵌比特串Me,加密方案满足如下公式:
M′=Deck(Enck(M′,P),P)
式中,k为密钥,P为辅助参数,Enc()为加密函数,Dec()为解密函数。
3.根据权利要求1所述的基于“火星文”生成的文本隐写方法,其特征在于,步骤(3)所述的4种类型的隐写控制字符分别为:第一类为空集,即无任何字符,适用隐写子模块为:简繁体转化模块、字音替换模块和非汉字处理模块;第二类包含4个Unicode不可见控制字符,分别为:U+200B、U+200C、U+200D、U+200E,并分别编码为00、01、10、11,所适用隐写子模块为字体重构模块;第三类包含4个Unicode不可见控制字符,分别为:U+202A、U+202B、U+202C、U+202D,并分别编码为00、01、10、11,所适用隐写子模块为同音字替换模块;第四类包含4个Unicode不可见控制字符,分别为:U+206A、U+206B、U+206C、U+206D,并分别编码为00、01、10、11,所适用隐写子模块为字体拆分模块。
4.根据权利要求1所述的基于“火星文”生成的文本隐写方法,其特征在于,步骤(3)所述的隐写任务分配流程如下:
生成随机数α,α∈(0,1);为5个针对汉字的隐写子模块,设置相应的选择域,分别为(0,ε1]、(ε1,ε2]、(ε2,ε3]、(ε3,ε4],以及(ε4,1),其中,εi为预先设置的参数;根据α落入的值域选取特定的隐写子模块,获取该隐写子模块所对应的隐写控制字符种类,在该类中查找编码为{mi,mi+1}的Unicode不可见控制字符;将当前原始文本字符ci与获得的隐写控制字符Cinvisible作为参数传入所选隐写子模块中。
5.根据权利要求1所述的基于“火星文”生成的文本隐写方法,其特征在于,步骤(4)所述的信息提取任务分配流程如下:
控制模块首先判别含密字符si的字符类型,若为Unicode不可见控制字符,则可查找其所属类别和对应的适用隐写子模块,继而将si作为参数分配至该隐写子模块中进行信息提取操作;否则,将根据si的是否为汉字进行信息提取时的任务分配;若si为汉字则直接分配至简繁体转换模块中,若为英文字符或者阿拉伯数字,则直接分配至非汉字字符替换模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110002500.9A CN112818378B (zh) | 2021-01-04 | 2021-01-04 | 一种基于“火星文”生成的文本隐写方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110002500.9A CN112818378B (zh) | 2021-01-04 | 2021-01-04 | 一种基于“火星文”生成的文本隐写方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112818378A CN112818378A (zh) | 2021-05-18 |
CN112818378B true CN112818378B (zh) | 2024-03-15 |
Family
ID=75856803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110002500.9A Active CN112818378B (zh) | 2021-01-04 | 2021-01-04 | 一种基于“火星文”生成的文本隐写方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112818378B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107947918A (zh) * | 2017-10-26 | 2018-04-20 | 青岛大学 | 一种基于字符特征的无载体文本隐写方法 |
CN109818739A (zh) * | 2019-01-24 | 2019-05-28 | 中国人民武装警察部队工程大学 | 一种基于对抗网络的生成式图像隐写方法 |
CN111447188A (zh) * | 2020-03-20 | 2020-07-24 | 青岛大学 | 基于语言隐写特征空间的无载体文本隐写方法 |
-
2021
- 2021-01-04 CN CN202110002500.9A patent/CN112818378B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107947918A (zh) * | 2017-10-26 | 2018-04-20 | 青岛大学 | 一种基于字符特征的无载体文本隐写方法 |
CN109818739A (zh) * | 2019-01-24 | 2019-05-28 | 中国人民武装警察部队工程大学 | 一种基于对抗网络的生成式图像隐写方法 |
CN111447188A (zh) * | 2020-03-20 | 2020-07-24 | 青岛大学 | 基于语言隐写特征空间的无载体文本隐写方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112818378A (zh) | 2021-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Majeed et al. | A review on text steganography techniques | |
CN106161006B (zh) | 一种数字加密算法 | |
CN101976253B (zh) | 一种中文变异文本匹配识别方法 | |
CN102135814B (zh) | 一种字词输入方法及系统 | |
WO2016023471A1 (zh) | 手写输入字符的处理、数据拆分和合并及编解码处理方法 | |
CN103543980B (zh) | 数字数据处理的方法及装置 | |
Al-Nofaie et al. | Utilizing pseudo-spaces to improve Arabic text steganography for multimedia data communications | |
CN109711121B (zh) | 基于马尔可夫模型和哈夫曼编码的文本隐写方法及装置 | |
Wang et al. | A coverless plain text steganography based on character features | |
CN108418683B (zh) | 一种基于汉字结构特征的无载体文本隐写方法 | |
CN106227808B (zh) | 一种去除邮件干扰信息的方法以及垃圾邮件判定方法 | |
CN107947918A (zh) | 一种基于字符特征的无载体文本隐写方法 | |
Baawi et al. | A comparative study on the advancement of text steganography techniques in digital media | |
US8166057B2 (en) | Data providing apparatus, data providing method and program | |
Shi et al. | An approach to text steganography based on search in internet | |
CN110704813A (zh) | 一种基于字符重新编码的文字防盗版系统 | |
CN111666575B (zh) | 基于词元编码的文本无载体信息隐藏方法 | |
CN108681536A (zh) | 一种基于汉语拼音多重映射的无载体隐写方法 | |
CN115116082B (zh) | 一种基于ocr识别算法的一键成档系统 | |
US7596270B2 (en) | Method of shuffling text in an Asian document image | |
Chaudhary et al. | Text steganography based on feature coding method | |
CN112818378B (zh) | 一种基于“火星文”生成的文本隐写方法 | |
CN115268799B (zh) | 一种基于云服务的存储方法和装置 | |
CN112632526B (zh) | 一种基于综合分段的用户口令建模与强度评估方法 | |
CN101826962B (zh) | 一种数字证书的快速处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |