
    E#ij                     z    % S r SSKrSSKrSSKJrJr  SSKJr  \" \S5      r	\
\S'    " S S	5      r " S
 S5      rg)zModule for SHA-2 algorithms.    N)TupleUnion   )	AlgoUtilsdigestHMAC_USE_DIGESTc                   d    \ rS rSrSr\S\\\4   S\\\4   S\4S j5       r	\S\
4S j5       rSrg	)

HmacSha256"   zE
HMAC-SHA256 class.
It computes digests using HMAC-SHA256 algorithm.
keydatareturnc                 P   [         (       a@  [        R                  " [        R                  " U 5      [        R                  " U5      S5      $ [        R
                  " [        R                  " U 5      [        R                  " U5      [        R                  5      R                  5       $ )
Compute the digest (quick version).

Args:
    key (str or bytes) : Key
    data (str or bytes): Data

Returns:
    bytes: Computed digest
sha256)r   hmacr   r   Encodenewhashlibr   r   r   s     h/home/james-whalen/.local/lib/python3.13/site-packages/ccxt/static_dependencies/bip/utils/crypto/hmac.pyQuickDigestHmacSha256.QuickDigest(   sh     ?;;y//4i6F6Ft6LhWWxx	((-y/?/?/Ew~~V]]__    c                  @    [         R                  " 5       R                  $ zG
Get the digest size in bytes.

Returns:
    int: Digest size in bytes
)r   r   digest_size r   r   
DigestSizeHmacSha256.DigestSize:        ~~+++r   r   N)__name__
__module____qualname____firstlineno____doc__staticmethodr   bytesstrr   intr   __static_attributes__r   r   r   r
   r
   "   sd    
 `ucz* `s
+`05` `" , , ,r   r
   c            	           \ rS rSrSr\S\\\4   S\\\4   S\4S j5       r	\S\\\4   S\\\4   S\
\\4   4S j5       r\S\4S j5       rS	rg
)
HmacSha512E   zE
HMAC-SHA512 class.
It computes digests using HMAC-SHA512 algorithm.
r   r   r   c                 P   [         (       a@  [        R                  " [        R                  " U 5      [        R                  " U5      S5      $ [        R
                  " [        R                  " U 5      [        R                  " U5      [        R                  5      R                  5       $ )r   sha512)r   r   r   r   r   r   r   r0   r   s     r   r   HmacSha512.QuickDigestK   sh     ?;;y//4i6F6Ft6LhWWxx	((-y/?/?/Ew~~V]]__r   c                     [         R                  X5      nUS[         R                  5       S-   U[         R                  5       S-  S 4$ )z
Compute the digest and return it split into two halves (quick version).

Args:
    key (str or bytes) : Key
    data (str or bytes): Data

Returns:
    tuple[bytes, bytes]: Computed digest left part (index 0) and right part (index 1)
Nr   )r-   r   r   )r   r   digest_bytess      r   QuickDigestHalvesHmacSha512.QuickDigestHalves^   sL     "--c89Z2249:LI^I^I`deIeIf<gggr   c                  @    [         R                  " 5       R                  $ r   )r   r0   r   r   r   r   r   HmacSha512.DigestSizen   r!   r   r   N)r"   r#   r$   r%   r&   r'   r   r(   r)   r   r   r4   r*   r   r+   r   r   r   r-   r-   E   s    
 `ucz* `s
+`05` `$ huUCZ0 h %eSj 1h6;E5L6Ih h , , ,r   r-   )r&   r   r   typingr   r   miscr   hasattrr   bool__annotations__r
   r-   r   r   r   <module>r=      s@   * #      h/ / ,  ,F1, 1,r   