CN115277972A - 一种基于国密算法的图像信息隐藏方法 - Google Patents

一种基于国密算法的图像信息隐藏方法 Download PDF

Info

Publication number
CN115277972A
CN115277972A CN202210902634.0A CN202210902634A CN115277972A CN 115277972 A CN115277972 A CN 115277972A CN 202210902634 A CN202210902634 A CN 202210902634A CN 115277972 A CN115277972 A CN 115277972A
Authority
CN
China
Prior art keywords
picture
hexadecimal
watermark
encryption
algorithm
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.)
Granted
Application number
CN202210902634.0A
Other languages
English (en)
Other versions
CN115277972B (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.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202210902634.0A priority Critical patent/CN115277972B/zh
Publication of CN115277972A publication Critical patent/CN115277972A/zh
Application granted granted Critical
Publication of CN115277972B publication Critical patent/CN115277972B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32267Methods relating to embedding, encoding, decoding, detection or retrieval operations combined with processing of the image
    • H04N1/32272Encryption or ciphering
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)

Abstract

本发明公开了一种基于国密算法的图像信息隐藏方法,分为加密过程和解密过程,将水印图片嵌入载体图片,得到的结果图片与载体图片无异,以传输结果图片的方式达到秘密传输水印图片的目的。为防止在传输过程中被攻击者截获并提取出水印图片,在其中结合了国密算法。这需要先将图片转化为数据流,进行加密,再转化为一个乱码图片,最后采用数字水印技术将其嵌入载体。数字水印技术保证了水印图片的完整性,国密算法保证了水印图片的安全性,将其很好的融合,并且作为首次实现设想并成功实现国密算法与图片信息隐藏的作品,对信息安全领域发展有一定推动作用。

Description

一种基于国密算法的图像信息隐藏方法
技术领域
本发明属于电子数字信息的安全技术领域,具体涉及一种基于国密算法的图像信息隐藏方法。
背景技术
如今现有技术只有单纯的对数据进行加密的国密算法,如流密码、DES、AES、IDEA、SM1、SM4等,以及数字水印技术,包括空域LSB和频域DFT、DCT、DWT等方法。
上述算法,如SM4,只能对数据流加密,具有应用场景的局限性;在图片加密方面无法进行应用。
数字水印技术形式单一,容易被攻击者提取出水印图片。目前市面上的数字水印加密技术在实际应用中安全问题也是一个比较重要的问题,它们均没有进一步对传输信息进行加密,暴露出保密性能较弱、加密信息易获取等缺点。
当下对信息隐藏的研究处于增长态势,但该领域研究仍然存在大量需改进的地方,大多产品仅关注图片嵌入时数字水印加密的单一层次或环节,成果适用范围往往较窄。伴随着互联网飞速发展,社会对信息传输安全性的需求大幅增加,单一的加密方式已无法完全抵御目前现有的恶意攻击。
发明内容
为了克服上述现有技术存在的不足,本发明的目的在于提供一种基于国密算法的图像信息隐藏方法,将图片转化为数据流,进行加密,再转化为一个乱码图片,最后采用数字水印技术将其嵌入载体,将国密算法和数字水印相融合,成功实现国密算法与图片信息隐藏的作品,对信息安全领域发展有一定推动作用。
为了实现上述目的,本发明采用的技术方案是:
一种基于国密算法的图像信息隐藏方法,分为加密过程和解密过程;
所述加密过程分为四个阶段;
第一阶段,将水印图片转化为某种可以进行SM4加密的十六进制形式;
第二阶段,将得到的十六进制明文串通过SM4加密得到十六进制密文串;
第三阶段,通过十六进制密文串得到加密水印图片;
第四阶段,通过LSB算法,将加密水印图片与载体图片结合,得到加密结果,即一个与原载体图片肉眼不可见差别的图片;
所述解密过程分为四个阶段;
第一阶段,应用LSBDe算法从载体图片中提取出加密水印图片;
第二阶段,将提取出的加密水印图片转化为十六进制串;
第三阶段,将得到的十六进制密文串通过SM4解密得到十六进制明文串;
第四阶段,将十六进制明文串转换为原始的水印图片,从而得到解密结果,即加密时想要嵌入载体的原始水印图片。
所述加密过程第一阶段为水印图片转换为十六进制串流:
采用十六进制串流总位数
Figure BDA0003771439660000031
为图片宽度、图片长度与6的乘积:
Figure BDA0003771439660000032
通过遍历将每个像素点的RGB值,将遍历出来的RGB分别转化为十六进制后存为三元组,而后拼接为一个六位的串,通过不断遍历读取和输出,从而得到一个按顺序的十六进制串流,且此串流满足所要求的可逆性和信息完整性要求。
所述加密过程第二阶段为16进制明文SM4加密:
首先将128bit密钥按照32bit一组分为4组,然后使用密钥扩展算法生成32组32bit轮密钥,再把输入的128bit数据按照32bit一组分成4组进行32轮迭代加密运算,每一轮加密使用一个32位的轮密钥,加密算法和密钥扩展算法均通过32次循环的非线性迭代轮函数来实现,数据加密部分的核心是轮函数,将线性和非线性相结合;
SM4的轮函数将输入部分看做4个32bit长度的数据,每轮的后3个部分都向左移动32bit的数据长度,这三组数据异或后进入非线性部分τ和线性部分L,运算后的结果与第一组数据异或置于最右面,如此循环往复32轮,也就是数据一共左移了8个周期,将其中的混乱因素不断扩散至每个bit位中,其中轮密钥是由加密密钥通过密钥拓展算法生成的;
如果生成的十六进制明文不能够被32整除,即不能作为完整的n组128位二进制串的整数倍,先将十六进制明文分为32位一组,最后一组可能凑不够32位,暂时将它称为第n组,先按顺序加密前n-1组,并按顺序生成n-1组密文,流输出,最后对最后一组进行处理,由于它凑不够32位,所以将刚刚加密过的最后几位密文与第n组的几位凑成一组,保证它的长度为32位,并对其进行加密,必须要先解密最后32位,然后才可以按照正序或倒序解密其他密文,同时加密后的密文转化为了可以被32整除的位数。
所述加密过程第三阶段为十六进制密文转换为加密水印图片:
将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述,以此类推,从而得到所有像素点的信息,同样用一个遍历过程实现将信息恢复为图片,此处的得到的加密图片应该与原水印图片完全不一致,并且通过加密图片很难得到原水印图片。
所述加密过程第四阶段为加密水印图片嵌入载体图片,获得加密图片:
将得到了加密后的十六进制串流转化的加密水印图片,选取LSB算法将加密水印嵌入载体图片,以最大限度保证嵌入后载体图片与嵌入前难以分辨出差别;
LSB算法将水印信息嵌入到数据的最低有效位
(LeastSignificantBit)部分,即将数据的LSB替换为需要加入的水印信息。
所述解密过程第一阶段为应用LSB解密算法从载体图片中提取出加密水印图片;
选取LSB解密算法将加密水印从载体图片中提取出来,且以最大限度保证提取出的水印图与嵌入前毫无差别。
所述解密过程第二阶段为提取出的加密水印图片转换为十六进制串流:
采用遍历每个像素点的RGB值,每个像素点的单个坐标都需要用2位16进制来表示,因此每个像素点的总坐标共需6位十六进制来表示,RGB值转换为十六进制后存为三元组,而后拼接为一个六位的串,通过不断地遍历读取和输出,从而得到一个按顺序的十六进制串流,与之前将水印图片转化为十六进制的形式几乎相同。
所述解密过程第三阶段为SM4解密密文串得到十六进制明文串,加解密算法和密钥扩展算法迭代轮数均为32轮,SM4加解密过程的算法相同,并且使用相同密钥,但在轮密钥的使用顺序上相反,对于密文的解密处理必须要将可以被32整除的十六进制代码恢复为与原始完全相同的十六进制串,因此要先对第n组(同上)进行解密,再对其他组进行解密。
所述解密过程第四阶段为十六进制明文串转换为原始水印图片:
从十六进制转化为图片,将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述,以此类推,从而得到所有像素点的信息,同样用一个遍历过程实现将信息恢复为图片,与之前将水印图片转化为十六进制的形式几乎相同。
所述方法应用于数字作品的知识产权保护、商务交易中的票据防伪、图像数据的隐藏标识和篡改提示以及隐蔽通信及其对抗。
本发明的有益效果:
按照本发明步骤进行操作,简言之数字水印就是将水印图片(记为图A)嵌入载体图片(记为图B),得到的结果图片与图B无异,以传输结果图片B的方式达到秘密传输图A的目的。为防止在传输过程中被攻击者截获并提取出水印图片,在其中结合了国密算法。这需要先将水印图片转化为数据流,进行加密,再转化为一个乱码图片,最后采用数字水印技术将其嵌入载体。数字水印技术保证了水印图片的完整性,国密算法保证了水印图片的安全性,本发明很好的融合,在保证可以鉴定原始信息是否被篡改的同时,还保证了传输过程信息的安全保密,这是本产品创新开发的一大亮点。
附图说明
图1为水印图片示意图。
图2为载体图片示意图。
图3为基于SM4的图片数字水印加解密算法结构示意图。
图4为加密过程示意图。
图5为算法1水印图片转化为hex示意图。
图6为SM4加密过程示意图。
图7为密钥拓展算法示意图。
图8为轮密钥生成示意图。
图9为位数转化关键代码示意图。
图10为hex串转化为图片示意图。
图11为LSB关键代码示意图。
图12为解密过程示意图。
图13为加解密轮密钥的使用顺序示意图。
图14为对第n组进行处理示意图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
数字作品的知识产权保护的实施例
本发明可以在数字作品的知识产权保护中得到应用,使用方法如下:
首先选取标识信息(水印信息可以是作者的序列号、公司标识、有意义的文本等,用它来识别其来源、版本、原作者、拥有者、发行人、合法使用人等),Miers可以将其转化为图片形式,再转化为数据流进行SM4算法加密并转化为一个乱码图片。利用LSB数字水印技术将其嵌入需保护的内容当中,难以被人察觉,不影响使用和传播,即使被截获也不会泄露隐私信息,可以利用设备检测,对盗版产品追本溯源,具有很强证据性和高度的威慑力,能够有效解决版权保护的痛点。
商务交易中的票据防伪的实施例
本发明可以应用于商务交易中的票据防伪领域,使用方法如下:
首先选取防伪标识图片作为水印图片,商务交易的原票据作为载体图片。Miers可以将防伪标识图片通过转化为数据流进行SM4算法加密,再转化为一个乱码图片,最后利用LSB数字水印技术将其嵌入商务交易的票据,得到的票据图片与之前无异,接着商务交易的过程中票据的所有者可以随时使用解密模块对票据中的数字水印进行恢复和验证,实现了票据防伪。
图像数据的隐藏标识和篡改提示的实施例
本发明也可以应用于图像数据的隐藏标识和篡改提示领域,使用方法如下:
首先将一些标识信息作为水印,将图像数据作为载体图片。Miers可以将标识信息转化为数据流进行SM4算法加密,再转化为一个乱码图片。利用LSB数字水印技术将其嵌入图像数据中,如若图像数据遭到篡改,则在使用SM4恢复原标识信息时会发生乱码无法恢复,则证明原图像数据已经遭到篡改。
隐蔽通信及其对抗的实施例
本发明可以应用于隐蔽通信及其对抗领域,使用方法如下:
首先选取通信过程中需要传递的信息并将其转化为图片形式作为水印图片,并且选择任意的图片作为载体图片,MIiers可以将通信秘密信息转化为数据流并进行SM4算法加密并转化为一个乱码图片。利用LSB数字水印技术将其嵌入载体图片当中,难以被人察觉,同时由于使用SM4算法进行加密,所以该通信信息可以被保护抵御恶意攻击,接收方收到该加密图片后可以进行解密恢复通信信息。
如图1图2所示:将水印图片(图片1)嵌入载体图片(图片2),得到的结果图片与图片2无异,以传输结果图片的方式达到秘密传输图片1的目的。为防止在传输过程中被攻击者截获并提取出水印图片,在其中结合了国密算法。这需要先将图片转化为数据流,进行加密,再转化为一个乱码图片,最后采用数字水印技术将其嵌入载体。数字水印技术保证了水印图片的完整性,国密算法保证了水印图片的安全性,将其很好的融合,并且作为首次实现设想并成功实现国密算法与图片信息隐藏的作品,对信息安全领域发展有一定推动作用。
如图3所示:加密时,首先将载体图片和水印图片输入软件中,分别遍历水印图片的每个像素并获取它的RGB值;将水印图片的RGB值转换为16进制的比特流,使用SM4加密方式对该比特流进行加密;将加密后的16进制比特流转化为新的RGB值,根据RGB与图片的关系生成新的加密水印图片2;使用LSB图像数字水印算法,将加密水印图片2嵌入载体图片从而得到加密图片。
解密时,输入加密图片以及水印图片的宽和高,然后遍历加密后的图片;将提取到的信息还原为RGB数值;将RGB数值转化为16进制的比特流进行SM4解密;将解密后的比特流转换为水印图片,最终获得所需要的原始水印图片。
如图4所示:加密过程的加密的整体期望是通过一个给定的水印图片,经过加密并通过易损数字水印的形式嵌入到图片中,并使图片最大限度的保持原样,但又不失水印的保密性。
具体来说,应该分为四个阶段。
第一阶段是将水印图片转化为某种可以进行SM4加密的形式,选取的是十六进制;
第二阶段是将得到的十六进制明文串通过SM4加密得到十六进制密文串;
第三阶段是通过十六进制密文串得到加密后的数字水印图片;
第四阶段就是将加密后的水印图片通过LSB算法与载体图片进行一个结合,从而得到加密结果,即一个与原载体图片肉眼不可见差别的图片。
第一阶段:水印图片转换为十六进制串流:
将一个图片转化为可传输的形式,必须要保证所转化的内容能够涵盖图片的所有信息并且需要可复原,因此这个过程需要被以一种约定的形式来进行转化,并且此形式需要满足可逆性和信息完整性要求。
针对目前使用广泛的RGB标准,由于RGB中红R、绿G、蓝B三种颜色的强度值均是0~255,因此对于每个像素点的R、G、B均有256种取色可能,都需要8位二进制来表示,而如果都用十六进制来表示的话,每个像素点的单个坐标就都需要2位16进制来表示,所以每个像素点共需6位十六进制进行表示。
故有十六进制串流总位数
Figure BDA0003771439660000101
为图片宽度、图片长度与6的乘积:
Figure BDA0003771439660000102
通过遍历将每个像素点的RGB值,将遍历出来的RGB分别转化为十六进制后存为三元组,而后拼接为一个六位的串,通过不断遍历读取和输出,从而得到一个按顺序的十六进制串流,且此串流满足所要求的可逆性和信息完整性要求。具体实现可以被总结为一个算法,用于实现图片转化为串流形式(这里不一定为十六进制,可以推广)。如图5。
第二阶段:16进制明文SM4加密:
通常情况下没有经过加密的数字水印是有可能被攻击者通过爆破密钥(即水印图像的width和length)来达到获取甚至篡改数字水印的目的,选择一个安全性能良好的加密模块来保证十六进制串的置乱与随机是确保水印图片安全性的关键。加密双方应确保第三方即使那到加密后的水印图片,也难以破解水印中所隐藏的信息,同时难以对水印信息进行篡改,因为水印是易损的,即使少量比特发生变化,也会导致整个图片发生变化。
在实现上,加密模块采用的是国家密码管理局发布的SM4分组密码算法,此算法是一种对称密码算法,主要用于实现对数据信息的加解密。SM4算法的明文、密钥和密文都是128bit,加密算法和密钥扩展算法迭代轮数均32轮。SM4加解密过程的算法相同,并且使用相同密钥,但是轮密钥的使用顺序相反。
SM4算法使用128位的加密密钥,首先将128bit密钥按照32bit一组分为4组,然后使用密钥扩展算法生成32组32bit轮密钥,再把输入的128bit数据按照32bit一组分成4组进行32轮迭代加密运算,每一轮加密使用一个32位的轮密钥。加密算法和密钥扩展算法均通过32次循环的非线性迭代轮函数来实现。数据加密部分的核心是轮函数,将线性和非线性相结合。SM4加密流程如图6所示。
SM4的轮函数将输入部分看做了4个32bit长度的数据,每轮的后3个部分都向左移动32bit的数据长度,这三组数据异或后进入非线性部分τ和线性部分L,运算后的结果与第一组数据异或置于最右面。如此循环往复32轮,也就是数据一共左移了8个周期,将其中的混乱因素不断扩散至每个bit位中。其中轮密钥是由加密密钥通过密钥拓展算法生成的,如图7:
图中,MK为加密密钥(128bit),MK=(MK0,MK1,MK2,MK3);FK为系统参数(128bit),FK=(FK0,FK1,FK2,FK3);CK为固定参数(128bit),CK=(CK0,CK1,...,CK31);轮密钥生成如图8:
如果生成的十六进制明文不能够被32整除,即不能作为完整的n组128位二进制串的整数倍。对加密过程做了一些处理。先将十六进制明文分为32位一组,最后一组可能凑不够32位,暂时将它称为第n组,先按顺序加密前n-1组,并按顺序生成n-1组密文,流输出,最后对最后一组进行处理,由于它凑不够32位,所以将刚刚加密过的最后几位密文与第n组的几位凑成一组,保证它的长度为32位,并对其进行加密。这样位数不够的问题就被解决了,但是要尤其注意加密顺序的问题,可以通过上述流程看到,有些位数是经过二次加密的,所以在解密的过程中存在一个顺序的问题,必须要先解密最后32位,然后才可以按照正序或倒序解密其他密文。同时加密后的密文转化为了可以被32整除的位数。
相关关键代码如图9:
第三阶段:十六进制密文转换为加密水印图片:
将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述。以此类推,从而得到所有像素点的信息。同样用一个遍历过程实现将信息恢复为图片。这里所使用的过程函数同样可以被总结为一个算法。算法如下图10所示:
此处的得到的加密图片应该与原水印图片完全不一致,并且通过加密图片很难得到原水印图片,从而满足了我们当初对水印图片加密的要求。
第四阶段:加密水印图片嵌入载体图片,获得加密图片:
通常数字水印技术有不可感知性的要求,即嵌入数字水印后载体数据发生了变化,但是不会影响到该数据的使用,对使用者而言也不可察觉。
之前得到了加密后的十六进制串流转化的加密水印图片,现在需要得到最终被使用的图片,此处选取LSB算法将加密水印嵌入载体图片,以最大限度保证嵌入后载体图片与嵌入前难以分辨出差别。
LSB算法将水印信息嵌入到数据的最低有效位(LeastSignificantBit)部分,即将数据的LSB替换为需要加入的水印信息。这正是因为低位数据对整体数据的影响最小,这也导致嵌入的水印信息强度不高,否则会影响到载体的数据质量。因此该算法仅限用于脆弱性数字水印(相较于鲁棒性数字水印而言,无法承受大量失真)。
数字水印加密过程主要基于数字水印的以下几个特性:
隐蔽性:在数字作品中嵌入数字水印不会引起明显的降质,并且不易被察觉。
隐藏位置的安全性:水印信息隐藏于数据而非文件头中,文件格式的变换不应导致水印数据的丢失。
鲁棒性:所谓鲁棒性是指在经历多种无意或有意的信号处理过程后,数字水印仍能保持完整性或仍能被准确鉴别。常见的信号处理过程包括信道噪声、滤波、数/模与模/数转换、重采样、剪切、位移、尺度变化以及有损压缩编码等。
通常数字水印技术有不可感知性的要求,即嵌入数字水印后载体数据发生了变化,但是不会影响到该数据的使用,对使用者而言也不可察觉。
该算法将水印信息嵌入到数据的最低有效位
(LeastSignificantBit)部分,即将数据的LSB替换为需要加入的水印信息。这正是因为低位数据对整体数据的影响最小,这也导致嵌入的水印信息强度不高,否则会影响到载体的数据质量。因此该算法仅限用于脆弱性数字水印(相较于鲁棒性数字水印而言,无法承受大量失真)。
部分关键代码如图11所示:
解密过程:
解密过程其实就是相对于加密过程的逆过程,是由一个被嵌入水印的载体图片中提取出水印,然而这个水印也是被加密过的,因此需要对提取出的水印解密才可得到所需原始水印图片。如图12所示。
具体来说,与加密基本相似,分为几个阶段。
第一阶段是应用LSBDe算法从载体图片中提取出加密水印图片;
第二阶段是将提取出的加密水印图片转化为十六进制串进行SM4加密;
第三阶段是将得到的十六进制密文串通过SM4解密得到十六进制明文串;
第四阶段就是将十六进制明文串转换为原始的水印图片,从而得到解密结果,即加密时想要嵌入载体的原始水印图片。
第一阶段:应用LSB解密算法从载体图片中提取出加密水印图片
数字水印技术有着不可感知的要求。嵌入数字水印后载体数据发生了变化,但不会影响到载体的使用,于使用者而言也不可察觉。因此在我们看来加密图片与原始的载体图片并无异样。
想要得到载体图片里的隐藏信息,即加密水印图,我们选取LSB解密算法将加密水印从载体图片中提取出来,且以最大限度保证提取出的水印图与嵌入前毫无差别。
由于采用的是无法承受大量失真的易损水印,因此水印信息嵌入在数据的最低有效位部分,对整体数据的影响最小。
第二阶段:提取出的加密水印图片转换为十六进制串流:
想要给加密水印进行SM4解密,就必须将其转换为十六进制串流的形式。与加密过程基本相似,依旧采用遍历每个像素点的RGB值,每个像素点的单个坐标都需要用2位16进制来表示,因此每个像素点的总坐标共需6位十六进制来表示。RGB值转换为十六进制后存为三元组,而后拼接为一个六位的串,通过不断地遍历读取和输出,从而得到一个按顺序的十六进制串流。满足我们对其进行SM4解密的要求。
与之前将水印图片转化为十六进制的形式几乎相同,所以沿用算法1。
第三阶段:SM4解密密文串得到十六进制明文串
由于加密模块采用了国家密码管理局发布的SM4分组密码算法,此算法为对称密码算法,因此解密密钥与加密密钥相同。SM4算法的明文、密钥和密文都是128bit,加解密算法和密钥扩展算法迭代轮数均为32轮。SM4加解密过程的算法相同,并且使用相同密钥,但在轮密钥的使用顺序上相反,如图13:
对于密文的解密处理必须要将可以被32整除的十六进制代码恢复为与原始完全相同的十六进制串,因此要先对第n组(同上)进行解密,再对其他组进行解密。其中关键代码如下图14:
第四阶段:十六进制明文串转换为原始水印图片:
从十六进制转化为图片,我们将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述。以此类推,从而得到所有像素点的信息。同样用一个遍历过程实现将信息恢复为图片。
与之前将水印图片转化为十六进制的形式几乎相同,所以沿用上文提到的算法2。

Claims (10)

1.一种基于国密算法的图像信息隐藏方法,其特征在于,分为加密过程和解密过程;
所述加密过程分为四个阶段;
第一阶段,将水印图片转化为某种可以进行SM4加密的十六进制形式;
第二阶段,将得到的十六进制明文串通过SM4加密得到十六进制密文串;
第三阶段,通过十六进制密文串得到加密水印图片;
第四阶段,通过LSB算法,将加密水印图片与载体图片结合,得到加密结果,即一个与原载体图片肉眼不可见差别的图片;
所述解密过程分为四个阶段;
第一阶段,应用LSBDe算法从载体图片中提取出加密水印图片;
第二阶段,将提取出的加密水印图片转化为十六进制串;
第三阶段,将得到的十六进制密文串通过SM4解密得到十六进制明文串;
第四阶段,将十六进制明文串转换为原始的水印图片,从而得到解密结果,即加密时想要嵌入载体的原始水印图片。
2.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述加密过程第一阶段为水印图片转换为十六进制串流:
采用十六进制串流总位数
Figure FDA0003771439650000011
为图片宽度、图片长度与6的乘积:
Figure FDA0003771439650000021
通过遍历将每个像素点的RGB值,将遍历出来的RGB分别转化为十六进制后存为三元组,而后拼接为一个六位的串,通过不断遍历读取和输出,从而得到一个按顺序的十六进制串流,且此串流满足所要求的可逆性和信息完整性要求。
3.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述加密过程第二阶段为16进制明文SM4加密:
首先将128bit密钥按照32bit一组分为4组,然后使用密钥扩展算法生成32组32bit轮密钥,再把输入的128bit数据按照32bit一组分成4组进行32轮迭代加密运算,每一轮加密使用一个32位的轮密钥,加密算法和密钥扩展算法均通过32次循环的非线性迭代轮函数来实现,数据加密部分的核心是轮函数,将线性和非线性相结合;
SM4的轮函数将输入部分看做4个32bit长度的数据,每轮的后3个部分都向左移动32bit的数据长度,这三组数据异或后进入非线性部分τ和线性部分L,运算后的结果与第一组数据异或置于最右面,如此循环往复32轮,也就是数据一共左移了8个周期,将其中的混乱因素不断扩散至每个bit位中,其中轮密钥是由加密密钥通过密钥拓展算法生成的;
如果生成的十六进制明文不能够被32整除,即不能作为完整的n组128位二进制串的整数倍,先将十六进制明文分为32位一组,最后一组可能凑不够32位,暂时将它称为第n组,先按顺序加密前n-1组,并按顺序生成n-1组密文,流输出,最后对最后一组进行处理,由于它凑不够32位,所以将刚刚加密过的最后几位密文与第n组的几位凑成一组,保证它的长度为32位,并对其进行加密,必须要先解密最后32位,然后才可以按照正序或倒序解密其他密文,同时加密后的密文转化为了可以被32整除的位数。
4.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述加密过程第三阶段为十六进制密文转换为加密水印图片:
将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述,以此类推,从而得到所有像素点的信息,同样用一个遍历过程实现将信息恢复为图片,此处的得到的加密图片应该与原水印图片完全不一致,并且通过加密图片很难得到原水印图片。
5.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述加密过程第四阶段为加密水印图片嵌入载体图片,获得加密图片:
将得到了加密后的十六进制串流转化的加密水印图片,选取LSB算法将加密水印嵌入载体图片,以最大限度保证嵌入后载体图片与嵌入前难以分辨出差别;
LSB算法将水印信息嵌入到数据的最低有效位
(LeastSignificantBit)部分,即将数据的LSB替换为需要加入的水印信息。
6.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述解密过程第一阶段为应用LSB解密算法从载体图片中提取出加密水印图片;
选取LSB解密算法将加密水印从载体图片中提取出来,且以最大限度保证提取出的水印图与嵌入前毫无差别。
7.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述解密过程第二阶段为提取出的加密水印图片转换为十六进制串流:
采用遍历每个像素点的RGB值,每个像素点的单个坐标都需要用2位16进制来表示,因此每个像素点的总坐标共需6位十六进制来表示,RGB值转换为十六进制后存为三元组,而后拼接为一个六位的串,通过不断地遍历读取和输出,从而得到一个按顺序的十六进制串流,与之前将水印图片转化为十六进制的形式几乎相同。
8.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述解密过程第三阶段为SM4解密密文串得到十六进制明文串,加解密算法和密钥扩展算法迭代轮数均为32轮,SM4加解密过程的算法相同,并且使用相同密钥,但在轮密钥的使用顺序上相反,对于密文的解密处理必须要将可以被32整除的十六进制代码恢复为与原始完全相同的十六进制串,因此要先对第n组(同上)进行解密,再对其他组进行解密。
9.根据权利要求1所述的一种基于国密算法的图像信息隐藏方法,其特征在于,所述解密过程第四阶段为十六进制明文串转换为原始水印图片:
从十六进制转化为图片,将十六进制串流分组,每组六位十六进制字符,并分别存到三元组内,形成对于该像素点R、G、B值的描述,以此类推,从而得到所有像素点的信息,同样用一个遍历过程实现将信息恢复为图片,与之前将水印图片转化为十六进制的形式几乎相同。
10.基于权利要求1-9任一项所述方法,其特征在于,应用于数字作品的知识产权保护、商务交易中的票据防伪、图像数据的隐藏标识和篡改提示以及隐蔽通信及其对抗。
CN202210902634.0A 2022-07-29 2022-07-29 一种基于国密算法的图像信息隐藏方法 Active CN115277972B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210902634.0A CN115277972B (zh) 2022-07-29 2022-07-29 一种基于国密算法的图像信息隐藏方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210902634.0A CN115277972B (zh) 2022-07-29 2022-07-29 一种基于国密算法的图像信息隐藏方法

Publications (2)

Publication Number Publication Date
CN115277972A true CN115277972A (zh) 2022-11-01
CN115277972B CN115277972B (zh) 2023-09-26

Family

ID=83770991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210902634.0A Active CN115277972B (zh) 2022-07-29 2022-07-29 一种基于国密算法的图像信息隐藏方法

Country Status (1)

Country Link
CN (1) CN115277972B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140325215A1 (en) * 2013-03-12 2014-10-30 Greg J. Wright Encryption Method and System
CN106653053A (zh) * 2017-01-10 2017-05-10 北京印刷学院 一种基于全息图像的音频加密解密方法
CN108615216A (zh) * 2018-03-22 2018-10-02 北京印刷学院 一种公证文书的全息水印认证方法
CN113452688A (zh) * 2021-06-24 2021-09-28 山东三未信安信息科技有限公司 一种基于sm4与sm2算法的图像加密与解密方法及装置
CN114170658A (zh) * 2021-11-30 2022-03-11 贵州大学 一种结合水印和深度学习的人脸识别加密认证方法及系统
CN114329415A (zh) * 2021-12-28 2022-04-12 腾云悦智科技(深圳)有限责任公司 一种基于随机图像方案的移动Web登录密码加密方法
EP4020293A1 (en) * 2020-12-22 2022-06-29 Wuhan United Imaging Healthcare Co., Ltd. Systems and methods for image data management

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140325215A1 (en) * 2013-03-12 2014-10-30 Greg J. Wright Encryption Method and System
CN106653053A (zh) * 2017-01-10 2017-05-10 北京印刷学院 一种基于全息图像的音频加密解密方法
CN108615216A (zh) * 2018-03-22 2018-10-02 北京印刷学院 一种公证文书的全息水印认证方法
EP4020293A1 (en) * 2020-12-22 2022-06-29 Wuhan United Imaging Healthcare Co., Ltd. Systems and methods for image data management
CN113452688A (zh) * 2021-06-24 2021-09-28 山东三未信安信息科技有限公司 一种基于sm4与sm2算法的图像加密与解密方法及装置
CN114170658A (zh) * 2021-11-30 2022-03-11 贵州大学 一种结合水印和深度学习的人脸识别加密认证方法及系统
CN114329415A (zh) * 2021-12-28 2022-04-12 腾云悦智科技(深圳)有限责任公司 一种基于随机图像方案的移动Web登录密码加密方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LIZHI XIONG: "Robust Reversible Watermarking in Encrypted Image With Secure Multi-Party Based on Lightweight Cryptography", 《 IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》 *
李兆斌;茅方毅;王瑶君;: "以太网安全网关数据处理机制的设计与实现", 北京电子科技学院学报, no. 02 *
连帅: "加密图像可逆水印算法研究与设计", 《中国优秀硕士学位论文全文数据库》 *

Also Published As

Publication number Publication date
CN115277972B (zh) 2023-09-26

Similar Documents

Publication Publication Date Title
Abood An efficient image cryptography using hash-LSB steganography with RC4 and pixel shuffling encryption algorithms
US20080028222A1 (en) Security based on subliminal and supraliminal channels for data objects
Phad Vitthal et al. A novel security scheme for secret data using cryptography and steganography
CN113194213B (zh) 一种基于秘密共享和混沌映射的png图像信息隐藏和恢复方法
KR20070042511A (ko) 디지털 콘텐트 보안 시스템 및 방법
Singh et al. Digital signature verification scheme for image authentication
CN109547663B (zh) 一种结合密码学的改进lsb图像隐写方法
Nyo et al. Secure data transmission of video steganography using Arnold scrambling and DWT
Sethi et al. A new cryptology approach for image encryption
Gangwar et al. Improved RGB-LSB steganography using secret key
Thomas et al. Advanced cryptographic steganography using multimedia files
CN115719300A (zh) 一种大数据的人员信息管理方法
CN115277972B (zh) 一种基于国密算法的图像信息隐藏方法
CN115643015A (zh) 数字水印溯源方法
Roy et al. New Steganography approach using encrypted secret message inside Audio and Video media
Kaur et al. XOR-EDGE based video steganography and testing against chi-square steganalysis
Upreti et al. Variable bits secure system for color images
Singhal et al. Image steganography embedded with advance encryption standard (AES) securing with SHA-256
Kashyap et al. Authenticating encrypted data
Samaratunge New steganography technique for palette based images
Nehra et al. Review Paper On Image Based Steganography
Memon et al. Authentication techniques for multimedia content
Suryakant et al. A novel security scheme for secret data using cryptography and steganography
Agarwal et al. A Brief Review on Various Aspects of Steganography Followed by Cryptographic Analysis
Khairani et al. The Implementation Of Discrete Cosine Transform (DCT) And Blowfish Methods In Digital Video Security

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