Microsoft PowerPoint - Module-4-Part-1
Microsoft PowerPoint - Module-4-Part-1
Introduction
Module-4 (Real-time Security and Application Layer
Security)
Real-time communication security – Perfect Forward A real-time protocol negotiates interactively to authenticate each other
Secrecy (PFS), Denial-of-Service protection, Endpoint and establish a session key in contrast to a protocol such as email in
which one party prepares a message that can later be decrypted
identifier hiding, Live partner reassurance.
and authenticated by the intended recipient.
➠ e.g., IPsec, SSL/TLS, and SSH.
Hypertext Transfer Protocol Secure (HTTPS) –
Connection initiation, Closure. Secure Shell (SSH) – At a minimum, the protocols provide mutual authentication between
Transport layer protocol, User authentication protocol, Alice and Bob and establish a session key for cryptographic
Connection protocol. protection of the subsequent conversation.
Secure Electronic Transaction (SET) – Overview, The conversation protected with that session key is known as a
security association
Features, Participants, Dual signature, Payment
processing.
2 / 12
Real-time Communication Security What Layer? Real-time Communication Security What Layer?
3 / 12 3 / 12
Real-time Communication Security Perfect Forward Secrecy Real-time Communication Security Perfect Forward Secrecy
Real-time Communication Security Perfect Forward Secrecy Real-time Communication Security Perfect Forward Secrecy
Stateless cookie
• The Photuris (an early key management protocol for Ipsec) cookie is a number
chosen by Bob, and unpredictable to the side initiating communication with Bob.
• When Bob receives a connection initiation from IP source address S, Bob sends
this number, in the clear, to the IP address S.
• Bob does no significant computation until he receives the same cookie back from
that IP address.
• This assures that the initiator can receive packets sent to the IP address from
which it claims to be transmitting.
• The Photuris protocol provided for stateless cookies. The idea is to have the
cookie be a function of the IP address and a secret known to Bob, so that Bob can
Stateless cookie protocol
calculate what cookie he would have sent to a particular IP address.
6 / 12 6 / 12
Real-time Communication Security Denial-of-service Protection Real-time Communication Security Endpoint Identifier Hiding
8 / 12 8 / 12
Real-time Communication Security Live Partner Reassurance Real-time Communication Security Live Partner Reassurance
Session Resumption
This seems similar to a cookie, but it is desirable for a cookie to be
stateless, so that Bob does not have to keep state until he’s at least
sure the other end can listen at the IP address it claims to be sending
from. With the most straightforward implementation of a stateless
cookie, the cookie will be reused, so wouldn’t work as a nonce. It is
Session resumption: bypass the initial public key authentication if Bob
possible to design a protocol that will allow something to work both has recently authenticated Alice and established a session key
as a nonce and as a stateless cookie (see Homework Problem 10).
Example:
Note that we’ve only ensured that Bob knows it’s the live Alice (and Alice sends Bob Xab = [{S}Bob ]Alice , encrypted and signed session key
not replayed messages). How would Alice know it’s the real Bob? If ➠ if Bob saves Alice’s last Xab and Xab = Xab, use the last S
Alice chooses a different a each time, and if Alice receives proof ➠ otherwise, Bob verifies and decrypts Xab to get S
from the other side that it knows K (for instance, by acting on her
request, which was encrypted with K), then she knows it’s the real
Bob. But suppose Alice, like Bob, would like to reuse a to save
herself from computing ga mod p (see Homework Problem 11)
10 / 12
Plausible Deniability
Another trick is the ability to bypass the initial expensive public
key authentication if the server has recently authenticated the client
and established a shared secret session key. In Lotus Notes, Bob (the
server) has a secret S that he shares with nobody, and changes Plausible deniability: to design the protocol so there is a lack of evidence
periodically (once a month). After Bob authenticates Alice, he sends her proving that two parties talked
a secret, SAlice-Bob, which is a hash of her name and S, encrypted with Does the following protocol have plausible deniability?
her public key. Until Bob changes S, he’ll give Alice the same SAlice-Bob
each time she is successfully authenticated. Alice and Bob authenticate with a shared secret?
The actual session key (used for encryption and integrity ➠ yes, the session can be forged (solely) by Alice or Bob
protection) is a function of SAlice-Bob and nonces sent by each side. If Alice and Bob authenticate using public encryption key?
Alice shows knowledge of the SAlice-Bob that would result from ➠ yes, anyone can make up a conversation
hashing S and her name, then Bob assumes he’s authenticated her in Alice and Bob authenticate by signing the other’s identity?
the recent past, and they skip the expensive public key operations. If ➠ no, only Alice or Bob can access its signature key
Bob has switched Ss, then Alice’s attempt to bypass the expensive
authentication step will fail, and Alice and Bob will start from the
beginning exchanging certificates, signing things, etC
11 / 12
If a protocol involves having Alice sign something containing Bob’s name,
then it offers proof that Alice intentionally talked to Bob (though it still
gives no indication of what they talked about). In some cases Alice would
like to assure Bob that it is her, but not provide proof that she talked to
Bob. If Alice and Bob are authenticating each other based on a shared
secret, then there is no way to prove to a third party that Alice and Bob
communicated with each other, because the entire conver- sation could
have been constructed by Alice or Bob. If Alice and Bob authenticate each
other using public encryption keys, anyone could create an entire
conversation that looks like a conversation between Alice and Bob (e.g.,
consider Protocol 14-7, and change the first two messages from being
signed by the sender to being encrypted with the recipient’s public key.
No knowledge of either side’s private key is required to create such
messages). If Alice and Bob authenticate each other using public
signature keys, then it is possible to create a protocol in which each signs
information including the other’s identity, in which case there is no
plausible deniability. But it is also possible to avoid signing the other
side’s identity, and therefore preserving plausible deniability (see
Protocol 14-7).
What is SET?
Module-4 (Real-time Security and Application Layer Security)
• Real-time communication security – Perfect Forward • Secure Electronic Transaction or SET is a system which
Secrecy (PFS), Denial-of-Service protection, Endpoint ensures security and integrity of electronic transactions
identifier hiding, Live partner reassurance. done using credit cards.
• Hypertext Transfer Protocol Secure (HTTPS) – Connection • SET is not some system that enables payment but it is a
initiation, Closure. Secure Shell (SSH) – Transport layer security protocol applied on those payments.
protocol, User authentication protocol, Connection
protocol. • It uses different encryption and hashing techniques to
• Secure Electronic Transaction (SET) – Overview, Features, secure payments over internet done through credit
Participants, Dual signature, Payment processing. cards.
1 2
Who all uses it?
• Visa • SET protocol restricts revealing of
• Mastercard • Credit card details to merchants and
• Microsoft • Order details to banks !!
• NetScape ....
3 4
7 8
Participants in SET
1. Cardholder – customer
2. Issuer – customer financial institution
3. Merchant-person or organization that has
services or goods to sell to customer
4. Acquirer – Merchant financial institution
5. Certificate authority – Authority which follows
certain standards and issues certificates(like
X.509V3) to all other participants.
9 10
SET TRANSACTIONS
• 1. Customer Opens An Account: Customer obtains a credit card account • 5. Merchant is Verified: In addition to the order form, the merchant sends
with a bank that supports electronic payment and SET. a copy of the certificate so that the customer can verify that he or she is
• 2. Customer Receives A Certificate: After suitable verification of identity, dealing with a valid store.
the customer receives an X.509v3 digital certificate signed by the bank. • 6. Order and Payment are Sent: Customer sends both order and payment
• 3. Merchants Have Own Certificates: A merchant who accepts a bank card information to merchant along with customer’s certificate. The order
must be in possession of two certificates for the two public keys owned by confirms the purchase of items in the order form. The payment contains
the merchant:One for signing messages,One for key exchange credit card details. The payment information is encrypted so that it cannot
• 4. Customer Places An Order: Customer send a list of items to be be read by the merchant. The customer’s certificate enables the merchant
purchased to the merchant, who returns an order form containing the list to verify the customer.
of items to be purchased to the merchant. Merchant returns an order • 7. Merchant Requests Payment Authorization: Merchant sends the
form containing the list of items, their price, a total price, and an order payment information to the payment gateway. This requests authorization
number. that the customer’s available credit is sufficient for this purchase.
11 12
Dual Signature
• 8. Merchant Confirms Order: Merchant sends a • The dual signature is a concept introduced with SET,
confirmation of the order to the customer. which aims at connecting two information pieces
• 9. Merchant Provides Goods or Service: meant for two different receivers :
Merchant ships the goods or provides the service Order Information (OI) for merchant
to the customer.
Payment Information (PI) for bank
• 10. Merchant Requests Payment: Request is sent
to payment gateway to handle payment
processing
13 14
Dual Signature
How to make Dual Signature (DS)?
17 18
Purchase Request Generation Purchase Request Generation
• Before the Purchase Request exchange begins, the cardholder has completed 3.Purchase Request:
browsing, selecting, and ordering. For this purpose, the cardholder generates a one-time symmetric encryption key, Ks. The
message includes the following:
• The purchase request exchange consists of four messages:
• 1.Initiate Request :In order to send SET messages to the merchant, the cardholder must have a • 1. Purchase-related information.
copy of the certificates of the merchant and the payment gateway. The customer requests the This information will be forwarded to the payment gateway by the merchant and consists of
certificates in the Initiate Request message, sent to the merchant. This message includes the brand of • Payment Information (PI)
the credit card that the customer is using. The message also includes an ID assigned to this • Dual Signature
request/response pair by the customer and a nonce used to ensure timeliness.
• Order Information Message Digest (OIMD)
• 2.Initiate Response :The response includes the nonce from the customer, another nonce for the (All of these items are encrypted with Ks)
customer to return in the next message, and a transaction ID for this purchase transaction. In addition to • The digital envelope. This is formed by encrypting Ks with the payment gateway's public
the signed response, the Initiate Response message includes the merchant's signature certificate and the key-exchange key. It is called a digital envelope because this envelope must be opened
payment gateway's key exchange certificate. (decrypted) before the other items listed previously can be read. The value of Ks is not
The cardholder verifies the merchant and gateway certificates by means of their respective CA signatures and made available to the merchant. Therefore, the merchant cannot read any of this
then creates the OI and PI. The transaction ID assigned by the merchant is placed in both the OI and PI. payment-related information.
19 20
23 24
25 26
PAYMENT PROCESS - Payment Authorization PAYMENT PROCESS - Payment Authorization
The merchant sends an authorization request message to 2. Authorization-related information: This information is
the payment gateway consisting of the following: generated by the merchant and consists of :
1. Purchase-related information - An authorization block that includes the transaction ID, signed with the
merchant's private signature key and encrypted with a one-time symmetric
» PI key generated by the merchant
» Dual signature calculated over the PI & OI and signed with - A digital envelope. This is formed by encrypting the one-time key with the
payment gateway's public key-exchange key.
customer’s private key.
3. Certificates
» The OI message digest (OIMD)
» Cardholder’s signature key certificate
» The digital envelop » Merchant’s signature key certificate
» Merchant’s key exchange certificate
27 28
29 30
Module-4 (Real-time Security and
HTTPS
Application Layer Security)
Real-time communication security – HTTPS (HTTP over SSL)
Perfect Forward Secrecy (PFS), Denial-of-
combination of HTTP & SSL/TLS to secure communications
Service protection, Endpoint identifier between browser & server
hiding, Live partner reassurance.
documented in RFC2818
Hypertext Transfer Protocol Secure no fundamental change using either SSL or TLS
(HTTPS) – Connection initiation, Closure.
use https:// URL rather than http://
Secure Shell (SSH) – Transport layer
protocol, User authentication protocol, and port 443 rather than 80
Connection protocol. encrypts
Secure Electronic Transaction (SET) – URL, document contents, form data, cookies, HTTP headers
Overview, Features, Participants, Dual
signature, Payment processing.
Port Forwarding
Channel Types
Four channel types are recognized in the SSH Connection One of the most useful features of SSH is port forwarding. In essence, port
forwarding provides the ability to convert any insecure TCP connection into a
Protocol specification.
secure SSH connection. This is also referred to as SSH tunneling.
session: The remote execution of a program. The program may SSH Transport Layer Protocol establishes a TCP connection between SSH client
be a shell, an application such as file transfer or email, a & server
system command, or some built-in subsystem. Once a session
client traffic redirected to local SSH, travels via tunnel, then remote SSH
channel is opened, subsequent requests are used to start the
delivers to server
remote program.
supports two types of port forwarding
x11: This refers to the X Window System, a computer software
system and network protocol that provides a graphical user local forwarding – hijacks selected traffic
interface (GUI) for networked computers. remote forwarding – client acts for server
forwarded-tcpip: This is remote port forwarding.
direct-tcpip: This is local port forwarding.