Public-key encryption uses hash values to create keys that keep information secure. A hashing algorithm computes a hash value from a base number input. Part of the key is knowing the data used to create the hash value. Here's a simple example: A hash value of 30 can be created from different calculations, such as 2 * 15, 3 * 10 and 5 * 6. To unlock the code, you need to know which calculation was used -- the two actual multipliers are the key to the code. In order to make sure that the encryption is very difficult to figure out, public keys use extremely large hash values and very complex algorithms to create codes that are nearly impossible to decipher simply from knowing the hash value.
Public-key encryption, of course, is a common form of secure information transmission and retrieval. It's what's known as "asymmetric" encryption in that it uses two separate keys. Naturally, hence the name, there is a public key that is, well, public in that anyone is allowed to know it. There is also a private key known only by its holder. The idea is that if person A has person B's public key and uses it to encrypt a message to person B, then only person B, using her private key, can decrypt the message. Both keys use the same algorithm. What makes such a setup so convenient is that unlike in symmetric encryption systems -- where sender and receiver each need to possess the encryption key -- public key systems need only for the sender to know the recipient's public key, which, being public, is easily obtainable. It's just up to the recipient to keep his private key just that. And, importantly, while it's theoretically possible for a hacker to derive someone's private key by hacking the public key, the reality is it could take on the order of years of computing for that to be achieved [source: Globus].
Did the creators of the Internet anticipate social media?
Answered by Leonard Kleinrock
How is cyberbullying being addressed?
Answered by Kim Williamson and HowStuffWorks
What are video podcasts?
Answered by Science Channel