CN112070636B - 一种具有多级证据链的图像电子合同签署及验证方法 - Google Patents
一种具有多级证据链的图像电子合同签署及验证方法 Download PDFInfo
- Publication number
- CN112070636B CN112070636B CN202010938255.8A CN202010938255A CN112070636B CN 112070636 B CN112070636 B CN 112070636B CN 202010938255 A CN202010938255 A CN 202010938255A CN 112070636 B CN112070636 B CN 112070636B
- Authority
- CN
- China
- Prior art keywords
- image
- electronic contract
- electronic
- counterfeiting
- signing
- 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 52
- 230000006837 decompression Effects 0.000 claims description 36
- 238000011084 recovery Methods 0.000 claims description 29
- 230000006835 compression Effects 0.000 claims description 18
- 238000007906 compression Methods 0.000 claims description 18
- 230000002441 reversible effect Effects 0.000 claims description 17
- 238000012795 verification Methods 0.000 claims description 14
- 238000005516 engineering process Methods 0.000 claims description 12
- 239000003999 initiator Substances 0.000 claims description 4
- 238000012952 Resampling Methods 0.000 claims description 3
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000001514 detection method Methods 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/18—Legal services; Handling legal documents
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/16—Program or content traceability, e.g. by watermarking
-
- 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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0065—Extraction of an embedded watermark; Reliable detection
Abstract
本发明公开了一种具有多级证据链的图像电子合同签署及验证方法,其包括以下步骤:S1、生成防伪水印电子合同压缩图像;S2、得到带加密电子签名的电子合同压缩图像;S3、提取带加密电子签名的电子合同图像中的数据;S4、获取电子签名内容;S5、判断解密得到的电子签名内容是否为篡改,若是则认定电子合同无效,否则进入步骤S6;S6、验证提取得到的认证水印是否为篡改,若是则进入步骤S7,否则认定电子合同有效,并解压缩;S7、通过恢复水印恢复原始电子合同内容,并将恢复得到的电子合同认定为有效。本发明解决了现有电子合同无法恢复被篡改的原始内容的问题。
Description
技术领域
本发明涉及电子合同领域,具体涉及一种具有多级证据链的图像电子合同签署及验证方法。
背景技术
近年来随着经济迅速发展,社会各行业业务骤增。电子合同因为其易于传输和无纸化特性比起传统业务中利用纸质合同进行合同签署更为方便和节约。
现有的电子合同的合同内容的防篡改方式主要是针对两种情况,第一个问题是防止经由多方商榷确定的合同,由发起方提交时被发起方恶意篡改合同内容,而从而损害其他商榷方的利益,所以,在其他商榷方进行签署时应该对电子合同内容进行确认,这种确认方式可以参考专利号为201610600358.7的这项专利,他们的做法是通过将合同文本进行hash,利用本地私钥对hash值加密,进而实现防篡。验证方式则是通过公钥对加密后的hash值进行解密,接着对待验证的合同内容进行hash,获得一个新的hash值,将两个hash值进行比对,如果相同则证明合同未被改动,如果失败则证明合同被改动,合同作废。第二种情况则是,电子合同放置在由第三方管理的服务器中,那么身为第三方或者恶意入侵第三方服务器的黑客们则拥有对电子合同的篡改能力。而针对这种篡改,就目前而言,防篡方式和第一种情况一样,均是基于hash的验证方式。这种方式存在比较严重的问题,当电子合同内容被恶意篡改之后,根据相关法律法规,篡改部分无效,没有被篡改前的部分有效。而根据目前的基于hash的防伪验证算法只能做到判定合同数据是否被篡改,而无法追溯原始的电子合同内容,当遇到上述情况时产生的电子合同内容的篡改,会导致篡改部分内容无效,将会影响签署各方的利益,因此我们需要一种新的技术定位被篡改的位置,并且能够恢复出原始的合同内容,进而保护证据链的完整性。
发明内容
针对现有技术中的上述不足,本发明提供的一种具有多级证据链的图像电子合同签署及验证方法解决了现有电子合同无法恢复被篡改的原始内容的问题。
为了达到上述发明目的,本发明采用的技术方案为:
提供一种具有多级证据链的图像电子合同签署及验证方法,其包括以下步骤:
S1、将电子合同内容转化为电子合同图像后进行压缩,向压缩后的电子合同图像中嵌入认证水印、恢复水印和防伪解码信息,生成防伪水印电子合同压缩图像;其中防伪解码信息包括解压缩编码、签署方公钥和签署人信息;
S2、通过可逆数据隐藏技术将各签署方加密后的电子签名内容写入到防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成签署;其中电子签名内容包括签署人信息;
S3、通过可逆信息隐藏技术提取带加密电子签名的电子合同压缩图像中的加密电子签名和防伪水印电子合同压缩图像,并从提取得到的防伪水印电子合同压缩图像中提取防伪解码信息;
S4、根据提取得到的防伪解码信息中的公钥解密提取得到的加密电子签名,获得电子签名内容;
S5、将提取得到的防伪解码信息中的签署人信息与解密得到的电子签名内容中的签署人信息进行对比,判断解密得到的电子签名内容是否为篡改,若是则认定电子合同无效;否则进入步骤S6;
S6、根据水印技术验证提取得到的防伪水印电子合同压缩图像中的认证水印是否为篡改,若是则进入步骤S7;否则认定电子合同有效,通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像;
S7、从提取得到的防伪水印电子合同压缩图像中获取恢复水印,通过恢复水印恢复原始电子合同内容,并将恢复得到的电子合同认定为有效。
进一步地,步骤S1的具体方法包括以下子步骤:
S1-1、发起方将电子合同内容上传至服务器,对各签署方进行在线身份验证,服务器向验证通过的签署方发送电子合同内容,拒绝向无法通过验证的签署方发送电子合同内容;
S1-2、获取来自各个签署方的公钥,并将电子合同内容的每一页打印成一份png图像,根据页数进行升序排列,得到一个png图像队列imgQueue;
S1-3、从imgQueue中取出位于顶端的png图像并对取出的png图像通过行扫描和列扫描去除掉图像白色区域的方式进行重采样,得到文本数据所在区域的图像数据scanData、行扫描对应的行解压缩编码rowCode和列扫描对应的列解压缩编码colCode;其中行扫描和列扫描的编码格式均为01编码,其中0表示白色区域,1表示文本区域
S1-4、在scanData中嵌入认证水印和恢复水印,将嵌入水印的scanData存储到链表scanArray中;
S1-5、判断当前imgQueue是否为空,若是则进入步骤S1-6;否则返回步骤S1-3;
S1-6、将scanArray连接成一维向量scanVector;将行解压缩编码rowCode和列扫描对应的列解压缩编码colCode作为解压缩编码与签署方公钥和签署人信息一起生成防伪解码信息;防伪解码信息包括信息头和JSON格式的信息内容;信息头用于表述每页信息内容的数据长度;JSON格式的信息内容包括和每页对应的行解压缩编码rowCode、列解压缩编码colCode、所有签署方签署时用于电子签名加密的公钥,以及签署人信息;其中签署人信息包括签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号;
S1-7、根据scanVector和防伪解码信息的字节长度生成一张容纳scanVector和防伪解码信息的空白图像conainerImg,并将scanVector和防伪解码信息写入conainerImg的rgb通道中,得到防伪水印电子合同压缩图像。
进一步地,步骤S2的具体方法包括以下子步骤:
S2-1、将各签署方进行电子签名的电子签名数据保存为png图像,并将其作为原始签名图像;
S2-2、将签署方签署电子签名时对应的使用的签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号转化为字节流,并通过图像可逆信息隐藏方法将签署方对应的字节流嵌入到签署方对应的原始签名图像中,得到电子签名图像;
S2-3、根据签署方的本地私钥将该签署方对应的电子签名图像进行加密,得到加密后的电子签名图像数据,并将加密后的电子签名图像数据上传至服务器;
S2-4、将所有加密后的电子签名图像数据组成json数组的加密电子签名信息帧;
S2-5、通过图像可逆信息隐藏方法将加密电子签名信息帧嵌入防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成电子合同签署。
进一步地,步骤S2-4中加密电子签名信息帧的帧格式为甲方加密电子签名图像数据在前,乙方加密电子签名图像数据在甲方加密电子签名图像数据之后依次排列。
进一步地,可逆信息隐藏技术为基于直方图移位的信息隐藏方法。
进一步地,步骤S1-1中对各签署方进行在线身份验证的方式包括人脸识别、指纹识别和/或虹膜识别。
进一步地,步骤S6中通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像的具体方法包括以下子步骤:
S6-1、生成一张宽大于等于列解压缩编码colCode长度、长大于等于行解压缩编码rowCode长度的空白图像,将空白图像的行填充索引定义为ri,将空白图像的列填充索引定义为ci,将行填充索引ri和列填充索引ci初始化为0;
S6-2、将遍历行解压缩编码rowCode值的位置定义为tri,将列解压缩编码colCode值的遍历索引定义为tci;按顺序遍历行解压缩编码rowCode,当tri对应的行解压缩编码rowCode索引位置的码值为1时,进入步骤S6-3;
S6-3、遍历列解压缩编码colCode值,当tci位置对应的列解压缩编码colCode值为1时,提取出防伪水印电子合同压缩图像的第ri和第ci个像素值,将该像素值写入到空白图像的(tri,tci)像素位置,进入步骤S6-4;
S6-4、判断当前列填充索引ci是否为最大值,若是则进入步骤S6-5,否则将列填充索引ci的值加1,并返回步骤S6-3;
S6-5、判断行填充索引ri是否为最大值,若是则结束遍历与填充,得到电子合同图像;否则将列填充索引ci初始化为0,将行填充索引ri加1,返回步骤S6-2。
本发明的有益效果为:本发明采用了数字图像水印技术,能够支持篡改检测、篡改定位和篡改内容恢复,可以有效解决现有电子合同无法恢复被篡改的原始内容的问题,即使电子合同图像在被第三方恶意篡改的情况下,也不需要对电子合同作废,从而保证证据链的完善。
附图说明
图1为本发明的流程示意图;
图2为4×4测试图像;
图3为4×4测试图像对应的直方图;
图4为移位后的像素直方图;
图5为嵌入数据后的直方图;
图6为非平滑块分类及子类编码示意图;
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
如图1所示,该具有多级证据链的图像电子合同签署及验证方法包括以下步骤:
S1、将电子合同内容转化为电子合同图像后进行压缩,向压缩后的电子合同图像中嵌入认证水印、恢复水印和防伪解码信息,生成防伪水印电子合同压缩图像;其中防伪解码信息包括解压缩编码、签署方公钥和签署人信息;
S2、通过可逆数据隐藏技术将各签署方加密后的电子签名内容写入到防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成签署;其中电子签名内容包括签署人信息;
S3、通过可逆信息隐藏技术提取带加密电子签名的电子合同压缩图像中的加密电子签名和防伪水印电子合同压缩图像,并从提取得到的防伪水印电子合同压缩图像中提取防伪解码信息;
S4、根据提取得到的防伪解码信息中的公钥解密提取得到的加密电子签名,获得电子签名内容;
S5、将提取得到的防伪解码信息中的签署人信息与解密得到的电子签名内容中的签署人信息进行对比,判断解密得到的电子签名内容是否为篡改,若是则认定电子合同无效;否则进入步骤S6;
S6、根据水印技术验证提取得到的防伪水印电子合同压缩图像中的认证水印是否为篡改,若是则进入步骤S7;否则认定电子合同有效,通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像;
S7、从提取得到的防伪水印电子合同压缩图像中获取恢复水印,通过恢复水印恢复原始电子合同内容,并将恢复得到的电子合同认定为有效。
步骤S1的具体方法包括以下子步骤:
S1-1、发起方将电子合同内容上传至服务器,对各签署方进行在线身份验证,服务器向验证通过的签署方发送电子合同内容,拒绝向无法通过验证的签署方发送电子合同内容;
S1-2、获取来自各个签署方的公钥,并将电子合同内容的每一页打印成一份png图像,根据页数进行升序排列,得到一个png图像队列imgQueue;
S1-3、从imgQueue中取出位于顶端的png图像并对取出的png图像通过行扫描和列扫描去除掉图像白色区域的方式进行重采样,得到文本数据所在区域的图像数据scanData、行扫描对应的行解压缩编码rowCode和列扫描对应的列解压缩编码colCode;其中行扫描和列扫描的编码格式均为01编码,其中0表示白色区域,1表示文本区域
S1-4、在scanData中嵌入认证水印和恢复水印,将嵌入水印的scanData存储到链表scanArray中;
S1-5、判断当前imgQueue是否为空,若是则进入步骤S1-6;否则返回步骤S1-3;
S1-6、将scanArray连接成一维向量scanVector;将行解压缩编码rowCode和列扫描对应的列解压缩编码colCode作为解压缩编码与签署方公钥和签署人信息一起生成防伪解码信息;防伪解码信息包括信息头和JSON格式的信息内容;信息头用于表述每页信息内容的数据长度;JSON格式的信息内容包括和每页对应的行解压缩编码rowCode、列解压缩编码colCode、所有签署方签署时用于电子签名加密的公钥,以及签署人信息;其中签署人信息包括签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号;
S1-7、根据scanVector和防伪解码信息的字节长度生成一张容纳scanVector和防伪解码信息的空白图像conainerImg,并将scanVector和防伪解码信息写入conainerImg的rgb通道中,得到防伪水印电子合同压缩图像。
步骤S2的具体方法包括以下子步骤:
S2-1、将各签署方进行电子签名的电子签名数据保存为png图像,并将其作为原始签名图像;
S2-2、将签署方签署电子签名时对应的使用的签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号转化为字节流,并通过图像可逆信息隐藏方法将签署方对应的字节流嵌入到签署方对应的原始签名图像中,得到电子签名图像;
S2-3、根据签署方的本地私钥将该签署方对应的电子签名图像进行加密,得到加密后的电子签名图像数据,并将加密后的电子签名图像数据上传至服务器;
S2-4、将所有加密后的电子签名图像数据组成json数组的加密电子签名信息帧;
S2-5、通过图像可逆信息隐藏方法将加密电子签名信息帧嵌入防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成电子合同签署。
在具体实施过程中,步骤S2-4中加密电子签名信息帧的帧格式为甲方加密电子签名图像数据在前,乙方加密电子签名图像数据在甲方加密电子签名图像数据之后依次排列。步骤S1-1中对各签署方进行在线身份验证的方式包括人脸识别、指纹识别和/或虹膜识别。
步骤S6中通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像的具体方法包括以下子步骤:
S6-1、生成一张宽大于等于列解压缩编码colCode长度、长大于等于行解压缩编码rowCode长度的空白图像,将空白图像的行填充索引定义为ri,将空白图像的列填充索引定义为ci,将行填充索引ri和列填充索引ci初始化为0;
S6-2、将遍历行解压缩编码rowCode值的位置定义为tri,将列解压缩编码colCode值的遍历索引定义为tci;按顺序遍历行解压缩编码rowCode,当tri对应的行解压缩编码rowCode索引位置的码值为1时,进入步骤S6-3;
S6-3、遍历列解压缩编码colCode值,当tci位置对应的列解压缩编码colCode值为1时,提取出防伪水印电子合同压缩图像的第ri和第ci个像素值,将该像素值写入到空白图像的(tri,tci)像素位置,进入步骤S6-4;
S6-4、判断当前列填充索引ci是否为最大值,若是则进入步骤S6-5,否则将列填充索引ci的值加1,并返回步骤S6-3;
S6-5、判断行填充索引ri是否为最大值,若是则结束遍历与填充,得到电子合同图像;否则将列填充索引ci初始化为0,将行填充索引ri加1,返回步骤S6-2。
在本发明的一个实施例中,可逆信息隐藏技术为基于直方图移位的信息隐藏方法,该方法包括以下步骤:
1、获取图像像素统计直方图:以图2所示的4×4测试图像为例,统计图像的像素在0~255的分布,并根据该分布生成如图3所示的直方图;
2、在直方图中搜索最高频率像素值,图3中的像素频率最高的像素值为199;
3、进行直方图位移:最高频度像素值向右移动一个单位(即将像素值+1,比如最高频度像素值为199,测试图像在最高频度像素值右边的像素为200,201,“右移”操作即将所有的像素值为200和像素值为201的像素加1,编程201和202),我们可以直接通过图4所示的移位后的直方图观测到移位后的变化。
4、嵌入数据:将一个10进制数9嵌入到直方图中,首先十进制数9可以表示为二进制数1001,在测试图像的直方图中,我们发现存在5个像素值为199的像素点,将这5个像素点按照一行一行扫描下来的顺序添加上1,0,0,1,亦即从199,199,199,199,199变化为200,199,199,200,199;而图4也因此变成了图5,从而完成了嵌入。
5、数据提取:将图4对应的4×4图像按行扫描进行遍历,获取到所有像素值为199和像素值为最高频度数据+1的数据,结果肯定是:200,199,199,200,199,将这一组数据的每一个数减去最高频度像素值199,得到嵌入数据1,0,0,1,0,同时知道嵌入数据量为4个,然后剔除最后一个数据“0”。同时由于嵌入数据的编码为10进制编码,因此将1001转变成10,完成数据的提取。
6、图像恢复:由于最高频度像素为199,在嵌入数据时,嵌入为0的数据对应的像素值为199的像素变为199,而嵌入为1的数据对应的像素值为200。这个时候需要把所有像素值为200的数据变成199,同时对于199右边的所有数据减1,可以清楚的认知到对201和202(在步骤3时,曾对像素值为200和201的两个数据加上了1)减1,得到原始的像素值为200和201,此时图像就完成了恢复,没有任何修改。
在以上基于直方图移位的可逆信息隐藏的方法中,需要注意两个问题:
A、怎么获取嵌入数据后的最高频度像素值:将最高频度像素值编码成一个8位二进制的数。将图像末端的一个像素值修改成这个最高频度像素的像素值。同时将图像末端的像素值数据当做待嵌入数据嵌入到图像中。
B、怎么获取嵌入数据量:实现方法同A,将数据量编码成一个16进制的数,范围从0~65535,该16进制可以拆分成两个8进制数,挑选两个像素存储这个数据范围,同时将被写入数据量长度的两个像素的原始数据作为嵌入数据嵌入到图像中。
在具体实施过程中,认证水印的生成过程为:
(1)对索引图像进行预处理即对索引图像的调色板map按颜色亮度值进行排序并更新索引矩阵X;
(2)将索引矩阵X分为互不重叠的8*8图像块,并将图像分为重要快和非重要块,分类依据为:若该块内最小的索引值对应的亮度小于127则将该块判为重要块类型码为1,否则判为非重要块类型码为0。并根据临近块特正修正图像块类型,得到类型码组成的类型矩阵B;
(3)对每个块都生成16位认证水印,认证水印由12位摘要信息和4位类型信息组成。摘要信息Ci的生成方法为其中bi为该块类型码,为消除最低位的块内容,KA为认证水印密钥。将所有类型码bi重复4次得到长度为4n的比特串{b1,b1,b1,b1,……bn,bn,bn,bn},根据密钥KA置乱该比特串得到={s1,s2,……s4n},得到该块的类型信息Si={s4i-1,s4i-2,s4i-3,s4i}。
认证水印的嵌入方法具体为:将16位认证水印嵌入基于密钥KA随机选取的该块内的16个索引值xm,n的最低位。
恢复水印的生成方法为:
(1)仅对重要块生成变长恢复水印,首先将重要块Xi分为互不重叠的16个2*2的子块Xi k(k=1,2,…,16)并对子块进行分类,分类依据为:Xi k中最大与次大像素高5位之和与最低与次低像素高5位之和的差不超过3为平滑块,否则为纹理块。
若子块为纹理块,则对其提取12位特征,fk1=1,fk2~fk6和平滑块一样,fk7~fk9为子类编码,图6给出了纹理块的6中类型及相应的子类编码,其中黑色表示子块中最大2个像素的位置。fk10~fk12为2个最大值之和与其它2个像素之和的差均匀量化的二值编码,即
其中,4个像素满足xk1′≥xk2′≥xk3′≥xk4′。
恢复水印的嵌入的具体方法为:
(1)计算图像重要块比例α,根据α确定nα的取值;
(2)选择nα个非重要块嵌入重要块的恢复水印。现将非重要块索引基于恢复水印密钥KR置乱,然后依序选择nα个非重要块的最低有效位、次低有效位嵌入。若有的像素的最低有效位已嵌入认证水印则不再嵌入恢复水印,直到恢复水印嵌完。
含水印图像的篡改检测与恢复特征提取的具体方法为:
1、三重检测
(2)类型码检测:若即图像块摘要信息被篡改,则该块将对应的提取类型码S′i标记为无效。将标记后的类型码S′i串联并基于密钥KA反置乱后均分为n组,在每组的有效类型码中按照多数原则,得到图像块Yi的提取类型码b′i,比较生成类型码和提取类型码b′i,得到类型码检测矩阵其中,
(3)恢复水印检测:对上一步中提取类型码b′i=1的图像块Yi生成恢复水印R*,根据密钥KR提取出恢复水印R',比较生成的恢复水印R*和提取的恢复水印R',得到篡改检测矩阵D={di|i=1,2…,n},其中,
2、篡改恢复
对于判定为被篡改的图像块Yi进行恢复,若该块为非重要块,直接用255代替该块内每个索引值。若该块为重要块,则根据提取的恢复信息R′i按照恢复水印生成的逆过程依次恢复被篡改块内的每个子块。
综上所述,本发明采用了数字图像水印技术,能够支持篡改检测、篡改定位和篡改内容恢复,可以有效解决现有电子合同无法恢复被篡改的原始内容的问题,即使电子合同图像在被第三方恶意篡改的情况下,也不需要对电子合同作废,从而保证证据链的完善。
Claims (6)
1.一种具有多级证据链的图像电子合同签署及验证方法,其特征在于,包括以下步骤:
S1、将电子合同内容转化为电子合同图像后进行压缩,向压缩后的电子合同图像中嵌入认证水印、恢复水印和防伪解码信息,生成防伪水印电子合同压缩图像;其中防伪解码信息包括解压缩编码、签署方公钥和签署人信息;
S2、通过可逆数据隐藏技术将各签署方加密后的电子签名内容写入到防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成签署;其中电子签名内容包括签署人信息;
S3、通过可逆信息隐藏技术提取带加密电子签名的电子合同压缩图像中的加密电子签名和防伪水印电子合同压缩图像,并从提取得到的防伪水印电子合同压缩图像中提取防伪解码信息;
S4、根据提取得到的防伪解码信息中的公钥解密提取得到的加密电子签名,获得电子签名内容;
S5、将提取得到的防伪解码信息中的签署人信息与解密得到的电子签名内容中的签署人信息进行对比,判断解密得到的电子签名内容是否为篡改,若是则认定电子合同无效;否则进入步骤S6;
S6、根据水印技术验证提取得到的防伪水印电子合同压缩图像中的认证水印是否为篡改,若是则进入步骤S7;否则认定电子合同有效,通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像;
S7、从提取得到的防伪水印电子合同压缩图像中获取恢复水印,通过恢复水印恢复原始电子合同内容,并将恢复得到的电子合同认定为有效;
步骤S6中通过提取得到的防伪解码信息中的解压缩编码对提取得到的防伪水印电子合同压缩图像进行解压缩,获得电子合同图像的具体方法包括以下子步骤:
S6-1、生成一张宽大于等于列解压缩编码colCode长度、长大于等于行解压缩编码rowCode长度的空白图像,将空白图像的行填充索引定义为ri,将空白图像的列填充索引定义为ci,将行填充索引ri和列填充索引ci初始化为0;
S6-2、将遍历行解压缩编码rowCode值的位置定义为tri,将列解压缩编码colCode值的遍历索引定义为tci;按顺序遍历行解压缩编码rowCode,当tri对应的行解压缩编码rowCode索引位置的码值为1时,进入步骤S6-3;
S6-3、遍历列解压缩编码colCode值,当tci位置对应的列解压缩编码colCode值为1时,提取出防伪水印电子合同压缩图像的第ri和第ci个像素值,将该像素值写入到空白图像的(tri,tci)像素位置,进入步骤S6-4;
S6-4、判断当前列填充索引ci是否为最大值,若是则进入步骤S6-5,否则将列填充索引ci的值加1,并返回步骤S6-3;
S6-5、判断行填充索引ri是否为最大值,若是则结束遍历与填充,得到电子合同图像;否则将列填充索引ci初始化为0,将行填充索引ri加1,返回步骤S6-2。
2.根据权利要求1所述的具有多级证据链的图像电子合同签署及验证方法,其特征在于,所述步骤S1的具体方法包括以下子步骤:
S1-1、发起方将电子合同内容上传至服务器,对各签署方进行在线身份验证,服务器向验证通过的签署方发送电子合同内容,拒绝向无法通过验证的签署方发送电子合同内容;
S1-2、获取来自各个签署方的公钥,并将电子合同内容的每一页打印成一份png图像,根据页数进行升序排列,得到一个png图像队列imgQueue;
S1-3、从imgQueue中取出位于顶端的png图像并对取出的png图像通过行扫描和列扫描去除掉图像白色区域的方式进行重采样,得到文本数据所在区域的图像数据scanData、行扫描对应的行解压缩编码rowCode和列扫描对应的列解压缩编码colCode;其中行扫描和列扫描的编码格式均为01编码,其中0表示白色区域,1表示文本区域
S1-4、在scanData中嵌入认证水印和恢复水印,将嵌入水印的scanData存储到链表scanArray中;
S1-5、判断当前imgQueue是否为空,若是则进入步骤S1-6;否则返回步骤S1-3;
S1-6、将scanArray连接成一维向量scanVector;将行解压缩编码rowCode和列扫描对应的列解压缩编码colCode作为解压缩编码与签署方公钥和签署人信息一起生成防伪解码信息;防伪解码信息包括信息头和JSON格式的信息内容;信息头用于表述每页信息内容的数据长度;JSON格式的信息内容包括和每页对应的行解压缩编码rowCode、列解压缩编码colCode、所有签署方签署时用于电子签名加密的公钥,以及签署人信息;其中签署人信息包括签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号;
S1-7、根据scanVector和防伪解码信息的字节长度生成一张容纳scanVector和防伪解码信息的空白图像conainerImg,并将scanVector和防伪解码信息写入conainerImg的rgb通道中,得到防伪水印电子合同压缩图像。
3.根据权利要求1所述的具有多级证据链的图像电子合同签署及验证方法,其特征在于,所述步骤S2的具体方法包括以下子步骤:
S2-1、将各签署方进行电子签名的电子签名数据保存为png图像,并将其作为原始签名图像;
S2-2、将签署方签署电子签名时对应的使用的签署时间戳、签署设备号、网络IP、当前锁定的GPS定理位置、手机号码和身份证号转化为字节流,并通过图像可逆信息隐藏方法将签署方对应的字节流嵌入到签署方对应的原始签名图像中,得到电子签名图像;
S2-3、根据签署方的本地私钥将该签署方对应的电子签名图像进行加密,得到加密后的电子签名图像数据,并将加密后的电子签名图像数据上传至服务器;
S2-4、将所有加密后的电子签名图像数据组成json数组的加密电子签名信息帧;
S2-5、通过图像可逆信息隐藏方法将加密电子签名信息帧嵌入防伪水印电子合同压缩图像中,得到带加密电子签名的电子合同压缩图像,完成电子合同签署。
4.根据权利要求3所述的具有多级证据链的图像电子合同签署及验证方法,其特征在于,所述步骤S2-4中加密电子签名信息帧的帧格式为甲方加密电子签名图像数据在前,乙方加密电子签名图像数据在甲方加密电子签名图像数据之后依次排列。
5.根据权利要求1所述的具有多级证据链的图像电子合同签署及验证方法,其特征在于,所述可逆信息隐藏技术为基于直方图移位的信息隐藏方法。
6.根据权利要求2所述的具有多级证据链的图像电子合同签署及验证方法,其特征在于,所述步骤S1-1中对各签署方进行在线身份验证的方式包括人脸识别、指纹识别和/或虹膜识别。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010938255.8A CN112070636B (zh) | 2020-09-09 | 2020-09-09 | 一种具有多级证据链的图像电子合同签署及验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010938255.8A CN112070636B (zh) | 2020-09-09 | 2020-09-09 | 一种具有多级证据链的图像电子合同签署及验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112070636A CN112070636A (zh) | 2020-12-11 |
CN112070636B true CN112070636B (zh) | 2023-03-21 |
Family
ID=73662871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010938255.8A Active CN112070636B (zh) | 2020-09-09 | 2020-09-09 | 一种具有多级证据链的图像电子合同签署及验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112070636B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113255296A (zh) * | 2021-06-08 | 2021-08-13 | 北京翔东智能科技有限公司 | 电子合同分类存储安全管理系统 |
CN114745475B (zh) * | 2022-03-09 | 2023-03-24 | 西南交通大学 | 一种鲁棒的加密图像可逆信息隐藏方法 |
CN117056877A (zh) * | 2023-07-18 | 2023-11-14 | 深圳有方信息技术有限公司 | 电子文档脱密后防篡改处理方法、终端设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614634A (zh) * | 2004-12-06 | 2005-05-11 | 西南交通大学 | 图像篡改内容可恢复的定位型认证水印的生成与认证方法 |
CN1858793A (zh) * | 2006-05-24 | 2006-11-08 | 孟繁波 | 电子合同管理系统运营平台 |
CN101329750A (zh) * | 2008-07-24 | 2008-12-24 | 武汉理工大学 | 具有文件内容保护功能的防伪印章生成和验证方法 |
CN102103738A (zh) * | 2011-03-04 | 2011-06-22 | 西南交通大学 | 数字图像篡改内容可恢复的变容量水印生成与认证方法 |
CN103001768A (zh) * | 2011-09-13 | 2013-03-27 | 东方钢铁电子商务有限公司 | 电子质保书及其产生和验证方法 |
CN105122243A (zh) * | 2013-03-15 | 2015-12-02 | 亚马逊科技公司 | 用于半结构化数据的可扩展分析平台 |
CN108876697A (zh) * | 2018-06-22 | 2018-11-23 | 南开大学 | 像素级图像认证、篡改检测及恢复方法 |
-
2020
- 2020-09-09 CN CN202010938255.8A patent/CN112070636B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614634A (zh) * | 2004-12-06 | 2005-05-11 | 西南交通大学 | 图像篡改内容可恢复的定位型认证水印的生成与认证方法 |
CN1858793A (zh) * | 2006-05-24 | 2006-11-08 | 孟繁波 | 电子合同管理系统运营平台 |
CN101329750A (zh) * | 2008-07-24 | 2008-12-24 | 武汉理工大学 | 具有文件内容保护功能的防伪印章生成和验证方法 |
CN102103738A (zh) * | 2011-03-04 | 2011-06-22 | 西南交通大学 | 数字图像篡改内容可恢复的变容量水印生成与认证方法 |
CN103001768A (zh) * | 2011-09-13 | 2013-03-27 | 东方钢铁电子商务有限公司 | 电子质保书及其产生和验证方法 |
CN105122243A (zh) * | 2013-03-15 | 2015-12-02 | 亚马逊科技公司 | 用于半结构化数据的可扩展分析平台 |
CN108876697A (zh) * | 2018-06-22 | 2018-11-23 | 南开大学 | 像素级图像认证、篡改检测及恢复方法 |
Non-Patent Citations (4)
Title |
---|
刘素芳 ; .基于ECC+DWT多重数字水印的电子签章应用方案研究.2015,(02),43-47. * |
尹帮旭 ; 陈帆 ; 和红杰 ; .用于电子发票凭据篡改检测与恢复的认证水印算法.2018,(05),74-83. * |
王国明 ; 郑宗苗 ; 侯整风 ; .脆弱性数字水印在电子票据防篡改中的应用研究.2013,(10),132-135. * |
魏巍 ; 和红杰 ; 陈帆 ; .基于块分类编码的电子发票图像自恢复水印算法.2016,(05), 20-32. * |
Also Published As
Publication number | Publication date |
---|---|
CN112070636A (zh) | 2020-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112070636B (zh) | 一种具有多级证据链的图像电子合同签署及验证方法 | |
Sreenivas et al. | Fragile watermarking schemes for image authentication: a survey | |
Cao et al. | High capacity reversible data hiding in encrypted images by patch-level sparse representation | |
Tai et al. | Image self-recovery with watermark self-embedding | |
Zhang et al. | Reference sharing mechanism for watermark self-embedding | |
Chang et al. | A watermarking-based image ownership and tampering authentication scheme | |
CN108876697B (zh) | 像素级图像认证、篡改检测及恢复方法 | |
CN113194213B (zh) | 一种基于秘密共享和混沌映射的png图像信息隐藏和恢复方法 | |
Espejel-Trujillo et al. | Identity document authentication based on VSS and QR codes | |
CN108648133B (zh) | 一种结合块旋转和马赛克的无嵌入伪装方法 | |
Raj et al. | A survey on fragile watermarking based image authentication schemes | |
Xiao et al. | An improved hierarchical fragile watermarking scheme using chaotic sequence sorting and subblock post-processing | |
CN114745475B (zh) | 一种鲁棒的加密图像可逆信息隐藏方法 | |
CN114567711A (zh) | 一种基于块容量标签的大容量加密图像信息隐藏方法 | |
Gan et al. | Exploiting compressed sensing and polynomial-based progressive secret image sharing for visually secure image selection encryption with authentication | |
Zhang et al. | Reversible data hiding in encrypted images based on block-wise multi-predictor | |
Li et al. | Attack and improvement of the joint fingerprinting and decryption method for vector quantization images | |
Liu et al. | A Secret Image Sharing with Deep-steganography and Two-stage Authentication Based on Matrix Encoding. | |
Qin et al. | Effective fragile watermarking for image authentication with high-quality recovery capability | |
Raj et al. | Security analysis of hash based fragile watermarking scheme for image integrity | |
CN114119332A (zh) | 基于区块链的数字水印写入和读取方法及装置 | |
Upreti et al. | Variable bits secure system for color images | |
Luo et al. | Robust and progressive color image visual secret sharing cooperated with data hiding | |
CN115103081B (zh) | 基于混合预测和哈夫曼编码的加密图像可逆数据隐藏方法 | |
Wang et al. | Color image of tamper detection and recovery using block-based watermarking |
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 |