Welcome to the official Cryptography site for Duke CompSci 182 Group 5 Section 1.
A Typical Conversation on Cryptography
Me: Hey, you like feeling secure with your computer, right?
Friend:...riiiiiiiiiight? (having no idea where I'm going with this)
Me: Would you feel like switching over to a new mail client and chat client that would promote the confidentiality of your online communications?
Friend: I guess. Would it be easy?
Me: Oh, probably. How would you also feel about needing to find a public key in order to send an e-mail to some-one new and posting a public key so people can talk to you?
Friend: I would need to use this public key thing to talk to you?
Friend: I'm not sure if I like talking to you enough to put up with that.
Courtesy of XKCD
What Is Cryptography.
Cryptography is the practice and study of techniques for secure communication in the presence of third parties. More generally, it is about constructing and analyzing protocols that overcome the influence of adversaries and which are related to various aspects in information security such as data confidentiality, data integrity, and authentication. Modern cryptography intersects the disciplines of mathematics, computer science, and electrical engineering. Applications of cryptography include ATM cards, computer passwords, and electronic commerce.
Everyday Uses of Cryptography.
Whether you realize it or not, there are a lot of ways that you deal with some form of encryption every day. The simplest example is the password you use to log on to a network. Orginally passwords were sent to the server in plaintext. Not the brightest idea. So the passwords are now encrypted!
If you have ever purchased something online you have likely encountered another form of encryption. Both SSL and S-HTTP are technologies that have been developed to protect such web activity. S-HTTP was designed to allow files and messages to be encrypted and then sent over the Internet. SSL on the other hand was developed to allow a secure connection between a browser and web server. In the case of SSL, all data that is sent can be encrytped rather than only messages S-HTTP. There are two levels of encryption 40-bit and 128-bit. The bit is the size of the key and the longer the key the more security.
Other familiar uses of encryption involve ATMs. The magnetic strip on the back of an ATM card contains among many things an encrypted copy of your account number. With the given PIN number (key) this encryption is able to be verified and your account accessed. Without the PIN, the card is useless.Additionally, cryptographic technics are employed to protect the copyrighted material found on DVDs and CDs. And finally, all cell phone data that uses GSM technology, has its transmissions encrypted.
Current Issues: Quantum Computing
Quantum computers are computers that utilize the power of quantum mechanics
to perform computational operations on data. They are fundamentally different from the
classical model of a computer. Whereas data for classical computers are encoded in bits,
quantum computers employ quantum bits to represent data and to perform computation.
These ‘qubits’ can exist not only in the classical 0 and 1 states but also in a quantum
superposition of both these states. When these ‘qubits’ are in this superposition of states,
it can effectively perform an operation on both values simultaneously. Moreover, a pair
of qubits can be in any quantum superposition of 4 states; therefore, it can perform on 4
values at the same time. Similarly, a three-qubit system can perform on 8 values.
Generally, an n qubit system can perform an operation on 2n values simultaneously. This
method by which quantum computers can perform simultaneous computations is called
Quantum computers function by manipulating these qubits with a quantum algorithm. With large-scale quantum computers, these algorithms can solve certain problems in a fraction of the time taken by a classical computer. For instance, Shor’s algorithm can quickly factor large numbers. Factoring a 1000 digit number on a quantum computer with Shor’s algorithm would take twenty whereas on a classical computer it would take longer than age of the universe. As we can see, an implementation of Shor’s algorithm would have a severe effect on the field of cryptography because it would utterly undermine security provided by public key encryption. Cryptographers have thought that more digits added to the key can combat the increased performance of computers. However, with the power of quantum parallelism, the number of digits in the key has such a small effect on a quantum computer running Shor’s algorithm. The algorithm can crack RSA 140 in a matter of seconds.