std.validate.luhn

Der Luhn-Algorithmus (Hans Peter Luhn, IBM 1954) ist ein einfacher Prüfzifferalgorithmus zur Erkennung von Tippfehlern in Nummernreihen. Er wird bei Kreditkartennummern, IMEI-Nummern (Mobilgeräte) und deutschen Steuer-IDs eingesetzt. Neben der reinen Luhn-Prüfung erkennt die Unit den Kartentyp (Visa, Mastercard, Amex, Discover, Maestro, UnionPay etc.) anhand des Nummernpräfixes.

Einsatzbereiche sind Zahlungsformulare, E-Commerce-Kassensysteme, Geräteregistrierung (IMEI), Steuerformulare und jede Anwendung, die Nummernformate vor der Verarbeitung auf formale Gültigkeit prüft.


Konstanten

Name Typ Wert Sichtbarkeit
CARD_UNKNOWN int64 0 pub
CARD_VISA int64 1 pub
CARD_MASTERCARD int64 2 pub
CARD_AMEX int64 3 pub
CARD_DISCOVER int64 4 pub
CARD_DINERS int64 5 pub
CARD_JCB int64 6 pub
CARD_MAESTRO int64 7 pub
CARD_UNIONPAY int64 8 pub

Funktionen

Signatur Sichtbarkeit Beschreibung
LuhnStrLen(s: int64): int64 pub Zeichenlänge eines Luhn-Strings ermitteln
LuhnIsDigit(c: int64): int64 pub Prüft ob Zeichen eine Ziffer ist
LuhnDigitToInt(c: int64): int64 pub Ziffernzeichen in Integer umwandeln
LuhnCheckDigit(number: int64): int64 pub Luhn-Prüfziffer berechnen
LuhnValidate(number: int64): int64 pub Nummer per Luhn-Algorithmus validieren
CreditCardType(number: int64): int64 pub Kartentyp anhand Präfix erkennen
CreditCardTypeName(cardType: int64): int64 pub Kartentyp-Konstante als Name liefern
CreditCardValidate(number: int64): int64 pub Kreditkartennummer vollständig validieren
CreditCardMask(number: int64): int64 pub Kreditkartennummer maskieren
CreditCardFormat(number: int64): int64 pub Kreditkartennummer in Gruppen formatieren
CreditCardGenerateTest(cardType: int64): int64 pub Testnummer für Kartentyp generieren
IMEIValidate(imei: int64): int64 pub IMEI-Gerätenummer validieren
GermanTaxIDValidate(taxId: int64): int64 pub Deutsche Steuer-ID validieren