[发明专利]一种基于分层加密的垃圾分类二维码生成方法有效
申请号: | 202011038775.X | 申请日: | 2020-09-28 |
公开(公告)号: | CN112116046B | 公开(公告)日: | 2022-01-11 |
发明(设计)人: | 吴新华 | 申请(专利权)人: | 江苏工程职业技术学院 |
主分类号: | G06K17/00 | 分类号: | G06K17/00;G06F21/60;G06F17/16;G06Q50/26 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 许洁 |
地址: | 226000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 分层 加密 垃圾 分类 二维码 生成 方法 | ||
1.一种基于分层加密的垃圾分类二维码生成方法,其特征在于,包括如下几个步骤:
(1)转码
首先,将垃圾袋身份信息编码生成唯一的中英文字符型垃圾袋身份码,表示为M1M2...MkMk+1Mk+2...Mk+LMk+L+1Mk+L+2...Mk+L+pMk+L+p+1Mk+L+p+2...Mk+L+p+nMk+L+p+n+1Mk+L+p+n+2,其中M1M2...Mk为省市区,Mk+1Mk+2...Mk+L为具体居住地址,Mk+L+1Mk+L+2...Mk+L+p为联系人和联系电话,Mk+L+p+1Mk+L+p+2...Mk+L+p+n为制码年月日,Mk+L+p+n+1Mk+L+p+n+2为垃圾分类颜色信息,相互用英文空格间隔;
然后,从垃圾袋身份码中抽取出身份显示码(M1M2...MkMk+L+p+1Mk+L+p+2...Mk+L+p+nMk+L+p+n+1Mk+L+p+n+2)和身份隐藏码(Mk+1Mk+2...Mk+LMk+L+1Mk+L+2...Mk+L+p),并将身份显示码逐个字符转换成数值型数据,得到对应的数值序列同时将身份隐藏码逐个字符转换成数值型数据,得到对应的数值序列
最后,依次将数值序列P1中元素P1i逐个转换成8bits的二进制序列{PB1i1,PB1i2,PB1i3,PB1i4,PB1i5,PB1i6,PB1i7,PB1i8}、将数值序列P2中元素P2i逐个转换成8bits的二进制序列{PB2i1,PB2i2,PB2i3,PB2i4,PB2i5,PB2i6,PB2i7,PB2i8},并将个二进制序列{PB1i1,PB1i2,PB1i3,PB1i4,PB1i5,PB1i6,PB1i7,PB1i8}从左往右逐列填入矩阵B1中,其中矩阵某行对应于各二进制序列的某位,从而得到组合二进制矩阵B1:
同时将个二进制序列{PB2i1,PB2i2,PB2i3,PB2i4,PB2i5,PB2i6,PB2i7,PB2i8}从左往右逐列填入矩阵B2中,其中矩阵某行对应于各二进制序列的某位,从而得到组合二进制矩阵B2:
其中,垃圾袋身份码包括GB2312字符集中双字节编码的汉字和ASCLL码值∈[32,126]的可见字符,垃圾袋身份码长度为k+L+p+n+6,数值序列P1的长度为数值序列P2的长度为组合二进制矩阵B1的大小为组合二进制矩阵B2的大小为
(2)组合二进制矩阵B2的置乱
首先,利用数值序列P1及其转换而成的组合二进制矩阵B1,数值序列P2转换而成的组合二进制矩阵B2,以及外部密钥α和β,按照如下(1)-(5)公式分别计算得到Logistic混沌映射的初值x1和参数μ、抽取开始位置m,以及抽取间隔数n1、n2,
令
则
x1=α+mod(α+kp,1-α), (1)
μ=β+mod(β-kp,4-β), (2)
其中,B11,i,B12,i,B13,i,B14,i,B15,i,B16,i,B17,i,B18,i表示组合二进制矩阵B1第i列或者二进制序列{PB1i1,PB1i2,...,PB1i7,PB1i8}中二进制位‘1’的个数,B2表示组合二进制矩阵B2中二进制位‘1’的个数,外部密钥满足α∈(0,1),β∈(3.57,4);
然后,由混沌映射的初值x1和外部密钥μ,对如下公式(6)所示Logistic混沌映射进行迭代,式中k表示迭代次数(k=1,2,...)、xk+1表示第k次迭代得到的混沌信号,
xk+1=μ×xk×(1-xk) (6)
得到混沌信号序列X={x1,x2,...},从序列X中第m个元素开始依次间隔n1个元素取1个元素以形成长度为8的混沌信号序列Y={Y1,Y2,...,Y7,Y8},同时从序列X中第m个元素开始依次间隔n2个元素取1个元素以形成长度为的混沌信号序列
最后,将混沌信号序列Y按降序排序,根据混沌信号序列Y排序前、后的位置变化置乱规则,对二进制矩阵B2进行行置乱,得到行置乱后二进制矩阵再将混沌信号序列Z按降序排序,根据混沌信号序列Z排序前、后的位置变化置乱规则,对行置乱后二进制矩阵进行列置乱,得到表示如下的行列置乱后二进制矩阵
(3)行列置乱后二进制矩阵的按层分组、重组
首先,对行列置乱后二进制矩阵进行按层分组,将二进制矩阵中第1、3、5、7层元素分为1组,将二进制矩阵中第2、4、6、8层元素分为另1组,得到分层后的两组二进制矩阵BF1和BF2,表示为如下:
然后,将分层后的两组二进制矩阵BF1和BF2,按列进行如下重组操作:
S0:设两个大小为元素均为二进制‘0’的二进制矩阵BZ1和BZ2,令i=1,给定密钥k_switch,其中k_switch的取值为整数0、1、2或者3;
S1:判断k_switch的数值,
如果k_switch=0,则给二进制矩阵BZ1和BZ2的第i列元素分别赋值,表示为BZ1(1:8,i)=['010',(BF1(1:4,i))T,'1']T,BZ2(1:8,i)=['011',(BF2(1:4,i))T,'0']T,
如果k_switch=1,则给二进制矩阵BZ1和BZ2的第i列元素分别赋值,表示为BZ1(1:8,i)=['011',(BF1(1:4,i))T,'0']T,BZ2(1:8,i)=['01',(BF2(1:4,i))T,'10']T,
如果k_switch=2,则给二进制矩阵BZ1和BZ2的第i列元素分别赋值,表示为BZ1(1:8,i)=['01',(BF1(1:4,i))T,'10']T,BZ2(1:8,i)=['01',(BF2(1:4,i))T,'01']T,
如果k_switch=3,则给二进制矩阵BZ1和BZ2的第i列元素分别赋值,表示为BZ1(1:8,i)=['01',(BF1(1:4,i))T,'01']T,BZ2(1:8,i)=['010',(BF2(1:4,i))T,'1']T;
S2:将重组后的二进制矩阵BZ1和BZ2的第i列元素分别转换成数值型数据和表示为且令i=i+1,接着判断i的大小,如果则转入步骤S1,否则转入步骤S3;
S3:结束二进制序列的重组操作,从而得到重组后的二进制矩阵BZ1和BZ2,以及数值序列
(4)转码
将数值序列逐个元素转换为ASCII码值属于[32,126]的可见字符,得到字符序列同时将数值序列逐个元素转换为ASCII码值属于[32,126]的可见字符,得到字符序列然后将字符序列C1和C2顺序连接得到垃圾分类号C,即最后将垃圾袋身份显示码(M1M2...MkMk+L+p+1Mk+L+p+2…Mk+L+p+nMk+L+p+n+1Mk+L+p+n+2)和垃圾分类号进行组合,生成垃圾分类码,接着生成QR Code,即垃圾分类二维码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏工程职业技术学院,未经江苏工程职业技术学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011038775.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:绞盘自动偏转控制方法、装置及双轮铣槽机
- 下一篇:一种司美格鲁肽制备方法