35
WebSphere MQ October 31 st 2002 © 2002 IBM Corporation MQ and SSL Neil Kolban IBM Corp [email protected]

SSL

Embed Size (px)

Citation preview

Page 1: SSL

WebSphere MQ

October 31st 2002 © 2002 IBM Corporation

MQ and SSL

Neil KolbanIBM [email protected]

Page 2: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Overview

Part I – Overview of security goals and SSLPart II – The MQ SSL story

Page 3: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Security

Goals of security– Confidentiality– Message integrity– Endpoint Authentication

Page 4: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Plaintext PlaintextCyphertext

Encryption (1)

Encryption– Data confidentiality– Plain text vs Cipher text

Page 5: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Encryption (2)

CipherPlain

RZ

……

AI

BH

DG

CF

QE

ND

IC

MB

TA

Encryption– Data confidentiality– Plain text vs Cipher text

Encryption– ƒE(Plain) = Cipher

– Example: ƒE(“HEAD”) = “BQTN”

Decryption– ƒD(Cipher) = Plain

– Example: ƒD(“BQTN”) = “HEAD”

Page 6: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Cipher keys (1)

Plaintext PlaintextCiphertext

Encryption Decryption

Page 7: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Cipher keys (2)

H

F

N

I

C

S

T

E

W

O

Cipher K=n

M

E

L

U

S

P

C

Y

T

N

Cipher K=2

Cipher K=1

Plain

RZ

……

AI

BH

DG

CF

QE

ND

IC

MB

TA

Keys–Shared secret key–Symmetric cryptography–Common algorithms

–DES–RC2–RC4

Encryption–ƒE(Plain, Key) = Cipher–ƒE(“HEAD”, 2) = “LPNC”

Decryption–ƒD(Cipher, Key) = Plain–ƒD(“LPNC”, 2) = “HEAD”

Page 8: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Public Key Cryptography (1)

Plaintext PlaintextCiphertext

Public key Private key

Encryption Decryption

Page 9: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Public Key Cryptography (2)

Two keys– One public (known to everyone)– One private (known only to you)– Common algorithms

– RSA– Diffie-Hellman

– Asymmetric cryptographyƒE(Plain, Keypublic) = CipherƒD(Cipher, Keyprivate) = PlainKeys are asymmetricRelatively expensive to use

Page 10: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Security

Goals of security

– Confidentiality

– Message integrity

– Endpoint Authentication

Page 11: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Message Digest (1)

Input → arbitrary length messageOutput → fixed length stringAttributes

– Irreversibility– Collision resistance

Other names for this– Hashing– Checksum

Common algorithms– MD5– SHA

Page 12: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Message Digest (2)

ƒH(Message) = HashDataƒH(Message1) ≠ ƒH(Message2)

→ Message1 ≠ Message2

Message hDigest

Page 13: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Digital Signature (1)

Digital Signature built from– Message Digest– Public key encryption

Used to prove that a message has not been tampered with.

Page 14: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Digital Signature (2)

hPrivate Key

Private Key

Page 15: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Digital Signature (3)

h

h?

Public Key

Public Key

Page 16: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Security

Goals of security–Confidentiality

–Message integrity

–Endpoint Authentication

Page 17: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Man in the middle attack

Page 18: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Certificate Authority

Page 19: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Certificates

Issued by CA–VeriSign–Entrust–CyberTrust–etc

Contains–Subject Name–Issuer Name–X.500 distinguished names

X.509–Common certificate exchange format

Page 20: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Security

Goals of security– Confidentiality– Message integrity– Endpoint Authentication

Implement this design and you have SSL!!

Page 21: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Part II MQ and SSL

Page 22: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Data movement between queue managers

QueueManager

QueueManager

No SSL

QueueManager

QueueManager

With SSL

Page 23: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Adding SSL Support

QueueManager Channel

TCP/IP

QueueManager

TCP/IPLink

QueueManager Channel

SSL

QueueManager

SSLEncryption

TCP/IP TCP/IPLink

Page 24: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

MQ SSL Implementations

Supports SSL V3.0Implemented using:

System SSLz/OS

???Unix

SChannelWindows

JSSE (Java Secure Socket Extension)Java

Page 25: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Channel Security

SSL can be used across channelsAll kinds of channels supported

– Sender– Receiver– Cluster– Client– Etc

Specified on a per channel basis

Page 26: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Key questions

Which CipherSpec shall be used?– Cost of security– Performance characteristics

Is client authentication required?– Uni or bidirectional authentication

Names of accepted peers.– Limit the names of channel initiators (SSL clients)

Page 27: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Channel definitions

SSL either enabled or disabled by channel definitionNew parameters for channel definitions

– Cypher spec (SSLCIPH)– DN’s allowed (SSLPEER)– Client authentication required (SSLCAUTH)

Page 28: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

SSLCipherSpec (SSLCIPH) – Channel attribute

Name of the Cipher specification to useIf blank, no SSLSame attribute value required on both ends of the channel

Encryption bitsEncryption algorithmHash algorithmCipherSpec name

0NoneMD5NULL_MD5

256AESSHATLS_RSA_WITH_AES_128_CBC_SHA

128AESSHATLS_RSA_WITH_AES_128_CBC_SHA

1283DESSHATRIPLE_DES_SHA_US

56DESSHADES_SHA_EXPORT1024

56RC4SHARC4_56_SHA_EXPORT1024

40DESSHADES_SHA_EXPORT

128RC2MD5RC2_MD5_EXPORT

128RC4SHARC4_SHA_US

40RC4MD5RC4_MD5_US

0RC4MD5RC4_MD5_EXPORT

0NoneSHANULL_SHA

Page 29: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

SSLClientAuth (SSLCAUTH) - Channel attribute

Requestor to form channel considered the SSL ClientDefines if certificate from client is needed to form channelValues:

– Required – Client authentication required– Optional – Client authentication optional

Page 30: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

SSLPeerName (SSLPEER) - Channel attribute

Distinguished names of the allowed partners

Page 31: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Obtaining certificates

Certificates obtained from Commercial CACertificates for test environments

– OpenSSL– MakeCert– Java 1.4 Keytool– IKeyMan

Page 32: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Certificate Stores

Certificates stored in key repositoriesQueue manager SSLKeyRepository (SSLKEYR) attributes specifies Queue Manager’s location of its own certificateMQ Client uses the MQSSLKEYR environment variable to specify location of certificate store

Page 33: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

The amqmcert command

Used to manage MQSeries certificate storeAdds certificates to storeRemoves certificates from storeLists certificates in storeAssigns certificate to queue manager

Page 34: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

Performance

Nothing for nothing …Extra CPU overhead for encrypted dataNo official IBM numbers yet publishedPerformance expected to be equivalent to moving same quantity ofdata over base SSL implementation

– Possibly better due to single handshake and reuse– Overhead based on ciphersuite employed

Page 35: SSL

WebSphere MQ

WebSphere MQ & SSL © 2002 IBM Corporation

ReferencesMQ Security ManualSSL and TLS – Eric RescortaJava Secure Socket Extension (JSSE) Reference GuideWeb sites

http://home.netscape.com/eng/ssl3/ssl-toc.html