Now my short summary
- Symmetric keys
- Asymmetric keys
Usually when we talk about keys one immediately thinks of encryption, but we want use this word yet as encryption might refer to several different types of data scrambling :). Since data scrambling does not sound too much profesional, let us use the term bits manipulation.
When it comes to bits manipulation algorithms that use symmetric keys we are talking about ciphering.
Ciphering is one of the earliest types of protecting data and it dates from long before computers were invented. In some cases, where less security is required cypher algorithms can be very simple. One such example is the XOR logic operator:
100101101 XOR 110011001 = 010110100
010110100 XOR 110011001 = 100101101
Now imagine that your secure zone consists of a group of more than two people. Let say a group of police officers communicating over some computer network. One of the many in the group is the chief and gives orders to the others, while the others must only receive and not be able to send orders. Obviously this restriction can not be done by using a symmetric key, as in order for the group to receive the orders they will need to share the same key, which will enable them to also send orders to the rest of the group. But if we had a key pair instead of only one key, and we use one key from the pair to lock the message, while the other to unlock it, then the officer can have the first key and hence would be able to send orders, while the group can share the second key and would be only able to receive orders.
If we use separate keys for locking and unlocking the data, then we are talking about asymmetric keys.
The key used by the chief and not shared by the others in the group is called a private key, while the shared one is called a public key.