Current Path : /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/ |
Current File : //usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyc |
ó T:´Nc @ sN d Z d g Z d d l Z d d l m Z d e f d „ ƒ YZ d „ Z d S( s $Id$t WindowsRNGiÿÿÿÿN( t BaseRNGc B s2 e Z d Z d „ Z d „ Z d „ Z d „ Z RS( s <CryptGenRandom>c C s t j ƒ | _ t j | ƒ d S( N( t winrandomt newt _WindowsRNG__winrandR t __init__( t self( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyR # s c C sS | j r t d ƒ ‚ n | j j d ƒ } t | ƒ d k sB t ‚ t j | ƒ d S( s* Work around weakness in Windows RNG. The CryptGenRandom mechanism in some versions of Windows allows an attacker to learn 128 KiB of past and future output. As a workaround, this function reads 128 KiB of 'random' data from Windows and discards it. For more information about the weaknesses in CryptGenRandom, see _Cryptanalysis of the Random Number Generator of the Windows Operating System_, by Leo Dorrendorf and Zvi Gutterman and Benny Pinkas http://eprint.iacr.org/2007/419 s I/O operation on closed filei€ i Ni i ( t closedt ValueErrorR t get_bytest lent AssertionErrorR t flush( R t data( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyR ' s c C s d | _ d S( N( t NoneR ( R ( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyt _close: s c C s* | j ƒ | j j | ƒ } | j ƒ | S( N( R R R ( R t NR ( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyt _read= s ( t __name__t __module__t nameR R R R ( ( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyR s c O s t | | Ž S( N( R ( t argst kwargs( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyR G s ( t __revision__t __all__R t rng_baseR R R ( ( ( s: /usr/lib/python2.7/dist-packages/Crypto/Random/OSRNG/nt.pyt <module> s (