aboutsummaryrefslogtreecommitdiffstats
path: root/docs/primitives/symmetric-encryption.rst
diff options
context:
space:
mode:
authorPaul Kehrer <paul.l.kehrer@gmail.com>2013-10-22 20:22:34 -0500
committerPaul Kehrer <paul.l.kehrer@gmail.com>2013-10-22 20:22:34 -0500
commit360e2d53190fa612eccd3ae43c7cd3c240282a7a (patch)
tree60f69803f3921406b173afe3d307eafcdb50c896 /docs/primitives/symmetric-encryption.rst
parent2c4873f6255c70257a5a35efbad84e24fc2be63f (diff)
parent68e5de708d623a03ea4cbd4d3a4297b5722950eb (diff)
downloadcryptography-360e2d53190fa612eccd3ae43c7cd3c240282a7a.tar.gz
cryptography-360e2d53190fa612eccd3ae43c7cd3c240282a7a.tar.bz2
cryptography-360e2d53190fa612eccd3ae43c7cd3c240282a7a.zip
Merge branch 'master' into api-to-backend-in-one-easy-step
* master: Make use of currentmodule to maybe reduce redundant module definitions and also get source links. Enable the new read the docs theme, it's pretty. use is for identical object comparison add gcm constants and EVP_CIPHER_CTX_ctrl macro md5 is 128-bit. The person responsible for this mistake has been shot add test to verify api is being copied in hash When copying a hash, pass the api through to the new object
Diffstat (limited to 'docs/primitives/symmetric-encryption.rst')
-rw-r--r--docs/primitives/symmetric-encryption.rst28
1 files changed, 18 insertions, 10 deletions
diff --git a/docs/primitives/symmetric-encryption.rst b/docs/primitives/symmetric-encryption.rst
index 9768246c..87e1e692 100644
--- a/docs/primitives/symmetric-encryption.rst
+++ b/docs/primitives/symmetric-encryption.rst
@@ -1,6 +1,8 @@
Symmetric Encryption
====================
+.. currentmodule:: cryptography.primitives.block
+
.. testsetup::
import binascii
@@ -11,7 +13,7 @@ Symmetric Encryption
Symmetric encryption is a way to encrypt (hide the plaintext value) material
where the encrypter and decrypter both use the same key.
-.. class:: cryptography.primitives.block.BlockCipher(cipher, mode)
+.. class:: BlockCipher(cipher, mode)
Block ciphers work by encrypting content in chunks, often 64- or 128-bits.
They combine an underlying algorithm (such as AES), with a mode (such as
@@ -43,7 +45,9 @@ where the encrypter and decrypter both use the same key.
:class:`~cryptography.primitives.interfaces.CipherContext`
provider.
-.. class:: cryptography.primitives.interfaces.CipherContext()
+.. currentmodule:: cryptography.primitives.interfaces
+
+.. class:: CipherContext()
When calling ``encryptor()`` or ``decryptor()`` on a BlockCipher object you
will receive a return object conforming to the CipherContext interface. You
@@ -64,7 +68,9 @@ where the encrypter and decrypter both use the same key.
Ciphers
~~~~~~~
-.. class:: cryptography.primitives.block.ciphers.AES(key)
+.. currentmodule:: cryptography.primitives.block.ciphers
+
+.. class:: AES(key)
AES (Advanced Encryption Standard) is a block cipher standardized by NIST.
AES is both fast, and cryptographically strong. It is a good default
@@ -73,7 +79,7 @@ Ciphers
:param bytes key: The secret key, either ``128``, ``192``, or ``256`` bits.
This must be kept secret.
-.. class:: cryptography.primitives.block.ciphers.Camellia(key)
+.. class:: Camellia(key)
Camellia is a block cipher approved for use by CRYPTREC and ISO/IEC.
It is considered to have comparable security and performance to AES, but
@@ -83,7 +89,7 @@ Ciphers
This must be kept secret.
-.. class:: cryptography.primitives.block.ciphers.TripleDES(key)
+.. class:: TripleDES(key)
Triple DES (Data Encryption Standard), sometimes refered to as 3DES, is a
block cipher standardized by NIST. Triple DES has known cryptoanalytic
@@ -103,7 +109,9 @@ Ciphers
Modes
~~~~~
-.. class:: cryptography.primitives.block.modes.CBC(initialization_vector)
+.. currentmodule:: cryptography.primitives.block.modes
+
+.. class:: CBC(initialization_vector)
CBC (Cipher block chaining) is a mode of operation for block ciphers. It is
considered cryptographically strong.
@@ -117,7 +125,7 @@ Modes
a given ``key``.
-.. class:: cryptography.primitives.block.modes.CTR(nonce)
+.. class:: CTR(nonce)
.. warning::
@@ -135,7 +143,7 @@ Modes
with a given key. The nonce does not need to be kept
secret and may be included alongside the ciphertext.
-.. class:: cryptography.primitives.block.modes.OFB(initialization_vector)
+.. class:: OFB(initialization_vector)
OFB (Output Feedback) is a mode of operation for block ciphers. It
transforms a block cipher into a stream cipher.
@@ -148,7 +156,7 @@ Modes
reuse an ``initialization_vector`` with
a given ``key``.
-.. class:: cryptography.primitives.block.modes.CFB(initialization_vector)
+.. class:: CFB(initialization_vector)
CFB (Cipher Feedback) is a mode of operation for block ciphers. It
transforms a block cipher into a stream cipher.
@@ -171,7 +179,7 @@ Insecure Modes
and existing applications should strongly consider migrating away.
-.. class:: cryptography.primitives.block.modes.ECB()
+.. class:: ECB()
ECB (Electronic Code Book) is the simplest mode of operation for block
ciphers. Each block of data is encrypted in the same way. This means