Ë
    S"“jÀ  ã                   ó$   — d Z ddlZ G d„ d«      Zy)z1
This module holds the AESModeCTR wrapper class.
é    Nc                   ó"   — e Zd ZdZd„ Zd„ Zd„ Zy)Ú
AESModeCTRz>Wrapper around pyaes.AESModeOfOperationCTR mode with custom IVc                 óè   — t        |t        «      sJ ‚t        j                  |«      | _        t        |t        «      sJ ‚t        |«      dk(  sJ ‚t        |«      | j                  j                  _        y)zÊ
        Initializes the AES CTR mode with the given key/iv pair.

        :param key: the key to be used as bytes.
        :param iv: the bytes initialization vector. Must have a length of 16.
        é   N)Ú
isinstanceÚbytesÚpyaesÚAESModeOfOperationCTRÚ_aesÚlenÚlistÚ_counter)ÚselfÚkeyÚivs      úW/var/www/api.ozpay.ru/ozpay/venv/lib/python3.12/site-packages/telethon/crypto/aesctr.pyÚ__init__zAESModeCTR.__init__   s\   € ô ˜#œuÔ%Ð%Ð%Ü×/Ñ/°Ó4ˆŒ	ä˜"œeÔ$Ð$Ð$Ü�2‹w˜"Š}Ðˆ}Ü&*¨2£hˆ�	‰	×ÑÕ#ó    c                 ó8   — | j                   j                  |«      S )z¢
        Encrypts the given plain text through AES CTR.

        :param data: the plain text to be encrypted.
        :return: the encrypted cipher text.
        )r   Úencrypt©r   Údatas     r   r   zAESModeCTR.encrypt   ó   € ð �y‰y× Ñ  Ó&Ð&r   c                 ó8   — | j                   j                  |«      S )z¢
        Decrypts the given cipher text through AES CTR

        :param data: the cipher text to be decrypted.
        :return: the decrypted plain text.
        )r   Údecryptr   s     r   r   zAESModeCTR.decrypt#   r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   © r   r   r   r      s   „ ÙHò/ò'ó'r   r   )r   r	   r   r    r   r   ú<module>r!      s   ðñó ÷#'ò #'r   