| Glossary | 
 | ======== | 
 |  | 
 | .. glossary:: | 
 |     :sorted: | 
 |  | 
 |     plaintext | 
 |         User-readable data you care about. | 
 |  | 
 |     ciphertext | 
 |         The encoded data, it's not user readable. Potential attackers are able | 
 |         to see this. | 
 |  | 
 |     encryption | 
 |         The process of converting plaintext to ciphertext. | 
 |  | 
 |     decryption | 
 |         The process of converting ciphertext to plaintext. | 
 |  | 
 |     key | 
 |         Secret data is encoded with a function using this key. Sometimes | 
 |         multiple keys are used. These **must** be kept secret, if a key is | 
 |         exposed to an attacker, any data encrypted with it will be exposed. | 
 |  | 
 |     symmetric cryptography | 
 |         Cryptographic operations where encryption and decryption use the same | 
 |         key. | 
 |  | 
 |     public-key cryptography | 
 |     asymmetric cryptography | 
 |         Cryptographic operations where encryption and decryption use different | 
 |         keys. There are separate encryption and decryption keys. Typically | 
 |         encryption is performed using a :term:`public key`, and it can then be | 
 |         decrypted using a :term:`private key`. Asymmetric cryptography can also | 
 |         be used to create signatures, which can be generated with a | 
 |         :term:`private key` and verified with a :term:`public key`. | 
 |  | 
 |     public key | 
 |         This is one of two keys involved in :term:`public-key cryptography`. It | 
 |         can be used to encrypt messages for someone possessing the | 
 |         corresponding :term:`private key` and to verify signatures created with | 
 |         the corresponding :term:`private key`. This can be distributed | 
 |         publicly, hence the name. | 
 |  | 
 |     private key | 
 |         This is one of two keys involved in :term:`public-key cryptography`. It | 
 |         can be used to decrypt messages which were encrypted with the | 
 |         corresponding :term:`public key`, as well as to create signatures, | 
 |         which can be verified with the corresponding :term:`public key`. These | 
 |         **must** be kept secret, if they are exposed, all encrypted messages | 
 |         are compromised, and an attacker will be able to forge signatures. | 
 |  | 
 |     authentication | 
 |         The process of verifying that a message was created by a specific | 
 |         individual (or program). Like encryption, authentication can be either | 
 |         symmetric or asymmetric. Authentication is necessary for effective | 
 |         encryption. | 
 |  | 
 |     ciphertext indistinguishability | 
 |         This is a property of encryption systems whereby two encrypted messages | 
 |         aren't distinguishable without knowing the encryption key. This is | 
 |         considered a basic, necessary property for a working encryption system. | 
 |  | 
 |     text | 
 |         This type corresponds to ``unicode`` on Python 2 and ``str`` on Python | 
 |         3.  This is equivalent to ``six.text_type``. | 
 |  | 
 |     nonce | 
 |         A nonce is a **n**\ umber used **once**. Nonces are used in many | 
 |         cryptographic protocols. Generally, a nonce does not have to be secret | 
 |         or unpredictable, but it must be unique. A nonce is often a random | 
 |         or pseudo-random number (see :doc:`Random number generation | 
 |         </random-numbers>`). Since a nonce does not have to be unpredictable, | 
 |         it can also take a form of a counter. |