File: //opt/alt/python37/lib64/python3.7/site-packages/Crypto/Hash/__pycache__/SHA512.cpython-37.pyc
B
    Bd\R"  �               @   s�   d Z dZdddgZddlT ddlmZ yddlZejZW n$ e	k
r\   dd	l
mZ eZY nX G d
d� de�Zddd�Z
ejZejZdS )
a�  SHA-512 cryptographic hash algorithm.
SHA-512 belongs to the SHA-2_ family of cryptographic hashes.
It produces the 512 bit digest of a message.
    >>> from Crypto.Hash import SHA512
    >>>
    >>> h = SHA512.new()
    >>> h.update(b'Hello')
    >>> print h.hexdigest()
*SHA* stands for Secure Hash Algorithm.
.. _SHA-2: http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf
z$Id$�new�digest_size�
SHA512Hash�    )�*)�HashAlgoN)�_SHA512c               @   s4   e Zd ZdZed�ZdZdZd
dd�Zddd	�Z	dS )r   zLClass that implements a SHA-512 hash
    
    :undocumented: block_size
    u   	`He�@   �   Nc             C   s   t �| t|� d S )N)r   �__init__�hashFactory)�self�data� r   �E/opt/alt/python37/lib64/python3.7/site-packages/Crypto/Hash/SHA512.pyr
   G   s    zSHA512Hash.__init__c             C   s   t |�S )N)r   )r   r
   r   r   r   r   J   s    zSHA512Hash.new)N)N)
�__name__�
__module__�__qualname__�__doc__�bZoidr   �
block_sizer
   r   r   r   r   r   r   4   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 `SHA512Hash.update()`.
        Optional.
    :Return: A `SHA512Hash` object
    )r   r   )r
   r   r   r   r   M   s    )N)r   Z_revision__�__all__ZCrypto.Util.py3compatZCrypto.Hash.hashalgor   ZhashlibZsha512r   �ImportErrorZCrypto.Hashr   r   r   r   r   r   r   r   r   �<module>#   s