Viewing File: /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.pyc
ó
Àb‹Xc @` sÿ d d l m Z m Z m Z d d l m Z d d l m Z d d l m Z d d l
m Z m Z m
Z
m Z d d l m Z d d l m Z m Z m Z d d l m Z d e f d
„ ƒ YZ d e f d „ ƒ YZ e j e ƒ d
e f d „ ƒ Yƒ Z d S( i ( t absolute_importt divisiont print_function( t Enum( t range( t utils( t AlreadyFinalizedt
InvalidKeyt UnsupportedAlgorithmt _Reasons( t HMACBackend( t
constant_timet hashest hmac( t KeyDerivationFunctiont Modec B` s e Z d Z RS( t ctr( t __name__t
__module__t CounterMode( ( ( sN /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.pyR s t CounterLocationc B` s e Z d Z d Z RS( t before_fixedt after_fixed( R R t BeforeFixedt
AfterFixed( ( ( sN /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.pyR s t KBKDFHMACc B` s5 e Z d „ Z d „ Z d „ Z d „ Z d „ Z RS( c C` s t |
t ƒ s$ t d t j ƒ ‚ n t | t j ƒ sK t d t j ƒ ‚ n |
j | ƒ so t d t j ƒ ‚ n t | t ƒ s t
d ƒ ‚ n t | t ƒ s« t
d ƒ ‚ n | s· | rÌ | rÌ t d ƒ ‚ n | d k sè | j | ƒ r÷ t d ƒ ‚ n | d k r| d k rt d ƒ ‚ n | d k rIt | t ƒ rIt
d ƒ ‚ n | d k r^d
} n | d k rsd
} n t | t ƒ s“t | t ƒ r¢t
d ƒ ‚ n | | _ | | _ | | _ | | _ | | _ | | _ | | _ | | _ |
| _ t | _ | | _ d S( Ns. Backend object does not implement HMACBackend.s5 Algorithm supplied is not a supported hash algorithm.s5 Algorithm supplied is not a supported hmac algorithm.s mode must be of type Modes( location must be of type CounterLocations9 When supplying fixed data, label and context are ignored.s rlen must be between 1 and 4s Please specify an llens llen must be an integert s' label and context must be of type bytes( t
isinstanceR
R R t BACKEND_MISSING_INTERFACER t
HashAlgorithmt UNSUPPORTED_HASHt hmac_supportedR t TypeErrorR t
ValueErrort Nonet _valid_byte_lengtht intt bytest
_algorithmt _modet _lengtht _rlent _llent _locationt _labelt _contextt _backendt Falset _usedt _fixed_data( t selft algorithmt modet lengtht rlent llent locationt labelt contextt fixedt backend( ( sN /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.pyt __init__ sT c C` sZ t | t ƒ s t d ƒ ‚ n t j d | ƒ } d t | ƒ k oM d k n sV t St S( Ns value must be of type inti i ( R R$ R R t int_to_bytest lenR/ t True( R2 t valuet value_bin( ( sN /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/kbkdf.pyR# \ s "c C` sm | j r t ‚ n t | t ƒ s0 t d ƒ ‚ n t | _ | j | j j } d g } t j
d | j ƒ } | t d t
| ƒ d ƒ d k rž t d ƒ ‚ n x¸ t d | d ƒ D]£ } t j | | j d | j ƒ} t j
| | j ƒ } | j t j k r
| j | ƒ n | j | j ƒ ƒ | j t j k rB| j | ƒ n | j | j ƒ ƒ q² Wd j | ƒ | j S( Ns key_material must be bytesR i i i s There are too many iterations.R<