| Server IP : 35.80.110.71 / Your IP : 216.73.216.221 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /lib/python3/dist-packages/Cryptodome/Hash/__pycache__/ |
Upload File : |
�
��e� � � � d dl mZ d dlmZmZmZmZmZmZm Z edd� Z
G d� de� Zd
d�Z
ej Zej Zd � Zy)� )�bord)�load_pycryptodome_raw_lib�VoidPointer�SmartPointer�create_string_buffer�get_raw_buffer�c_size_t�c_uint8_ptrzCryptodome.Hash._SHA384a�
int SHA384_init(void **shaState);
int SHA384_destroy(void *shaState);
int SHA384_update(void *hs,
const uint8_t *buf,
size_t len);
int SHA384_digest(const void *shaState,
uint8_t *digest,
size_t digest_size);
int SHA384_copy(const void *src, void *dst);
int SHA384_pbkdf2_hmac_assist(const void *inner,
const void *outer,
const uint8_t *first_digest,
uint8_t *final_digest,
size_t iterations,
size_t digest_size);
c �D � e Zd ZdZdZdZdZdd�Zd� Zd� Z d � Z
d
� Zdd�Zy)
�
SHA384Hasha� A SHA-384 hash object.
Do not instantiate directly. Use the :func:`new` function.
:ivar oid: ASN.1 Object ID
:vartype oid: string
:ivar block_size: the size in bytes of the internal message block,
input to the compression function
:vartype block_size: integer
:ivar digest_size: the size in bytes of the resulting hash
:vartype digest_size: integer
�0 � z2.16.840.1.101.3.4.2.2Nc � � t � }t j |j � � }|rt d|z � �t |j
� t j � | _ |r| j |� y y )Nz#Error %d while instantiating SHA384)
r �_raw_sha384_lib�SHA384_init�
address_of�
ValueErrorr �get�SHA384_destroy�_state�update)�self�data�state�results �8/usr/lib/python3/dist-packages/Cryptodome/Hash/SHA384.py�__init__zSHA384Hash.__init__G so � ��
�� �,�,�U�-=�-=�-?�@����B�%�&� '�
'�"�5�9�9�;�#2�#A�#A�C�����K�K��� � c � � t j | j j � t |� t t
|� � � }|rt d|z � �y)z�Continue hashing of a message by consuming the next chunk of data.
Args:
data (byte string/byte array/memoryview): The next chunk of the message being hashed.
z'Error %d while hashing data with SHA384N)r �
SHA384_updater r r
r �lenr )r r r s r r zSHA384Hash.updateR sX � � !�.�.�t�{�{���/@�/:�4�/@�/7��D� �/B�D�� ��F�%�&� '�
'� r c �� � t | j � }t j | j j � |t
| j � � }|rt d|z � �t |� S )z�Return the **binary** (non-printable) digest of the message that has been hashed so far.
:return: The hash digest, computed over the data processed so far.
Binary form.
:rtype: byte string
z#Error %d while making SHA384 digest) r �digest_sizer �
SHA384_digestr r r r r )r �bfrr s r �digestzSHA384Hash.digest` sm � � #�4�#3�#3�4�� �.�.�t�{�{���/@�/2�/7��8H�8H�/I�K�� ��B�%�&� '�
'� �c�"�"r c �~ � dj | j � D �cg c] }dt |� z �� c}� S c c}w )z�Return the **printable** digest of the message that has been hashed so far.
:return: The hash digest, computed over the data processed so far.
Hexadecimal encoded.
:rtype: string
� z%02x)�joinr&