
                           S SK Jr  S SKrS SKrS SKJr  S SKJr  S SK	J
r
   " S S\R                  5      r " S S	\R                  5      r " S
 S\R                  5      r " S S\R                  S9r\R#                  \R$                  5        g)    )annotationsN)utils)x509)HashAlgorithmc                      \ rS rSrSrSrSrg)LogEntryType   r       N)__name__
__module____qualname____firstlineno__X509_CERTIFICATEPRE_CERTIFICATE__static_attributes__r       eplatform/bundledpythonunix/lib/python3.13/site-packages/cryptography/x509/certificate_transparency.pyr   r      s    Or   r   c                      \ rS rSrSrSrg)Version   r   r   N)r   r   r   r   v1r   r   r   r   r   r      s    	
Br   r   c                  (    \ rS rSrSrSrSrSrSrSr	g)	SignatureAlgorithm   z
Signature algorithms that are valid for SCTs.

These are exactly the same as SignatureAlgorithm in RFC 5246 (TLS 1.2).

See: <https://datatracker.ietf.org/doc/html/rfc5246#section-7.4.1.4.1>
r   r
         r   N)
r   r   r   r   __doc__	ANONYMOUSRSADSAECDSAr   r   r   r   r   r      s     I
C
CEr   r   c                     \ rS rSr\\R                  SS j5       5       r\\R                  SS j5       5       r\\R                  SS j5       5       r	\\R                  SS j5       5       r
\\R                  SS j5       5       r\\R                  SS j5       5       r\\R                  SS j5       5       r\\R                  SS	 j5       5       rS
rg)SignedCertificateTimestamp'   c                    g)z
Returns the SCT version.
Nr   selfs    r   version"SignedCertificateTimestamp.version(       r   c                    g)z=
Returns an identifier indicating which log this SCT is for.
Nr   r'   s    r   log_id!SignedCertificateTimestamp.log_id/   r+   r   c                    g)z%
Returns the timestamp for this SCT.
Nr   r'   s    r   	timestamp$SignedCertificateTimestamp.timestamp6   r+   r   c                    g)zF
Returns whether this is an SCT for a certificate or pre-certificate.
Nr   r'   s    r   
entry_type%SignedCertificateTimestamp.entry_type=   r+   r   c                    g)z:
Returns the hash algorithm used for the SCT's signature.
Nr   r'   s    r   signature_hash_algorithm3SignedCertificateTimestamp.signature_hash_algorithmD   r+   r   c                    g)z=
Returns the signing algorithm used for the SCT's signature.
Nr   r'   s    r   signature_algorithm.SignedCertificateTimestamp.signature_algorithmK   r+   r   c                    g)z%
Returns the signature for this SCT.
Nr   r'   s    r   	signature$SignedCertificateTimestamp.signatureR   r+   r   c                    g)z7
Returns the raw bytes of any extensions for this SCT.
Nr   r'   s    r   extension_bytes*SignedCertificateTimestamp.extension_bytesY   r+   r   r   N)returnr   )rA   bytes)rA   zdatetime.datetime)rA   r   )rA   r   )rA   r   )r   r   r   r   propertyabcabstractmethodr)   r-   r0   r3   r6   r9   r<   r?   r   r   r   r   r$   r$   '   s     
   
   
   
   
   
   
   r   r$   )	metaclass)
__future__r   rD   datetimecryptographyr   "cryptography.hazmat.bindings._rustr   	rust_x509%cryptography.hazmat.primitives.hashesr   Enumr   r   r   ABCMetar$   registerSctr   r   r   <module>rQ      sn   
 # 
   @ ?5:: 
ejj  73;; 7t  # #IMM 2r   