Title: Security
1Security
2Secure Connections
- Secure connections are needed in many computer
related activities, including e-business and grid
computing.
3Key requirements for ensuring a secure connection
- Data Confidentiality - information exchange needs
to protected against eavesdroppers. - Authentication - access needs to be restricted to
those (humans or systems) that can provide proof
of identity. - Data Integrity - need to assure that message was
not modified in transit (intentionally or by
accident). - Non-repudiation - guarantees that sender cannot
deny that he/she sent message. Similarly receiver
not deny receiving message.
4Additional Factors
- Authorization - The process of deciding whether a
particular identity can access a particular
resource. - Access control - broader aspect of authorization
and controlling specific types of access.
5AuthenticationPassword-Based
- User enters a user name and password.
- User name and password sent through network to
server. - Server validates name and password and responds.
6Name and Password
- Consider a login prompt
- login gshrub
- There is no such user
- login
- A different login prompt behavior
- login gshrub
- password
- authentication failed
- login
- Second version a little more secure because it
reveals less information to a potential intruder,
but ...
7Name and Password
- Since name and password sent in plain text,
vulnerable to interference and being stolen. - Need a system in which in one can be sure of
sender.
8- Two aspects
- Send information in an encrypted form.
- Have a trusted third party or some sure way of
proving identity.
9Cryptography
- Basic idea convert clear text (also called
plain text the original message) to ciphertext
(the encrypted message) - ciphertext encrypt(plaintext)
- plaintext decrypt(ciphertext)
- Can either make encryption process hidden, so
that an intruder cannot know it, or - Can use a known technique and use a hidden key
10Cryptography algorithms with keys
- Converts data into scrambled binary patterns,
using a large binary number called a key. - A key is also used to convert the scrambled
patterns back to the original data. - Algorithms are well-known - it is a specific key
that must be kept secure.
11Secret Key Cryptography
- Sender and receiver has a same secret key in
their possession. - Sender uses secret key to encrypt data.
- Receiver uses same key to decrypt data.
- Known as symmetric cryptography. Key is called a
symmetric key.
12Encryption and Decryption
Hello. This is my message that must be kept secret
Hello. This is my message that must be kept secret
12gajey ck027jcLsajckjyfrasbiioppa2354mghdas
Original data
Cipher data
Original data
Same key
13Simple Secret-Key Example
- Data abra which has the binary
representation - 01100001011000100011100101100001
- Choose a random string of bits as the key
- 10011101010010001111010101011100
- Can use a simple XOR of the binary to get C
- 11111100001010101000011100111101
- To get P back, use the same algorithm and key!
- Practical algorithm usually much more complex.
14Common Symmetric Key Cryptography Systems
- Data Encryption Standard (DES) 56-bit key plus 8
parity bits - IBM 1970s. - Triple-DES 112 bit key plus 16 parity bits or
168-bit plus 24 parity bits. - RC2 and RC4 variable sized key, often 40 to 128
bits.
15Problemswith Symmetric key Cryptography
- Need a way of both sender and receiver to obtain
secret key without anyone else knowing the key. - Need a different key for each receiver that a
sender may communicate with.
16Advantagesof Symmetric Key Cryptography
- Fast encryption/decryption (compared to
asymmetric key cryptography (see next). - Used because of speed in conjunction with
asymmetric key cryptography.
17Public-Key Cryptography
- Public invention due to Whitfield Diffie Martin
Hellman at Stanford Univ. in 1976 - known earlier in classified community
- Probably most significant advance in the 3000
year history of cryptography - Uses clever application of number theoretic
concepts of functions - Complements rather than replaces secret key
cryptography
18Public Key Cryptography(Asymmetric key pair)
- Two keys are formed
- a public key to encrypt the transmission, and
- a private key to decrypt the transmission
- (or vice versa).
19Encryption and Decryption
Hello. This is my message that must be kept secret
Hello. This is my message that must be kept secret
12gajey ck027jcLsajckjyfrasbiioppa2354mghdas
Public key
Private Key
Original data
Cipher data
Original data
20Public Key and Private Key
- Public and private keys are pairs such that a
message encrypted with the public key can only be
decrypted with the private key (and vice versa). - Public key, as the name suggests, is available to
all. - Private key is only known by its owner.
- It is not possible to find the private key from
the public key for all practical purposes.
21Public-Key Cryptography
22Non-repudiation
- Public key cryptography can provide for
non-repudiation - a sender cannot deny they sent
out a message if encrypted with their private
key. Can be read with their public key.
23How secure is public key encryption?
- like private key schemes, brute force exhaustive
search attack is always theoretically possible - but
- requires the use of very large numbers
- hence is slow compared to private key schemes
24Aside
- One of the assignments we have considered is
breaking codes by exhausive search.
25Sequential Search
This figure does come from my own book Parallel
Programming Techniques and Application Using
Networked Workstations and Parallel Computers 2nd
edition, by Barry Wilkinson and Michael Allen,
Prentice Hall Inc., 2004.
26Using Multiple Identical Grid Services
27Public Key Cryptography Example
- Rivest, Shanir, and Adleman (RSA) variable sized
key, usually between 512 - 2048 bits
28Problem with Public Key Cryptography
- Slow
- Cannot be sure that a sender is sending the
message encrypted with the public key as everyone
knows this key
29Digital Signatures
- A way of achieving authentication and data
integrity. - Uses a hash function to create a message digest,
a footprint of the message which is encrypted
with senders private key to create a digital
signature.
30Hash Function
- Applying hash function to data will create a
small fixed sized block of data called in this in
text a message digest - Cannot obtain original data from the digest -
hence one-way. - Changes to the data will usually alter the
message digest.
31Digital Signature
Hello. This is my message that must be kept secret
asthwsf
129345
Hash function
Data
Digital Signature
Senders Private Key
Message Digest
Attach digital signature to message (data)
32Checking digital signature
- Receiver can do the following
- 1. Create a message digest from message using
same hash function. - 2. Decrypt message digest with senders public
key. - 3. Compare two message digests - if same message
should be from sender and not altered.
33Checking digital signature
34- Digital signature alone not sufficient to ensure
data not altered and is from the sender -
possible that public key is a fake. Still could
get matching digital signatures.
35Certificates
- A digital document belonging to the End-Entity
listing its specific public key. - A trusted party (a certificate authority, CA)
certifies that the public key does in fact belong
to the end-entity on the certificate. - Certificate comparable to a Drivers license or
passport.
36Certificate
Certificate This certificate belongs to Barry
Wilkinson Public key of certificate owner
Signature of Certificate Authority MyCA
Other information also on certificate, see later.
37Certificate Authority
- Certificate Authority has to first create its
own certificate to identify itself (keeping its
private key protected). - End-Entities submit their details to CA for CA to
issue a certificate back to End-Entity.
38Types of Certificates
- X.509 most widely used.
- Defined by International Telecommunications Union
(ITU) - Version 1 defined in 1988
- Version 2 , Version 3 (1996) adds fields, see
next slide.
39X.509 Format (version 3)
- Certificate version
- Certificate serial number
- Issuer signature algorithm ID
- Issuer X-500 name
- Validity period
- Subject X-500 name
- Subject public key information Algorithm ID
Public key value - Issuer unique ID
- Subject unique ID
- Extensions
- Issuer digital signature
40(No Transcript)
41Public Key Certificates
- IF you trust the Certificate Authority
- AND you are confident that the key that you have
is really the public key of the Certificate
Authority - THEN, you can decrypt the certificate with
confidence to obtain the public key of the sender - Read http//docs.sun.com/source/816-6154-10/conte
nts.htm, section starting with Certificates and
Authentication
42SSL (Secure Socket Layer) Protocol
- Uses public/private keys.
- Introduced by Netscape and widely adopted.
- Supported by both Netscape and Microsoft Internet
Explorer browser. - TLS (Transport Layer Security) newer but similar.
43- Requires several message to be exchanged between
client and server - .
- Described here in four phases.
44Phase I
- Client starts handshake and sends
- a random number, X.
- list of supported ciphers and compression
algorithms
45Phase II
- Server selects cipher and compression algorithm,
and notifies client. Then it sends - another random number, Y.
- a server certificate which includes public key
46Phase III
- Client sends
- a premaster secret encrypting it with server
public key - possibly a client certificate
47Phase IV
- Handshake finished. Message sent to inform
client.. - Server and client each generate a master secret
by combining random numbers X and Y, and the
premaster secret. - Several secret keys are generated from the master
secret, one to encrypt the data. - Encrypted data then sent to client.
48(No Transcript)
49SSL
- Ensures
- Authentication (by verifying certificates)
- Confidentiality ((by encrypting data with secret
key) - Integrity (by digesting data)
- Non-repudiation not ensured because Message
Authentication Code (MAC) of transmitted data
calculated with common secret key.
50Globus Grid Security Infrastructure(GSI)
- Uses public key cryptography
- Secure communication for authentication etc.
- Task communication can be encrypted with shared
key if required - Security across organizational boundaries (how?)
- Proxies provide single sign-on
51Certificates
- Every user and service on grid identified with a
certificate - X.509 format
- Certified by a Certificate Authority - Globus
provides one, Simple CA.
52Getting certificate from Simple CA
- Run
- GLOBUS_LOCATION/bin/grid-cert-request
- Certificate request stored in
- HOME/.globus/usercert_request.pem
- Email this request to certificate authority given
in request.
53Single sign-on
- to enable user and its agents to acquire
additional resources without repeated
authentication (passwords) - Achieved with proxies
54Proxy
- Consists of a new certificate with new public,
private keys, and owners identify (/CNproxy
added to name). - Certificate signed by owner (not CA)
- Proxy given limited lifetimes
- Proxys private key does not need to be kept as
secure as owners private key - setting file
permissions usually sufficient
55Additional Proxies
From Overview of the Grid Security
Infrastructure http//www.globus.org/security/ove
rview.htm
56Mutual Authentication with Proxies
- Remote party receives owners certificate and
owners proxy certificate. - Chain of trust
- Owners public key from owners certificate used
to validate proxy signature on proxy certificate - Certificate authority (CA) public key used to
validate owners signature on owners certificate
57More InformationOn-line
- Deploying a Public Key Infrastucture, IBM
Redbooks, www.redbooks.ibm.com, 2000,
SG24-5512-00. - For SSL protocol http//developer.netscape.com/do
cs/manuals/security/sslin/index.html - Digital signatures
- http//www.youdzone.com/signature.html
58Books
- Cryptography and Network Security 3rd edition, by
William Stalling.