diff options
| author | Alex Gaynor <alex.gaynor@gmail.com> | 2013-11-07 13:57:11 -0800 | 
|---|---|---|
| committer | Alex Gaynor <alex.gaynor@gmail.com> | 2013-11-07 13:57:11 -0800 | 
| commit | 635b542ded9ede772a2ca907e8bb5349ded333bd (patch) | |
| tree | 94c879d6b935941a1040efc302396794fbf78e42 /docs/hazmat/primitives | |
| parent | 847532605b463cb1a73b4acde68dbf059f911501 (diff) | |
| parent | f2f58738305b51e0fad98cf1fc6c5e490738066f (diff) | |
| download | cryptography-635b542ded9ede772a2ca907e8bb5349ded333bd.tar.gz cryptography-635b542ded9ede772a2ca907e8bb5349ded333bd.tar.bz2 cryptography-635b542ded9ede772a2ca907e8bb5349ded333bd.zip  | |
Merge pull request #231 from dreid/mode-interface-properties
[WIP] Document mode interfaces.
Diffstat (limited to 'docs/hazmat/primitives')
| -rw-r--r-- | docs/hazmat/primitives/index.rst | 1 | ||||
| -rw-r--r-- | docs/hazmat/primitives/interfaces.rst | 59 | ||||
| -rw-r--r-- | docs/hazmat/primitives/symmetric-encryption.rst | 3 | 
3 files changed, 63 insertions, 0 deletions
diff --git a/docs/hazmat/primitives/index.rst b/docs/hazmat/primitives/index.rst index c81018ae..614c414a 100644 --- a/docs/hazmat/primitives/index.rst +++ b/docs/hazmat/primitives/index.rst @@ -10,3 +10,4 @@ Primitives      hmac      symmetric-encryption      padding +    interfaces diff --git a/docs/hazmat/primitives/interfaces.rst b/docs/hazmat/primitives/interfaces.rst new file mode 100644 index 00000000..7068316e --- /dev/null +++ b/docs/hazmat/primitives/interfaces.rst @@ -0,0 +1,59 @@ +.. hazmat:: + +Interfaces +========== + + +``cryptography`` uses `Abstract Base Classes`_ as interfaces to describe the +properties and methods of most primitive constructs. Backends may also use +this information to influence their operation. Interfaces should also be used +to document argument and return types. + +.. _`Abstract Base Classes`: http://docs.python.org/3.2/library/abc.html + + +Cipher Modes +~~~~~~~~~~~~ + +.. currentmodule:: cryptography.hazmat.primitives.interfaces + +Interfaces used by the symmetric cipher modes described in +:ref:`Symmetric Encryption Modes <symmetric-encryption-modes>`. + +.. class:: Mode + +    A named cipher mode. + +    .. attribute:: name + +        :type: str + +        This should be the standard shorthand name for the mode, for example +        Cipher-Block Chaining mode is "CBC". + +        The name may be used by a backend to influence the operation of a +        cipher in conjunction with the algorithm's name. + + +.. class:: ModeWithInitializationVector + +    A cipher mode with an initialization vector. + +    .. attribute:: initialization_vector + +        :type: bytes + +        Exact requirements of the initialization are described by the +        documentation of individual modes. + + +.. class:: ModeWithNonce + +    A cipher mode with a nonce. + +    .. attribute:: nonce + +        :type: bytes + +        Exact requirements of the nonce are described by the documentation of +        individual modes. diff --git a/docs/hazmat/primitives/symmetric-encryption.rst b/docs/hazmat/primitives/symmetric-encryption.rst index 6fa71767..5f1a64a1 100644 --- a/docs/hazmat/primitives/symmetric-encryption.rst +++ b/docs/hazmat/primitives/symmetric-encryption.rst @@ -149,6 +149,9 @@ Weak Ciphers      :param bytes key: The secret key, 32-448 bits in length (in increments of                        8).  This must be kept secret. + +.. _symmetric-encryption-modes: +  Modes  ~~~~~  | 
