基于Hash函数的条码生成系统技术方案

技术编号:12099575 阅读:91 留言:0更新日期:2015-09-23 17:19
条码是编译码领域用于个体标识的编码制式。EAN-13码易被伪造。基于Hash函数的条码生成系统通过Hash函数实现防伪认证。本系统也采用EAN-13码,但自行定义各码位代表的含义,采取6+6+1的方式。条码前6位批号CT6是截取当前计算机时钟CT的高19bit,转换成6位十进制数。条码中间6位认证码AC是截取Hash函数输出的前19bit,转换成6位十进制数,即AC=MSB19[Hash(CT||Ki)]。其中,Ki是厂家为该商品设置的密码,8个字符以上;||表示级联运算;MSB,(h)表示截取h的前i-bit。条码最后1位校验码的产生方式与普通EAN-13码完全相同。本系统兼容普通读码器,能提高厂商对产品的管理效率,节省成本,并实现商品的防伪认征,主要用于产生商品所需的条码,实现对商品的物流管理、市场监控与统计决策。

【技术实现步骤摘要】

基于Hash函数的条码生成系统是编译码领域(G09C)的一种条码产生技术,主要用于产生商品所需的条码,实现对商品的物流管理、市场监控与统计决策。
技术介绍
条码是当前广泛应用于个体标识的编码制式,分为一维码和二维码,各有优缺点。(I) 二维码的数据容量更大,但由于数据量变大,对于信息存储的机器要求变高;(2)相比于二维码,一维码更容易被辨识;(3)传统的商品统一标识目前是用一维码来标识,而随着网络发展而兴起的身份验证标识则大部分由二维码来标识。实名制火车票上的二维码泄露用户信息引起了大家的广泛关注。随着智能手机的普及,二维码应用越来越广泛,其安全性问题也口益突出。二维码技术成为手机病毒、钓鱼网站传播的新渠道。手机病毒伪装成手机聊天软件,并通过二维码提供下载链接,用户一旦扫描这个二维码,就会自动向手机发送短信,骗取手机话费等。普通条码特指一维码。一维条码技术是一种快速准确进行数据采集和自动识别的技术,其应用能提高信息录入的速度,减少差错率。目前使用很广泛的一维条码是EAN-13码。条码技术是实现物流管理的重要手段,但EAN-13码容易被伪造盗版。基于Hash函数的条码生成系统通过条码实现低成本物流管理,通过Hash函数实现防伪认证功能。
技术实现思路
【专利技术目的】为了方便生产商对产品的低成本管理,并提供商品的防伪认证功能,基于Hash函数的条码生成系统通过产生企业自己的商品条码,提高生产商对产品的物流管理效率,从而实现统计决策的功能,为生产商掌控市场用户行情、制定市场营销策略提供参考借鉴。【技术方案】常用商品条码EAN-13码由13位十进制数组成,其中前12位表示国家代码、厂商代码和商品代码,后I位为校验码。为了方便普通读码器识读,基于Hash函数的条码生成系统也采用EAN-13码,但自行定义各码位代表的含义,采取6+6+1的方式。条码前6位CT6表不商品部分生产时间批号。CT6 = (CT >> 13)其中CT为当前计算机时钟,是一个32bit的长整数;t > > i表示t右移i_bit。也就是说,条码前6位批号CT6是截取当前计算机时钟CT的高19bit,转换成6位十进制数。条码中间6位是由Hash函数产生的认证码AC。AC = MSB19 其中,Ki是厂家为该商品设置的密码,8个字符以上;I I表示级联运算WSBiQ1)表示截取h的前1-bit。也就是说,条码中间6位认证码AC是截取Hash函数输出的前19bit,转换成6位十进制数。考虑困家密码政策,Hash函数直接采用现有的算法。本系统选择了3种Hash函数来实现:SHA-1、SHA-512和SPONGENT,分别应用于32位平台、64位平台和资源受限环境。条码最后I位校验码的产生方式与普通EAN-13码完全相同。【有益效果】(I)方便管理,节省成本。EAN-13码成本低廉,对应用环境要求不高,识读快速准确,能提高生产商对产品的物流管理效率。(2)兼容性。常用商品条码EAN-13码由13位十进制数组成,其中前12位表示国家代码、厂商代码和商品代码,后I位为校验码。本系统也采用EAN13码,但自行定义各码位代表的含义,米取6+6+1的方式。条码前6位表不商品生产时间批号部分信息,中间6位是由Hash函数产生的认证码,最后I位校验码的产生方式与普通EAN-13码完全相同。这样方便普通读码器识读,兼容性强。(3)防伪与安全性。对于常用商品条码EAN-13码,他人能轻易伪造厂家的商品条码。本条码中间6位是由密码等信息经过单向Hash函数处理后产生的认证码。没有密码,他人无法伪造厂家的商品条码。Hash函数的单向性保证密码不会被破解。另外,通过为条码设置有效期防止他人复制。【附图说明】图1基于Hash函数的条码生成系统流程设计图说明:产生条码时,用户输入商品密码或者导入商品密码文件,同时选择Hash函数,然后点击生成按钮;系统把当前计算机时钟与商品密码级联起来,用Hash函数进行变换,产生一个条形码;用户选择条码保存路径把条码图片保存到本地。图2基于Hash函数的条码生成系统实现流程图说明:Program.cs是程序的主入口点,首先进入winform程序入口即BarCodeProducer.cs文件,这是系统界面的设计文件;用户输入商品密码,即content,同时选择Hash函数;BarCodeProducer.cs文件将content传到对应的HashCheck类中,获取hashCheckBit,再将hashCheckBit传到GetNewContent这个类中,获取完整的13位条码值newContent,再将newContent传到BarCodeProvider这个类中,产生条码图片,将图片传回BarCodeProducer,由窗口程序对应的组件进行展示;通过BarCodeProducer选择保存路径进行保存。【具体实施方式】为了方便普通读码器识读,基于Hash函数的条码生成系统也采用EAN-13码,但自行定义各码位代表的含义,米取6+6+1的方式。条码前6位CT6表不商品生产时间批号部分信息。CT6 = (CT >> 13)其中CT为当前计算机时钟,是一个32bit的长整数>> i表示t右移1-bit。也就是说,条码前6位批号CT6是截取当前计算机时钟CT的高19bit,转换成6位十进制数。条码中间6位是由Hash函数产生的认证码AC。AC = MSB19 其中,Ki是厂家为该商品设置的密码,8个字符以上;I I表示级联运算WSBiQ1)表示截取h的前1-bit。也就是说,条码中间6位认证码AC是截取Hash函数输出的前19bit,转换成6位十进制数。考虑国家密码政策,Hash函数直接采用现有的算法。本系统选择了3种Hash函数来实现:SHA-1、SHA-512和SPONGENT,分别应用于32位平台、64位平台和资源受限环境。条码最后I位校验码的产生方式与普通EAN-13码完全相同。最后,按照图2的实现流程图进行实现。【主权项】1.基于Hash函数的条码生成系统,其总体特征是:采用EAN-13码,但自行定义各码位代表的含义,米取6+6+1的方式;条码前6位表不商品生产时间批号部分信息,中间6位是由Hash函数产生的认证码,最后I位校验码的产生方式与普通EAN-13码完全相同。2.根据权利要求1所述的条码生成系统,其条码前6位批号CT6的产生方式为:CT6 = (CT >> 13) 其中,CT为当前计算机时钟,是一个32bit的长整数;t >> i表示t右移1-bit ;也就是说,条码前6位批号CT6是截取当前计算机时钟CT的高19bit,转换成6位十进制数。3.根据权利要求1所述的条码生成系统,其条码中间6位认证码AC的产生方式为:AC = MSB19 其中,Ki是厂家为该商品设置的密码,8个字符以上;CT是32bit长的计算机时钟;I表示级联运算WSBiQi)表示截取h的前1-bit ;也就是说,条码中间6位认证码AC是截取Hash函数输出的前19bit,转换成6位十进制数。【专利摘要】条码是编译码领域用于个体标识的编码制式。EAN-13码易被本文档来自技高网...

【技术保护点】
基于Hash函数的条码生成系统,其总体特征是:采用EAN‑13码,但自行定义各码位代表的含义,采取6+6+1的方式;条码前6位表示商品生产时间批号部分信息,中间6位是由Hash函数产生的认证码,最后1位校验码的产生方式与普通EAN‑13码完全相同。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄玉划刘震黄凡帆刘宁钟曾庆喜
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏;32

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

1