SSL security services
• Server authentication
– Client authentication is optional
• Message integrity
• Set protocol details
– Authenticate server
– Establish keys
• Data transfer
2/2/2016 Gene Itkis: CS558 Network Security 5
– Supported options
– Options to be used
• ServerCertificate (ServerKeyExchange)
• Finished (sent by client)
2/2/2016 Gene Itkis: CS558 Network Security 6
SSL Handshake - First PartTime
Gray areas are optional in some circumstances.
SSL Handshake - Second PartTime
Gray areas are optional in some circumstances.
Buffers Packets that
need to be forwarded
(based on IP address).
Data Link Layer
HTTPS is HTTP with SSL (Secure Socket Layer).
HTTPS uses the TLS/SSL default TCP port, port 443
:"Network Security Essentials: Applications and
Standards," Prentice Hall, by Wm. Stallings (ECE6612)
Web Browser or Web Server
SSL (Secure Sockets Layer)
• NOT a payment protocol -- can be used for any secure
communications, like credit card numbers
• SSL is a secure data exchange protocol providing
– Privacy between two Internet applications
– Authentication of server (authentication of browser optional)
• Uses enveloping: RSA used to exchange DES keys
• SSL Handshake Protocol
– Negotiates symmetric encryption protocol, authenticates
• SSL Record Protocol
– Packs/unpacks records, performs encryption/decryption
• Does not provide non-repudiation
SET (Secure Electronic Transactions)
• Provides a secure communications channel among all the parties involved in a
transaction: Customer, Seller, Customer’s credit provider, Seller’s bank.
• Provides trust by the use of X.509v3 certificates.
• Ensures privacy because information is only made available to the parties that need it.
* Cardholder account authentication to the Merchant (Cardholder must have a
Certificate issued by the credit company). Merchant may issue a temporary Certificate
to issue the session is not hijacked).
* Verifies Merchant's relationship with financial institution.
* Integrity of data customer sends to Merchant (order info tied to funds transfer).
SET - Steps in a Transaction
1. Customer opens account with credit company or bank.
2. Bank issues X.509 cert. to the Customer with RSA Keys.
3. Merchant has two certificates, signing and key exchange.
4. Customer places an order.
5. The Merchant sends the customer a copy of his certificate.
6. The Customer sends Order Information (OI) encrypted so the Merchant can read
it, and Payment Information (PI) encrypted so the Merchant can not read it.
7. Merchant requests payment by sending PI to the “Payment Gateway” (who can
decrypt it) and verifies Customer’s credit.
8. Merchant confirms the order to the Customer.
9. Merchant ships goods to Customer.
10. Merchant sends request for payment to the Payment Gateway which handles
transfer of funds.
Electronic Payment Systems
Credit Card Protocols:
SSL, TLS, SET
•Assumes risk of card
•Merchant Bank (Acquirer)
•Sets up merchant
•Assumes risk of merchant
TLS (Transport Layer Security)
• SSL is so important it was adopted by the Internet
Engineering Task Force (IETF)
• TLS Protocol 1.0 (RFC 2246)
• TLS is very similar to SSL but they do not interoperate
– Separate record and handshaking protocols
– Extensibility (add new cipher suites easily)
– Efficiency (minimize network activity)
•pays with card
•mag data read
and sales conducted
•captures sales (at end
•submits batch for
via dial, lease line,
3 . Acquiring Bank’s Processor
•direct connections to MC /VI
•obtains authorization from Issuer
•returns response to merchant
•five digit number that must be stored
6. Acquiring Bank /
•scans settlement file
match captured data
•prepares file for MC/VI
•prepares funding file
•records txs for reporting
4 . Issuing Bank / Processor
•receives auth request
•verifies available funds
•places hold on funds
7. Issuing Bank / Processor
•receives settlement file from
MC / VI
•funds MC / VI
•matches txs to auths
•post txs to cardholder
•records transactions for
8. MC / VI
debit issuers /
credit acquirers9. Acquiring Bank
SET in Practice
• Confidentiality of payment and order information
• Integrity of all data (digital signatures)
• Authentication of cardholder & account (certificates)
• Authentication of merchant (certificates)
• No reliance on secure transport protocols (uses TCP/IP)
• Interoperability between SET software and network
– Standardized message formats
• SET is a payment protocol
– Messages relate to various steps in a credit card transaction
Geo-Political CA (optional)
(only for VISA)
Payment Gateway CA
(MasterCard, Banesto in VISA
Merchant Payment Gateway
SET Certificate Hierarchy
SSL Vs. SET
• A part of SSL (Secure Socket Layer) is available on
– it is basically an encryption mechanism for order taking, queries and
– it does not protect against all security hazards
– it is mature, simple, and widely use
• SET ( Secure Electronic Transaction) is a very
comprehensive security protocol
– it provides for privacy, authenticity, integrity, and, or repudiation
– it is used very infrequently due to its complexity and the need for a
special card reader by the user
– it may be abandoned if it is not simplified/improved
SET Vs. SSL
Secure Electronic Transaction (SET) Secure Socket Layer (SSL)
SET is tailored to the credit card
payment to the merchants.
SSL is a protocol for general-
purpose secure message
SET protocol hides the customer’s
credit card information from
merchants, and also hides the order
information to banks, to protect
privacy. This scheme is called dual
SSL protocol may use a certificate,
but there is no payment gateway.
So, the merchants need to receive
both the ordering information and
credit card information, because
the capturing process should be
initiated by the merchants.
Payments, Protocols and Related Issues
• SET Protocol is for Credit Card Payments
• Electronic Cash and Micropayments
• Electronic Fund Transfer on the Internet
• Stored Value Cards and Electronic Cash
• Electronic Check Systems
• Security requirements
Payments, Protocols and Related Issues (cont.)
Authentication: A way to verify the buyer’s identity before
payments are made
Integrity: Ensuring that information will not be accidentally or
maliciously altered or destroyed, usually during transmission
Encryption: A process of making messages indecipherable
except by those who have an authorized decryption key
Non-repudiation: Merchants need protection against the
customer’s unjustifiable denial of placed orders, and customers need
protection against the merchants’ unjustifiable denial of past payment
Electronic Credit Card System
on the Internet
• The Players
Issuer (your bank)
Acquirer (merchant’s financial institution,
acquires the sales slips)
Brand (VISA, Master Card)
Secure Electronic Transaction (SET) Protocol
1. The message is hashed to a prefixed length of message digest.
2. The message digest is encrypted with the sender’s private signature
key, and a digital signature is created.
3. The composition of message, digital signature, and Sender’s
certificate is encrypted with the symmetric key which is generated at
sender’s computer for every transaction. The result is an encrypted
message. SET protocol uses the DES algorithm instead of RSA for
encryption because DES can be executed much faster than RSA.
4. The Symmetric key itself is encrypted with the receiver’s public key
which was sent to the sender in advance. The result is a digital
Five Security Tips
• Don’t reveal your online Passcode to anyone. If you think your
online Passcode has been compromised, change it immediately.
• Don’t walk away from your computer if you are in the middle of a
• Once you have finished conducting your banking on the Internet,
always sign off before visiting other Internet sites.
• If anyone else is likely to use your computer, clear your cache or
turn off and re-initiate your browser in order to eliminate copies of
Web pages that have been stored in your hard drive.
• Banks strongly recommends that you use a browser with 128-bit
encryption to conduct secure financial transactions over the