| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- 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.
|