o
    	h                     @   sZ   U d dl mZ d dlmZmZ e Zee	d< dede
fddZdede
de
fd	d
ZdS )    )
exceptions)ffilibrandombytes_SEEDBYTESsizereturnc                 C   s,   t d| }t||  t || dd S )z
    Returns ``size`` number of random bytes from a cryptographically secure
    random source.

    :param size: int
    :rtype: bytes
    unsigned char[]N)r   newr   randombytesbuffer)r   buf r   [/var/www/html/optinet_system/venv/lib/python3.10/site-packages/nacl/bindings/randombytes.pyr
      s   r
   seedc                 C   sD   t |tkrtdtd| }t|| | t|| dd S )z
    Returns ``size`` number of deterministically generated pseudorandom bytes
    from a seed

    :param size: int
    :param seed: bytes
    :rtype: bytes
    z:Deterministic random bytes must be generated from 32 bytesr   N)	lenr   exc	TypeErrorr   r	   r   randombytes_buf_deterministicr   )r   r   r   r   r   r   r   #   s   	r   N)naclr   r   nacl._sodiumr   r   randombytes_seedbytesr   int__annotations__bytesr
   r   r   r   r   r   <module>   s
   