Xj8ddlZddlZddlZddlmZmZ ddlmZddlm Z m Z dee e fde fdZdee e fde fd Zde de fd Zdd d ed eede fdZd ee e fdefdZdedede fdZde defdZdd d ed eede fdZde ddde fdZde ddde fdZhdZej4ddj7ezdzej8Zd e defd!Zd"Z d e defd#Z!y#e $rYwxYw)$N)OptionalUnion) EllipticCurve)decode_dss_signatureencode_dss_signaturevaluereturnc~t|tr|jdSt|tr|St d)Nzutf-8zExpected a string value) isinstancestrencodebytes TypeError)rs ]/mnt/ssd/data/Dropbox/adrian/vault-secondbrain/venv/lib/python3.12/site-packages/jwt/utils.py force_bytesrs6%||G$$ E5 ! 122inputc~t|}t|dz}|dkDr |dd|z zz }tj|S)Nr=)rlenbase64urlsafe_b64decode)r input_bytesrems rbase64url_decodersFe$K k Q C Qwtq3w''  # #K 00rcLtj|jddS)Nrr)rurlsafe_b64encodereplace)rs rbase64url_encoder $s  # #E * 2 24 ==r bit_lengthvalr"cr|dkr tdt||}t|dk(rd}t|S)NrzMust be a positive integerr!) ValueErrorbytes_from_intrr )r#r" int_bytess rto_base64url_uintr)(s= Qw566sz:I 9~ I &&rcXtt|}tj|dS)Nbig) byteorder)rrint from_bytes)r#datas rfrom_base64url_uintr04s$ K, -D >>$%> 00rnum num_bytesc^dd|z|fz}tj|jdS)Nz%0*xascii)binasciia2b_hexr )r1r2 padded_hexs rnumber_to_bytesr99s11y=#..J   J--g6 77rstringc@ttj|dS)N)r-r6b2a_hex)r:s rbytes_to_numberr>>s x' ,,rc^||j}|dzdz}|j|ddS)Nr+F)signed)r"to_bytes)r#r" byte_lengths rr'r'Bs7^^% >a'K << U5< 99rder_sigcurvercx|j}|dzdz}t|\}}t||t||zS)Nr@rA)key_sizerr9)rErFnum_bitsr2rss rder_to_raw_signaturerLJs@~~HA!#I  (DAq 1i (?1i+H HHrraw_sigc|j}|dzdz}t|d|zk7r tdt|d|}t||d}t t ||S)Nr@rAr4zInvalid signature)rHrr&r>rr)rMrFrIr2rJrKs rraw_to_der_signaturerOSsj~~HA!#I 7|q9}$,-- +,A +,A %a+ ,,r>X509 CRL PUBLIC KEY CERTIFICATE PRIVATE KEY DH PARAMETERSEC PRIVATE KEYRSA PUBLIC KEYDSA PRIVATE KEYRSA PRIVATE KEYSSH2 PUBLIC KEYCERTIFICATE REQUESTOPENSSH PRIVATE KEYTRUSTED CERTIFICATEENCRYPTED PRIVATE KEYNEW CERTIFICATE REQUESTSSH2 ENCRYPTED PRIVATE KEYs----[- ]BEGIN (|s,)[- ]---- ? .+? ? ----[- ]END \1[- ]---- ? ?keyc>ttj|SN)bool_PEM_REsearchras r is_pem_formatrh~s s# $$r)s ssh-ed25519sssh-rsasssh-dsssecdsa-sha2-nistp256secdsa-sha2-nistp384secdsa-sha2-nistp521c,|jtSrc) startswith_SSH_KEY_FORMATSrgs r is_ssh_keyrls >>* ++r)"rr6retypingrr,cryptography.hazmat.primitives.asymmetric.ecr/cryptography.hazmat.primitives.asymmetric.utilsrrModuleNotFoundErrorrr rrr r-r)r0r9r>r'rLrO_PEMScompilejoinDOTALLrerdrhrkrlrrrws  " J3uUCZ(3U31E%*-1%1>E>e>@D '3 'x} ' '1U5#:.131 8888 -E-c-=A::HSM:U:I%IIEI -% - -E - & "** ii!! II  %u%% ,E,d,C  sC""C*)C*