CN113052286A - 一种基于置乱加密的商品防伪二维码生成方法 - Google Patents

一种基于置乱加密的商品防伪二维码生成方法 Download PDF

Info

Publication number
CN113052286A
CN113052286A CN202110362350.2A CN202110362350A CN113052286A CN 113052286 A CN113052286 A CN 113052286A CN 202110362350 A CN202110362350 A CN 202110362350A CN 113052286 A CN113052286 A CN 113052286A
Authority
CN
China
Prior art keywords
sequence
matrix
scrambling
commodity
counterfeiting
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.)
Pending
Application number
CN202110362350.2A
Other languages
English (en)
Inventor
盛苏英
吴新华
陆国平
张小美
张振娟
任洁
朱建红
刘焰森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nantong University
Original Assignee
Nantong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nantong University filed Critical Nantong University
Priority to CN202110362350.2A priority Critical patent/CN113052286A/zh
Publication of CN113052286A publication Critical patent/CN113052286A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Credit Cards Or The Like (AREA)

Abstract

本发明公开了一种基于置乱加密的商品防伪二维码生成方法,包括如下步骤:将表征某件商品唯一身份信息的商品标识码,进行数值型数据以及8位二进制转换,得组合二进制矩阵B;实时调整抽取位置,混沌迭代并抽取产生混沌序列Y1和Y2;利用序列Y1降序排序前、后位置变化规则,对矩阵B按行进行置乱,再利用序列Y2降序排序前、后位置变化规则,对行置乱后二进制矩阵按列进行置乱,得行列置乱后二进制矩阵
Figure DDA0003006115660000011
将矩阵
Figure DDA0003006115660000012
中每列元素转换而成的数值型数据填入表征灰度图片的矩阵中,生成一幅灰度图像,进而组合生成商品防伪二维码。本发明所提基于置乱加密的商品防伪二维码生成方法简单可行,具有很强的安全性、不易破解,生成的商品防伪二维码具有“唯一性和不可伪造性”。

Description

一种基于置乱加密的商品防伪二维码生成方法
技术领域
本发明涉及数码防伪技术领域,特别涉及一种基于置乱加密的商品防伪二维码生成方法。
背景技术
数码防伪技术是基于日益猖獗的假冒伪劣产品所应运而生的,现代的数码防伪是一种综合利用数字编码技术、加密技术、数据库技术、计算机网络,交互式语音处理(IRV)等技术的新型高科技防伪技术。由于传统防伪技术的种种缺点,综观其数码防伪技术的发展过程,并根据防伪码生成方式的不同数码防伪技术主要经历了随机条码防伪模型、加密有序流水号防伪模型以及综合防伪模型三个阶段。在各方人士的不懈努力之下,数码防伪技术已经成为了防伪行业中运用最为广泛的技术之一,在产品防伪领域起着举足轻重的作用。
随着社会不断进步,市场日益发展。对于企业来说,数码防伪能保持品牌好的口碑。同时,“一物一码”的防伪方式,大大增加了造假者的造假成本,可以记录产品的定位信息,统计产品查询次数和查询方式,根据企业要求设置查询警戒线。目前智能终端已成为人们日常生活中重要的组成部分,而数码防伪技术也逐渐融入互联网,用户通过智能终端扫描商品防伪二维码进行“一键式”真伪查询,互联网的发展和普及为数码防伪系统的落地奠定了良好的基础。
数码防伪中最根本的部分就是利用加密算法生成商品防伪码,其中加密算法的选择就变得尤为重要。由于混沌系统具有高随机性和参数敏感性,产生的混沌信号对加密信号的扩散性和置乱性有很大的影响,混沌信号作为一种天然的密码而被引入数码防伪的加密中,用混沌密码技术进行商品信息的加密是一个很好的选择。在此情况下,利用混沌密码技术,提出一种基于置乱加密的商品防伪二维码生成方法,以生成具有“唯一性和不可伪造性”的商品防伪二维码,具有很好的实际应用推广价值。
发明内容
发明目的:本发明的目的是为了解决现有技术中的不足,提供一种基于置乱加密的商品防伪二维码生成方法,利用混沌映射迭代并抽取产生的混沌序列,对商品标识码转换而成的组合二进制矩阵分别按行、按列进行置乱,并将行列置乱后二进制矩阵中每列元素转换而成的数值型数据依次填入表征灰度图片的矩阵中,生成一幅灰度图像,进而组合生成商品防伪二维码,以此保证所提基于置乱加密的商品防伪二维码生成方法简单可行,具有很强的安全性、不易破解,生成的商品防伪二维码具有“唯一性和不可伪造性”。
技术方案:一种基于置乱加密的商品防伪二维码生成方法,其特征在于,包括如下几个步骤:
(1)转码
首先,将表征某件商品唯一身份信息的商品标识码A,逐个字符转换为数值型数据,得到数值序列
Figure BDA0003006115640000021
然后,依次将数值序列P中元素Pi逐个转换成8bits的二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8},并将
Figure BDA0003006115640000022
个二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8}从左往右逐列填入矩阵B中,其中
Figure BDA0003006115640000023
矩阵某行对应于各二进制序列的某位,从而得到组合二进制矩阵B,
Figure BDA0003006115640000024
其中商品标识码A为GBK编码的字符,商品标识码A的长度表示为
Figure BDA0003006115640000025
数值序列P的长度为
Figure BDA0003006115640000026
组合二进制矩阵B的大小为
Figure BDA0003006115640000027
Figure BDA0003006115640000028
(2)混沌序列的产生
首先,利用数值序列P及其转换的组合二进制矩阵B,以及外部密钥α和β,按照如下公式(1)-(3)分别计算得到Bernoulli混沌映射的初值x1和参数λ以及初次抽取位置n,
Figure BDA0003006115640000029
x1=0.02+mod(α+kp,0.98), (1)
λ=0.01+mod(β+kp,0.99), (2)
Figure BDA00030061156400000210
其中,<B>表示组合二进制矩阵B中含有二进制位‘0’的个数,外部密钥满足α∈(0,1),β∈(0,1),
Figure BDA00030061156400000211
表示对某数取整且取整后的值不大于该数,
然后,由混沌映射的初值x1和参数λ,对如下公式(4)所示Bernoulli混沌映射进行迭代,式中k表示迭代次数(k=1,2,...)、xk+1表示第k次迭代得到的混沌信号,
Figure BDA00030061156400000212
得到混沌序列X={x1,x2,...},
最后,对混沌序列X={x1,x2,...}进行如下操作:
S10.令混沌序列Y为空序列,且i=1,
S11.从混沌序列X中抽取第n个元素,并放入混沌序列Y中,即Y=[Y,xn],
S12.比较i与
Figure BDA0003006115640000031
的大小,若
Figure BDA0003006115640000032
则对抽取位置n按照如下公式(5)进行调整,且令i=i+1,随后转向步骤S11,
Figure BDA0003006115640000033
Figure BDA0003006115640000034
则停止操作,从而得到混沌序列
Figure BDA0003006115640000035
(3)组合二进制矩阵B的行、列置乱
首先,从混沌序列
Figure BDA0003006115640000036
中第1个元素开始连续抽取8个元素,得到混沌序列Y1={Y11,Y12,...,Y17,Y18}={Y1,Y2,...,Y7,Y8},按降序排序,根据混沌序列Y1排序前、后的位置变化置乱规则,对组合二进制矩阵B按行进行置乱,得到行置乱后的二进制矩阵
Figure BDA0003006115640000037
其中混沌序列Y1排序前、后的位置变化置乱规则可表示为{T11,T12,...,T17,T18},
Figure BDA0003006115640000038
然后,从混沌序列
Figure BDA0003006115640000039
中第9个元素开始连续抽取
Figure BDA00030061156400000310
个元素,得到混沌序列
Figure BDA00030061156400000311
按降序排序,根据混沌序列Y2排序前、后的位置变化置乱规则,对行置乱后的二进制矩阵
Figure BDA00030061156400000312
按列进行置乱,得到行列置乱后的二进制矩阵
Figure BDA00030061156400000313
其中混沌序列Y2排序前、后的位置变化置乱规则可表示为
Figure BDA00030061156400000314
Figure BDA0003006115640000041
最后,利用bin2dec(·)函数,依次将行列置乱后的二进制矩阵
Figure BDA0003006115640000042
的每列元素
Figure BDA0003006115640000043
转换成数值型数据
Figure BDA0003006115640000044
其中
Figure BDA0003006115640000045
表示为
Figure BDA0003006115640000046
从而得到数值序列
Figure BDA0003006115640000047
(4)二维码的生成
Figure BDA0003006115640000048
其中,
Figure BDA0003006115640000049
表示对某数取整且取整后的值不小于该数,
然后,按照自定义的矩阵数据填放规则,将数值序列
Figure BDA00030061156400000410
中元素依次填放入表征灰度图片的矩阵M中,从而生成灰度图片C,其中矩阵M的大小为H×L,灰度图片C的大小为30H×30L,
最后,将商品标识码A和生成的灰度图片C进行组合,并利用二维码生成器将组合的商品标识码和灰度图片转换为二维码,从而得到商品防伪二维码。
进一步地,一种基于置乱加密的商品防伪二维码生成方法里步骤(1)中所述的将表征某件商品唯一身份信息的商品标识码A,逐个字符转换为数值型数据,是指将商品标识码A中逐个字符采用unicode2native(·)函数转换为数值型数据,即对于双字节字符的转换表示为
Figure BDA0003006115640000051
对于单字节字符的转换表示为
Figure BDA0003006115640000052
从而得到数值序列
Figure BDA0003006115640000053
进一步地,一种基于置乱加密的商品防伪二维码生成方法里步骤(1)中所述的依次将数值序列P中元素Pi逐个转换成8bits的二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8},是指采用dec2bin(Pi,8)函数,即[PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8]=dec2bin(Pi,8)。
进一步地,一种基于置乱加密的商品防伪二维码生成方法里步骤(4)中所述的按照自定义的矩阵数据填放规则,将数值序列
Figure BDA0003006115640000054
中元素依次填放入表征灰度图片的矩阵M中,是指按如下三个步骤进行:
步骤1.判断数值序列
Figure BDA0003006115640000055
的长度
Figure BDA0003006115640000056
是否小于数值H×L,
如果是,则在数值序列
Figure BDA00030061156400000516
的尾端增补上
Figure BDA0003006115640000057
个元素,数值大小为0且最后一个元素大小为
Figure BDA0003006115640000058
得到增补后的数值序列
Figure BDA0003006115640000059
Figure BDA00030061156400000510
如果不是,则令增补后的数值序列
Figure BDA00030061156400000511
等于数值序列
Figure BDA00030061156400000512
Figure BDA00030061156400000513
步骤2.从表征灰度图片的矩阵M的左上角位置开始,按行且每行从左往右,依次将增补后的数值序列
Figure BDA00030061156400000514
中元素填放入矩阵M中,表示如下,
Figure BDA00030061156400000515
步骤3.将矩阵M中各元素分别用小矩阵块代替,小矩阵块的矩阵大小为30×30、元素数值均与M中该元素数值一致,表示如下,
Figure BDA0003006115640000061
将矩阵MC转换为灰度图片,从而生成灰度图片C,其中灰度图片C的大小为30H×30L。
进一步地,一种基于置乱加密的商品防伪二维码生成方法里步骤(4)中所述的将商品标识码A和生成的灰度图片C进行组合,是指将生成的灰度图片C与商品标识码A上下连接的组合方式,即将商品标识码A放在生成的灰度图片C正下方。
有益效果:本发明利用混沌映射迭代并抽取产生的混沌序列,对商品标识码转换而成的组合二进制矩阵分别按行、按列进行置乱,并将行列置乱后二进制矩阵中每列元素转换而成的数值型数据依次填入表征灰度图片的矩阵中,生成一幅灰度图像,进而组合生成商品防伪二维码,以此保证所提基于置乱加密的商品防伪二维码生成方法简单可行,具有很强的安全性、不易破解,生成的商品防伪二维码具有“唯一性和不可伪造性”。
附图说明
图1为本发明的一种基于置乱加密的商品防伪二维码生成流程示意图;
图2为本发明的实施例1中的灰度图片C;
图3为本发明的实施例1中的商品防伪二维码。
具体实施方式
如图1所示的一种基于置乱加密的商品防伪二维码生成方法,包括如下几个步骤:
(1)转码
首先,将表征某件商品唯一身份信息的商品标识码A,逐个字符采用unicode2native(·)函数转换为数值型数据,即对于双字节字符的转换表示为
Figure BDA0003006115640000062
对于单字节字符的转换表示为
Figure BDA0003006115640000063
从而得到数值序列
Figure BDA0003006115640000064
Figure BDA0003006115640000066
然后,采用dec2bin(Pi,8)函数,依次将数值序列P中元素Pi逐个转换成8bits的二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8},并将
Figure BDA0003006115640000065
个二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8}从左往右逐列填入矩阵B中,其中
Figure BDA0003006115640000071
矩阵某行对应于各二进制序列的某位,从而得到组合二进制矩阵B,
Figure BDA0003006115640000072
其中商品标识码A为GBK编码的字符,商品标识码A的长度表示为
Figure BDA0003006115640000073
数值序列P的长度为
Figure BDA0003006115640000074
组合二进制矩阵B的大小为
Figure BDA0003006115640000075
Figure BDA0003006115640000076
(2)混沌序列的产生
首先,利用数值序列P及其转换的组合二进制矩阵B,以及外部密钥α和β,按照如下所示公式分别计算得到Bernoulli混沌映射的初值x1和参数λ以及初次抽取位置n,
Figure BDA0003006115640000077
x1=0.02+mod(α+kp,0.98),
λ=0.01+mod(β+kp,0.99),
Figure BDA0003006115640000078
其中,<B>表示组合二进制矩阵B中含有二进制位‘0’的个数,外部密钥满足α∈(0,1),β∈(0,1),
Figure BDA0003006115640000079
表示对某数取整且取整后的值不大于该数,
然后,由混沌映射的初值x1和参数λ,对如下公式所示的Bernoulli混沌映射进行迭代,式中k表示迭代次数(k=1,2,...)、xk+1表示第k次迭代得到的混沌信号,
Figure BDA00030061156400000710
得到混沌序列X={x1,x2,...},
最后,对混沌序列X={x1,x2,...}进行如下操作:
S10.令混沌序列Y为空序列,且i=1,
S11.从混沌序列X中抽取第n个元素,并放入混沌序列Y中,即Y=[Y,xn],
S12.比较i与
Figure BDA0003006115640000081
的大小,若
Figure BDA0003006115640000082
则对抽取位置n按照如下所示公式进行调整,且令i=i+1,随后转向步骤S11,
Figure BDA0003006115640000083
Figure BDA0003006115640000084
则停止操作,从而得到混沌序列
Figure BDA0003006115640000085
(3)组合二进制矩阵B的行、列置乱
首先,从混沌序列
Figure BDA0003006115640000086
中第1个元素开始连续抽取8个元素,得到混沌序列Y1={Y11,Y12,...,Y17,Y18}={Y1,Y2,...,Y7,Y8},按降序排序,根据混沌序列Y1排序前、后的位置变化置乱规则,对组合二进制矩阵B按行进行置乱,得到行置乱后的二进制矩阵
Figure BDA0003006115640000087
其中混沌序列Y1排序前、后的位置变化置乱规则可表示为{T11,T12,...,T17,T18},
Figure BDA0003006115640000088
然后,从混沌序列
Figure BDA0003006115640000089
中第9个元素开始连续抽取
Figure BDA00030061156400000810
个元素,得到混沌序列
Figure BDA00030061156400000811
按降序排序,根据混沌序列Y2排序前、后的位置变化置乱规则,对行置乱后的二进制矩阵
Figure BDA00030061156400000812
按列进行置乱,得到行列置乱后的二进制矩阵
Figure BDA00030061156400000813
其中混沌序列Y2排序前、后的位置变化置乱规则可表示为
Figure BDA00030061156400000814
Figure BDA00030061156400000815
Figure BDA0003006115640000091
最后,利用bin2dec(·)函数,依次将行列置乱后的二进制矩阵
Figure BDA0003006115640000092
的每列元素
Figure BDA0003006115640000093
转换成数值型数据
Figure BDA0003006115640000094
其中
Figure BDA0003006115640000095
表示为
Figure BDA0003006115640000096
从而得到数值序列
Figure BDA0003006115640000097
(4)二维码的生成
首先,确定灰度图片的大小,令行数为H,列数为L,其中列数
Figure BDA0003006115640000098
行数H满足如下,
Figure BDA0003006115640000099
其中,
Figure BDA00030061156400000910
表示对某数取整且取整后的值不小于该数,
然后,依次按如下步骤进行:
步骤①.判断数值序列
Figure BDA00030061156400000911
的长度
Figure BDA00030061156400000912
是否小于数值H×L,
如果是,则在数值序列
Figure BDA00030061156400000913
的尾端增补上
Figure BDA00030061156400000914
个元素,数值大小为0且最后一个元素大小为
Figure BDA00030061156400000915
得到增补后的数值序列
Figure BDA00030061156400000916
Figure BDA00030061156400000917
如果不是,则令增补后的数值序列
Figure BDA00030061156400000918
等于数值序列
Figure BDA00030061156400000919
Figure BDA00030061156400000920
步骤②.从表征灰度图片的矩阵M的左上角位置开始,按行且每行从左往右,依次将增补后的数值序列
Figure BDA00030061156400000921
中元素填放入矩阵M中,表示如下,
Figure BDA00030061156400000922
步骤③.将矩阵M中各元素分别用小矩阵块代替,小矩阵块的矩阵大小为30×30、元素数值均与M中该元素数值一致,表示如下,
Figure BDA0003006115640000101
将矩阵MC转换为灰度图片,从而生成灰度图片C,其中灰度图片C的大小为30H×30L,
最后,将生成的灰度图片C与商品标识码A上下连接的组合方式,即将商品标识码A放在生成的灰度图片C正下方,并利用二维码生成器将组合的商品标识码和灰度图片转换为二维码,从而得到商品防伪二维码。
下面结合具体的实施例对本发明作进一步说明:
实施例1
按照上述一种基于置乱加密的商品防伪二维码生成方法,步骤如下:
(1)首先,将表征某件商品唯一身份信息的商品标识码A=“江苏省##集团××公司☆****商品生产日期2021-01-01生产线Ⅱ01生产序号123456”,逐个字符转换为数值型数据,得到数值序列P={189,173,203,213,202,161,163,163,163,163,188,175,205,197,161,193,161,193,185,171,203,190,161,238,42,42,42,42,201,204,198,183,32,201,250,178,250,200,213,198,218,50,48,50,49,45,48,49,45,48,49,32,201,250,178,250,207,223,162,242,163,176,163,177,32,201,250,178,250,208,242,186,197,163,177,163,178,163,179,163,180,163,181,163,182},其中商品标识码A为GBK编码的字符,商品标识码A的长度表示为
Figure BDA0003006115640000102
数值序列P的长度为
Figure BDA0003006115640000103
然后,依次将数值序列P中元素Pi逐个转换成8bits的二进制序列,并从左往右逐列填入二进制矩阵B中,从而得到组合二进制矩阵B,
Figure BDA0003006115640000111
(2)混沌序列的产生
首先,利用数值序列P及其转换的二进制矩阵B,以及外部密钥α=0.12345和β=0.54321,按照如下所示的公式分别计算得到Bernoulli混沌映射的初值x1和参数λ以及初次抽取位置n,
Figure BDA0003006115640000112
x1=0.02+mod(0.12345+0.320977516596008,0.98)=0.464427516596008,
λ=0.01+mod(0.54321+0.320977516596008,0.99)=0.874187516596008,
Figure BDA0003006115640000113
然后,由混沌映射的初值x1=0.464427516596008和参数λ=0.874187516596008,对如下公式所示的Bernoulli混沌映射进行迭代,得到混沌序列X={x1,x2,...},
Figure BDA0003006115640000114
最后,对混沌序列X={x1,x2,...}进行如下操作:
S10.令混沌序列Y为空序列,且i=1,
S11.从混沌序列X中抽取第n个元素,并放入混沌序列Y中,即Y=[Y,xn],
S12.比较i与93的大小,若i<93,则对抽取位置n按照如下所示公式进行调整,且令i=i+1,随后转向步骤S11,
Figure BDA0003006115640000121
若i=93,则停止操作,从而得到混沌序列Y={Y1,Y2,...,Y92,Y93};
(3)组合二进制矩阵B的行、列置乱
首先,从混沌序列Y={Y1,Y2,...,Y92,Y93}中第1个元素开始连续抽取8个元素,得到混沌序列Y1={Y1,Y2,...,Y7,Y8},按降序排序,根据混沌序列Y1排序前、后的位置变化置乱规则,对组合二进制矩阵B按行进行置乱,得到行置乱后的二进制矩阵
Figure BDA0003006115640000122
其中混沌序列Y1排序前、后的位置变化置乱规则可表示为{8,5,3,7,1,6,4,2},
Figure BDA0003006115640000123
然后,从混沌序列Y={Y1,Y2,...,Y92,Y93}中第9个元素开始连续抽取85个元素,得到混沌序列Y2={Y21,Y22,...,Y284,Y285},按降序排序,根据混沌序列Y2排序前、后的位置变化置乱规则,对行置乱后的二进制矩阵
Figure BDA0003006115640000124
按列进行置乱,得到行列置乱后的二进制矩阵
Figure BDA0003006115640000125
其中混沌序列Y2排序前、后的位置变化置乱规则可表示为{51,25,32,43,1,6,14,41,67,20,12,22,11,7,48,13,80,16,10,72,2,57,19,17,36,74,60,9,33,61,70,27,73,3,15,53,47,30,84,54,62,42,34,18,46,28,44,37,38,58,5,71,26,55,76,39,40,59,66,24,81,21,85,45,63,64,68,4,50,83,49,52,78,8,69,79,23,56,31,65,35,29,75,82,77},
Figure BDA0003006115640000131
最后,依次将行列置乱后的二进制矩阵
Figure BDA0003006115640000132
的每列元素
Figure BDA0003006115640000133
转换成数值型数据
Figure BDA0003006115640000134
从而得到数值序列
Figure BDA0003006115640000135
Figure BDA0003006115640000136
(4)二维码的生成
首先,确定灰度图片的大小,得到行数为H=9,列数为L=10
然后,依次按如下步骤进行:
步骤①.在数值序列
Figure BDA0003006115640000137
的尾端增补上5个元素,数值大小为0且最后一个元素大小为85,得到增补后的数值序列
Figure BDA0003006115640000138
Figure BDA0003006115640000139
步骤②.从表征灰度图片的矩阵M的左上角位置开始,按行且每行从左往右,依次将增补后的数值序列
Figure BDA00030061156400001310
中元素填放入矩阵M中,其中矩阵M的大小为9×10,表示如下,
Figure BDA0003006115640000141
步骤③.将矩阵M中各元素分别用小矩阵块代替,小矩阵块的矩阵大小为30×30、元素数值均与M中该元素数值一致,表示如下,
Figure BDA0003006115640000142
随后将矩阵MC转换为灰度图片,从而生成灰度图片C,如图2所示,其中灰度图片C的大小为270×300。
最后,将生成的灰度图片C与商品标识码A上下连接的组合方式,即将商品标识码A放在生成的灰度图片C正下方,并利用二维码生成器将组合的商品标识码和灰度图片转换为二维码,从而得到商品防伪二维码,如图3所示。
实施例2
按照上述一种基于置乱加密的商品防伪二维码生成方法,某件商品的商品标识码字符串A及其商品防伪二维码生成步骤与具体实施例1相似,仅某个外部密钥发生细微变化:α=0.12345000000001;或β=0.54321000000001,商品防伪二维码的生成结果如表1所示。由下表可见:一旦外部密钥即使发生细微变化,生成的商品防伪二维码会发生极大的变化,由此可见本专利所提一种基于置乱加密的商品防伪二维码生成方法具有密钥敏感性。
表1外部密钥发生微变时,商品防伪二维码的生成结果
Figure BDA0003006115640000151
Figure BDA0003006115640000161
Figure BDA0003006115640000171
实施例3
按照上述一种基于置乱加密的商品防伪二维码生成方法,外部密钥及其商品防伪二维码生成步骤与具体实施例1相似,仅某件商品的商品标识码字符串A发生细微变化“冮苏省##集团××公司☆****商品生产日期2021-01-01生产线Ⅱ01生产序号123456”;或者“江苏省##集团××公司☆****商品生产日期2021-11-01生产线Ⅱ01生产序号123456”;或者“江苏省##集团××公司☆****商品生产日期2021-01-01生产线Ⅱ02生产序号123465”,商品防伪二维码的生成结果如表2所示。由下表可见:一旦表征某件商品唯一身份信息的商品标识码字符串即使发生细微变化,生成的商品防伪二维码会发生极大的变化,由此可见本专利所提一种基于置乱加密的商品防伪二维码生成方法对商品身份信息(即商品标识码)具有敏感性。
表2商品标识码发生微变时,商品防伪二维码的生成结果
Figure BDA0003006115640000172
Figure BDA0003006115640000181
Figure BDA0003006115640000191
Figure BDA0003006115640000201
Figure BDA0003006115640000211
由上述具体实施例2和例3分析可知,本专利所提一种基于置乱加密的商品防伪二维码生成方法所生成商品防伪二维码不仅与外部密钥密切相关,而且依赖于表征某件商品唯一身份信息的商品标识码,因此本专利所提的一种基于置乱加密的商品防伪二维码生成方法具有很强的安全性,可以较好地抵抗已知/选择明文攻击,不易破解,以保证生成的商品防伪二维码具有“唯一性和不可伪造性”。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

Claims (5)

1.一种基于置乱加密的商品防伪二维码生成方法,其特征在于,包括如下几个步骤:
(1)转码
首先,将表征某件商品唯一身份信息的商品标识码A,逐个字符转换为数值型数据,得到数值序列
Figure FDA0003006115630000011
然后,依次将数值序列P中元素Pi逐个转换成8bits的二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8},并将
Figure FDA0003006115630000012
个二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8}从左往右逐列填入矩阵B中,其中
Figure FDA0003006115630000013
矩阵某行对应于各二进制序列的某位,从而得到组合二进制矩阵B,
Figure FDA0003006115630000014
其中商品标识码A为GBK编码的字符,商品标识码A的长度表示为
Figure FDA0003006115630000015
数值序列P的长度为
Figure FDA0003006115630000016
组合二进制矩阵B的大小为
Figure FDA0003006115630000017
Figure FDA0003006115630000018
(2)混沌序列的产生
首先,利用数值序列P及其转换的组合二进制矩阵B,以及外部密钥α和β,按照如下公式(1)-(3)分别计算得到Bernoulli混沌映射的初值x1和参数λ以及初次抽取位置n,
Figure FDA0003006115630000019
x1=0.02+mod(α+kp,0.98), (1)
λ=0.01+mod(β+kp,0.99), (2)
Figure FDA00030061156300000110
其中,<B>表示组合二进制矩阵B中含有二进制位‘0’的个数,外部密钥满足α∈(0,1),β∈(0,1),
Figure FDA00030061156300000111
表示对某数取整且取整后的值不大于该数,
然后,由混沌映射的初值x1和参数λ,对如下公式(4)所示Bernoulli混沌映射进行迭代,式中k表示迭代次数(k=1,2,...)、xk+1表示第k次迭代得到的混沌信号,
Figure FDA0003006115630000021
得到混沌序列X={x1,x2,...},
最后,对混沌序列X={x1,x2,...}进行如下操作:
S10.令混沌序列Y为空序列,且i=1,
S11.从混沌序列X中抽取第n个元素,并放入混沌序列Y中,即Y=[Y,xn],
S12.比较i与
Figure FDA0003006115630000022
的大小,若
Figure FDA0003006115630000023
则对抽取位置n按照如下公式(5)进行调整,且令i=i+1,随后转向步骤S11,
Figure FDA0003006115630000024
Figure FDA0003006115630000025
则停止操作,从而得到混沌序列
Figure FDA0003006115630000026
(3)组合二进制矩阵B的行、列置乱
首先,从混沌序列
Figure FDA0003006115630000027
中第1个元素开始连续抽取8个元素,得到混沌序列Y1={Y11,Y12,...,Y17,Y18}={Y1,Y2,...,Y7,Y8},按降序排序,根据混沌序列Y1排序前、后的位置变化置乱规则,对组合二进制矩阵B按行进行置乱,得到行置乱后的二进制矩阵
Figure FDA0003006115630000028
其中混沌序列Y1排序前、后的位置变化置乱规则可表示为{T11,T12,...,T17,T18},
Figure FDA0003006115630000029
然后,从混沌序列
Figure FDA00030061156300000210
中第9个元素开始连续抽取
Figure FDA00030061156300000211
个元素,得到混沌序列
Figure FDA00030061156300000212
按降序排序,根据混沌序列Y2排序前、后的位置变化置乱规则,对行置乱后的二进制矩阵
Figure FDA00030061156300000213
按列进行置乱,得到行列置乱后的二进制矩阵
Figure FDA00030061156300000214
其中混沌序列Y2排序前、后的位置变化置乱规则可表示为
Figure FDA00030061156300000215
Figure FDA0003006115630000031
最后,利用bin2dec(·)函数,依次将行列置乱后的二进制矩阵
Figure FDA0003006115630000032
的每列元素
Figure FDA0003006115630000033
转换成数值型数据
Figure FDA0003006115630000034
其中
Figure FDA0003006115630000035
表示为
Figure FDA0003006115630000036
从而得到数值序列
Figure FDA0003006115630000037
(4)二维码的生成
首先,确定灰度图片的大小,令行数为H,列数为L,其中列数
Figure FDA0003006115630000038
行数H满足如下,
Figure FDA0003006115630000039
其中,
Figure FDA00030061156300000310
表示对某数取整且取整后的值不小于该数,
然后,按照自定义的矩阵数据填放规则,将数值序列
Figure FDA00030061156300000311
中元素依次填放入表征灰度图片的矩阵M中,从而生成灰度图片C,其中矩阵M的大小为H×L,灰度图片C的大小为30H×30L,
最后,将商品标识码A和生成的灰度图片C进行组合,并利用二维码生成器将组合的商品标识码和灰度图片转换为二维码,从而得到商品防伪二维码。
2.根据权利要求1所述的一种基于置乱加密的商品防伪二维码生成方法,其特征在于:步骤(1)中所述的将表征某件商品唯一身份信息的商品标识码A,逐个字符转换为数值型数据,是指将商品标识码A中逐个字符采用unicode2native(·)函数转换为数值型数据,即对于双字节字符的转换表示为
Figure FDA0003006115630000041
对于单字节字符的转换表示为
Figure FDA0003006115630000042
从而得到数值序列
Figure FDA0003006115630000043
3.根据权利要求1所述的一种基于置乱加密的商品防伪二维码生成方法,其特征在于:步骤(1)中所述的依次将数值序列P中元素Pi逐个转换成8bits的二进制序列{PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8},是指采用dec2bin(Pi,8)函数,即[PBi1,PBi2,PBi3,PBi4,PBi5,PBi6,PBi7,PBi8]=dec2bin(Pi,8)。
4.根据权利要求1所述的一种基于置乱加密的商品防伪二维码生成方法,其特征在于:步骤(4)中所述的按照自定义的矩阵数据填放规则,将数值序列
Figure FDA0003006115630000044
中元素依次填放入表征灰度图片的矩阵M中,是指按如下三个步骤进行:
步骤1.判断数值序列
Figure FDA0003006115630000045
的长度
Figure FDA0003006115630000046
是否小于数值H×L,
如果是,则在数值序列
Figure FDA0003006115630000047
的尾端增补上
Figure FDA0003006115630000048
个元素,数值大小为0且最后一个元素大小为
Figure FDA0003006115630000049
得到增补后的数值序列
Figure FDA00030061156300000410
Figure FDA00030061156300000411
如果不是,则令增补后的数值序列
Figure FDA00030061156300000412
等于数值序列
Figure FDA00030061156300000413
Figure FDA00030061156300000414
步骤2.从表征灰度图片的矩阵M的左上角位置开始,按行且每行从左往右,依次将增补后的数值序列
Figure FDA00030061156300000415
中元素填放入矩阵M中,表示如下,
Figure FDA00030061156300000416
步骤3.将矩阵M中各元素分别用小矩阵块代替,小矩阵块的矩阵大小为30×30、元素数值均与M中该元素数值一致,表示如下,
Figure FDA0003006115630000051
将矩阵MC转换为灰度图片,从而生成灰度图片C,其中灰度图片C的大小为30H×30L。
5.根据权利要求1所述的一种基于置乱加密的商品防伪二维码生成方法,其特征在于:步骤(4)中所述的将商品标识码A和生成的灰度图片C进行组合,是指将生成的灰度图片C与商品标识码A上下连接的组合方式,即将商品标识码A放在生成的灰度图片C正下方。
CN202110362350.2A 2021-04-02 2021-04-02 一种基于置乱加密的商品防伪二维码生成方法 Pending CN113052286A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110362350.2A CN113052286A (zh) 2021-04-02 2021-04-02 一种基于置乱加密的商品防伪二维码生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110362350.2A CN113052286A (zh) 2021-04-02 2021-04-02 一种基于置乱加密的商品防伪二维码生成方法

Publications (1)

Publication Number Publication Date
CN113052286A true CN113052286A (zh) 2021-06-29

Family

ID=76517250

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110362350.2A Pending CN113052286A (zh) 2021-04-02 2021-04-02 一种基于置乱加密的商品防伪二维码生成方法

Country Status (1)

Country Link
CN (1) CN113052286A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113935344A (zh) * 2021-10-12 2022-01-14 南通大学 一种基于商标图片置乱加密的商品防伪码批量生成方法
CN113935345A (zh) * 2021-10-12 2022-01-14 南通大学 一种基于字符串转图片加密的商品防伪码批量生成方法
CN113947096A (zh) * 2021-10-12 2022-01-18 南通大学 一种基于图片转字符串解密的商品防伪码识别方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975866A (zh) * 2016-04-26 2016-09-28 长安大学 基于同类系数置乱的jpeg图像加密方法
CN106997606A (zh) * 2017-02-14 2017-08-01 陕西师范大学 一种基于超混沌系统投影同步的图像加密方法
CN109933755A (zh) * 2019-03-21 2019-06-25 江苏工程职业技术学院 一种垃圾分类码的生成方法
CN111382452A (zh) * 2020-02-25 2020-07-07 南通大学 一种汉字转图片的加密方法
US20200287704A1 (en) * 2020-05-22 2020-09-10 Qiang Zhang Color Image Encryption Method Based on DNA Strand Displacement Analog Circuit
CN111985591A (zh) * 2020-07-24 2020-11-24 南通大学 一种基于字符串加密的商品防伪码生成方法
CN112001468A (zh) * 2020-07-24 2020-11-27 南通大学 一种字符型商品防伪码生成与识别方法
CN112116046A (zh) * 2020-09-28 2020-12-22 江苏工程职业技术学院 一种基于分层加密的垃圾分类二维码生成方法
CN112149773A (zh) * 2020-09-16 2020-12-29 南通大学 一种基于汉字加密的商品防伪码生成方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105975866A (zh) * 2016-04-26 2016-09-28 长安大学 基于同类系数置乱的jpeg图像加密方法
CN106997606A (zh) * 2017-02-14 2017-08-01 陕西师范大学 一种基于超混沌系统投影同步的图像加密方法
CN109933755A (zh) * 2019-03-21 2019-06-25 江苏工程职业技术学院 一种垃圾分类码的生成方法
CN111382452A (zh) * 2020-02-25 2020-07-07 南通大学 一种汉字转图片的加密方法
US20200287704A1 (en) * 2020-05-22 2020-09-10 Qiang Zhang Color Image Encryption Method Based on DNA Strand Displacement Analog Circuit
CN111985591A (zh) * 2020-07-24 2020-11-24 南通大学 一种基于字符串加密的商品防伪码生成方法
CN112001468A (zh) * 2020-07-24 2020-11-27 南通大学 一种字符型商品防伪码生成与识别方法
CN112149773A (zh) * 2020-09-16 2020-12-29 南通大学 一种基于汉字加密的商品防伪码生成方法
CN112116046A (zh) * 2020-09-28 2020-12-22 江苏工程职业技术学院 一种基于分层加密的垃圾分类二维码生成方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113935344A (zh) * 2021-10-12 2022-01-14 南通大学 一种基于商标图片置乱加密的商品防伪码批量生成方法
CN113935345A (zh) * 2021-10-12 2022-01-14 南通大学 一种基于字符串转图片加密的商品防伪码批量生成方法
CN113947096A (zh) * 2021-10-12 2022-01-18 南通大学 一种基于图片转字符串解密的商品防伪码识别方法

Similar Documents

Publication Publication Date Title
CN112884104B (zh) 一种基于混沌加密的商品防伪二维码生成方法
CN112884105B (zh) 一种基于移位加密的商品防伪二维码生成方法
CN113052286A (zh) 一种基于置乱加密的商品防伪二维码生成方法
CN109472338B (zh) 一种商品防伪二维码的批量生成方法
CN113255860B (zh) 一种基于分层加密的商品防伪二维码生成方法
CN113159252A (zh) 一种基于不同置乱规则的商品防伪二维码生成方法
CN101847225B (zh) 一种基于cn39码管理商品流通的方法
CN112001468B (zh) 一种字符型商品防伪码生成与识别方法
CN112001467B (zh) 一种基于图片加解密的商品防伪码生成与识别方法
JP2005512166A (ja) ソフト・コピー・テキスト文書の中に見えないようにデータを埋め込み隠すための方法
Espejel-Trujillo et al. Identity document authentication based on VSS and QR codes
CN112149774B (zh) 一种汉字商品防伪码生成方法
CN112149773B (zh) 一种基于汉字加密的商品防伪码生成方法
CN105354717B (zh) 一种彩色商品防伪码生成方法
CN111382820B (zh) 一种四宫格纯色商品防伪码生成方法
CN112070636B (zh) 一种具有多级证据链的图像电子合同签署及验证方法
CN104376236B (zh) 基于伪装学的方案自适应数字水印嵌入方法及提取方法
Srilakshmi et al. Text embedding using image steganography in spatial domain
CN113935345B (zh) 一种基于字符串转图片加密的商品防伪码批量生成方法
Tseng et al. Image hiding with an improved genetic algorithm and an optimal pixel adjustment process
CN112101962A (zh) 一种数据安全防伪控制方法
Mohammed et al. DNA-based steganography using neural networks
CN114741712A (zh) 一种基于分层置乱的汉字加密方法
CN113935343B (zh) 一种基于字符串转图片加密的商品防伪码生成方法
Anand et al. New approach in steganography by integrating different LSB algorithms and applying randomization concept to enhance security

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20210629

RJ01 Rejection of invention patent application after publication