各种常用校验码算法
2022/5/28 1:24:16
本文主要是介绍各种常用校验码算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.模10算法(Luhn算法)
常被用于银行卡号,信用卡号等的校验
1、从数列最后一位数字开始,奇数位乘以1,偶数位乘以2,如果乘以2的结果是两位数,就将个位数和十位数相加返回。
2、把所有数字相加,得到总和。
3、整除10余数为校验码。
特点:性能较高,校验单个数字错误。
另外还存在一些该算法的变型扩展,如偶数位乘以3,模数改变等,效果类似。
2. 模11算法
常被用于身份证号等的校验
1、从数列最后一位数字开始,每一位乘以不同的系数n,根据系数规则的不同存在不同的模11算法,例如系数从2至7循环。
2、把所有数字相加,得到总和。
3、整除11余数为校验码,余数为10时根据算法不同可设定为字母或其他数字。
特点:性能较高,校验单个数字错误或相邻两个数字换位错误。
3. 7DR,9DR算法
常被用于快递单号等的校验 1、把数列除以7或9 2、余数为校验码 或 7或9-余数为校验码。特点:性能极高,只能校验大部分数字错误。
这篇关于各种常用校验码算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?