Flaws & Frauds Hindering Credit Cards Security Abhishek Maheshwari , S.K. Saritha

advertisement
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
Flaws & Frauds Hindering Credit Cards Security
Abhishek Maheshwari#1, S.K. Saritha*2
#
*
Department of Computer Science & Engineering, Maulana Azad National Institute of Technology
Bhopal, Madhya Pradesh, India
Department of Computer Science & Engineering, Maulana Azad National Institute of Technology
Bhopal, Madhya Pradesh, India
Abstract - In today’s world, people are mobilizing at a
fast pace. No one has the time to draw cash from the
bank or any other financial institution for the purpose of
making transactions. To overcome this bank issues credit
cards to fulfil the need of their customers. Due to this, a
large collection of cards are being issued to the
customers and simultaneously validating these cards is a
necessary task. At Present, Verhoeff and Luhn algorithm
are the two famous card validation algorithms exists.
There are many instances reflecting limitations in these
algorithms. With the advancement of technology today,
an enhanced validation technique is required to use these
cards safely in the evolving e-market. In this paper, an
overview of these validating algorithms which was
proposed w.r.t credit cards is enlightened. It also helps to
overcome the limitations of existing algorithms stated
above. In addition, the frauds associated with the
payment industry hindering the security are also been
highlighted here.
MII (Major Industry Identifier): The first
digit of Credit Card number is MII, which
represents the category of entity as shown in
Table 1 [4].
Table 1: MII digit values
MII Digit
Issuer Category
Value
0
ISO/TC 68 and other
industry assignments
1
Airlines
Keywords- Credit card, Verhoeff Algorithm, Luhn
Algorithm
2
Airlines and other industry
assignments
I. INTRODUCTION
Credit cards [1] are the simplest mode of payment
while doing any sort of transactions. It is issued by
financial banks or organizations enabling its customer
an alternative method to borrow funds, easy
transactions and transfers. Credit card industry has
evolved over a period of time. It charges various fees
either quarterly, half yearly or sometimes annually for
its services. It provides facilities to the customer for
using this card anywhere, anytime round the globe.
Credit card is small size plastic cards, having its
details printed on the front and on magnetic stripe at
the back. This helps in accessing their details on
transaction. They can make online transactions too.
The size of most credit cards is 3 3/8 × 2 1/8 in (85.60
× 53.98 mm), compliant to the ISO/IEC 7810 ID-1
standard. Credit cards have a printed or embossed
bank card number complying with the ISO/IEC 7812
numbering standard. The specifications for credit card
numbering is been drawn by the International
Organization for Standardization (ISO/IEC 78121:1993) and the American National Standards Institute
(ANSI X4.13) [2].
According to the standards, numbers in the Credit
card is broadly classified [3] into four attributes,
namely:
3
Travel and entertainment
4
Banking and financial
5
Banking and financial
6
Merchandizing and banking
7
Petroleum
8
Telecommunications and
other industry assignments
9
National assignment
ISSN: 2231-5381
IIN/BIN (Issuer Identification Number/
Bank Identification Number): The first six
digits of credit card number (including the
initial MII digit) form the issuer identifier is
IIN/BIN.
Account Identifier/Number: The digits from
7 to (n-1) of credit card number represent
Account Identifier or Account Number.
Checksum: The last digit of credit card
number is a check digit. It is used to validate
whether the card number is unique or not.
http://www.ijettjournal.org
Page 26
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
Through this process the whole sequence is
Using six digit numbers as stated in [6], Verhoeff
analyzed for its uniqueness.
reported the following classification of errors in Table
2:
Table 2: Classification of Errors
Figure 1: Different Attributes of Credit Card
II. RELATED WORK
Over a period of time several attempts have been
made to provide a concrete algorithm to uniquely
identify the sequencing number for the validation
purpose. In those of many, only Verhoeff, Luhn
validation algorithm suitably fit. They both work on a
unique methodology to provide the checksum & then
validating each of the sequencing numbers.
A. ERROR DETECTING DECIMAL CODES
Verhoeff Algorithm is a checksum formula [5]
developed by the Dutch mathematician Jacobus
Verhoeff for detecting errors and was published in
1969. Verhoeff had an aim of finding a decimal code,
where the check digit is a simple decimal digit. It can
detect all single-digit errors and all transpositions of
adjacent digits. This algorithm was the first decimal
check digit algorithm which identifies all transposition
and single-digit errors involving two adjacent digits
which at that time thought impossible to exists.
He based the assessment of different codes on real
time data from the Dutch postal system, using a
weighted point system for different categories of
errors. The study broke the errors down into a number
of classifications.
Here, the multiplication table d is based on
multiplication in the dihedral group D5 [8] which
represent the Cayley table of the non-commutative
group i.e., for some value of j and k, d(j,k) ≠ d(k,j).
The inverse table inv denotes multiplicative inverse of
ISSN: 2231-5381
Verhoeff formulated his algorithm using the
properties of the dihedral group of order 10 i.e., D 10 (a
non-commutative system of operations on 10 elements,
which corresponds to the rotation & reflection of a
regular pentagon), combined with a permutation.
The Verhoeff algorithm can be implemented [7]
using three tables: a multiplication table d as shown in
Table 3, an inverse table inv in Table 4, and a
permutation
table
p
in
Table
5.
a digit i.e., d(j,inv(j)) = 0. And finally the permutation
table p relates a permutation to each digit based on its
position in the number. Here a single permutation (1 5
8 9 4 2 7 0)(3 6) is iteratively been used i.e., p(i+j,n) =
p(i,p(j,n)).
http://www.ijettjournal.org
Page 27
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
The Verhoeff checksum calculation follows the
following steps:
Step 1: Construct an array n from the
individual digits of the number, taken in
reverse order i.e., rightmost digit is n0 then n1
and so on.
Step 2: Set the checksum c to zero.
Step 3: For each index i of the array n,
starting at zero, replace c with d(c, p (i mod 8,
ni )).
Here, in the Table 6, c is 2 so the check digit is inv
(2) which is 3. And correspondingly in Table 7, c
is zero, so the checksum is correct. Finally the
correct validating sequence will be 2363.
Despite of its unique nature of finding all
transposition and single-digit errors involving in
two adjacent digits at that time, it had some
limitations like:
Technology
Limitations:
The
technology was in the initial stages that
the time of development of algorithm. So
it looks hard to generate and validate the
check digit using the algorithm using
device.
High complexity:
The whole
mathematical evaluation process requires
to uphold three matrix side by side.
Therefore, the overall method seems
highly complex.
Feasibility Issues: Because of not
having ample support of technology at
time around 1969, feasibility of the
whole process was in question.
Storage Space: The process requires
maintain the matrixes: Multiplication
matrix (d), Inverse matrix (inv), and the
Permutation matrix (p) together for the
computations purpose. Hence each time,
more storage space is required which is
costly enough practically.
ISSN: 2231-5381
To generate a check digit, append a zero and then
calculate, the check digit should be inv(c). The
original number validates only when c is zero, else
invalid.
Considering an illustration of generating a check
digit for a number say 236 and then validating it, is as
shown in the Table 6 and Table 7.
B. LUHN ALGORITHM
The process used to determine the check digit is
the Luhn Algorithm (or mod 10), named after IBM
scientist Hans Peter Luhn, patented [9] in the year
1954. The following are the steps carried out in the
Luhn algorithm [10] [11]:
Step 1: Starting from right hand side of the
card number, skip the last digit i.e., Consider
a 16 digit card number 5397373822153004.
Here we skip the last digit 4.
Step 2: Double every alternate number
starting from n-1.i.e., in n-digit number,
double the digits at (n-1), (n-3), (n-5) …
positon and so on.
Step 3: Write down the rest of the number as
it is i.e., write the digits at position (n), (n-2),
(n-4), (n-6) and so on, as they are.
Step 4: If the doubled number from step 2
have two digits, then add them together i.e.,
if number is 14, then 1+4=5.
Step 5: Add together all the digits in the card
i.e., adding digits, (n) + (n-1) + (n-2) +…. + 2
+ 1.
Step 6: Calculate mod 10 of that number, if
zero, then valid otherwise declare invalid i.e.,
if total sum of digit is divided by 10
completely, then valid, else invalid.
At present, Luhn algorithm works behind the
credit card validation. Due to its simplicity, it has
some limitations, like:
1. It is not intended to be cryptographically
secure hash function (not following One-way
function) i.e. card numbers travels over a
http://www.ijettjournal.org
Page 28
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
2.
3.
network in a readable form, which enables
anyone to easily look into the network and
illegally use the details of the customer.
It is not protected against malicious attacks.
As the information flows in a readable form,
so it is easy for an attacker to collect the
information flowing through.
It cannot detect the transposition of the two
digit
sequence.
i.e.,
<first-validcharacter><last-valid-character> to <last-
4.
valid-character><first-valid-character>
(or
vice-versa).
It fails to distinguish credit cards from one
another (i.e., Master Card, VISA, etc.) [12].
For example shown in the Figure 2, first two
digit of Master Card number is been altered
such that the overall checksum remains the
same but it validates VISA card as shown in
Figure 3.
Figure 2: Master Card number
Figure 3: After altering starting two digits of the card number
5.
It fails to determine the length of the credit
card number [12]. For example: as shown in
Figure 4, 16-digit card validates Master Card,
then after trimming the last three digits, it
comes to 13-digit as shown in Figure 5. But
it still validates without giving any error.
Figure 4: Before trimming the card number
Figure 5: After trimming the last three digit of card number
C. TYPES OF CREDIT CARD FRAUDS
Credit Card has become an important source of
payment both online as well as for traditional
ISSN: 2231-5381
payments. This increases the chance of occurrence
of fraud [13]. Though the incidences reported are
limited to only 0.1% of the total transactions which
causes a big loss as fraudulent transactions have
http://www.ijettjournal.org
Page 29
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
been bulky transaction values [14]. As the
technology is advancing day by day, so is the level
of fraudster’s activities. Some of the commonly
occurred frauds [15] that are reported [16] are:
Application Fraud: When the users apply
for the credit card, they present their personal
credentials at the time of issuing card. This
information may include details like landline
number, communication address, email
address and etc.
Using these details
application fraud can be done. There are
three common ways of committing
application fraud:
1. Assumed Identity: In it, a fraud
individual illegally obtains credentials of
legitimate individual and enjoys services
using partially legitimate information.
2. Financial Fraud: In it, an individual
provides false information about his or
her financial status to illegally acquire
credit.
3. Postal Intercepts Fraud: In it, card is
stolen from the postal service before it
reaches its owner’s destination place.
Lost or Stolen Cards: In it, legitimate
individual misplaces his or her card due to
some absence of mind or someone steals it
for criminal purpose. This type of fraud is the
easiest to get hold of individual’s credit card.
Fake or Counterfeit Cards: The designing
of counterfeit card, together with the
lost/stolen poses the utmost threat in the
credit card frauds. For designing false and
counterfeit cards. A fraud person can tamper
with the card by wiping out the metallic
magnetic strip with the help of powerful
electro-magnet. He then tampers with the
details on the card so that details matches
with the genuine card e.g., consider fraud
person gives the credit card at the terminal,
the cashier will swipe the card several times,
before understanding that the magnetic strip
does not work. The cashier will then
manually input the details of the card into the
system. But this is outmoded with the
introduction of hologram and lot of other
security feature in the card.
Duplicate Site: Criminals are high-tech
today. They are using technology merely for
the purpose of destruction only. They design
the duplicate site which has very close
resemblance with the genuine site in order to
get confidential data from the victim user.
Genuine users buy products giving all the
credit card information on the site and get
trapped. The criminals get all the details for
accessing the card, thus make them ready to
do some criminal offence.
Skimming: It is a theft of payment card
information used in a legitimate transaction.
ISSN: 2231-5381
Here the original data stored on the card’s
magnetic stripe is electronically transferred
onto another. This makes criminals to read
the details of the cardholder illegally and use
further into some other transaction process.
Skimming takes place without the consent of
card holder and thus it is very difficult to
trace back. The card holder is uninformed of
the fraud until a statement arrives displaying
the purchases they did not make.
Merchant Collision: In this type of fraud,
merchant and/or their associated employees
leak out the details of their customer’s
account and/or personal information to the
fraud person.
Triangulation: In this type of fraud,
someone operates from the website. Goods
displayed are heavily discounted on the ecommerce site. The deal looks appealing to
the customers. The customer place the order
online by providing true details such as name,
communication address, mobile number,
valid credit card details. Once the fraud
person has enough information, he purchases
other goods using the credit card details of
the customer.
BIN Fraud: In it, credit cards are produced
in the BIN ranges. Issuer authorities or
institutions do not uses random generation of
the card number. In this case attacker may
obtain one genuine card number and generate
several other valid card numbers simply by
changing the last four numbers using a
generator. The expiry date of these cards
would be same as that of the acquired card.
Thus attacker has several cards with
sufficient information to make some criminal
offense.
Tele Phishing: In this, attacker attain the list
of customers details, such as name,
communication address, phone number so as
to feel them that they are talking to some
trusted organization or institution over some
sensitive information such as credit card
details, bank account number, etc. Once the
trust is established in between, the customer
spit out all the information to the attacker and
becomes a victim himself.
III. CONCLUSIONS
Internet miscreants of all sorts have bundled
together and form an explicit threat over the e-market.
The existing Luhn validation algorithm despite of
gaining popularity suffers from variety of weaknesses
as discussed in section B, which hinders its
functionality as well as the trust of its genuine users.
In section C, some of the well identified frauds are
also been discussed which obstructs the normal
functioning of the system due to the mischievous or
http://www.ijettjournal.org
Page 30
International Journal of Engineering Trends and Technology (IJETT) – Volume 24 Number 1- June 2015
criminal offensive activities of the attacker targeting
the genuine customer.
Over a period of time, as the technology advances,
in future, one cannot neglect the existence of other
types of loopholes in these validating algorithms.
Fraudster coming up with new enhanced techniques to
breach the security. With government, different
regulatory bodies should come up to perform risk
assessments of credit card issuers on regular basis in
order to avoid such type of frauds. Awareness, in both,
the industry and the customer will always be an
advantage.
In this paper, an enriching light on various aspects
of flaws and frauds which obstructed in the payment
card security are identified from the previous existing
instances. The available validation algorithms are
discussed and existing limitations are explored in
depth with the aim of highlighting loopholes present
in the system .Working on these boundaries helps to
enhance the system and in future designing it to make
more secure as well as trustworthy.
We consider this study as an initial step towards the
safer use of the credit cards. It also provides new
directions and insight into the state of privacy and
information security
[13]
[14]
[15]
[16]
Numbers in IJCSMS, Vol.2, Issue.7, July 2013, pg. 262-272,
ISSN2320-088X
Credit
Card
Fraud
(http://en.wikipedia.org/wiki/Credit_card_fraud)
Hassibi PhD, Khosrow (2000). Chapter 9 on Detecting
Payment Card Fraud with Neural Networks in book in
Business Applications of Neural Networks, Singapore-New
Jersey-London-Hong Kong: World Scientific ISBN 9789810240899
Eswari.M, Navaneetha Krishnan.M, Survey on Various
Types of Credit Card Fraud and Security Measures,
IJARCSSE, Vol. 1, Issue 4, January 2014, ISSN: 2277 128X.
Tej Paul Bhatla, Vikram Prabhu ,Amit Dua, Understanding
Credit Card Frauds, Tata Consultancy Services Card,
Business
Review
2003#01
(http://www.popcenter.org/problems/credit_card_fraud/pdfs/
bhatla.pdf)
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
Credit Cards (http://en.wikipedia.org/wiki/Credit_card)
[2] ISO/IEC 7812-1:2006 Identification Card–Identification
of
Issuer
(http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue
_detail.htm?csnumber=39698)
Credit
Cards
meaning
(http://www.computersolving.com/computer-tipstricks/what-your-credit-card-numbers-mean/)
Bank
Card
Number
(http://en.wikipedia.org/wiki/Bank_card_number)
Verhoeff
algorithm
(http://en.wikipedia.org/wiki/Verhoeff_algorithm)
J. Verhoeff, Error Detecting Decimal Codes. (Mathematical
Centre Tracts, 29), ZAMM - Journal of Applied Mathematics
and Mechanics, Volume 51, Issue 3, pages 240–241, 1971
Salomon, David, Coding for Data and Computer
Communications, Springer. p. 56. ISBN 0-387-21245-0.
Gallian, Joseph A. (2010). Contemporary Abstract Algebra
(7th ed.). Brooks/Cole. p. 111. ISBN 978-0-547-16509-7
(https://books.google.co.in/books?id=CnH3mlOKpsMC&pg
=PA111&lpg=PA111&dq=verhoeff+check+digit&source=bl
&ots=nqn1LC4H3Z&sig=4CWKNR6vvesEGPRWUzeotpX
ZfA8&hl=en&ei=WNpXTsXdHLPSiAKm_LimCQ&sa=X&
oi=book_result&ct=result#v=onepage&q=verhoeff%20check
%20digit&f=false)
U.S
Patent
2,
950,
0450
(http://www.google.com/patents/US2950048), Computer for
Verifying Numbers, Hans P. Luhn, August 23 1960
Luhn
Algorithm
(http://en.wikipedia.org/wiki/Luhn_algorithm)
Anibrika, B. S. K. (2014). Validation of Credit Card
Numbers Using the C# Programming Language. Africa
Development and Resources Research Institute Journal,
Ghana: Vol. 10, No. 10(2).
Khalid Waleed Hussein, Dr. Nor Fazlida Mohd. Sani,
Professor Dr. Ramlan Mahmod, Dr. Mohd. Taufik Abdullah,
Enhance Luhn Algorithm for Validation of Credit Cards
ISSN: 2231-5381
http://www.ijettjournal.org
Page 31
Download