project ppt on anti counterfeiting technique for credit card transaction system

Post on 23-Jun-2015

208 views 4 download

description

Final year BE project presentation on IEEE paper of "Anti-counterfeiting technique for credit card transaction system"

transcript

AN ANTI-COUNTERFEITING TECHNIQUE FOR CREDIT

CARD TRANSACTION SYSTEM

Introduction

•CREDI-CRYPT is a technique for hiding sensitive credit card information in an arbitrary background image without the sensitive data getting exposed in public domains.

•CREDI-CRYPT combine Cryptographic and Steganographic technique to provide a reliable security solution for credit card transactions.

•Both techniques together helps to achieve data confidentiality and data integrity.

Basic Block Diagram

04/13/23

Credi-Crypt

CryptographyCryptography

Steganography

Steganography

UserUser Final output Final output

Implementation• Cryptographic techniques like Arithmetic coding and

binary code will be used along with Hamming codes as error detection and correction codes.

• The ‘Customer Name’ will be encoded in binary form based on alphabetical position of string.

• The obtained number or position is converted to the 6 digit binary form, so as to keep whole stream of bits always an even number which will create more ambiguity for intruder.

• A hamming code word will be generated for every character in the ‘Customer Name’ string.

• 16 digit unique credit card number in addition to the significant 3 digit CVV number will be encoded using Arithmetic encoding,

Implementation(cont)

• After the arithmetic coding process we obtain double precision values corresponding to the input sequences. We round these to six significant digits and then convert it to binary using our encoding algorithm.

• Whole encoded cipher text will be embedded into the pixels of the image.

• Credi-Crypt proposes an adaptive data hiding technique joined with the use of optimum pixel adjustment algorithm to hide data into the integer wavelet coefficients of the cover image.

• A pseudorandom generator function is used to select the embedding locations of the integer wavelet coefficients to increase the system security.

Implementation(cont)

• The OPA(Optimum Pixel Adjustment) algorithm is applied after embedding secret message.

• For decoding, the receiver must have our decoding algorithm. In addition to these the symbol probability, symbol set and the length of the sequence must be known.

Embedding Algorithm

• Step 1: Read the cover image file into a two dimensional decimal array.

• Step 2: Perform histogram modification by mapping the lowest 15 grayscale levels to the value of 15 and the highest 15 grayscale levels to the value 240.

• Step 3: Divide the cover image into 8x8 non overlapping blocks.

• Step 4: Transform each block to the transform domain using 2D Haar integer wavelet transform resulting LLI, LHI, HLI and HHI.

• The Haar wavelet transform can be written as simple pairwise averages and differences

S1,n= (S0,2n +S0,2n+1) /2

d1,n = (S0,2n+1- S0,2n )

• It is obvious that the above output may be not integer, the Haar wavelet transform in above equation can be rewritten using lifting in two steps to be executed sequentially:

d1,n = (S0,2n+1- S0,2n )

S1,n= (S0,2n+ d1,n /2)

• From the above both equations we can calculate the integer wavelet transform according to:

d1,n = (S0,2n+1- S0,2n )

S1,n= (S0,2n+ [d1,n /2])

• Then the inverse transform can be calculated by:S0,2n= (S1,n - [d1,n /2])

S0,2n+1 = ( d1,n + S0,2n)

• The 1D Haar Transform can be easily extended to 2D. In the 2D case we first apply the 1D Haar transform on each row. We take the resultant matrix, and then apply the 1D Haar transform on each column.

• Step 5: Calculate hiding capacity (L) ]. The length of LSBs of wavelet coefficients (L) is calculated as:

k +3, if Co ≥ 2k+3 L= k+2, if 2k+2 ≤ Co < 2k+3 k +1, if 2k +1 ≤ Co < 2k+2

k, if Co < 2k+1

Where, Co is the absolute value of wavelet coefficients and k is the minimum length to be used in each coefficient.

• Step 6: Embed L bits of message into the corresponding randomly chosen coefficients.

• Step 7: Apply optimal pixel adjustment algorithm. The main idea of using the optimum pixel adjustment (OPA) algorithm is to minimize the error difference between the original coefficient value and the altered value by checking the right next bit to the modified LSBs so that the resulted change will be minimal.

• For example, if a binary number 1000 (decimal number 8)is changed to 1111 (decimal number 15) because its three LSB's were replaced with embedded data; the difference from the original number is 7. This difference in the original value is called the embedding error. By adjusting the fourth bit from a value of I to a value of 0, the binary number now becomes 0111 (decimal number 7) and the embedding error is reduced to I while at the same time preserving the value of the three embedded bits.

• Step 8: Calculate the inverse integer wavelet transform on each 8x8 block to restore the image to spatial domain

Embedding Algorithm

Extraction Algorithm

Example

• Upon pressing “Card No” button, user is prompted to enter credit card details. Let the entered details be as follows:

Credit card no : 3281 9432 7493 9403

CVV no : 340

Expiry date : 0918

Credit card holder name : Neha D

• After entering these details, user presses “Encoding” button, which displays the following encoding details:

The output of dt (Hamming code) is: Columns 1 through 15 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 Columns 16 through 30 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 Columns 31 through 45 0 1 0 1 0 0 0 0 0 1 1 1 0 1 0 Columns 46 through 50 0 0 1 0 0

Arithmetic Encoding StartedProbability for 3 is 0.22727Probability for 2 is 0.090909Probability for 8 is 0.090909Probability for 1 is 0.090909Probability for 9 is 0.18182Probability for 4 is 0.18182Probability for 7 is 0.045455Probability for 0 is 0.090909The tag is 0.059102

The output of cbb (tag word) is: Columns 1 through 15

0 0 0 0 1 1 1 0 0 1 1 0 1 1 0

Columns 16 through 20

1 1 1 1 0

• Upon pressing the “Steganography” button, the user is prompted to select an image to embed the encoded details. After selecting the image, encoded details are embedded in image and stego image is displayed to the user.

• When user presses the “Extract” button, the following output is displayed:

Arithmetic Decoding StartedThe received keyword is 3281943274939403340

• The credit card number and the card holder name are displayed.

• Along with this, PSNR and MSE are also displayed.

MSE = 0.2194

PSNR = 51.4249

USER INTERFACE

Main Screen

Main Application Screen

Input(Card no) Screen

Input(CVV) No

Encoding Screen

Encoding process output

Steganography Screen

Final Output Screen

 PSNR = 51.5006 MSE=0.2119

PSNR=51.1234 MSE=0.1968

PSNR =51.9632 MSE = 0.1605

MSE = 0.2190PSNR=51.369

PSNR=51.4975 MSE = 0.2209

MSE =0.2161PSNR = 51.4579

Applications

• Credi-crpyt is a stand-alone application which can be used tostore credit-card data in a small or medium sized organization(eg Banks) in a secret way.

• As stored data need not be transferred over the network the security provided by credi-crypt is sufficient rather than getting into the complex procedure of SSL.

Further Work

• Further while using this application over network a secret key can be exchanged between the sender and the reciever to provide higher level of security.

• The proposed system can be further developed to increase its robustness by using some sort of error correction code which increases the probability of retrieving the message after attacks, also investigating methods to increase visual quality of the stego-image.