ECC Base point Generation using Finger print for Authentication and Message Encryption and Decryption Using ECC
Abstract
Biometrics refers to an automatic authentication of a person based on his physiological and/or behavioural characteristics. The usage of biometrics as a reliable means of authentication is currently emerging. This paper proposes a unique approach for generating base point of an elliptic curve using finger print of a person for authentication which is a prime parameter in Elliptic curve cryptosystem.
Keywords
Biometrics, Authentication, Fingerprint, ECC, Keys.
1. INTRODUCTION
Biometrics[1] is the science of identifying individuals based on their unique characteristics which may be either Physical characteristics(fingerprint, face, iris[2]) or behavioural characteristics(signature, voice, keystroke dynamics[3]) .
Fig1. Biometric characteristics
Biometrics and Crypto keys
Biometrics provides a robust solution to certain aspects of authentication by using semi- automated or fully-automated methods to recognize individuals based on their biological characteristics. By using biometrics it is possible to establish an authentication[13] based on who you are, rather than by what you possess, such as an ID card, or what you remember, such as a password. In traditional cryptosystems, user authentication is based on possession of secret keys [4]; the method fails if the keys are not kept secret (i.e., shared with non-legitimate users).
Biometric
Physiological
Behavioural
Keystroke
Face
Fingerprint
Voice
Hand
Iris
Signature
Fig. 2. Examples of biometric characteristics. (a) Face. (b) Fingerprint. (c) Hand geometry. (d) Iris. (e) Retina. (f) Signature. (g) Voice. From D. Maltoni, D. Maio, A. K. Jain, S. Prabhakar, Handbook of Fingerprint Recognition
The main drawbacks of traditional cryptosystems are we cannot guarantee the trustiness of a third party,the high secured keys such as passwords may be forgotten,lost,or stolen.In such situations we cannot provide non-repudiation [4][5]. Biometric[15] identifiers cannot be shared or misplaced, they basically represent an individual’s identity. Biometrics is quickly emerging as an essential component of powerful authentication solutions and preventing non-repudiation.Present traditional authentication systems use[4] digital signatures to provide authentication where as biometrics use physiological or behavioural characteristics of persons such as fingerprints, Iris ..which robustly replaces the authentication component of traditional cryptosystems [6].
Biometric cryptosystems[7] ,[15]are similar to key generation systems that are based on password . Biometric cryptosystems are used either in key encryption of key or to directly generate cryptographic key from biometric features.
One of the most widely used human identification parameters is Fingerprints . Fingerprints constitutes a set of minutiae which are unique from person to person . A ridge in fingerprint is similar to line segment but ridge corresponds to a curve that tend upward or left side.the area between two adjacent ridges form a valley. Minutiae is the collective set of ridge endings and bifurcations. The minutiae can be of different types including dots ,islands, ponds or lake, spurs ,bridges and crossovers. Fingerprint is uniquely identified by minutiae orientation. This feature has been exploited to generate a unique code for an individual. The code is further modified to obtain a base point of an Elliptic Curve Cryptography [11].[12]..
2. METHODOLOGY
FINGERPRINT PROCESSING: Finger print of an human being is processed as follows
2.1 Histogram Equalization
Histogram equalization [8] increases the contrast of images. In this technique the firstly the probability distribution of gray levels of image are taken next the cumulative distribution values are taken based on probability distribution of pixel. Finally the gray levels are mapped to cumulative distribution values.
2.2Binarization
Binarization[9] is to transform the 8-bit Gray fingerprint image with 0-value for ridges and 1 value for each pixel. Two colors namely black and white are used. One color(black) represents the foreground and the other represents background(white).
2.3 Morphological Operation
Morphological techniques or operations[4] probe an image with a small shape or template called a structuring element which is positioned at all possible locations in the image and it is compared with the corresponding neighbourhood of pixels. To remove line breaks, spurs, bridges, in binarized fingerprint image Binary morphological operators such as Thinning is used which reduces thickness of lines. It is a process particularly used for skeletonisation.
2.4 Minutiae points’ extraction
After thinning the binary image the thickness of ridge reduces to only one pixel wide. Fingerprint feature , such as minutia point features with corresponding orientation maps are unique enough to discriminate amongst fingerprint robustly. One of the minutia extraction technique is crossing number. The minutiae are extracted[11] from the enhanced, thinned and binary image..
2.4.1 Crossing Number
Skeleton or Thinned image for which the ridge flow pattern is eight-connected. The local neighbourhood of each ridge pixel in the image is scanned out using a 3×3 window.
Table 1. A 3×3 neighbourhood
The crossing number(CN) value is then computed as follows
CN=0.5Σ|P I – P I+1 |for i=1… 8 Where P 9 = P1 .
It is defined as the half the sum of the differences between pairs of adjacent pixels in the eight neighbourhood. Using the properties of CN as mentioned below, ridge pixel can be classified as ridge ending, bifurcation or non-minutiae point
Table 2. Properties of Crossing Number
CN
Property
0
Isolated point
1
Ridge ending point
2
Continuing ridge point
3
Bifurcation point
4
Crossing point
After obtaining the minutiae points of a fingerprint of a human being, are used to find a base point of an elliptic curve using the following algorithm.
3. Algorithm
1. Read the input Fingerprint Image.
2. Binarize the image.
3. Thin the Binarized image(Image Skeletonization).
4. Find all minutiae points(ridge points).
5. Add all minutiae points.(ΣX,ΣY,Σ)
6. Reduce the three dimensional minutiae coordinates to two dimensional coordinates (newx,newy)
p4
p3
p2
p5
p1
p6
p7
p8
i.e. newx=(ΣX/Σ) and newy=(ΣY/Σ).
7. nex=newx%p and ney=newy%p.
8. Find the nearest point on the elliptic curve to the point ( nex , ney) and name it as G.
9. Do the encryption and decryption using G as Generator.
Once, the base point is obtained, we can encrypt and decrypt any messages using elliptic curve crypto system. The following section , explain the elliptic curve cryptosystem briefly.
4 Elliptic Curves over Finite Field(Zp):
For elliptic curves over Zp, we use a cubic equation in which the variables and coefficients all take on values in the set of integers from 0 to p-1, for some prime number p, and in which calculations are performed modulo p[14].
y2 mod p ≡ ( x3 + ax + b)mod p
Example:
For the given a=1,b=1,and p=79,the points of the elliptic curve are
(0,1),(0,78),(2,13),(2,66),(3,30),(3,49),(5,17),(5,62),(6,12),(6,67),(11,0),(14,28),(14,51),(15,28),(15,51),(16,20),(16,59), (18,20),(18,59),(20,11),(20,68),(21,35),(21,44),(23,5),(23,74),(25,3),(25,76),(26,12),(26,67),(27,35),(27,44),(28,16),
(28,63),(29,18),(29,61),(30,31),(30,48),(31,35),(31,44),(43,36),(44,38),(44,31),(46,22),(46,57),(51,29),(51,50),(53,20), (53,59),(56,0),(59,33),(59,46),(60,16),(60,63),(61,39),(61,40),(64,12),(64,67),(65,12),(65,67),(70,12),(70,67),(71,21),
(71,58),(78,0).
Elliptic curve arithmetic is defined as follows
4.1 Point Addition
Let P1(x1,y1) and Q1(x2,y2) be two points on the elliptic curve E. The sum P3 is defined as: The reflection about x-axis of the secant line PQ which intersects elliptic curve at a point.
Let P1(x 1 ,y 1 ), P2(x 2 ,y 2 ) be points on E(K) whereP1 ≠ p2. Then p3(x 3 ,y 3 )=P1 + P2.
4.2 Point Doubling:
Doubling is adding the point to itself. Doubling is defined as the mirror image point of point of intersection of tangent for a particular point and the elliptic curve .
4.3 Point Multiplication:
Let P be any point on the elliptic curve(K).Point multiplication is the recursive addition of the point P.
K*P=P+P+P+P………+P(k times)
4.4 Point Subtraction:
Let P(x1,y1) and Q(x2,y2) are two points on the elliptic curve E. The subtraction R is defined as Addition of the points P(x1,y1) and Q(x2,-y2).
4.5 Elliptic Curve Encryption and Decryption
1. Every character on plaintext message m to be mapped as an x-y point Pm on the elliptic curve.
2. For encryption/decryption we require a point generator point G (which is generated by fingerprint of an authenticated user in this case),random number x and an elliptic group Ep(a, b) parameters need to be known to both sender and receiver..
3. User A selects a private key nA and generates a public key PA = nA *G.
4. To encrypt and send a message Pm to B, A chooses a random positive integer x and produces the cipher text Cm consisting to the pair of points Cm = {xG, Pm + xPB}.
5. To decrypt the cipher text, B multiplies the first point in the pair by B’s secret key and subtracts the result from the second point
= Pm + xPB – nB(xG)
= Pm + x(nBG) – x(nBG)
=Pm
The overall process is shown in the following flow chart. The sample results of above process is shown in the table 1
5.Flowchart
Sender B
Receiver A
Generator G,Random Number X and curve
1.Generates random number nB
2.Caluculates public key 3.Receiver sends his public key to the sender
4.Sender encrypts messages using receiver public key
5.Receiver decrpts the message
Input image
Image binarization
Minutiae points extraction using crossing number
Adding all minutiae points
Reducing 3 dimensional minutiae point to 2
Dimensional x-y coordinate
Thinning(image skeletonization)
Finding nearest point on the elliptic curve to the
Reduced 2 dimensional point
Generator point G
Table1
Image
Minutiae co-ordinates
New co-ordinates
(nex,ney)
Mapped point on elliptic curve
y2 mod 79 = ( x3 + x + 1)mod 79
1.png
(113,132,0.8502)
(53,76)
(53,75)
2.png
(92,146,0.9581)
(17,73)
(20,68)
6.png
(113,136.0.8570)
(53,1)
(53,4)
10.png
(105,129,0.8653)
(42,71)
(47,67)
11.png
(108,140,0.879)
(44,1)
(36,2)
12.png
(106,157,0.96)
(33,8)
(32,4)
15.png
(91,126,0.9130)
(21,59)
(18,59)
8.Conclusion
Since the Generator Point obtained for a person finger print is Unique, so that we can authenticate encryption and decryption process of ECC . By using this method we can provides strong authentication to the data transfers.
9.References
[1].Biometrics and Biostatistics. http://www.omicsonline.org/jbmbshome.php 08.Biometrics for network security Paul Reid, 2004 b y Pearson education.
[2].Anil k. Jain, fellow, IEEE, Arun Ross, member, IEEE,” Biometrics : A Tool for information security” IEEE Transactions on information forensics and security. VOL.1.No.2.June 2006.
[3] Ashwini R.Patil,Mukesh A Zaveri,”A Novel Approach for Fingerprint Matching using Minutiae”,IEEE Fourth Asia International Conference on Mathematical/Analytical Modelling and computer Simulation,2010.
[4]W. Stallings, Cryptography and Network Security: Principles and Practice, Prentice Hall College, 2006.
[5]U. Uludag, “Secure biometric systems,” PHD thesis, Michigan state university,2006.
[6]Uludag.U,Pankanti.S.Prabhakar.S,Jain.A.K“Biometric cryptosystems: issues and challenges “ Proceedings of IEEE ,Vol 92,No.6,Pp 948-960 ,2004
[7]F Chafia ,C Salim and B Fraid ,” Biometric crypto system for authentication” International Conference on Machine and Web Intelligence ,Pp434 -438,2010
[8] A Jagadeesan, Dr K.Duraiswamy “Secured Cryptographic key generation from multimodal Biometrics:Feature Level Fusion of Fingerprint and Iris” in International Journal of computer science and information security,Vol 7,No 2,February 2010.
[9]C Nandini and B.Shylaja “Efficient Cryptographic key generation from fingerprint using symmetric hash functions” in International Journal of Research and reviews in Computer Science.Vol 2,No 4 ,August 2011,ISSN:2079-2557.
[10].Erden,S.S.,Yanik,T.Kog,G.K.:Fast finite Field multiplication In:C.K.Kog(ed).Cryptographic Engineering chapter 5.Springer(2009)
[11].Roli Bansal,Priti Sehgal,PunamBedi in”Minutiae Extraction from fingerprint images- a Review” on International journal of computer science issues,vol 8,issue 5,no 3,September 2011.
[12].R.Sashank Singhvi,SP. Venkatachalam and others in “Cryptography Key Generation using Biometrics”.
[13]. Yusupov S. Yu, Medetov S.K. in “Application of Biometric Methods in Crytography.
[14].O. Srinivasa Rao et. al. / International Journal of Engineering Science and Technology Vol. 2(8), 2010, 3651-3656.
[15] Rupam Kumar Sharma , generation of Biometric Key for use in DES”, International Journal of Computer Science Issues(IJCSI) in volume 9 issue 6,November 2012, ISSN (Online):1694-0814
ay in here…