12,816,406 members (32,045 online)
alternative version

#### Stats

41.6K views
12 bookmarked
Posted 8 Dec 2004

# Luhn' s Algorithm

, 8 Dec 2004
 Rate this:
Calculating checksum number using Luhn's algorithm

## Introduction

This sample implements the functionality of generating checksum number using Luhn's algorithm.

I've created a class LuhnAlgorithm with a static function:

public static int GetLuhnAlgorithmNumber(string data);

Return value is the generated number.

## Definition

The Luhn algorithm or Luhn formula, also known as the "modulus 10" or "mod 10" algorithm, was developed in the 1960s as a method of validating identification numbers. It is a simple checksum formula used to validate a variety of account numbers, such as credit card numbers and Canadian Social Insurance Numbers. Much of its notoriety comes from credit card companies' adoption of it shortly after its creation in the late 1960s by IBM scientist Hans Peter Luhn (1896–1964).

Explanation of the Luhn's algorithm can be found here.

A list of licenses authors might use can be found here

## Share

 Austria
No Biography provided

## You may also be interested in...

 First Prev Next
 Actually, this method only needs one line changed to compute the correct Luhn check-digit (the "return" equation is wrong) kirkaiya6-Aug-09 19:42 kirkaiya 6-Aug-09 19:42
 Incorrect Algorithm? Peebles3-Mar-05 3:36 Peebles 3-Mar-05 3:36
 This function starts the "doubling" process on the last digit of the card number. It should begin with the 'second to last' digit, and then every other digit from there on (working backwards).Change the "if(odd == true)" part of the function to read "if(odd == false)" and it will work correctly (valid card numbers should return 10). paul.b
 use this code... Joel Thoms18-Jan-05 12:47 Joel Thoms 18-Jan-05 12:47
 how to use Joel Thoms18-Jan-05 12:41 Joel Thoms 18-Jan-05 12:41
 wrote an implementation myslef some time ago MadHatter ¢9-Dec-04 8:02 MadHatter ¢ 9-Dec-04 8:02
 Explaining my vote Jason De Arte8-Dec-04 9:45 Jason De Arte 8-Dec-04 9:45
 Last Visit: 31-Dec-99 19:00     Last Update: 23-Mar-17 16:32 Refresh 1