Luhn算法

✍ dations ◷ 2025-04-28 09:03:50 #同余,校验和算法,错误检测与校正

Luhn算法(Luhn algorithm),也称为“模10”(Mod 10)算法,是一种简单的校验和算法,一般用于验证身份识别码,例如发卡行识别码、国际移动设备辨识码(IMEI),美国国家提供商标识(英语:National Provider Identifier)号码,或是加拿大社会保险号码(英语:Social Insurance Number)。该算法由IBM科学家Hans Peter Luhn(英语:Hans Peter Luhn)创造,专利于1954年1月6日申请,1960年8月23日颁证,美国专利号2950048。

该算法现已属于公有领域并得到了广泛的应用,例如ISO/IEC 7812-1。它不是一种安全的加密哈希函数,设计它的目的只是防止意外出错而不是恶意攻击。

Luhn算法会通过校验码对一串数字进行验证,校验码通常会被加到这串数字的末尾处,从而得到一个完整的身份识别码。

我们以数字“7992739871”为例,计算其校验位,设校验位为X并添加至数列末位,即7992739871X:

另一种方法是:

Luhn算法可以发现某一位的错误。Luhn算法几乎可以发现所有由于邻位上数字被交换产生的错误。但是,它只能发现数字交换产生的错误中的7/10,不会发现22 ↔ 55, 33 ↔ 66 或 44 ↔ 77。

相关

  • 男科学男科学(英语:andrology,来自古希腊语:ἀνήρ、anēr,属格ἀνδρός、andros“男人”和-λογία:“学”)是处理男性健康的医学专业人士,特别是与男性特有的男性生殖系统和泌
  • 紫色地球假说紫色地球假说(Purple Earth hypothesis)是一个天文生物学上的假说。该假说的内容是地球上的早期生命形式是基于视黄醛,而非叶绿素的形式。今日基于视黄醛的微生物例如可直接以
  • 民间音乐民间音乐,又称民俗音乐、民间歌谣,简称民歌、民谣、民乐,于国际民间音乐协会之解释定义为“经过口传过程发展起来的普罗大众音乐”,也就是该音乐散布过程,纯粹是由演奏者或音乐接
  • 夏尔·戴高乐夏尔·安德烈·约瑟夫·马里·戴高乐(法语:Charles André Joseph Marie de Gaulle,1890年11月22日-1970年11月9日)是法国军事家、政治家,曾在第二次世界大战期间领导自由法国运动
  • ɳ̊清卷舌鼻音 是一种十分罕见的辅音,该辅音仅见于少数语言的口语中。该音在国际音标中以符号ɳ̊或ɳ̥表示,该符号由表示卷舌鼻音的ɳ与表示清音的符号◌̥组成。新喀里多尼亚
  • 地震带地震带是指地震集中发生及分布的地方。地球上主要有四处地震带。地震带皆位于板块交界处或者板块内部的断裂带上。在地球上主要有四大地震带:中国地震局地质研究所研究员徐锡
  • 女性选举权女性参政权(英语:Women's suffrage,Woman suffrage),又称妇女参政权,意指在民主社会中,允许女性拥有平等参与选举投票以及担任候选人的政治权利。在人类历史的多数时期中,女性大多都
  • 2013年美国羽毛球黄金大奖赛2013年美国羽毛球黄金大奖赛为第2013年度的美国羽毛球公开赛,是2013年世界羽联大奖赛的其中一站。本届赛事于2013年7月8日-7月13日在美国加利福尼亚州的橙县举行,并获得YONEX,
  • 理查·狄维士老理查德·马文·狄维士(英语:Richard Marvin DeVos Sr.,1926年3月4日-2018年9月6日),美国企业家,安利日用品公司(Amway)的总裁和共同创办人(另一位是杰·温安洛(Jay Van Andel))暨NBA球
  • JingleJingle是广告宣传的术语,其具体意思可以说是具有宣传作用的顺口溜。在华语的广告业界并没有对这术语的汉语翻译出来。业界人士多数直呼“Jingle”或有些人会以“叮当”或“顺