If you're coming into this to figure out how to create credit card numbers for profit and general anarchy, its time you leave, because this tutorial is not here to teach you how, nor will it teach you to steal.
The Luhn Checksum is an algorithem (if you could even really call it that) which is used to generate and validate credit card numbers. The main concept in a sentence is "you take the first number, multiply by two, if greater than ten, subtract nine, and at the end and a number that would make the sum of the entire string equal to fifty." Got that? Well, if not, lets break it down a little further.
We start with this valid credit card number: 4461317377382017. You can try to use it all you want, it won't work. You need a name, telephone number, and it this case since it is a visa platinum card number, you need a four digit security code on the back of it. Now, say we want to validate this as a credit card number.
4(2)=8| 4 |6(2)=12-9| 1 |3(2)=6| 1 |7(2)=14-9| 3 |7(2)=14-9| 7 |3(2)=6| 8 |2(2)=4| 0 |1(2)=2| 7 |
Now take a look at the equation above. We multiply every other number by two. If that number is greater than ten, we subtract nine. Lets take a look at the number after all of that has been completed.
8+4+3+1+6+1+5+3+5+7+6+8+4+0+2+7
In this case, the seven on the end is our checksum. It is used to make sure that the credit card number is equal to fifty. For the example number that we are using here, it is equal to seventy, which still meets the Luhn checksum rules, but not the credit card company's.
Anyways, the reason this is so easy to do is because a mass amount of numbers had to be able to be created, and making a too far advanced algorithem would take too much time. So security was loosened for profit, and now identity theft is costing credit card companies millions, if not billions of dollars a year. I wrote some POC code below that can generate REAL credit card numbers (visa only). Just showing that an eighteen year old kid with enough time and effort can figure out way too much.




