Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 1SANS GIAC LevelOne Security Essentials Introduction to Encryption I Hello, welcome to Introduction to Encryption I.. Introd
Trang 1Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 1
SANS GIAC LevelOne Security Essentials
Introduction to Encryption I
Hello, welcome to Introduction to Encryption I Several people contributed to this course including Harish Bhatt, Stephen Northcutt, Mark Kern and Eric Cole This is one of the most important classes we have the privilege to teach as part of GIAC Encryption is real, it is crucial, it is a foundation of so much that happens I guess you know that one of the SANS mottos is never teach anything in a class the student can’t use at work the next day One of our goals in this course is to help you be aware of how cryptography is used in our world But we are going to share a lot of hard earned pragmatic lessons and we hope they will help you Without cryptography there is no e-commerce, no military presence on the Internet and no privacy for the citizens of the world Encryption plays a key role in the current security landscape and anyone that works in the field of security must have a good understanding of what encryption is and how it works
Trang 2Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 2
What is cryptography?
• Cryptology means “hidden writing”.
• Encryption is coding a message in such a way
that its meaning is concealed.
• Decryption is the process of transforming an
encrypted message into its original form.
• Plaintext is a message in its original form.
• Ciphertext is a message in its encrypted form.
Since this course is an introduction to encryption, we should cover what it is Cryptography means
“hidden writing”, and various forms of hidden writing have been used throughout history One of the main goals of cryptography is to communicate with another party in such a way that if anyone else is listening, they cannot understand what you are saying So, in its most basic form
cryptography garbles text in such a way that anyone that intercepts the message cannot understand it
An excellent source to get a better appreciation for this field of study is The Code Breakers by David Kahn This book gives a great background of how hidden writing has been used throughout history Just to show you how far back this field goes, one of the first people to use encryption was Julius Caesar and the original cipher was called the Caesar cipher He used a basic substitution similar to the encryption schemes that are used on the back of kids’ cereal boxes But without the help of computers, they were very difficult to break
Now that we understand what the field of cryptography is, lets cover some basic terms Encryption
or encryption algorithms are used to code a message in such a way that its meaning is concealed
Once a message has been transformed with an encryption algorithm, the resulting message is called
ciphertext Since ciphertext contains a message in its encrypted form, the message does not “mean”
anything, since it cannot be read in its native form In order for the recipient of the ciphertext to be
able to read the message, they need to decrypt the message Decryption is the process of
transforming an encrypted message back into its original plaintext form.
Trang 3Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 3
Why do I care about crypto?
• It plays a key part in defense in depth
• Encryption helps solve a lot of security issues
• Department of Commerce no longer supports
DES
• NIST just announced the new AES (advanced
encryption standard)
• The “bad” guys are using it.
– Distributed Denial of Service daemons protected
away Remember, one of the golden rules of information security is defense in depth The principle
highlights the fact that you should never rely on a single mechanism to protect the security of your site You need to use several defense mechanisms in conjunction, to have the proper level of security at your company A firewall is a good starting point, but it needs to be combined with intrusion detection
systems, host protection, virtual private networks, and encryption
As we write this course, there are a number of contemporary news stories about cryptography, England and Ireland can’t agree on a standard for instance, but that is hardly news Export encryption laws are being relaxed, NIST announced the winner for its advanced encryption standard (AES), the patent expired
on RSA, and the US Department of Commerce no longer supports DES! So if you have been staying up
on the latest security news, you can’t but notice how important encryption is from an information security perspective
Almost every bank uses DES hardware to protect their financial transactions These networks have been put in place for years and all of a sudden the hardware is invalid! What happened? One thing that happened is that there have been plans available on the Internet for years to build near-real-time
decryption of DES With the P6 chip you can do this for an investment of $200K If $200K can attack billions and billions of dollars, it might just be worth it What do you think? But the banks? How fast can they react? How fast can they replace their infrastructure? How exposed are they? Well the handwriting has been on the wall for a while now In 1997, Rocke Verser broke a 56-bit challenge At first blush it seemed DES was safe, this effort took four months to complete This was only the beginning – in 1998 the Electronic Freedom Foundation computer nailed this key length in 56 hours And the beat goes on
In the mean time the underground uses cryptography to protect what they are doing For instance the ddos systems that attacked numerous businesses such as yahoo used encryption to protect their covert
communication channels If the bad guys are using it to break into sites, shouldn’t the good guys be using
it to the protect their sites
Defenders and attackers alike, the information operations cyberscape of century 2K will rely on
cryptography!
Trang 4Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 4
In this first course we will learn the requirements of a crypto system, we will look at some of the classic weaknesses, we will walk through some basic algorithms and we will learn a number of terms
Cryptography is more than the science of applying ciphers, it must also be an art, the devil is in the details in this sport
A cryptosystem is the algorithm, the keys, the plaintext, the whole nine yards!
Trang 5Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 5
• Case-In-Point: DVD “Encryption”
• Proprietary algorithms are high-risk
• “Tamperproof” hardware can be
defeated with sufficient effort
• Technical solutions usually do not
satisfactorily address legal issues
Security By Obscurity Is No Security!
Gotta love DVD, it really brings “The Matrix” to full intensity But there is a cryptography story here that has a couple of important lessons for all of us:
- Never, ever believe in a “secret” cryptographic algorithm (unless you work for NSA)
- Never, ever rely on technology (or anything else) as your only wall of defense
- Above all, do not ever attempt to write your own encryption system! You aren’t that
smart!
So what happened? The motion picture industry spent years developing a standard for encryption Then they released it Not the standard for review, but the product (DVD) that relied on the standard Very quickly thereafter a couple technologists who go by the handles “Canman” and
“SoupaFr0g” decoded the magic algorithm and released a program, a very popular program in some circles called DeCSS 1.2b that allows one to pull the decrypted data off the DVD disk and store and play it like any other multimedia file Don’t want to pay $20.00 for “The Matrix”? No problem! Now, that really is what I call walking the path!
And what to do now? Do you sue Canman for $63 quadrillion?
Trang 6Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 6
Beware of Over-Confidence
• Case-In-Point: Large Key-Lengths
• Simply using popular cryptographic
algorithms, with large key lengths does not make your system secure!
• What’s the weakest link?
• Cryptanalytic compromises usually
come from totally unexpected quarters!
Case 2: In 1998, Stephen Northcutt served as the technical analyst to support a team of law enforcement agents to detect, investigate, apprehend, and convict a child pornographer The interesting thing was the perpetrator used cryptography to transmit the data right past Stephen’s intrusion detection systems and evade the signature matching system
How did he get caught? Wasn’t hard In Stephen’s classes, for years he as been trying to teach that
“size does matter”! The first clue was that too much data was being transmitted That stands out like a sore thumb The next clue is that well-encrypted traffic has a signature – it is blander than vanilla pudding You can detect an encrypted bitstream simply by sorting the bits and seeing if you have an even distribution A good encryption algorithm enforces randomness to be resistant to
known-plaintext and chosen-plaintext attacks But if you examine the content, the payload bits in
a normal connection, they are anything but random So detection was easy How do you attack the cryptography?
You can imagine the agents! It is encrypted, we are done for, let’s just bring him in and question him, maybe we will get lucky! Lucky was much easier than that – we tossed one of his supplier machines and he had hard coded his key, game over! Key discipline is everything in this sport!
Trang 7Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 7
Simplicity is a “Good Thing”
• Case-In-Point: eCommerce & eBusiness
• Morphing your business into a dot.com can be a complex undertaking
• Taking shortcuts in **any** aspect of
the development of your eCommerce
systems can introduce weak links
• Security is a “process” not a product!
We can divide the students listening to this webcast into two primary groups: those who use
government sponsored and developed encryption and those who don’t The United States military uses NSA developed encryption for all classified and some additional communications NSA provides more than just encryption hardware, they provide the keys and the rules, they have an entire infrastructure because they know there is more to protected communications than algorithms
Trang 8Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 8
Credit Cards Over the Internet
• Case-In-Point: How many people will use
their credit card to buy merchandise on the Internet? How many people will pay for a
meal with a credit card?
• Which is riskier?
– Perception vs reality
• Real risk is back end database, that possible stores credit cards unencrypted.
• Understanding the threat is key.
If you take a survey of a classroom of students and ask them how many people will use their credit card to buy merchandise over the Internet, around 60%-70%, would raise their hand If you then asked them how many people would pay for a meal in a restaurant with a credit card, you usually get
al least 90% of the class Is paying for a meal more secure? Actually, no It is just because people have been doing it for a longer time period, they perceive it to be more secure But remember, perception and reality are two different things
Let’s look at these two scenarios for a minute The next time you pay for a meal with a credit card, look down at your watch when the wait person takes your card to process it Normally, a total stranger that you never met before takes your card into a back room and (on average) returns ten minutes later Now, if that is not bad, it actually gets a little worse Most people sign the bill, leave
it on the table and exit the restaurant Now, even if the wait staff picks it up, they now have a piece
of paper that has all of your credit card information on it and your signature What if someone else walks by the table and picks it up? Now you have even bigger problems
On the other hand, when you buy something on the Internet, you enter the credit card from the comfort of your own home, and the chance of someone intercepting it as it flies over the Ethernet is very slim and even if someone does, the data is encrypted so they would not be able to read it
In reality, the real threat to using credit cards in either scenario is where the credit cards are stored once they are received by the company With a lot of online commerce, companies claim they are secure because they use SSL to protect the data That might be true, but then they store the credit cards on a server that is connected to the Internet and the information is stored in plaintext Now, from an attacker’s standpoint, you can either try to intercept an encrypted credit card - which would take a lot of work (if not an infinite amount of time) to crack it, and even if you do you only get one credit card On the other hand, an attacker could break into the server with minimal effort and get a large amount of credit cards
Trang 9Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 9
The Challenge That We Face
Plain
Communications in the presence of adversaries…
Confidentiality!Integrity!Authentication!Non-Repudiation
Decryption Key
OK, so far we have discussed the need for cryptography and introduced practical applications of it in our case studies Moving to next section of the course, we will take a closer look at what the real user requirements are
This slide gives us a reasonable overview Bob and Alice wish to exchange information securely Their cipher is built on the basic transformations, permutations and substitutions The result of the cipher is that the message is transformed so that without knowledge of the cipher, of the key system
a proper algorithm is your responsibility as an educated consumer When you do choose your approach to encryption you take something on faith – that an adversary listening on an untrustednetwork cannot intercept communications and reverse engineer your key This is done via a one way
function, if we have message x we can compute f(x), but if they have f(x) it should be very hard to retrieve x.
Trang 10Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 10
Adversary
?
“Alice”
Details of Cryptographic Algorithm
must be publicly known and
intensely scrutinized by the global
cryptographic community
It must be impossible to determine the Plaintext by simply examining the
for “Alice” to clearly
indicate that she is
the sender of the
message, and to
provide a mechanism
for the recipient
(“Bob”) to detect any
tampering
Knowledge of the Key
must be mandatory in order to successfully perform meaningful encryption and decryption operations
Encryption Key
So now we introduce Alice Like all of us, she just wants it to work She needs to be able to send a message to Bob and for it to have the same level of integrity it would have if she walked up and
handed it to him In addition to being unreadable by adversaries (confidentiality), we may have the
following requirements:
- Authentication: if Alice walks up to Bob and hands him a message, he knows the
message is from Alice for sure Alice may have a requirement of the crypto system to provide equivalent service
- Integrity: it should be possible to prove the message has not been tampered with, that this
is the same exact message that Alice wrote to Bob
- Non-repudiation: the system should be able to prove that Alice and only Alice sent the
message
The technology to do this is available, but for this system to work in practice, the non-technical issues are also important Alice and every user of the system must be trained in its use and its limitation and have access to the keys and yet keep them protected and current
Trang 11Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 11
• “Alice” and “Bob” need a cryptosystem which can provide them with:
Goals of Encryption
• “Cryptography is about communications in
the presence of adversaries” (Rivest,1990)
Bob of course has the same requirements as Alice! On this slide we sum up our requirements of the system, confidentiality, integrity, authentication, and non-repudiation These are the main goals of a good encryption system
It is important to keep in mind that no cryptographic algorithm is known to be “secure.” The first case study discussed a well known, failed, defeated cryptosystem The strength of a cryptosystem is its ability to withstand attack There are a number of attacks against cryptosystems, most of them have to do with using some piece of known unencrypted information (“known plaintext”) A trustworthy algorithm is one that can withstand an attack when the cryptanalyst is able to know and choose the text to be encrypted, this is the “chosen – known plaintext” attack
The strongest statement that we can make regarding the “trust” that can be reasonably placed in a cryptographic algorithm is that it is not [yet] [publicly] known to have been broken! You can prove that a system is not secure, you just cannot prove that it is secure
Let briefly cover the four main goals of encryption, confidentiality, integrity, authentication, and
non-repudiation Confidentiality is concerned with preventing, detecting, or deterring the improper
disclosure of information Basically, you want to prevent someone else from reading a company’s
sensitive information Integrity is concerned with preventing, detecting, or deterring the improper
modification of information An unauthorized person should not be able to modify data, or if they
do, it must be detectable Authentication is involved with identifying who an individual is If you
think you are talking to Eric, you should be able to authenticate that you are really communicating
with Eric and that someone is not impersonating him Non-repudiation deals with how do you
prove in a court of law that someone actually sent a piece of information This attribute is critical
for the success of e-commerce If I send an email to a supplier and I order 50 widgets for $100 each and 5 days later the market drops on widgets and now I can get the same widget for $1, I would like
to deny that I ever sent the order For e-commerce to work, the supplier must be able to prove that I actually sent the email and that I cannot deny it
In the next section of this course we will discuss the general types of encryption and than the types
of cryptosystems
Trang 12Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 12
• Goal: garble the original message, so its meaning is concealed.
General Encryption Techniques
This slide could also be called “Encryption 101” Some people might say that they have a general understanding of encryption and do not need an intro 101 course, but remember that 101 is binary (sorry geek humor☺)
Since the main goal of encryption is to garble text so someone cannot understand it, the two basic
methods of encrypting or garbling text are substitution and permutation The third approach is
actually a hybrid, which is a mixture of both One thing to keep in mind, which we will learn about later is that there are two basic types of key encryption systems, one-key and two-key systems These methods that we are covering here are for one-key systems As you will se later, two-key systems are a lot more complex As you can see by these methods, one-key systems are very effective, but are based on high school mathematics
In the next two slides we will cover each of these techniques in detail
Trang 13Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 13
• Uses a one to one substitution of
Substitution involves exchanging one character for another character So to use substitution, you
would develop a mapping of characters and to encrypt the message you would substitute character x for character y To get back the original message you would replace character y with character x Lets look at a simple example First we need to create a mapping of characters, so we would replace
A with W, B with K, C with M, D with P, E with D and we would continue in this fashion for the entire alphabet So to encrypt the word CAB we would take C and replace it with M, A with W and
B with K to get MWK To decrypt it we would reverse the mapping, so we would replace M with C,
W with A and K with B to get back CAB
The key thing to remember is for this to work, there has to be a unique one-to-one mapping If there
is a many-to-one or one-to-many mapping, you would not be able to decrypt the message Forexample if both A and C were replaced with W, you would still be able to encrypt the message, so CAB would become WWK But now when we tried to decrypt it, we would not know if the W should be an A or a C since they are both mapped to the same letter
Another alternate way to do substitution, which does not require a mapping of all characters is to use
a character shift For example, shift every character 3 places So A becomes D and B becomes E,
etc
This type of encryption is very easy to break
Trang 14Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 14
• Keeps the same letters, but changes
the position within the text.
• Change the order from x y z to z x y
• For example:
– Change 1 2 3 4 5 to 3 5 2 1 4
– So order becomes drroe
• Very easy to break
• Substitution and permutation can be
combined together.
Permutation
Permutation does not actually change the letters like substitution does, it just changes the order So
if the original order was x y z the new order might be z x y So lets look at an example Our original order for a word is of course 1 2 3 4 5, so our new order might be 3 5 2 1 4 If we take the word
“order” and run it through are 3 5 2 1 4 permutation we would get an encrypted message of “drroe”
To decrypt the message, we would we reapply the 3 5 2 1 4 permutation and get back our original message of “order”
Just like substitution, permutation is also very easy to break To increase the difficultly of breaking the message we can apply a combination of substitution and permutation
Trang 15Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 15
Now lets look at the three basic types of cryptosystems On this slide we are just going to briefly
cover each type, since they will be covered in detail in the following slides Secret key encryption
is also called symmetric encryption This means that a single key is used for both encrypting and
decrypting the data So the sender and receiver of the encrypted message would need to have the same key prior to communication
With public key or asymmetric encryption, there are actually two keys involved: one for
encrypting the message and one for decrypting the message So now the sender and receiver do not have to have the same key prior to communicating One thing to remember is that public key encryption is much slower than secret key encryption
The third type of encryption is called a hash, which is a one-way transformation of data that is
irreversible Once the data has been encrypted, there is no way to decrypt it As you can see, this type of encryption is very useful for password encryption and will be covered in more details in the password cracking module
Trang 16Introduction to Encryption I – SANS GIAC LevelOne ©2000, 2001 16
• a.k.a “Secret-Key” or “Private-Key” Encryption
– Fast! .Single key for encryption and decryption
– Secure channel for key distribution (scalability issues)
SECURE CHANNEL
INSECURE NETWORK
Secret, private or symmetric key – whatever you prefer to call it, this was the original approach to
cryptography The strength of a symmetric cryptosystem is based on the strength of the algorithm and the length of the key The longer the key, the poorer the performance of the cryptosystem and
even though symmetric key systems tend to have better performance than asymmetric systems, this
is still an issue in practice In this key system, both parties (Alice and Bob) have the same key
Given a decent algorithm, the basic attack is brute force Until 1998, this has mostly been a joke
and the product of a few Internet research efforts to harness loosely coupled parallel attacks Now anyone with a six figure budget can build a specialized DES cracker And attackers may not even need money! After RingZero and the DDoS attacks of February 2000, I would pose the following question: if the encrypted message was worth, say, $20 million…and you could assign, say, a thousand Trojanized zombie systems to work on the problem…how long do you think the symmetric key length needs to be? In 1997, a 40-bit RSA challenge key fell in 3.5 hours using 250 computers Keep Moore’s law in mind, computation speed doubles every 18 months 40 bits is probably a bit short for today’s threat environment
All that said, the bigger issue with secret keys is managing the key creation and exchange so that the key is not compromised Also, the greater the number of parties that share the secret key the greater the exposure