Services and Security through Cryptography ccTLD Workshop November 27, 2007 Amman, Jordan Hervey Allen.

Slides:



Advertisements
Similar presentations
DNSSEC Cryptography Review DNSSEC Tutorial February 21, 2011 Hong Kong Will.i.am Hervey Allen.
Advertisements

Topic 7: Using cryptography in mobile computing. Cryptography basics: symmetric, public-key, hash function and digital signature Cryptography, describing.
Computer Science CSC 474By Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.1 Introduction to Cryptography.
CS 6262 Spring 02 - Lecture #7 (Tuesday, 1/29/2002) Introduction to Cryptography.
NSRC Workshop Some fundamental security concerns... Confidentiality - could someone else read my data? Integrity - has my data been changed? Authentication.
Security through Cryptography PacNOG 6 Hervey Allen.
Principles of Information Security, 2nd edition1 Cryptography.
Session 5 Hash functions and digital signatures. Contents Hash functions – Definition – Requirements – Construction – Security – Applications 2/44.
Lesson Title: Introduction to Cryptography Dale R. Thompson Computer Science and Computer Engineering Dept. University of Arkansas
Cryptography Basic (cont)
Chapter 5 Cryptography Protecting principals communication in systems.
BY MUKTADIUR RAHMAN MAY 06, 2010 INTERODUCTION TO CRYPTOGRAPHY.
Cryptographic Technologies
Presented by Xiaoping Yu Cryptography and PKI Cosc 513 Operating System Presentation Presented to Dr. Mort Anvari.
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
Cryptography April 20, 2010 MIS 4600 – MBA © Abdou Illia.
Network Security – Part 2 V.T. Raja, Ph.D., Oregon State University.
Computer Science CSC 774Dr. Peng Ning1 CSC 774 Advanced Network Security Topic 2. Review of Cryptographic Techniques.
Lecture 4 Cryptographic Tools (cont) modified from slides of Lawrie Brown.
Encryption Methods By: Michael A. Scott
Chapter 8.  Cryptography is the science of keeping information secure in terms of confidentiality and integrity.  Cryptography is also referred to as.
Encryption is a way to transform a message so that only the sender and recipient can read, see or understand it. The mechanism is based on the use of.
Public Key Model 8. Cryptography part 2.
Cryptography 101 Frank Hecker
1 Fluency with Information Technology Lawrence Snyder Chapter 17 Privacy & Digital Security Encryption.
Cryptographic methods: Recommended reading: "Applied Cryptography", Bruce Schneier Brian Candler Updated by Hervey Allen ccTLD Workshop Apia, Samoa.
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
DNSSEC Cryptography Review Track 2 Workshop July 3, 2010 American Samoa Hervey Allen.
1 Cryptography Basics. 2 Cryptography Basic terminologies Symmetric key encryption Asymmetric key encryption Public Key Infrastructure Digital Certificates.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
© Neeraj Suri EU-NSF ICT March 2006 DEWSNet Dependable Embedded Wired/Wireless Networks MUET Jamshoro Computer Security: Principles and Practice Slides.
Lecture 19 Page 1 CS 111 Online Symmetric Cryptosystems C = E(K,P) P = D(K,C) E() and D() are not necessarily the same operations.
每时每刻 可信安全 1The DES algorithm is an example of what type of cryptography? A Secret Key B Two-key C Asymmetric Key D Public Key A.
Cryptography  Why Cryptography  Symmetric Encryption  Key exchange  Public-Key Cryptography  Key exchange  Certification.
Cryptography, Authentication and Digital Signatures
Cryptographic methods: Recommended reading: Applied Cryptography, Bruce Schneier PacNOG I Workshop Presented by Hervey Allen Materials originally by Brian.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Module 3 – Cryptography Cryptography basics Ciphers Symmetric Key Algorithms Public Key Algorithms Message Digests Digital Signatures.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
Internet-security.ppt-1 ( ) 2000 © Maximilian Riegel Maximilian Riegel Kommunikationsnetz Franken e.V. Internet Security Putting together the.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 2 – Cryptographic.
1 Cryptography NOTES. 2 Secret Key Cryptography Single key used to encrypt and decrypt. Key must be known by both parties. Assuming we live in a hostile.
Cryptography (2) University of Palestine Eng. Wisam Zaqoot April 2010 ITSS 4201 Internet Insurance and Information Hiding.
Symmetric Cryptography, Asymmetric Cryptography, and Digital Signatures.
Public / Private Keys was a big year… DES: Adopted as an encryption standard by the US government. It was an open standard. The NSA calls it “One.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
Chapter 8 – Network Security Two main topics Cryptographic algorithms and mechanisms Firewalls Chapter may be hard to understand if you don’t have some.
Encryption No. 1  Seattle Pacific University Encryption: Protecting Your Data While in Transit Kevin Bolding Electrical Engineering Seattle Pacific University.
Lecture 2: Introduction to Cryptography
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
Security AFNOG 3 Workshop. Main Security Concerns ● Confidentiality ● Keeping our data safe from prying eyes ● Integrity ● Protecting our data from loss.
Security fundamentals Topic 4 Encryption. Agenda Using encryption Cryptography Symmetric encryption Hash functions Public key encryption Applying cryptography.
Encryption Basics Module 7 Section 2. History of Encryption Secret - NSA National Security Agency –has powerful computers - break codes –monitors all.
Public Key Encryption, Secure WWW Transactions & Digital Signatures.
MM Clements Cryptography. Last Week Firewalls A firewall cannot protect against poor server, client or network configuration A firewall cannot.
Cryptographic Security Aveek Chakraborty CS5204 – Operating Systems1.
 Encryption provides confidentiality  Information is unreadable to anyone without knowledge of the key  Hashing provides integrity  Verify the integrity.
ENGR 101 Compression and Encryption. Todays Lecture  Encryption  Symmetric Ciphers  Public Key Cryptography  Hashing.
CRYPTOGRAPHY Cryptography is art or science of transforming intelligible message to unintelligible and again transforming that message back to the original.
Hervey Allen Phil Regnauld 15 June 2009 Papeete, French Polynesia DNSSEC Tutorial: Public / Private.
Security through Cryptography SA-E Workshop May 13, 2009 Cairo, Egypt Hervey Allen.
Web Applications Security Cryptography 1
Lecture 4 - Cryptography
Presentation transcript:

Services and Security through Cryptography ccTLD Workshop November 27, 2007 Amman, Jordan Hervey Allen

Amman Securing your Server So, you wanna secure your server? The usual steps apply:  Run only what you need – nothing extra.  Keep it up-to-date.  Is your kernel “patchable”?  Run DNS (BIND) in a jail?  Watch permissions & avoid services as root  Logs: watch them, keep them, tune them.  Do you want/need a server-based firewall?

Amman What's our Goal with all this? (1)-- C onfidentiality (2)-- I ntegrity (3)-- A uthentication - Access Control - Verification - Repudiation (4)-- A vailability

Amman Cryptography Plays a BIG Role  ssh/scp/sftp  ssl/tls/https  pgp  pops/imaps  smtps  vpn's  dnssec  wep/wpa  digital signatures  certificates  pki  drm  disk encryption  etc... We may take it for granted, but cryptography is behind much of what we do today:

Amman Do You Need to Know What Makes all this “Tick”? Let's look at both sides of this... YES! You can avoid mistakes and make systems run together more smoothly. You might sleep better. Implementation of complex items like secure , DNSSec might be easier. SSL Certificates. Do you know how they work?

Amman The “YES” Argument cont... YES! SSH: The initial key exchange. “Man-in-the- Middle” attacks. Endless SSH admin tricks. PGP: Do you use it? Very useful for system administration. Digital Signatures: Great for legal documents. What if you wanna use/test DNSSec? Similar to understanding algorithms, software engineering practices, etc.

Amman The “No” Argument What Makes all this “Tick”? NO! All these tools still work even if you have no idea how they are working. OK – I can't think of any other good “No” arguments... Will you use tools like PGP, digital signatures, unsigned certificates if you don't know what they mean or do?

Amman Some History What we use today did not exist for public use just a few years ago (1970's) and was largely just theory for the general public. Alan Turing published some seminal works on the mathematics behind cryptography. Some are classified and still not available. The US National Security Administration (NSA) has (probably) used advanced cryptographic methods since the 1960's.

Amman Some History cont was a big year... DES: Adopted as an encryption standard by the US government. It was an open standard. The NSA calls it “One of their biggest mistakes.” public-key cryptography: Whitfield Diffie and Martin Hellman describe public/private key cryptographic techniques using trap-door one- way mathematical functions. Radical transformation of the cryptographic paradigm.

Amman “Applied Cryptography” Written by Bruce Schneier. This is, perhaps, the best book around if you want to understand how all this works. Crypto-Gram newsletter - Counterpane Security - A voice of reason around much of the security hysteria we face today.

Amman Terminology This is either the “boring” part of this lecture, or if you're me it's the best part of this lecture... Lots of terminology. Once you know what it means, then you can get on with the business of using these tools well and making your services (more) secure.

Amman Terminology Cont. hashes/message digests - md5/sha1 - collisions entropy (randomness)‏ keys - symmetric - asymmetric (public/private) - length - distribution - creation ciphers - block - stream plaintext/ciphertext password/passphrase All these lead to... SSL/TLS - Digital Certificates + CSRs + CRTs + PEM files + CAs SSH PGP Secure with: - secure SMTP + SSL + StartTLS - POPS, IMAPS So, let's get started!

Amman Ciphers ==> ciphertext We start with plaintext. Something you can read. We apply a mathematical algorithm to the plaintext. The algorithm is the cipher. The plaintext is turned in to ciphertext. Almost all ciphers were secret until recently. Creating a secure cipher is HARD.

Amman Keys To create ciphertext and turn it back to plaintext we apply a key to the cipher. The security of the ciphertext rests with the key. This is a critical point. If someone gets your key, your data is compromised. This type of key is called a private key. This type of cipher system is efficient for large amounts of data. This is a symmetric cipher.

Amman Symmetric Cipher Private Key/Symmetric Ciphers clear text clear text cipher text KK The same key is used to encrypt the document before sending and to decrypt it once it is received

Amman Examples of Symmetric Ciphers DES - 56 bit key length, designed by US security service 3DES - effective key length 112 bits AES (Advanced Encryption Standard) to 256 bit key length Blowfish bits, optimized for fast operation on 32-bit microprocessors IDEA bits, patented (requires a license for commercial use)‏

Amman Features of Symmetric Ciphers Fast to encrypt and decrypt, suitable for large volumes of data A well-designed cipher is only subject to brute-force attack; the strength is therefore directly related to the key length. Current recommendation is a key length of at least 90 bits i.e. to be fairly sure that your data will be safe for at least 20 years Problem - how do you distribute the keys?

Amman Public/Private Keys We generate a cipher key pair. One key is the private key, the other is the public key. The private key remains secret and should be protected. The public key is freely distributable. It is related mathematically to the private key, but you cannot (easily) reverse engineer the private key from the public key. Use the public key to encrypt data. Only someone with the private key can decrypt.

Amman Example (Public/Private Key pair): Not Efficient – Not as Secure clear text clear text k 1 (public key)‏ k 2 (private key)‏ cipher text One key is used to encrypt the document, a different key is used to decrypt it. This is a big deal!

Amman Why Not Efficient/Secure? Symmetric ciphers (one private key) are much more efficient. About 1000x more efficient than public key algorithms for data transmission! Attack on the public key is possible via chosen-plaintext attack. Thus, the public/private key pair need to be large (2048 bits).

Amman Why Not Efficient/Secure cont. Mathematically we have: E = the encryption function C = ciphertext P = plaintext C = E K (P)‏ So, if you know one P encrypted by E, then you can attack by guessing all possible plaintexts and comparing with C. E is public in this case. Thus, you can recover the complete original text.

Amman Hybrid Systems Symmetric Ciphers are not vulnerable in the previous way. The key length can be much shorter. So, we do this:  Use a symmetric cipher.  Generate a one-time private key.  Encrypt the key using a public key.  Send it to the other side, decrypt the one-time key.  Start transmitting data using the symmetric cipher.

Amman Hybrid Systems Use a symmetric cipher with a random key (the "session key"). Use a public key cipher to encrypt the session key and send it along with the encrypted document. k1k1 k2k2 encrypted session key cipher text random session key ksks ksks (private)‏ (public)‏

Amman Hybrid Systems cont... Two things should (imho) stand out: 1) “Send it to the other side, decrypt the one-time key.” How? 2) What about protecting your private key? Any ideas?

Amman Hybrid Systems cont... 1) “Send it to the other side, decrypt the one- time key.” How? Use your private key. 2) What about protecting your private key? Encrypt it using a hash function.

Amman One-Way Hashing Functions A mathematical function that generates a fixed length result regardless of the amount of data you pass through it. Generally very fast. You cannot generate the original data from the fixed-length result. Hopefully you cannot find two sets of data that produce the same fixed-length result. If you do this is called a collision.

Amman One-Way Hashing Functions cont. Two popular hashing functions include:  md5: Outputs 128 bit result. Fast. Collisions found.  sha-1: Outputs 160 bits. Slower. No collisions yet. Applying a hashing function to plaintext is called munging the document. The fixed-length result is referred to as a checksum, fingerprint, message digest, etc.

Amman Hashing One-Way Encryption clear text Munging the document gives a short message digest (checksum). Not possible to go back from the digest to the original document. Fixed length hash or message digest hashing function

Amman Hashing one-way encryption: another example Note the significant change in the hash sum for minor changes in the input. Note that the hash sum is the same length for varying input sizes. This is extremely useful. *Image courtesy Wikipedia.org.

Amman Examples Unix crypt() function, based on DES (not secure!)‏ MD5 (Message Digest 5) bit hash SHA1 (Secure Hash Algorithm) bits Until August 2004, no two documents had been discovered which had the same MD5 digest! Such "collisions" are not a major problem as yet No collisions have yet been found in SHA-1 Still no feasible method to create any document which has a given MD5 digest

Amman What use is this? You can run many megabytes of data through a hashing function, but only have to check bits of information. A compact and unique document signature.* You can generate a passphrase for your data – such as your encrypted private key. If someone gets your private key, they still must know your passphrase to decrypt anything using your private key. * Even with the recent attack, at best the attacker could add some corruption and leave the MD5sum unchanged. They could not insert any data of their own choosing.

Amman Protecting the Private Key k 2 (encrypted on disk)‏ Passphrase entered by user k 2 ready for use hash symmetric cipher key K2K2 = private key *Such as MD5, SHA-1, etc.

Amman Checking passphrases/passwords Q.) How do you do this? A.) It's very simple.  Type in a passphrase/password.  Run the hashing function on the text.  If the message digest matches, you typed in the correct passphrase/password.

Amman Digital Signatures Let's reverse the role of public and private keys. To create a digital signature on a document do:  Munge a document.  Encrypt the message digest with your private key.  Send the document plus the encrypted message digest.  On the other end munge the document and decrypt the encrypted message digest with the person's public key.  If they match, the document is authenticated.

Amman When authenticating: Take a hash of the document and encrypt only that. An encrypted hash is called a "digital signature" k2k2 k1k1 digital signature COMPARE hash (public)‏ (private)‏

Amman Digital Signatures have many uses, for example: E-commerce. An instruction to your bank to transfer money can be authenticated with a digital signature. A trusted third party can issue declarations such as "the holder of this key is a person who is legally known as Alice Hacker" Like a passport binds your identity to your face Such a declaration is called a "certificate" You only need the third-party's public key to check the signature We'll talk about this more later.

Amman Use for Authentication: Reverse the Roles of the Keys clear text clear text k 2 (private key)‏ k 1 (public key)‏ cipher text If you can decrypt the document with the public key, it proves it was written by the owner of the private key (and was not changed).

Amman Summary The core idea you should take away from this is how a hybrid cryptosystem works: k1k1 k2k2 encrypted session key cipher text random session key ksks ksks (private)‏ (public)‏

Amman Summary cont. To view this mathematically we have: E = the encryption function C = ciphertext P = plaintext: M=Message (binary data)‏ D = decryption function K 1 = encryption key (public)‏ K 2 = different encryption key (private)‏

Amman Summary cont. Symmetric Cipher E K2 (M) = C D K2 (C) = M With the property that: D K2 (E K2 (M)) = M And, with different keys (public/private) we have: E K1 (M) = C D K2 (C) = M D K2 (E K1 (M)) = M

Amman Summary cont. Finally – Remember, we are using open cryptosystems. This means that the cipher algorithm is known and available. The security of your data rests with the key, not with keeping the cipher secret. All Clear? :-)‏ Questions?