【技术实现步骤摘要】
一种可信二维码中签名的隐藏方法及系统
本专利技术涉及二维码
,尤其涉及一种可信二维码中签名的隐藏方法及系统。
技术介绍
伴随着带有摄像功能的手机使用日益普及,二维码技术得到了越来越广泛的应用。同时,二维码的可信问题也暴露出来,其中主要有三种:其一是二维码版权,攻击者以用户的名义发布二维码;其二是二维码信息可信,扫描者不能确定二维码的信息是否可信;其三是二维码信息完整,用户无法确定扫描二维码所得到的信息是否完整或未被修改。而对于二维码来说,可信技术是二维码的安全可靠保障措施,其主要作用是防止二维码失去可信性。现有的可信二维码技术有数字水印,公钥密码体制,信息隐藏。采用数字水印的技术,提出了一种将二维码作为水印嵌入到新的信息二维码中的方案,其思路是先将标识信息生成二维码,作为水印图像,然后通过小波变换,分离出载体二维码图片的中频系数,再通过DCT扩频,将水印信息嵌入到载体二维码图片中。用户通过扫描设备提取载体二维码图片上的水印信息,将水印信息通过特定算法还原成载有标识信息的水印二维码图片,然后提取并验证该水印二维码中的标识信息,依此来实现二维码可信的目的。利用公钥密码体制技术,提出了一种基于PKI的可信二维码方案,该方案将输入的信息通过发布者的私钥加密,然后将密文生成二维码;译码、解码的时候用户通过扫描其他用户发布的二维码,获取密文信息,然后从CA中心查询发布者的公钥,对密文信息解密,实现了对信息发布者的认证。二维码加密/解密方法包括获得二维码原始信息,将二维码原始信息与实时时钟信息用EK加密密钥进行ECC加密运算,得到一个随时间跳变的加密数 ...
【技术保护点】
一种可信二维码中签名的隐藏方法,其特征在于,包括如下步骤:签名的隐藏步骤: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采用相同的 ...
【技术特征摘要】
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.一种可信二维码中签名的隐藏系统,其特征在于,包括: 签名的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。