§ <ˆjøãóä—dZddlmZ ddlmZddlmZmZddlm Z dZ n #e $rdZ YnwxYwdd l m Z dd lZdZd Ze ejd ¦«Zd „Zd„Zdad„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd S)z Implements auth methods é)ÚOperationalErroré)Údefault_backend)Ú serializationÚhashes)ÚpaddingTF)ÚpartialNéÚsha1có`—|sdSt|¦« ¦«}t|¦« ¦«}t¦«}| |dt…¦«| |¦«| ¦«}t ||¦«S)z'Scramble used for mysql_native_passwordóN)Úsha1_newÚdigestÚupdateÚSCRAMBLE_LENGTHÚ _my_crypt)ÚpasswordÚmessageÚstage1Ústage2ÚsÚresults úD/opt/cloudlinux/venv/lib64/python3.11/site-packages/pymysql/_auth.pyÚscramble_native_passwordrs–€à ð؈så �hÑ Ô × &Ò &Ñ (Ô (€FÝ �fÑ Ô × $Ò $Ñ &Ô &€F݉ Œ €A؇H‚HˆWÐ%•oÐ%Ô &Ñ'Ô'Ð'؇H‚HˆVÑÔÐØ �XŠX‰ZŒZ€FÝ �V˜VÑ $Ô $Ð$r có¨—t|¦«}tt|¦«¦«D]}||xx||zcc<Œt|¦«S©N)Ú bytearrayÚrangeÚlenÚbytes)Úmessage1Úmessage2rÚis rrr+sT€Ý �xÑ Ô €Få •3�v‘;”;Ñ Ô ð!ð!ˆØˆqˆ ˆ Œ �X˜a”[Ñ ˆ ˆ ‰ ˆ å �‰=Œ=Ðr cóR— ddlm}|adS#t$rt d¦«‚wxYw)Nr©Úbindingsz='pynacl' package is required for ed25519_password auth method)Únaclr&Ú_nacl_bindingsÚ ImportErrorÚ RuntimeErrorr%s rÚ _init_naclr+:sR€ð Ø!Ð!Ð!Ð!Ð!Ð!à!ˆˆˆøÝ ð ð ð ÝØ Kñ ô ð ð øøøs‚ Œ&cóø—t|¦«}tt|ddzg¦«¦«}tt|ddzdzg¦«¦«}|t|dd…¦«z|zS)Nréøééé@r)rr )Ús32ÚbaÚba0Úba31s rÚ _scalar_clampr5Fsq€Ý �3‰Œ€BÝ • ˜2˜aœ5 3™;˜-Ñ(Ô(Ñ )Ô )€CÝ •˜R œV c™\¨RÑ/Ð0Ñ1Ô1Ñ 2Ô 2€DØ •�s˜1˜R˜4”yÑ!Ô!Ñ ! DÑ (Ð(r có¦—tst¦«tj|¦« ¦«}t |dd…¦«}tj|dd…|z¦« ¦«}t |¦«}t |¦«}t |¦«}tj||z|z¦« ¦«}t |¦«}t ||¦«}t  ||¦«} || zS)znSign a random scramble with elliptic curve Ed25519. Secret and public key are derived from password. Né ) r(r+ÚhashlibÚsha512rr5Ú!crypto_core_ed25519_scalar_reduceÚ&crypto_scalarmult_ed25519_base_noclampÚcrypto_core_ed25519_scalar_mulÚcrypto_core_ed25519_scalar_add) rÚscrambleÚhrÚrÚRÚAÚkÚksÚSs rÚed25519_passwordrFMs €õ ð݉ Œ ˆ õ Œ�xÑ Ô ×'Ò'Ñ)Ô)€Aõ �a˜˜˜”fÑÔ€Aõ Œ�q˜˜˜”v Ñ(Ñ)Ô)×0Ò0Ñ2Ô2€Aõ ×8Ò8¸Ñ;Ô;€AÝ×=Ò=¸aÑ@Ô@€Aõ ×=Ò=¸aÑ@Ô@€Aõ Œ�q˜1‘u˜xÑ'Ñ(Ô(×/Ò/Ñ1Ô1€Aõ ×8Ò8¸Ñ;Ô;€AÝ × 6Ò 6°q¸!Ñ <Ô <€BÝ×5Ò5°b¸!Ñ<Ô<€Að ˆq‰5€Lr có€—| |¦«| ¦«}| ¦«|Sr)Ú write_packetÚ _read_packetÚ check_error)ÚconnÚ send_dataÚpkts rÚ _roundtriprNvs<€Ø×Ò�iÑ Ô Ð Ø × Ò Ñ Ô €C؇O‚OÑÔÐØ €Jr cóê—|dt…}t|¦«}t|¦«}tt|¦«¦«D]}||xx|||zzcc<Œt |¦«Sr)rrrrr )rÚsaltÚpassword_bytesÚsalt_lenr#s rÚ _xor_passwordrS}s�€ð Ð •Ð Ô !€DݘxÑ(Ô(€Nå�4‰yŒy€HÝ •3�~Ñ&Ô&Ñ 'Ô 'ð0ð0ˆØ�qÐÐÔ˜T ! h¡,Ô/Ñ/ÐÐÑÐÝ �Ñ Ô Ð r c óV—tstd¦«‚t|dz|¦«}tj|t ¦«¦«}| |tjtj tj ¦«¬¦«tj ¦«d¬¦«¦«S)zhEncrypt password with salt and public_key. Used for sha256_password and caching_sha2_password. z\'cryptography' package is required for sha256_password or caching_sha2_password auth methodsó)Ú algorithmN)ÚmgfrVÚlabel) Ú_have_cryptographyr*rSrÚload_pem_public_keyrÚencryptrÚOAEPÚMGF1rÚSHA1)rrPÚ public_keyrÚrsa_keys rÚsha2_rsa_encryptra‰s €õ ð Ýð 4ñ ô ð õ˜H uÑ,¨dÑ3Ô3€GÝÔ/° ½OÑÝÐ<Ñ=Ô=Ð=ݘT 5Ñ)Ô)ˆCà ×ÒÑÔðTØ!$¤¨1¨2¨2¤ˆÔÝ ð TÝ Ð*¨DÔ,B×,IÒ,IÈ'Ñ,RÔ,RÑ SÔ SÐ Sà „}ðØÔ%ð KÝ"Ð#IÑJÔJÐ Jå ¤ ¨t¬y¸$Ô:PÑQÔQˆˆàˆå �d˜DÑ !Ô !Ð!r cóš—|sdStj|¦« ¦«}tj|¦« ¦«}tj||z¦« ¦«}t|¦«}t t |¦«¦«D]}||xx||zcc<Œt |¦«S)zƒScramble algorithm used in cached_sha2_password fast path. XOR(SHA256(password), SHA256(SHA256(SHA256(password)), nonce)) r )r8Úsha256rrrrr )rÚnonceÚp1Úp2Úp3Úresr#s rÚscramble_caching_sha2rw¾s³€ð ð؈så Œ˜Ñ !Ô !× (Ò (Ñ *Ô *€BÝ Œ˜Ñ Ô × "Ò "Ñ $Ô $€BÝ Œ˜˜U™ Ñ #Ô #× *Ò *Ñ ,Ô ,€Bå �B‰-Œ-€CÝ •3�r‘7”7‰^Œ^ððˆØ ˆAˆˆŒ�"�Q”%‰ˆˆ‰ˆå �‰:Œ:Ðr có�—|jst|d¦«S| ¦«rYtrt d¦«| ¦«|_t|j|j¦«}t||¦«}| ¦«std|j dd…z¦«‚|  d¦«|  ¦«}|dkr@trt d¦«|  ¦«}| ¦«|S|dkrtd|z¦«‚trt d ¦«|jr.trt d ¦«t||jd z¦«S|js…t|d ¦«}| ¦«std |j dd…z¦«‚|j dd…|_tr't |j d¦«¦«t%|j|j|j¦«}t||¦«}dS)Nr zcaching sha2: Trying fast pathz.caching sha2: Unknown packet for fast auth: %sréz%caching sha2: succeeded by fast path.éz.caching sha2: Unknown result for fast auth: %sz!caching sha2: Trying full auth...z:caching sha2: Sending plain password via secure connectionrUóz/caching sha2: Unknown packet for public key: %srd)rrNrhrfrgrirPrwrkrrlÚadvanceÚ read_uint8rIrJrerjrmra)rKrMÚ scrambledÚnrns rÚcaching_sha2_password_authr€Òs>€à Œ=ð%ݘ$ Ñ$Ô$Ð$à ×!Ò!Ñ#Ô#ð*å ð 4Ý Ð2Ñ 3Ô 3Ð 3Ø—L’L‘N”NˆŒ Ý)¨$¬-¸¼ÑCÔCˆ ݘ˜yÑ)Ô)ˆð × !Ò !Ñ #Ô #ð ÝØ <¸s¼yÈÈ!ȼ}Ñ Lñ ô ð ð‡K‚K��N„N€NØ �ŠÑÔ€AàˆA‚v€vÝ ð ;Ý Ð9Ñ :Ô :Ð :Ø×ÒÑ!Ô!ˆØ �ŠÑÔÐØˆ àˆA‚v€vÝÐOÐRSÑSÑTÔTÐTå ð3Ý Ð1Ñ2Ô2Ð2à „|ð7Ý ð PÝ ÐNÑ OÔ OÐ Oݘ$ ¤ °Ñ 5Ñ6Ô6Ð6à Ô !ð :ݘ˜wÑ'Ô'ˆØ×%Ò%Ñ'Ô'ð Ý"ØAÀCÄIÈbÈqÈbÄMÑQñôð ð"%¤¨1¨2¨2¤ˆÔÝ ð :Ý �$Ô(×/Ò/°Ñ8Ô8Ñ 9Ô 9Ð 9å ˜DœM¨4¬9°dÔ6LÑ MÔ M€DÝ �T˜4Ñ Ô €C€C€Cr )Ú__doc__ÚerrrÚcryptography.hazmat.backendsrÚcryptography.hazmat.primitivesrrÚ)cryptography.hazmat.primitives.asymmetricrrYr)Ú functoolsr r8rfrÚnewrrrr(r+r5rFrNrSrarorwr€©r rúr‰s‡ðððð"Ð!Ð!Ð!Ð!Ð!ðØ<Ð<Ð<Ð<Ð<Ð<ØDÐDÐDÐDÐDÐDÐDÐDØAÐAÐAÐAÐAÐAàÐÐøØðððØÐÐÐðøøøðÐÐÐÐÐØ€€€ð €Ø€Ø ˆ7�7”; Ñ 'Ô '€ð %ð %ð %ðððð€ð  ð  ð  ð)ð)ð)ð#ð#ð#ðRððð !ð !ð !ðððð,"ð"ð"ð>ððð(9!ð9!ð9!ð9!ð9!s Š!¡+ª+