欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 基于电子公章文字内容的防伪信息的隐写方法及校验方法独创技术37638字

基于电子公章文字内容的防伪信息的隐写方法及校验方法

2020-11-21 20:34:18

基于电子公章文字内容的防伪信息的隐写方法及校验方法

  技术领域

  本发明涉及电子公章的防伪技术领域,尤其是基于电子公章文字内容的防伪信息的隐写方法及校验方法。

  背景技术

  电子公章以先进的数字技术模拟传统实物公章,电子公章的管理、使用方式符合实物公章的习惯和体验,电子公章加盖的电子文件具有与实物公章加盖的纸张文件相同的外观、相同的有效性和相似的使用方式。

  现有的电子公章防伪技术并不够成熟。如,使用公章印模图文特点加密防伪,通过改变电子公章的文字比例、测定字与字的特征距离、改变文字的倾斜角度和位置等来实现电子公章的防伪,这种方式在高精度仪器下很容易伪造电子公章,且在可见范围内改动较大。又如,采用电子公章中带有光栅防伪码及防伪裂纹,可使用特定光栅片查看公章中的光栅防伪码,还可以对照电子公章中的防伪裂纹来判断文件是否被更换,虽然这种光栅防伪码肉眼不可见,但是防伪裂纹对公章外观影响较大,且光栅防伪码的保密安全性不够,光栅片易被泄露和破解,并且光栅片的统一管理、分发、更新都需要很大的人力成本。

  发明内容

  为了克服上述现有技术中的缺陷,本发明提供一种基于电子公章文字内容的防伪信息的隐写方法,根据电子公章的文字内容生成密钥和隐写位置,能够实现防伪信息的无痕嵌入,具有更好的不可见性和安全性,且不影响公章的外观。

  为实现上述目的,本发明采用以下技术方案,包括:

  一种基于电子公章文字内容的防伪信息的隐写方法,包括以下步骤:

  S1,对防伪信息SI进行签名,得到防伪信息SI的签名sign;根据电子公章中的文字内容生成密钥key,并使用该密钥key对签名sign进行加密,得到防伪信息SI的密文CSI;且密文CSI的长度即位数为NCSI;

  S2,提取电子公章的文字的像素点,得到电子公章的文字的像素点坐标列表TPCL,且电子公章的文字的像素点坐标列表TPCL中的元素个数为NT;

  S3,从电子公章的文字的像素点坐标列表TPCL中选取与密文CSI的位数NCSI相同个数的像素点,并对所选取的电子公章的文字的像素点进行隐写,得到电子公章的文字的隐写像素点坐标列表SPCL;

  S4,将防伪信息SI的密文CSI写入隐写像素点坐标列表SPCL中的各个像素点中,实现对电子公章的防伪信息SI的隐写。

  步骤S1中,对防伪信息SI进行签名并加密的具体方式,包括以下步骤:

  S101,防伪信息SI由用章人申请盖章时所提供的用章人的姓名name、用章时间time、用章理由reason的字符串连接构成;

  S102,利用DSA算法对防伪信息SI进行签名,得到防伪信息SI的签名sign;

  S103,对电子公章中的文字内容进行MD5运算,生成AES密钥key;

  S104,使用该AES密钥key对签名sign进行加密,得到防伪信息SI的密文CSI,密文CSI的长度即位数为NCSI。

  步骤S2中,利用TPS算法提取电子公章的文字的像素点,具体方式包括以下步骤:

  S201,电子公章的图像为圆形,电子公章的图像的中心设有五角星图案,电子公章的图像在过圆心且沿水平方向上的像素点个数为m,在过圆心且沿垂直于水平方向即沿垂直方向上的像素点个数为n,m=n;

  建立坐标系,水平方向为X轴,垂直方向为Y轴,坐标轴的单位为像素点,且电子公章的图像的中心在该坐标系中的坐标为

  扫描该电子公章的图像,得到该电子公章的图像中所有红色像素点的坐标,并生成该电子公章的图像的红色像素点坐标列表RPLC;

  S202,获取坐标为的像素点,纵坐标ya初始化为0,即ya=0;

  S203,对纵坐标ya进行更新,即将纵坐标ya的值加1,得到更新后的纵坐标ya,获取更新后的坐标的像素点;

  S204,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S205;若是,则跳转步骤S203;

  S205,记录此时纵坐标ya的值,即记录该更新后的坐标中ya的值,得到该电子公章的图像中圆环的宽度W=ya-1;

  S206,获取坐标为为像素点,纵坐标yb初始化为即获取该电子公章的图像的中心像素点;

  S207,对纵坐标yb进行更新,即将纵坐标yb的值减1,得到更新后的纵坐标yb,获取更新后的坐标的像素点;

  S208,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S209;若是,则跳转步骤S207;

  S209,记录此时纵坐标yb的值,即记录该更新后的坐标中yb的值,得到该电子公章的图像中五角星图案的外接圆半径

  S210,遍历该电子公章的图像的红色像素点坐标列表RPLC,依次对该电子公章的图像的红色像素点坐标列表RPLC中的每个像素点的坐标进行判断,

  其中,该电子公章的图像的红色像素点坐标列表RPLC中的第i个像素点的坐标为(xi,yi),判断该电子公章的图像的红色像素点坐标列表RPLC中的第i个像素点的坐标(xi,yi)是否满足若满足,则将列表RPLC中的该像素点添加至电子公章的文字的像素点坐标列表TPCL中;

  列表RPLC经遍历并依次判断后即可得到电子公章的文字的像素点坐标列表TPCL。

  步骤S3中,根据电子公章的文字的像素点坐标列表TPCL,并利用RSPS算法生成该电子公章的文字的隐写像素点坐标列表SPCL,具体方式包括以下步骤:

  S301,将电子公章的文字内容作为随机数发生器的初始种子,生成一个在区间[0,N]中的随机整数,记录在随机整数列表RIL中;其中,N的取值为该电子公章的文字的像素点坐标列表TPCL中的元素个数;

  S302,将上一个生成的随机整数作为该随机数发生器的种子,生成一个在区间[0,N]中的随机整数,若此时所生成的随机整数已经记录在随机整数列表RIL中,则通过线性探查法寻找出一个在区间[0,N]中且未记录在随机整数列表RIL中的随机整数,并将所找出的未记录在随机整数列表RIL中的随机整数记录在随机整数列表RIL中;

  S303,若随机整数列表RIL中元素的个数小于设定数量,则跳转步骤S302;否则,跳转步骤S304;

  其中,防伪信息的签名的长度固定,密文的长度即位数也固定,所述设定数量的取值即为密文所固定的位数NCSI;

  S304,遍历随机整数列表RIL,将随机整数列表RIL中的每个元素均作为该电子公章的文字的像素点坐标列表TPCL的索引,在该电子公章的文字的像素点坐标列表TPCL中依次获取对应的像素点坐标,并将所获取的像素点坐标依次记录在该电子公章的文字的隐写像素点坐标列表SPCL中,得到该电子公章的文字的隐写像素点坐标列表SPCL。

  步骤S4中,利用LSB算法将密文CSI逐位写入电子公章的文字的隐写像素点坐标列表SPCL中的各个坐标对应的像素点的R色道值的最低位;其中,像素点的R色道值为八位的二进制数。

  电子公章系统根据用章人的姓名、用章时间、用章理由生成防伪公章,并将该防伪公章盖在电子文件上;

  该用章人的姓名、用章时间、用章理由即构成防伪信息,采用上述的防伪信息的隐写方法对该防伪信息进行隐写;

  用章人在电子文件上进行盖章后,电子公章系统对应的生成一条用章记录并存储在数据库中,且用章记录的存储格式为:所盖章的电子文件的公文名,以及用章人的姓名、用章时间、用章理由。

  本发明还对应的提供了一种基于电子公章文字内容的防伪信息的校验方法,包括以下步骤:

  S5,提取待校验的电子公章的文字的像素点,得到待校验的电子公章的文字的像素点坐标列表TPCL′,且待校验的电子公章的文字的像素点坐标列表TPCL′中的元素个数为N′T;

  步骤S5中的待校验的电子公章的文字的像素点的提取方式与防伪信息隐写过程中即步骤S2中的电子公章的文字的像素点的提取方式相同;

  S6,根据待校验的电子公章的文字的像素点坐标列表TPCL′,生成待校验的电子公章的文字的隐写像素点坐标列表SPCL′;

  步骤S6中的待校验的电子公章的文字的隐写像素点坐标列表的生成方式与防伪信息隐写过程中即步骤S3中的电子公章的文字的隐写像素点坐标列表的生成方式相同;

  S7,从待校验的电子公章的文字的隐写像素点坐标列表SPCL′中提取出密文CSI′;

  S8,若校验人提供防伪信息SI′对待校验的电子公章进行校验,则根据待校验的电子公章的文字内容生成密钥key′,并使用该密钥key′对密文CSI′进行解密,得到签名sign′,结合待校验电子公章的校验人所提供的防伪信息SI′对该签名sign′进行校验,并结合电子公章系统的数据库中的用章记录,判断该待校验的电子公章是否为假章;

  若校验人提供一份电子文件对该电子文件上所盖的待校验的电子公章进行校验,则根据该电子文件的公文名在电子公章系统的数据库中查找对应的用章记录,获取对应的用章记录中的防伪信息,结合对应的用章记录中的防伪信息对该签名sign′进行校验,判断该待校验的电子公章是否为假章。

  步骤S7中,利用LSB算法从待校验的电子公章的文字的隐写像素点坐标列表SPCL′中各个坐标对应的像素点的R色道值的最低位逐位提取出密文CSI′;其中,像素点的R色道值为八位的二进制数。

  步骤S8中,若校验人提供姓名name′、用章时间time′、用章理由reason′即相当于提供防伪信息SI′对待校验的电子公章进行校验,则具体包括以下步骤:

  S801,对待校验的电子公章中的文字内容进行MD5运算,生成AES密钥key′;

  S802,用该密钥key′对密文CSI′进行解密,得到签名sign′;

  S803,对待校验的电子公章的校验人提供的姓名name′、用章时间time′、用章理由reason′进行字符串连接后,得到防伪信息SI′;

  S804,结合防伪信息SI′,并通过DSA算法对签名sign′进行校验,判断该待校验的电子公章是否由该姓名name′、用章时间time′、用章理由reason′进行申请,

  若签名sign′无效,则表示该待校验的电子公章不是由该姓名name′、用章时间time′、用章理由reason′进行申请的,即该待校验的电子公章为假章;

  若签名sign′有效,则表示该待校验的电子公章确实由该姓名name′、用章时间time′、用章理由reason′进行申请的,并在电子公章系统的数据库中查找出该姓名name′、用章时间time′、用章理由reason′所对应的用章记录,得到对应的用章记录中的所盖章的电子文件的公文名,判断该待校验的电子公章所在的电子文件的公文名是否与对应的用章记录中的所盖章的电子文件的公文名一致,若一致,则表示该待校验的电子公章校验成功,即该待校验的电子公章为真章;否则该待校验的电子公章为假章,且为盗用的电子公章;若在电子公章系统的数据库中查找不出该姓名name′、用章时间time′、用章理由reason′所对应的用章记录,则该待校验的电子公章为假章。

  步骤S8中,若校验人提供一份电子文件对该电子文件上所盖的待校验的电子公章进行校验,则具体包括以下步骤:

  S811,对该电子文件上所盖的待校验的电子公章中的文字内容进行MD5运算,生成AES密钥key′;

  S812,用该密钥key′对密文CSI′进行解密,得到签名sign′;

  S813,根据该电子文件的公文名在电子公章系统的数据库中查找对应的用章记录,获取对应的用章记录中的防伪信息,结合对应的用章记录中的防伪信息对该签名sign′进行校验,判断该待校验的电子公章是否由该防伪信息对应的姓名、用章时间、用章理由进行申请,

  若签名sign′无效,则表示该电子文件上所盖的待校验的电子公章不是由该防伪信息对应的姓名、用章时间、用章理由进行申请的,即该电子文件上所盖的待校验的电子公章为假章;

  若签名sign′有效,则表示该电子文件上所盖的待校验的电子公章是由该防伪信息对应的姓名、用章时间、用章理由进行申请的,即该电子文件上所盖的待校验的电子公章为真章。

  本发明的优点在于:

  (1)本发明能够实现防伪信息在电子公章中的隐写、提取、校验,可以有效检测出电子公章是否被伪造和盗用。

  (2)本发明通过数字水印技术,能够实现防伪信息的无痕嵌入,相比于传统的纸质公章防伪方法,具有更好的不可见性,从而不影响公章的外观。

  (3)本发明根据电子公章的文字内容,生成AES密钥和隐写位置,算法不易破解,安全性高。

  (4)本发明使用数字签名技术,将防伪信息生成DSA签名,通过签名的生成和校验能够实现电子公章的真伪性校验。

  (5)本发明绑定了电子公章和用章人,用章人不可抵赖。

  附图说明

  图1为本发明的基于电子公章文字内容的防伪信息的隐写方法。

  图2为本发明的基于电子公章文字内容的防伪信息的校验方法。

  图3为本实施例中的电子公章图像的示意图。

  具体实施方式

  下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  本发明对应的电子公章系统的盖章流程为:用章人向领导申请用章->领导审核通过->用章人盖章。用章人点击盖章的一瞬间,系统根据用章人的姓名、用章时间、用章理由生成防伪公章,并将该防伪公章盖在电子文件上;该用章人的姓名、用章时间、用章理由即作为防伪信息,本发明并对该防伪信息进行隐写。另外,用章人在电子文件上进行盖章以后,系统会对应的生成一条用章记录并存储在数据库中,用章记录的存储格式为:所盖章的电子文件的公文名,以及用章人的姓名、用章时间、用章理由。

  由图1所示,一种基于电子公章文字内容的防伪信息的隐写方法,包括以下步骤:

  S1,对防伪信息SI进行签名,得到防伪信息SI的签名sign;根据电子公章中的文字内容生成密钥key,并使用该密钥key对签名sign进行加密,得到防伪信息SI的密文CSI;且密文CSI的长度即位数为NCSI;

  S2,提取电子公章的文字的像素点,得到电子公章的文字的像素点坐标列表TPCL,且电子公章的文字的像素点坐标列表TPCL中的元素个数为NT;

  S3,从电子公章的文字的像素点坐标列表TPCL中选取与密文CSI的位数NCSI相同个数的像素点,并对所选取的电子公章的文字的像素点进行隐写,得到电子公章的文字的隐写像素点坐标列表SPCL,

  S4,将防伪信息SI的密文CSI写入隐写像素点坐标列表SPCL中的各个像素点中,实现对电子公章的防伪信息SI的隐写。

  步骤S1中,对防伪信息SI进行签名并加密的具体方式,包括以下步骤:

  S101,防伪信息SI由用章人的姓名name、用章时间time、用章理由reason的字符串连接构成;

  S102,利用DSA算法对防伪信息SI进行签名,得到防伪信息SI的签名sign;利用利用DSA算法得到的防伪信息SI的签名sign的长度固定;

  S103,对电子公章中的文字内容进行MD5运算,生成AES密钥key;

  S104,使用该AES密钥key对签名sign进行加密,得到防伪信息SI的密文CSI,CSI=E(key,sign);由于签名sign的长度固定,因此密文CSI的长度即位数也固定,且密文CSI的长度即位数固定为NCSI,在电子公章系统中,会对密文CSI固定的长度即位数进行存储,以供防伪信息校验时使用。

  步骤S2,利用TPS算法提取电子公章的文字的像素点,具体方式包括以下步骤:

  S201,由图3所示,本实施例中的电子公章的图像为圆形,电子公章的图像的中心设有五角星图案,电子公章的图像在过圆心且沿水平方向上的像素点个数为m,在过圆心且沿垂直方向上的像素点个数为n,m=n;

  建立坐标系,水平方向为X轴,垂直方向为Y轴,坐标轴的单位为像素点,以电子公章的图像的左上方为坐标原点,且电子公章的图像的中心在该坐标系中的坐标为

  扫描电子公章的图像,得到电子公章的图像中所有红色像素点的坐标,并生成电子公章的图像的红色像素点坐标列表RPLC;

  S202,获取坐标为的像素点,纵坐标ya初始化为0,即ya=0;

  S203,对纵坐标ya进行更新,即将纵坐标ya的值加1,得到更新后的纵坐标ya,获取更新后的坐标的像素点;

  S204,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S205;若是,则跳转步骤S203;

  S205,记录此时纵坐标ya的值,即记录该更新后的坐标中ya的值,得到电子公章的图像中圆环的宽度W=ya-1;

  S206,获取坐标为为像素点,纵坐标yb初始化为即获取电子公章的图像的中心像素点;

  S207,对纵坐标yb进行更新,即将纵坐标yb的值减1,得到更新后的纵坐标yb,获取更新后的坐标的像素点;

  S208,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S209;若是,则跳转步骤S207;

  S209,记录此时纵坐标yb的值,即记录该更新后的坐标中yb的值,得到电子公章的图像中五角星图案的外接圆半径

  S210,遍历电子公章的图像的红色像素点坐标列表RPLC,依次对列表RPLC中的每个像素点的坐标进行判断,

  其中,列表RPLC中的第i个像素点的坐标为(xi,yi),判断列表RPLC中的第i个像素点的坐标(xi,yi)是否满足若满足,则将列表RPLC中的该像素点添加至电子公章的文字的像素点坐标列表TPCL中;

  列表RPLC经遍历并依次判断后即可得到电子公章的文字的像素点坐标列表TPCL。

  步骤S3中,从电子公章的文字的像素点坐标列表TPCL中选取与密文CSI的位数NCSI相同个数的像素点,并利用RSPS算法对所选取的电子公章的文字的像素点进行隐写,得到电子公章的文字的隐写像素点坐标列表SPCL,具体方式包括以下步骤:

  S301,将电子公章的文字内容作为随机数发生器的初始种子,生成一个在区间[0,NT]中的随机整数,记录在随机整数列表RIL中;

  S302,将上一个生成的随机整数作为该随机数发生器的种子,生成一个在区间[0,NT]中的随机整数,若此时所生成的随机整数已经记录在随机整数列表RIL中,则通过线性探查法寻找出一个在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数,并将所找出的未记录在随机整数列表RIL中的随机整数记录在随机整数列表RIL中;

  所述线性探查法的具体方式为:

  若此时所生成的随机整数已经记录在随机整数列表RIL中,则对该此时所生成的随机整数进行正向更新,即将该此时所生成的随机整数加1,得到正向更新后的随机整数;

  判断该正向更新后的随机整数是否已经记录在随机整数列表RIL中,若未记录在随机整数列表RIL中,则该正向更新后的随机整数即为线性探查法的寻找结果;若已经记录在随机整数列表RIL中,则对该正向更新后的随机整数继续进行正向更新,即继续加1,并继续判断正向更新后的随机整数是否已经记录在随机整数列表RIL中,直到寻找出一个在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数为止,该在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数即为线性探查法的寻找结果;

  若正向更新后的随机整数超过该区间[0,NT]时,且均未得到线性探查法的寻找结果,则对该此时所生成的随机整数进行反向更新,即将该此时所生成的随机整数减1,得到反向更新后的随机整数;

  判断该反向更新后的随机整数是否已经记录在随机整数列表RIL中,若未记录在随机整数列表RIL中,则该反向更新后的随机整数即为线性探查法的寻找结果;若已经记录在随机整数列表RIL中,则对该反向更新后的随机整数继续进行反向更新,即继续减1,并继续判断反向更新后的随机整数是否已经记录在随机整数列表RIL中,直到寻找出一个在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数为止,该在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数即为线性探查法的寻找结果;

  若正向更新后的随机整数超过该区间[0,NT]时,且均未得到线性探查法的寻找结果,则开始进行全局判断,直接从最小边界整数开始即从0开始至最大边界整数结束即至NT结束,依次对区间[0,NT]中的各个整数进行判断,直到寻找出一个在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数为止,该在区间[0,NT]中且未记录在随机整数列表RIL中的随机整数即为线性探查法的寻找结果;

  S303,若随机整数列表RIL中元素的个数小于防伪信息SI的密文CSI的位数NCSI,则跳转步骤S302;否则,跳转步骤S304;

  S304,遍历随机整数列表RIL,将随机整数列表RIL中的每个元素均作为电子公章的文字的像素点坐标列表TPCL的索引,在电子公章的文字的像素点坐标列表TPCL中依次获取对应的像素点坐标,并将所获取的像素点坐标依次记录在电子公章的文字的隐写像素点坐标列表SPCL中,得到电子公章的文字的隐写像素点坐标列表SPCL。

  步骤S4中,利用LSB算法将密文CSI逐位写入电子公章的文字的隐写像素点坐标列表SPCL中的各个坐标对应的像素点的R色道值的最低位。其中,像素点的R色道值为八位的二进制数。

  本发明对应的电子公章系统的校验,包括两种情况,一种是校验人直接提供防伪信息对待校验的电子公章进行校验,这种情况一般要求校验人很熟悉该电子公章,并且能够准确输入该电子公章的申请人的姓名、申请时间、申请理由从而能够提供准确的防伪信息;另一种是校验人直接提供一份电子文件对该电子文件上所盖的待校验的电子公章进行校验,这种情况一般是两个公司之间,甲公司向乙公司发送了一份盖有电子公章的电子文件,乙公司对该电子文件上所盖的电子公章进行校验。

  本发明还提供了对应的基于电子公章文字内容的防伪信息的校验方法,包括以下步骤:

  S5,提取待校验的电子公章的文字的像素点,得到待校验的电子公章的文字的像素点坐标列表TPCL′,且待校验的电子公章的文字的像素点坐标列表TPCL′中的元素个数为N′T;

  S6,根据待校验的电子公章的文字的像素点坐标列表TPCL′,生成待校验的电子公章的文字的隐写像素点坐标列表SPCL′;

  S7,从待校验的电子公章的文字的隐写像素点坐标列表SPCL′中提取出密文CSI′;

  S8,若校验人提供防伪信息SI′对待校验的电子公章进行校验,则根据待校验的电子公章的文字内容生成密钥key′,并使用该密钥key′对密文CSI′进行解密,得到签名sign′,结合待校验电子公章的校验人所提供的防伪信息SI′对该签名sign′进行校验,判断该待校验的电子公章是否由该防伪信息SI′进行申请的,从而判断该待校验的电子公章是否为假章,并根据数据库中的用章记录进一步判断该待校验的电子公章是否为真章;

  若校验人提供一份电子文件对该电子文件上所盖的待校验的电子公章进行校验,则根据该电子文件的公文名在数据库中查找对应的用章记录,获取对应的用章记录中的防伪信息,结合对应的用章记录中的防伪信息对该签名sign′进行校验,判断该电子文件上所盖的待校验的电子公章是否由该防伪信息进行申请的,从而该电子文件上所盖的待校验的电子公章是否为假章。

  步骤S5,利用TPS算法提取待校验的电子公章的文字的像素点,具体方式包括以下步骤:

  S501,由图3所示,本实施例中,待校验的电子公章的图像为圆形,待校验的电子公章的图像的中心设有五角星图案,待校验的电子公章的图像在过圆心且沿水平方向上的像素点个数为m′,在过圆心且沿垂直方向上的像素点个数为n′,m′=n′;

  建立坐标系,水平方向为X轴,垂直方向为Y轴,坐标轴的单位为像素点,以待校验的电子公章的图像的左上方为坐标原点,且待校验的电子公章的图像的中心在该坐标系中的坐标为

  扫描待校验的电子公章的图像,得到待校验的电子公章的图像中所有红色像素点的坐标,并生成待校验的电子公章的图像的红色像素点坐标列表RPLC′;

  S502,获取坐标为的像素点,纵坐标y′a初始化为0,即y′a=0;

  S503,对纵坐标y′a进行更新,即将纵坐标y′a的值加1,得到更新后的纵坐标y′a,获取更新后的坐标的像素点;

  S504,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S505;若是,则跳转步骤S503;

  S505,记录此时纵坐标y′a的值,即记录该更新后的坐标中y′a的值,得到待校验的电子公章的图像中圆环的宽度W′=y′a-1;

  S506,获取坐标为为像素点,纵坐标y′b初始化为即获取待校验的电子公章的图像的中心像素点;

  S507,对纵坐标y′b进行更新,即将纵坐标y′b的值减1,得到更新后的纵坐标y′b,获取更新后的坐标的像素点;

  S508,判断更新后的坐标的像素点是否为红色像素点,若不是,则跳转步骤S509;若是,则跳转步骤S507;

  S509,记录此时纵坐标y′b的值,即记录该更新后的坐标中y′b的值,得到待校验的电子公章的图像中五角星图案的外接圆半径

  S510,遍历待校验的电子公章的图像的红色像素点坐标列表RPLC′,依次对列表RPLC′中的每个像素点的坐标进行判断,

  其中,列表RPLC′中的第i个像素点的坐标为(x′i,y′i),判断列表RPLC′中的第i个像素点的坐标(x′i,y′i)是否满足若满足,则在列表RPLC′中的该像素点添加至待校验的电子公章的文字的像素点坐标列表TPCL′中;

  列表RPLC′经遍历并依次判断后即可得到待校验的电子公章的文字的像素点坐标列表TPCL′。

  步骤S6中,根据待校验的电子公章的文字的像素点坐标列表TPCL′,并利用RSPS算法生成待校验的电子公章的文字的隐写像素点坐标列表SPCL′,具体方式包括以下步骤:

  S601,将待校验的电子公章的文字内容作为随机数发生器的初始种子,生成一个在区间[0,N′T]中的随机整数,记录在随机整数列表RIL′中;

  S602,将上一个生成的随机整数作为该随机数发生器的种子,生成一个在区间[0,N′T]中的随机整数,若此时所生成的随机整数已经记录在随机整数列表RIL′中,则通过线性探查法找出一个在区间[0,N′T]中且未记录在随机整数列表RIL′中的随机整数,并将所找出的该未记录在随机整数列表RIL′中的随机整数记录在随机整数列表RIL′中;

  所述线性探查法的具体方式为:

  若此时所生成的随机整数已经记录在随机整数列表RIL′中,则对该此时所生成的随机整数进行正向更新,即将该此时所生成的随机整数加1,得到正向更新后的随机整数;

  判断该正向更新后的随机整数是否已经记录在随机整数列表RIL′中,若未记录在随机整数列表RIL′中,则该正向更新后的随机整数即为线性探查法的寻找结果;若已经记录在随机整数列表RIL′中,则对该正向更新后的随机整数继续进行正向更新,即继续加1,并继续判断正向更新后的随机整数是否已经记录在随机整数列表RIL′中,直到寻找出一个在区间[0,N′T]中且未记录在随机整数列表RIL′中的随机整数为止,该在区间[0,N′T]中且未记录在随机整数列表RIL′中的随机整数即为线性探查法的寻找结果;

  若正向更新后的随机整数超过该区间[0,N′T]时,且均未得到线性探查法的寻找结果,则开始进行全局判断,直接从最小边界整数开始即从0开始至最大边界整数结束即至N′T结束,依次对区间[0,N′T]中的各个整数进行判断,直到寻找出一个在区间[0,N′T]中且未记录在随机整数列表RIL′中的随机整数为止,该在区间[0,N′T]中且未记录在随机整数列表RIL′中的随机整数即为线性探查法的寻找结果;

  S603,若随机整数列表RIL′中元素的个数小于设定数量,则跳转步骤S602;否则,跳转步骤S604;

  在防伪信息的隐写过程中,防伪信息SI的签名sign的长度固定,密文CSI的长度即位数也固定,在防伪信息隐写过程的步骤S1中,对密文CSI的长度即位数进行存储;所述设定数量即为密文CSI的固定的位数NCSI;

  S604,遍历随机整数列表RIL′,将随机整数列表RIL′中的每个元素均作为待校验的电子公章的文字的像素点坐标列表TPCL′的索引,在待校验的电子公章的文字的像素点坐标列表TPCL′中依次获取对应的像素点坐标,并将所获取的待校验的电子公章的文字的像素点坐标依次记录在电子公章的文字的隐写像素点坐标列表SPCL′中,得到电子公章的文字的隐写像素点坐标列表SPCL′。

  步骤S7中,利用LSB算法从待校验的电子公章的文字的隐写像素点坐标列表SPCL′中各个坐标对应的像素点的R色道值的最低位逐位提取出密文CSI′。其中,像素点的R色道值为八位的二进制数。

  步骤S8中,若校验人提供姓名name′、用章时间time′、用章理由reason′即相当于提供防伪信息SI′对待校验的电子公章进行校验,则具体包括以下步骤:

  S801,对待校验的电子公章中的文字内容进行MD5运算,生成AES密钥key′;

  S802,用该密钥key′对密文CSI′进行解密,得到签名sign′;

  S803,对待校验的电子公章的校验人提供姓名name′、用章时间time′、用章理由reason′进行字符串连接后,得到防伪信息SI′;

  S804,结合防伪信息SI′,并通过DSA算法对签名sign′进行校验,判断该待校验的电子公章是否由该姓名name′、用章时间time′、用章理由reason′进行申请,

  若签名sign′无效,则表示该待校验的电子公章不是由该姓名name′、用章时间time′、用章理由reason′进行申请的,即该待校验的电子公章为假章,且可能为伪造的电子公章;

  若签名sign′有效,则表示该待校验的电子公章确实由该姓名name′、用章时间time′、用章理由reason′进行申请的,并在系统的数据库中查找出该姓名name′、用章时间time′、用章理由reason′所对应的用章记录,得到对应的用章记录中的所盖章的电子文件的公文名,判断该待校验的电子公章所在的电子文件的公文名是否与对应的用章记录中的所盖章的电子文件的公文名一致,若一致,则表示该待校验的电子公章校验成功,即该待校验的电子公章为真章;否则该待校验的电子公章为假章,且为盗用的电子公章;若在系统的数据库中查找不出该姓名name′、用章时间time′、用章理由reason′所对应的用章记录,则该待校验的电子公章为假章,且可能为盗用的电子公章。

  步骤S8中,若校验人提供一份电子文件对该电子文件上所盖的待校验的电子公章进行校验,则具体包括以下步骤:

  S811,对该电子文件上所盖的待校验的电子公章中的文字内容进行MD5运算,生成AES密钥key′;

  S812,用该密钥key′对密文CSI′进行解密,得到签名sign′;

  S813,根据该电子文件的公文名在数据库中查找对应的用章记录,获取对应的用章记录中的防伪信息,结合对应的用章记录中的防伪信息对该签名sign′进行校验,判断该待校验的电子公章是否由该防伪信息对应的姓名、用章时间、用章理由进行申请,

  若签名sign′无效,则表示该电子文件上所盖的待校验的电子公章不是由该防伪信息对应的姓名、用章时间、用章理由进行申请的,即该电子文件上所盖的待校验的电子公章为假章;

  若签名sign′有效,则表示该电子文件上所盖的待校验的电子公章是由该防伪信息对应的姓名、用章时间、用章理由进行申请的,即该电子文件上所盖的待校验的电子公章为真章。

  本发明的电子公章若为假章,则包括两种情况,一种是伪造的电子公章,另一种是盗用的电子公章。其中,

  伪造的电子公章,其外观和真章相同,具体为电子公章图案的圆环大小、宽度,文字的内容、大小,像素点的个数均相同,目前外观相同还是比较容易做到的,可以利用一些在线公章生成器,通过输入参数即可作出外观相同的公章。但是,利用该方式伪造的电子公章一般来说像素点都是纯色的,也就是每个像素点的R色道值均相同,实际上,真的电子公章的像素点并不都是纯色的,即每个像素点的R色道值并不是完全相同的。因此,即使由于电子公章的外观相同,导致得到的待校验的电子公章的文字的像素点坐标列表TPCL′和待校验的电子公章的文字的隐写像素点坐标列表SPCL′都一致,但是从R色道值的最低位提取的密文CSI′是几乎不可能一致的,并且,DSA算法生成的签名sign′有320bit,那么密文CSI′恰好相同的概率就是1/2320,这个概率是非常低的。

  盗用的电子公章,是通过将已盖章的电子文件A上的电子公章通过代码的方式复制出来,然后粘贴到待盖章的电子文件B上的方式获取;这种方式理论上是能实现电子公章的完全复制,不仅是外观相同,而且每个像素点的RGB值都一模一样。但是,这种方式存在另外一个问题,这个电子公章原先对应的是电子文件A,现在通过复制粘贴的方式到了电子文件B上,在签名校验之后,系统还会根据该盗用的电子公章的防伪信息即姓名、用章时间、用章理由查找出对应的用章记录,并查到对应的用章记录中的所盖章的电子文件的公文名为A,与该待校验的电子公章所在的电子文件的公文名B不一致,从而判断该待校验的电子公章为假章,且可能为盗用的电子公章。

  以上仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。

《基于电子公章文字内容的防伪信息的隐写方法及校验方法.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)