Viewing File: /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyc
ó
Àb‹Xc @` s d d l m Z m Z m Z d d l 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 d d l m Z d „ Z e j e ƒ d e f d
„ ƒ Yƒ Z d S( i ( t absolute_importt divisiont print_functionN( t utils( t AlreadyFinalizedt
InvalidKeyt UnsupportedAlgorithmt _Reasons( t HashBackend( t
constant_timet hashes( t KeyDerivationFunctionc C` s t j d | ƒ S( Ns >I( t structt pack( t n( ( sP /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyt
_int_to_u32be s t X963KDFc B` s# e Z d „ Z d „ Z d „ Z RS( c C` s° | j d } | | k r1 t d j | ƒ ƒ ‚ n | d k pI t | t ƒ s[ t d ƒ ‚ n | | _ | | _ | | _ t | t
ƒ sš t d t j
ƒ ‚ n | | _ t | _ d S( Ni i i s) Can not derive keys larger than {0} bits.s sharedinfo must be bytes.s. Backend object does not implement HashBackend.I Iÿÿÿÿ ( t digest_sizet
ValueErrort formatt Nonet
isinstancet bytest TypeErrort
_algorithmt _lengtht _sharedinfoR R R t BACKEND_MISSING_INTERFACEt _backendt Falset _used( t selft algorithmt lengtht
sharedinfot backendt max_len( ( sP /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyt __init__ s
c C` s | j r t ‚ n t | _ t | t ƒ s9 t d ƒ ‚ n d g } d } d } xž | j | k rî t j | j | j
ƒ } | j | ƒ | j t | ƒ ƒ | j
d k rº | j | j
ƒ n | j | j ƒ ƒ | t | d ƒ 7} | d 7} qQ Wd j | ƒ | j S( Ns key_material must be bytes.t i i iÿÿÿÿ( R R t TrueR R R R R
t HashR R t updateR R R t appendt finalizet lent join( R t key_materialt outputt outlent countert h( ( sP /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyt derive, s$
c C` s( t j | j | ƒ | ƒ s$ t ‚ n d S( N( R t bytes_eqR3 R ( R R. t expected_key( ( sP /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyt verifyD s ( t __name__t
__module__R% R3 R6 ( ( ( sP /usr/lib64/python2.7/site-packages/cryptography/hazmat/primitives/kdf/x963kdf.pyR s ( t
__future__R R R R t cryptographyR t cryptography.exceptionsR R R R t' cryptography.hazmat.backends.interfacesR t cryptography.hazmat.primitivesR R
t"