File: //opt/alt/python37/lib64/python3.7/site-packages/Crypto/Hash/__pycache__/MD5.cpython-37.opt-1.pyc
B
    Bd\R/  �               @   s�   d Z dZdddgZddlT ddlmZ yddlZejZW n  e	k
rX   ddlZeZY nX G d	d� de�Z
dd
d�Ze
jZe
j
Z
dS )a�  MD5 cryptographic hash algorithm.
MD5 is specified in RFC1321_ and produces the 128 bit digest of a message.
    >>> from Crypto.Hash import MD5
    >>>
    >>> h = MD5.new()
    >>> h.update(b'Hello')
    >>> print h.hexdigest()
MD5 stand for Message Digest version 5, and it was invented by Rivest in 1991.
This algorithm is insecure. Do not use it for new designs.
.. _RFC1321: http://tools.ietf.org/html/rfc1321 
z$Id$�new�digest_size�MD5Hash�    )�*)�HashAlgoNc               @   s4   e Zd ZdZed�ZdZdZd
dd�Zddd	�Z	dS )r   zIClass that implements an MD5 hash
    
    :undocumented: block_size
    u
   *H÷
�   �@   Nc             C   s   t �| t|� d S )N)r   �__init__�hashFactory)�self�data� r
   �B/opt/alt/python37/lib64/python3.7/site-packages/Crypto/Hash/MD5.pyr	   I   s    zMD5Hash.__init__c             C   s   t |�S )N)r   )r   r   r
   r
   r   r   L   s    zMD5Hash.new)N)N)
�__name__�
__module__�__qualname__�__doc__�bZoidr   �
block_sizer	   r   r
   r
   r
   r   r   6   s   
c             C   s   t � �| �S )a  Return a fresh instance of the hash object.
    :Parameters:
       data : byte string
        The very first chunk of the message to hash.
        It is equivalent to an early call to `MD5Hash.update()`.
        Optional.
    :Return: A `MD5Hash` object
    )r   r   )r   r
   r
   r   r   O   s    )N)r   Z_revision__�__all__ZCrypto.Util.py3compatZCrypto.Hash.hashalgor   ZhashlibZmd5r
   �ImportErrorr   r   r   r   r
   r
   r
   r   �<module>$   s