
     hC                         d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
 ddgZ ed	           G d
 dej                              Z ed	           G d dej                              ZdS )    )	dataclass)ListOptional)x509)api)load_certs_from_pemderPKCS12SignatureConfigPemDerSignatureConfigT)frozenc                        e Zd ZU dZeed<   	 dZeee	j
                          ed<   	 dZee         ed<   	 dZeed<   	 dZeed	<   	 e fd
            Z xZS )r	   zf
    Configuration for a signature using key material on disk, contained
    in a PKCS#12 bundle.
    pfx_fileNother_certspfx_passphraseTprompt_passphraseF
prefer_pssc                 P   t                                          |           |                    dd          }t          |t                    r|f}t          t          |                    |d<   	 |d         }||                    d          |d<   d S d S # t          $ r Y d S w xY w)Nr    r   utf8	superprocess_entriesget
isinstancestrlistr   encodeKeyErrorclsconfig_dictr   
passphrase	__class__s       U/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/pyhanko/config/local_keys.pyr   z%PKCS12SignatureConfig.process_entries,       ,,,!oomR88k3'' 	)&.K%)*@*M*M%N%NM"	$%56J%0:0A0A&0I0I,--- &% 	 	 	DD	   1"B 
B%$B%)__name__
__module____qualname____doc__r   __annotations__r   r   r   r   Certificater   bytesr   boolr   classmethodr   __classcell__r"   s   @r#   r	   r	      s          
 MMM#48K$t/01888&&*NHUO***+"t""" J     [        c                        e Zd ZU dZeed<   	 eed<   	 dZeee	j
                          ed<   	 dZee         ed<   	 dZeed<   	 d	Zeed
<   	 e fd            Z xZS )r
   zV
    Configuration for a signature using PEM or DER-encoded key material on disk.
    key_file	cert_fileNr   key_passphraseTr   Fr   c                 P   t                                          |           |                    dd          }t          |t                    r|f}t          t          |                    |d<   	 |d         }||                    d          |d<   d S d S # t          $ r Y d S w xY w)Nr   r   r5   r   r   r   s       r#   r   z%PemDerSignatureConfig.process_entries\   r$   r%   )r&   r'   r(   r)   r   r*   r   r   r   r   r+   r5   r,   r   r-   r   r.   r   r/   r0   s   @r#   r
   r
   =   s           MMMNNN48K$t/01888&&*NHUO***0"t""" J     [    r1   N)dataclassesr   typingr   r   
asn1cryptor   pyhanko.configr   pyhanko.keysr   __all__ConfigurableMixinr	   r
   r   r1   r#   <module>r>      s   ! ! ! ! ! ! ! ! ! ! ! ! ! !             / / / / / /  $* * * * *C1 * * *Z $, , , , ,C1 , , , , ,r1   