系统集成论坛

标题: 两种防伪码生成算法及优缺点比较 [打印本页]

作者: 思考的牛    时间: 2011-1-1 15:16
标题: 两种防伪码生成算法及优缺点比较
一、随机生成大量一长串号码, xxxx-xxxx-xxxx-xxxx, 把这些号码记录起来, 校验时对比一下这个列表即可,

好处是: 没有人能够作出算号器

坏处是: 每次检验都要查询号码表


二、按某些方程式生成号码, 校验时检查该号码是否满足原方程

如 10位的防伪号码, 以第12345个号码12345为例

把 00001 放到 第7, 3,1,9,2位 变成 352xxx1x4x

然后取头三位数的平方, 乘以圆周率, 取整数部分最后两位作为第4,5位, 变成35255x1x4x

然后取前五位的数字, 对14取模, 作为第6位数字, 变成 3525531x4x

然后前四位数字, 对26取模, 结果取字母表的字母顺序, 作为第10位, 变成3525531x4O

然后前7位数字, 乘以第9位数字, 再对字母表取模, 作为第8位, 变成3525531J4O   

最后把整串字符倒过来, 变成 O4J1355253

以上过程其实可以随便弄, 多复杂都可以, 校验的时候一步一步倒溯回去就是了

好处是: 校验时不需要查询任何其他东东

坏处是: 程序的校验算法很容易被人破解
作者: 我是菜鸟    时间: 2011-1-5 17:57
俺也研究一下




欢迎光临 系统集成论坛 (http://bbs.xtjc.com/) Powered by Discuz! X3.1