当前位置: 首页 > 专利查询>广西大学专利>正文

一种可信二维码中签名的隐藏方法及系统技术方案

技术编号:9719006 阅读:152 留言:0更新日期:2014-02-27 05:51
本发明专利技术提供了一种可信二维码中签名的隐藏方法及系统,该隐藏方法包括签名隐藏步骤:信息m经hash得h(m),Ks和Kp是私钥和公钥;用Ks加密h(m)得签名D;编码m和D得m的数据位流Datam和D的数据位流DataD,数据位流由数据码字和纠错码字构成;Datam排布到数据码字和纠错码字区域,DataD排布在签名隐藏区域;签名识别步骤:扫描到终止符时得m0;扫描终止符后的数据得D;用Kp解密D得h(m);对m0用hash得h(m0),对比h(m)和h(m0)可验证可信性。本发明专利技术的有益效果是可信措施不干扰发布的信息,保证了可信二维码的可用性,对设备无特殊要求。

【技术实现步骤摘要】
一种可信二维码中签名的隐藏方法及系统
本专利技术涉及二维码
,尤其涉及一种可信二维码中签名的隐藏方法及系统。
技术介绍
伴随着带有摄像功能的手机使用日益普及,二维码技术得到了越来越广泛的应用。同时,二维码的可信问题也暴露出来,其中主要有三种:其一是二维码版权,攻击者以用户的名义发布二维码;其二是二维码信息可信,扫描者不能确定二维码的信息是否可信;其三是二维码信息完整,用户无法确定扫描二维码所得到的信息是否完整或未被修改。而对于二维码来说,可信技术是二维码的安全可靠保障措施,其主要作用是防止二维码失去可信性。现有的可信二维码技术有数字水印,公钥密码体制,信息隐藏。采用数字水印的技术,提出了一种将二维码作为水印嵌入到新的信息二维码中的方案,其思路是先将标识信息生成二维码,作为水印图像,然后通过小波变换,分离出载体二维码图片的中频系数,再通过DCT扩频,将水印信息嵌入到载体二维码图片中。用户通过扫描设备提取载体二维码图片上的水印信息,将水印信息通过特定算法还原成载有标识信息的水印二维码图片,然后提取并验证该水印二维码中的标识信息,依此来实现二维码可信的目的。利用公钥密码体制技术,提出了一种基于PKI的可信二维码方案,该方案将输入的信息通过发布者的私钥加密,然后将密文生成二维码;译码、解码的时候用户通过扫描其他用户发布的二维码,获取密文信息,然后从CA中心查询发布者的公钥,对密文信息解密,实现了对信息发布者的认证。二维码加密/解密方法包括获得二维码原始信息,将二维码原始信息与实时时钟信息用EK加密密钥进行ECC加密运算,得到一个随时间跳变的加密数据;将得到的加密数据生成二维码图形;解码时,读取二维码,得到随时间跳变的加密数据;对得到的加密数据,使用DK解密密钥进行ECC解密运算,得到解密信息;根据二维码原始数据进行算法加密,生成随时间跳变的二维码,是的用户每次得到的二维码查询都是不同的,减少了验证步骤,保证二维码的安全性和不重复性。使用信息隐藏的方法,提出了一种具有隐藏码的二维码,该方案是将若干供识别的单元色块按照一定的规律无间隙地排列,将隐藏码设置于所述单元信息块中,单元信息块与隐藏码具有不同的色度,通过切换摄像机具有的高低解析度以及设定的门限值,将隐藏码识别出来。目前的技术存在如下缺陷: 1、数字水印可信二维码方案对解码设备的要求高,限制了方案的应用范围; 数字水印生成与提取时运算量大,在将数字水印嵌入到二维码图片以及从二维码中提取水印信息的过程中,系统对计算资源的需求大;同时,由于水印信息是嵌在图片DCT域的中低频系数中,所以如果用拍照扫描的方式,则无法实现水印提取,这大大限制了数字水印方案的应用范围。2、公钥密码体制方案和信息隐藏方案的可信措施都在编码和解码过程中,一定程度上影响用户发布的信息,一旦脱离了专有的扫描设备,则二维码就失去了其可用性。与数字水印可信二维码方案不同,公钥密码体制方案和信息隐藏的可信措施在二维码的生成过程中,与用户发布的信息发生作用或产生干扰,如公钥密码体制,通过用户的私钥加密,而当扫描时无法获取发布者的公钥,则二维码中的信息不具有可读性;信息隐藏的可信措施则是在二维码图片上通过加入新的色块,这使得一旦扫描设备不可用,则用户的二维码随即失去可用性。
技术实现思路
为了解决现有技术中的问题,本专利技术提供了一种可信二维码中签名的隐藏方法。本专利技术提供了一种可信二维码中签名的隐藏方法,包括如下步骤: 签名的隐藏步骤:h (m)是用户发布的信息m经过hash函数生成的消息摘要,Ks和Kp是公钥算法生成的有效私钥与公钥;用自己的私钥Ks加密消息摘要h (m),得到签名D ;按照二维码编码规则,编码用户发布的信息m和签名D,分别得到信息m的数据位流Data111和签名D的数据位流Data11,数据位流包含数据码字和纠错码字;按照二维码编码规则,分别选择数据位流Datam和Data11的二维码码字排布版本,分别记为Vm和Vd ;选择一个大版本V的二维码,该二维码的编码容量大于或等于Vm和Vd之和,版本V作为隐藏签名的二维码的编码版本;按照二维码编码规则,依次将信息m的数据位流Datam排布到数据码字和纠错码字区域,将签名D的数据位流Data11排布在签名隐藏区域,得到隐藏签名的二维码; 签名的识别步骤:用户扫描具有签名的二维码,按照二维码解码规则,当第一次检测到编码终止符时,则停止解码,得到信息mO ;系统对终止符后的数据进行检测,若有数据,则继续解码,得到签名D,否则,解码结束;用发布者Kp解密D得到消息摘要h Cm);通过对扫描得到的信息mO采用相同的hash函数,得到消息摘要h (mO),对比h Cm)和h (mO)验证签名D的合法性。作为本专利技术的进一步改进,用户发布的信息需要经过如下步骤处理: 首先,分析输入数据,确定其内容并且选择合适的模式对序列进行编码; 然后,按照分析的结果对输入数据进行编码,得到数据位流; 然后,对得到的数据位流进行纠错编码; 最后,在二维码矩阵中构造信息的最终码字序列。作为本专利技术的进一步改进,按照二维码解码标准进行解码时,首先,通过获取二维码的版本与纠错等级,确定其编码容量;然后,根据字节流中的信息长度,读取所发布的信息,直到信息的编码结束符;最后,检测后续字节流,按照相同的解码规则,读取编码在编码结束符后的填充区中的内容,这样就完成了用户发布的信息和隐藏于该二维码中的签名信息的识别。作为本专利技术的进一步改进,在纠错级别为E,在二维码版本集合Sv中,用户编码信息m所需要的最小版本为Vm ;编码签名D时,需要的最小版本为VD,隐藏签名的二维码版本为V ; (V, E)表不未承载信息的初始二维码,(m, Vm, E)表不编码信息m生成的二维码,隐藏有签名的二维码为(mD,V,E);二维码编码规则中编码结束标识位EndMark ;签名D的隐藏过程如下:步骤1:按照二维码编码规则,将信息m依次拆分为不同的模式段……,mn;步骤2:按照对应的模式编码规则,对各模式段编码,得到码字序列m i,,m2,,……,mn,;步骤3:将步骤2中得到的码字序列合并为数据码字m’,长度为Iengthm.;依据纠错等级E,对m’进行纠错编码,得到纠错码字em,长度为Iengthe ;此时待排布到二维码中的数据位流 Datam=m’ +em+EndMark,长度为 Iengthm,+lengthe+lengthEndMark ; 步骤4:按照二维码编码规则,在版本集合Sv范围内,从版本I开始在二维码上对步骤3中得到的Datam进行排布,当Datam第一次被完整排满,记下此时的版本数,此版本数记为Vm ;步骤5:重复步骤f 4,对签名D编码,得到签名D待排布到二维码图中的数据DataD=D, +eD+ EndMark,长 lengthD,+Iengthe, + lengthEndMark,版本为 Vd ; 步骤6:按照二维码编码规则,选择版本V的二维码(V,E)作为隐藏签名的二维码,此二维码编码容量为CC,编码完信息m剩余的填充区冗余容量为RC ;其中:CC ^ (lengthy +lengthe+lengthEndMark) + (lengthy本文档来自技高网
...

【技术保护点】
一种可信二维码中签名的隐藏方法,其特征在于,包括如下步骤:签名的隐藏步骤:h(m)是用户发布的信息m经过hash函数生成的消息摘要,Ks和Kp是公钥算法生成的有效私钥与公钥;用自己的私钥Ks加密消息摘要h(m),得到签名D;按照二维码编码规则,编码用户发布的信息m和签名D,分别得到信息m的数据位流Datam和签名D的数据位流DataD,数据位流包含数据码字和纠错码字;按照二维码编码规则,分别选择数据位流Datam和DataD的二维码码字排布版本,分别记为Vm和VD;选择一个大版本V的二维码,该二维码的编码容量大于或等于Vm和VD之和,版本V作为隐藏签名的二维码的编码版本;按照二维码编码规则,依次将信息m的数据位流Datam排布到数据码字和纠错码字区域,将签名D的数据位流DataD排布在签名隐藏区域,得到隐藏签名的二维码;签名的识别步骤:用户扫描具有签名的二维码,按照二维码解码规则,当第一次检测到编码终止符时,则停止解码,得到信息m0;系统对终止符后的数据进行检测,若有数据,则继续解码,得到签名D,否则,解码结束;用发布者Kp解密D得到消息摘要h(m);通过对扫描得到的信息m0采用相同的hash函数,得到消息摘要h(m0),对比h(m)和h(m0)验证签名D的合法性。...

【技术特征摘要】
1.一种可信二维码中签名的隐藏方法,其特征在于,包括如下步骤: 签名的隐藏步骤:h (m)是用户发布的信息m经过hash函数生成的消息摘要,Ks和Kp是公钥算法生成的有效私钥与公钥;用自己的私钥Ks加密消息摘要h (m),得到签名D ;按照二维码编码规则,编码用户发布的信息m和签名D,分别得到信息m的数据位流Data111和签名D的数据位流Data11,数据位流包含数据码字和纠错码字;按照二维码编码规则,分别选择数据位流Datam和Data11的二维码码字排布版本,分别记为Vm和Vd ;选择一个大版本V的二维码,该二维码的编码容量大于或等于Vm和Vd之和,版本V作为隐藏签名的二维码的编码版本;按照二维码编码规则,依次将信息m的数据位流Datam排布到数据码字和纠错码字区域,将签名D的数据位流Data11排布在签名隐藏区域,得到隐藏签名的二维码; 签名的识别步骤:用户扫描具有签名的二维码,按照二维码解码规则,当第一次检测到编码终止符时,则停止解码,得到信息mO ;系统对终止符后的数据进行检测,若有数据,则继续解码,得到签名D,否则,解码结束;用发布者Kp解密D得到消息摘要h Cm);通过对扫描得到的信息mO采用相同的hash函数,得到消息摘要h (mO),对比h Cm)和h (mO)验证签名D的合法性。2.根据权利要求1所述的隐藏方法,其特征在于:用户发布的信息需要经过如下步骤处理: 首先,分析输入数据,确定其内容并且选择合适的模式对序列进行编码; 然后,按照分析的结果对输入数据进行编码,得到数据位流; 然后,对得到的数据位流进行纠错编码; 最后,在二维码矩阵中构造信息的最终码字序列。`3.根据权利要求1所述的隐藏方法,其特征在于:按照二维码解码标准进行解码时,首先,通过获取二维码的版本与纠错等级,确定其编码容量;然后,根据字节流中的信息长度,读取所发布的信息,直到信息的编码结束符;最后,检测后续字节流,按照相同的解码规则,读取编码在编码结束符后的填充区中的内容,这样就完成了用户发布的信息和隐藏于该二维码中的签名信息的识别。4.根据权利要求1所述的隐藏方法,其特征在于,在纠错级别为E,在二维码版本集合Sv中,用户编码信息m所需要的最小版本为Vm ;编码签名D时,需要的最小版本为VD,隐藏签名的二维码版本为V; (V,E)表示未承载信息的初始二维码,(m,Vm,E)表示编码信息m生成的二维码,隐藏有签名的二维码为(mD,V,E) ;二维码编码规则中编码结束标识位EndMark ;签名D的隐藏过程如下: 步骤1:按照二维码编码规则,将信息m依次拆分为不同的模式段……,mn; 步骤2:按照对应的模式编码规则,对各模式段编码,得到码字序列m i,,m2,,……,mn,; 步骤3:将步骤2中得到的码字序列合并为数据码字m’,长度为Iengthm.;依据纠错等级E,对m’进行纠错编码,得到纠错码字em,长度为Iengthe ;此时待排布到二维码中的数据位流 Datam=m,+em+EndMark,长度为 Iengthm,+lengthe+lengthEndMark ; 步骤4:按照二维码编码规则,在版本集合Sv范围内,从版本I开始在二维码上对步骤3中得到的Datam进行排布,当Datam第一次被完整排满,记下此时的版本数,此版本数记为Vm ; 步骤5:重复步骤f 4,对签名D编码,得到签名D待排布到二维码图中的数据Datan=DJ +eD+ EndMark,长 lengthD,+Iengthe, + lengthEndMark,版本为 Vd ;步骤6:按照二维码编码规则,选择版本V的二维码(V,E)作为隐藏签名的二维码,此二维码编码容量为CC,编码完信息m剩余的填充区冗余容量为RC ;其中:CC ^ (lengthy +lengthe+lengthEndMark) + (lengthy +lengthy +lengthEndMark);RC ^ (lengthD,+lengthe,+lengthEndMark); 步骤7:按照二维码编码规则,在(V,E)上对信息m的编码数据Datam进行排布;在EndMark+Ι位开始继续对签名D的编码数据Data11进行排布,直到全部排布为止,得到隐藏签名的二维码(mD,V,E)。5.根据权利要求4所述的隐藏方法,其特征在于,用户扫描隐藏有签名的二维码(mD,V,E),根据二维码的解码标准,验证过程如下: 步骤1:按照二维码解码规则,扫描得到二维码版本V和纠错等级E,对二维码中的数据进行解码,直到EndMark出现,解码暂停,得到信息m ; 步骤2:判断EndMark标志后面是否还有数据:若没有,则解码结束;否则从EndMark+1位开始,对后续数据继续解码,得到签名D。6.一种可信二维码中签名的隐藏系统,其特征在于,包括: 签名的...

【专利技术属性】
技术研发人员:黄保华霍林江锋
申请(专利权)人:广西大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1