60
Submitted to:- Presented By :- Ms.Nidhi Mangal Sahil Sudera Computer Science 8 th SEM. 07ESGCS046

Secure Electronic Transaction Final

Embed Size (px)

Citation preview

Page 1: Secure Electronic Transaction Final

Submitted to:- Presented By :-Ms.Nidhi Mangal Sahil Sudera

Computer Science

8th SEM.

07ESGCS046

Page 2: Secure Electronic Transaction Final

Organization of Presentation 1.1. IntroductionIntroduction2.2. Credit Cards on the InternetCredit Cards on the Internet3.3. Credit Card ProtocolsCredit Card Protocols4.4. SET Business RequirementsSET Business Requirements5.5. Parties in SETParties in SET6.6. SET TransactionsSET Transactions7.7. Symmetric key encryption systemSymmetric key encryption system8.8. Public key encryption systemPublic key encryption system9.9. Message DigestMessage Digest10.10. Digital SignatureDigital Signature11.11. Digital EnvelopeDigital Envelope12.12. Digital CertificateDigital Certificate13.13. Dual SignaturesDual Signatures14.14. SET Supported TransactionsSET Supported Transactions15.15. Card Holder RegistrationCard Holder Registration16.16. Merchant RegistrationMerchant Registration17.17. Purchase RequestPurchase Request18.18. Payment AuthorizationPayment Authorization19.19. SYSTEM CONFIGURATIONSYSTEM CONFIGURATION20.20. Database OrganizationDatabase Organization21.21. Important Source FilesImportant Source Files22.22. ConclusionConclusion23.23. ReferencesReferences

Page 3: Secure Electronic Transaction Final

Introduction

• An application-layer security mechanism, consisting of a set of protocols.

• Protect credit card transaction on the Internet.• Companies involved:– MasterCard, Visa, IBM,

Microsoft, Netscape, RSA, Terisa and Verisign• Not a payment system.• It has a complex specification.

Page 4: Secure Electronic Transaction Final

Credit Cards on the Internet

• Problem: communicate credit card and purchasing data securely to gain consumer trust– Authentication of buyer and merchant– Confidential transmissions

• Systems vary by– type of public-key encryption– type of symmetric encryption– message digest algorithm– number of parties having private keys– number of parties having certificates

Page 5: Secure Electronic Transaction Final

Credit Card Protocols• SSL 1 or 2 parties have private keys• TLS (Transport Layer Security)

– IETF version of SSL

• i KP (IBM)• SEPP (Secure Encryption Payment Protocol)

– MasterCard, IBM, Netscape• STT (Secure Transaction Technology)

– VISA, Microsoft

• SET (Secure Electronic Transactions)– MasterCard, VISA all parties have certificates

OBSOLETE

Page 6: Secure Electronic Transaction Final

…but in e-transactions, it is important to Know if you are dealing with a dog.

Identification is the Challenge

Page 7: Secure Electronic Transaction Final

SET Business Requirements

• Provide confidentiality of payment and ordering information.

• Ensure the integrity of all transmitted data.• Provide authentication that a cardholder is

a legitimate user of a credit card account• Provide authentication that a merchant

can accept credit card transactions through its relationship with a financial institution

Page 8: Secure Electronic Transaction Final

SET Business Requirements (cont’d)

• Ensure the use of the best security practices and system design techniques to protect all legitimate parties in an electronic commerce transaction

• Create a protocol that neither depends on transport security mechanisms nor prevents their use

• Facilitate and encourage interoperability among software and network providers

Page 9: Secure Electronic Transaction Final

Secure Electronic Transaction

• Confidentiality: all messages encrypted

• Trust: all parties must have digital certificates

• Privacy: information made available only when and where necessary

Page 10: Secure Electronic Transaction Final

Components to build Trust

Data Confidentiality Encryption

Who am I dealing with? Authentication

Message integrity Message Digest

Non-repudiation Digital Signature

Access Control Certificate Attributes

Page 11: Secure Electronic Transaction Final

Parties in SET

Page 12: Secure Electronic Transaction Final

SET Transactions

Page 13: Secure Electronic Transaction Final

Symmetric key encryption system

Same key is used to both encrypt and decrypt data

Examples of encryption systems: DES, 3DES, AES

Page 14: Secure Electronic Transaction Final

Public key encryption system

Each user has 2 keys: what one key encrypts,only the other key in the pair can decrypt.Public key can be sent in the open.Private key is never transmitted or shared.Eg. RSA (Rivest, Shamir, and Adleman )

Recipient’s Public Key Recipient’s Private Key

Page 15: Secure Electronic Transaction Final

Message Digest

• Used to determine if document has changed• Usually 128-bit or 160-bit “digests”• Infeasible to produce a document matching a digest• A one bit change in the document affects about half the bits in the digest•Eg. SHA-1 (160-bit digest), Secure Hash Algorithm

Hash Algorithm

DigestPlaintext

Page 16: Secure Electronic Transaction Final

Digital Signature

Page 17: Secure Electronic Transaction Final

Digital Signature

Signer’s Private Key

EncryptedDigestHash

Algorithm

Digest SignedDocument

Page 18: Secure Electronic Transaction Final

Verifying the Digital Signature

Hash Algorithm

Digest

Digest??

Signer’sPublic Key

Integrity: One bit change in the content changes the digest

Page 19: Secure Electronic Transaction Final

Digital Envelope

Combines the high speed of DES (symmetric encryption) and the key management convenience of RSA (public key encryption)

“DigitalEnvelope”

One timeencryption Key

Recipient’sPublic Key

Page 20: Secure Electronic Transaction Final

Digital Certificate• A digital certificate or Digital ID is a computer-based

record that attests to the binding of a public key to an identified subscriber.

• Certificate issued by Certification Authority (CA).

• Certified digital signature attests to message content and to the identity of the signer.

• Combined with a digital time stamp, messages can be proved to have been sent at certain time.

Page 21: Secure Electronic Transaction Final

Digital Certificate

Page 22: Secure Electronic Transaction Final

X.509 Certificate Version 3

Version

This identifies which version of the X.509 standard applies to this certificate.

Serial Number

The entity that created the certificate is responsible for assigning it a serial number to distinguish it from other certificates it issues.

Signature Algorithm Identifier This identifies the algorithm used by the CA to sign the

certificate.

Page 23: Secure Electronic Transaction Final

Issuer Name The X.500 name of the entity that signed the certificate. This is

normally a CA. Validity Period

Each certificate is valid only for a limited amount of time. This period is described by a start date and time and an end date and time.

Subject Name The name of the entity whose public key the certificate identifies.

Subject Public Key Information This is the public key of the entity being named, together with an

algorithm identifier which specifies which public key crypto system this key belongs to and any associated key parameters.

X.509 Certificate Version 3

Page 24: Secure Electronic Transaction Final

X.509 Certificate Version 3

Page 25: Secure Electronic Transaction Final

X.509 Certificate Version 3

Page 26: Secure Electronic Transaction Final

Dual Signatures

• Links two messages securely but allows only one party to read each. Used in SET.

MESSAGE 1

DIGEST 1

NEW DIGEST

HASH 1 & 2WITH SHA

MESSAGE 2

DIGEST 2

CONCATENATE DIGESTSTOGETHER

HASH WITH SHA TOCREATE NEW DIGEST

DUAL SIGNATURE

PRIVATE KEYENCRYPT NEW DIGESTWITH SIGNER’S PRIVATE KEY

Page 27: Secure Electronic Transaction Final

SET Transactions

Page 28: Secure Electronic Transaction Final

SET Supported Transactions

card holder registration merchant registration purchase request payment authorization payment capture

certificate query

purchase inquiry

purchase notification

sale transaction

authorization reversal

capture reversal

credit reversal

Page 29: Secure Electronic Transaction Final

Card Holder Registration

Page 30: Secure Electronic Transaction Final

Card Holder Registration

Page 31: Secure Electronic Transaction Final

Card Holder Registration

Page 32: Secure Electronic Transaction Final

Card Holder Registration

Cardholder Initiates Registration

Page 33: Secure Electronic Transaction Final

Card Holder Registration

CA Sends Response

Page 34: Secure Electronic Transaction Final

Card Holder Registration

Cardholder Requests Registration Form

Page 35: Secure Electronic Transaction Final

Card Holder RegistrationCA Sends Registration Form

Page 36: Secure Electronic Transaction Final

Card Holder RegistrationCardholder Requests Certificate

Page 37: Secure Electronic Transaction Final

Card Holder RegistrationCA Sends Certificate

1.

2.

Page 38: Secure Electronic Transaction Final

Card Holder RegistrationCardholder Receives Certificate

Page 39: Secure Electronic Transaction Final

SET Supported Transactions

card holder registration merchant registration purchase request payment authorization payment capture

certificate query

purchase inquiry

purchase notification

sale transaction

authorization reversal

capture reversal

credit reversal

Page 40: Secure Electronic Transaction Final

Merchant Registration

Page 41: Secure Electronic Transaction Final

SET Supported Transactions

card holder registration merchant registration purchase request payment authorization payment capture

certificate query

purchase inquiry

purchase notification

sale transaction

authorization reversal

capture reversal

credit reversal

Page 42: Secure Electronic Transaction Final

Purchase Request

Page 43: Secure Electronic Transaction Final

Purchase RequestCustomer Browses for Products

Page 44: Secure Electronic Transaction Final

Purchase RequestSelect the Card for Payment

Page 45: Secure Electronic Transaction Final

Purchase Request

Page 46: Secure Electronic Transaction Final

Purchase RequestCardholder Initiates Request

Page 47: Secure Electronic Transaction Final

Purchase RequestMerchant Sends Response

Page 48: Secure Electronic Transaction Final

Purchase Request

The Cardholder Sends Request

Page 49: Secure Electronic Transaction Final

Purchase Request

Cardholder Sends Purchase Request

Page 50: Secure Electronic Transaction Final

Purchase Request

Merchant Processes Purchase Request Message

Page 51: Secure Electronic Transaction Final

Purchase RequestMerchant Sends Purchase Response

Page 52: Secure Electronic Transaction Final

SET Supported Transactions

card holder registration merchant registration purchase request payment authorization payment capture

certificate query

purchase inquiry

purchase notification

sale transaction

authorization reversal

capture reversal

credit reversal

Page 53: Secure Electronic Transaction Final

Payment Authorization

Payment Authorization Process

Page 54: Secure Electronic Transaction Final

SYSTEM CONFIGURATION

Hardware requirements•Any 32-bit processor•Memory of minimum 128 MB RAM•Sufficient Hard Disk Free space•Mouse preferred for ease of useSoftware requirements•Development tool: Java 1.3 or above, Bouncy Castle Provider•Operating system: Compatible to all OS•Back end: Microsoft SQL Server / Microsoft Access•Any Web Browser

Page 55: Secure Electronic Transaction Final

Database Organization

A database is used at the Cardholder Machine to store his Card Details

Page 56: Secure Electronic Transaction Final

Important Source Files

Source File Important Classes Description

ConnectionManager.java ConnectionManager Manages Database Connection

DigitalSignature.java DigitalSignature Create and Verify Digital Signatures.

DualSignClass.java DualSignature Create and Verify Dual Signatures.

NETClient.java Packet, NETClient Prepare messages to send and manage message reception from server.

RSAClass.java RSACipher Performs RSA Encryption and Decryption on blocks of plaintext.

SymmetricCipher.java SymmetricCipher, SymmetricKey

Performs 3DES Encryption and Manage Symmetric Keys

Page 57: Secure Electronic Transaction Final

Important Source FilesSource File Important Classes Description

FileSystemManager.java RSAKeyFile, X509v3File

Manages Storage of RSA Keys and X509 v3 Certificates

X509Generator.java X509Generator Create X509 v3 Digital Certificate

DualSignClass.java DualSignature Create and Verify Dual Signatures.

X509Verifier.java X509Verifier Verify the validity of X509v3 Certificates.

CardHolderReg.java CardHolderReg Manage Cardholder Registration request and responses.

PurchRequest.java PurchaseRequest Manage Purchase Request

ReqCert.java ReqCert Manage Certificate Request.

SetApplication.java SetApplication Main Class that outlines other functions.

Page 58: Secure Electronic Transaction Final

Conclusion

With the help of the above discussions, the SET protocol appears to be complete, sound, robust and reasonably secure for the purpose of credit-card transactions. However, it is important that the encryption algorithms and key-sizes used, will be robust enough to prevent observation by hostile entities. The secure electronic transactions protocol (SET) is important for the success of electronic commerce. Secure electronic transactions will be an important part of electronic commerce in the future. Without such security, the interests of the merchant, the consumer, and the credit or economic institution cannotbe served.

Page 59: Secure Electronic Transaction Final

References

• William Stallings, Cryptography and Network Security 3/e, Pearson, 2003• http://www.setco.org/download/set_bk2.pdf•http://www.cl.cam.ac.uk/Research/Security/resources/SET/intro.html

• Jonathan B. Knudsen, Java Cryptography, First Edition May 1998• Herb Schildt, Java 2 Complete Reference 4/e, Osborne,1999

Page 60: Secure Electronic Transaction Final

Thank you