[发明专利]一种字符型商品防伪码生成方法有效
申请号: | 201710623439.3 | 申请日: | 2017-07-27 |
公开(公告)号: | CN107425956B | 公开(公告)日: | 2019-07-16 |
发明(设计)人: | 张小美;盛苏英;陆国平;张振娟;吴新华;周磊;朱建红;朱虹 | 申请(专利权)人: | 南通大学 |
主分类号: | H04L9/00 | 分类号: | H04L9/00;H04L9/06;G06Q30/00 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 胡燕 |
地址: | 226000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字符 商品 防伪 生成 方法 | ||
1.一种字符型商品防伪码生成方法,其特征在于,包括如下几个步骤:
(1)将表征某件商品唯一身份信息的字符型商品标识码A进行ASCII码转换,得到数值序列A1,再将序列A1中每个数值进行7位二进制转换,从而得到二进制序列AB,其中商品标识码A的长度表示为L,商品标识二进制序列AB含有7×Lbits;
(2)利用某件商品标识码A的16位字符型MD5值,以及外部密钥K10、K20和K30,按照如下所示公式分别计算得到倾斜帐篷混沌映射的初值x1、y1和参数p1、p2,以及抽取间隔数n1、n2:
x1=mod(sum(double(M))/128×16+K10,1)
y1=mod(sum(double(M))/128×16-K10,1)
p1=0.4+mod(sum(double(M))/128×16+K20,0.2)
p2=0.6-mod(sum(double(M))/128×16-K20,0.2)
n1=10+mod(sum(double(A))+K30,29)
n2=10+mod(sum(double(A))-K30,29)
其中,某件商品标识码的MD5值表示为长度16的字符串M,外部密钥满足K10∈(-1,1)、K20∈(-1,1),K30是大于1的正整数;
(3)由混沌映射初值x1和参数p1,以及混沌映射初值y1和参数p2,分别对如下公式所示倾斜帐篷混沌映射进行迭代,式中参数p分别取为p1(0.4≤p1<0.6)和p2(0.4<p2≤0.6)、k表示迭代次数(k=1,2,...)、zk+1表示第k次迭代得到的混沌信号,分别取为xk+1和yk+1,
得到混沌信号序列X={x1,x2,...}和Y={y1,y2,...},从序列X中依次间隔n1取元素以形成长度为L的混沌信号序列X1,从序列Y中依次间隔n2取元素以形成长度为L的混沌信号序列Y1,同时将混沌信号序列X1和Y1中各元素进行如下公式所示的整数化处理,得到混沌信号整数序列X2和Y2,
再将混沌信号整数序列X2和Y2中各元素转换成7位二进制数据,从而得到含有7×Lbits的混沌信号二进制序列XX和YY;
(4)将二进制序列AB、XX和YY均以7bits为单位进行分组,对应的每组二进制序列{AB(7k-6),AB(7k-5),...,AB(7k)}、{XX(7k-6),XX(7k-5),...,XX(7k)}、{YY(7k-6),YY(7k-5),...,YY(7k)},k=1,2,...,L,依次进行如下运算:
首先,按照如下所示公式计算,分别得到每组二进制序列在位运算前、第一次位运算以及第二次位运算所采用的编码规则号,
AB_rule_orig=bin2dec(AB(7k-6),AB(7k-5),AB(7k-4))
XX_rule_orig=bin2dec(XX(7k-6),XX(7k-5),XX(7k-4))
YY_rule_orig=bin2dec(YY(7k-6),YY(7k-5),YY(7k-4))
AB_rule_1=mod(bin2dec(AB(7k-6),AB(7k-5),...,AB(7k-2)),8)
XX_rule_1=mod(bin2dec(XX(7k-6),XX(7k-5),...,XX(7k-2)),8)
YY_rule_1=mod(bin2dec(YY(7k-6),YY(7k-5),...,YY(7k-2)),8)
AB_rule_2=mod(bin2dec(AB(7k-6),AB(7k-5),...,AB(7k)),8)
XX_rule_2=mod(bin2dec(XX(7k-6),XX(7k-5),...,XX(7k)),8)
YY_rule_2=mod(bin2dec(YY(7k-6),YY(7k-5),...,YY(7k)),8)
其中,函数bin2dec(·)是将二进制字符串转换成十进制数;
然后,将每组二进制序列的前3bits进行如下操作,得到商品加密数值C1,
C1=mod(bin2dec(AB(7k-6:7k-4)⊕XX(7k-6:7k-4)⊕YY(7k-6:7k-4)),3)
其中,运算符‘⊕’为按位异或操作;
再将每组二进制序列按照如下所示公式计算,根据自定义位运算规则对应关系得到每组二进制序列的后4bits以2bits为单位进行位运算的规则,
operation_1=mod(bin2dec(AB(7k-6:7k))-bin2dec(XX(7k-6:7k)),6)
operation_2=mod(bin2dec(AB(7k-6:7k))-bin2dec(YY(7k-6:7k)),3)
接着,根据自定义2bits编码规则对应关系,将每组二进制序列的后4bits以2bits为单位分别进行对应映射编码,按照位运算规则对应关系中的运算规则进行第一次位运算,得到4bits的商品加密码C2;
紧接着,同样根据自定义2bits编码规则对应关系,将商品加密码C2、二进制序列{XX(7k-3),XX(7k-2),...,XX(7k)}、{YY(7k-3),YY(7k-2),...,YY(7k)}以2bits为单位分别进行对应映射编码,按照位运算规则对应关系中的运算规则进行第二次位运算,得到4bits的商品加密码C3;
最后,按照如下所示公式计算,得到商品加密数值CC,
CC=C1×16+bin2dec(C3)
根据自定义商品加密数值与字符型商品加密号的对应关系,将商品加密数值CC转换成字符型商品加密号,从而得到对应的第k组二进制序列{AB(7k-6),AB(7k-5),...,AB(7k)}、{XX(7k-6),XX(7k-5),...,XX(7k)}、{YY(7k-6),YY(7k-5),...,YY(7k)}加密运算后的字符型商品加密号C(k),
依次将L组二进制序列分别进行如上所述运算,得到字符型商品防伪号C={C(1),C(2),...,C(L)};
(5)将字符型商品标识码A和字符型商品防伪号C进行组合,生成商品防伪码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南通大学,未经南通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710623439.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种机械设备远程检测服务装置
- 下一篇:一种九孔低温恒温浴装置