1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
Ë
ž¬`i¡-ãóF—ddlZddlmZmZmZmZddlmZGd„de«Zy)éN)Ú
iter_rangeÚbordÚbchrÚABC)ÚRandomcó—eZdZejd„«Zejd„«Zejd„«Zejd4d„«Ze    ejd5d„««Z
ejd„«Z ejd„«Z ejd„«Z ejd    „«Zejd
„«Zejd „«Zejd „«ZeZejd „«Zejd„«Zejd„«Zejd„«Zejd„«Zejd„«Zejd6d„«Zejd6d„«Zejd„«Zejd6d„«Zejd„«Zejd„«Zejd„«Zejd„«Z ejd„«Z!ejd„«Z"ejd„«Z#ejd„«Z$ejd „«Z%ejd!„«Z&ejd"„«Z'ejd#„«Z(ejd$„«Z)ejd%„«Z*ejd&„«Z+ejd'„«Z,ejd(„«Z-ejd)„«Z.ejd*„«Z/ejd+„«Z0ejd,„«Z1ejd-„«Z2ejd.„«Z3e    ejd/„««Z4e    d0„«Z5e6d1„«Z7e6d2„«Z8e    ejd3„««Z9y)7Ú IntegerBasecó—y©N©©Úselfs õkH:\项目\archive\测试组\脚本\Change_password\venv_build\Lib\site-packages\Crypto/Math/_IntegerBase.pyÚ__int__zIntegerBase.__int__)ó€à ócó—yr r r s rÚ__str__zIntegerBase.__str__-rrcó—yr r r s rÚ__repr__zIntegerBase.__repr__1rrcó—yr r )rÚ
block_sizeÚ    byteorders   rÚto_byteszIntegerBase.to_bytes5rrcó—yr r )Ú byte_stringrs  rÚ
from_byteszIntegerBase.from_bytes9ó€ð     rcó—yr r ©rÚterms  rÚ__eq__zIntegerBase.__eq__?rrcó—yr r r s  rÚ__ne__zIntegerBase.__ne__Crrcó—yr r r s  rÚ__lt__zIntegerBase.__lt__Grrcó—yr r r s  rÚ__le__zIntegerBase.__le__Krrcó—yr r r s  rÚ__gt__zIntegerBase.__gt__Orrcó—yr r r s  rÚ__ge__zIntegerBase.__ge__Srrcó—yr r r s rÚ __nonzero__zIntegerBase.__nonzero__Wrrcó—yr r r s rÚ is_negativezIntegerBase.is_negative\rrcó—yr r r s  rÚ__add__zIntegerBase.__add__arrcó—yr r r s  rÚ__sub__zIntegerBase.__sub__errcó—yr r )rÚfactors  rÚ__mul__zIntegerBase.__mul__irrcó—yr r ©rÚdivisors  rÚ __floordiv__zIntegerBase.__floordiv__mrrcó—yr r r9s  rÚ__mod__zIntegerBase.__mod__qrrNcó—yr r ©rÚexponentÚmoduluss   rÚ inplace_powzIntegerBase.inplace_powurrcó—yr r r?s   rÚ__pow__zIntegerBase.__pow__yrrcó—yr r r s rÚ__abs__zIntegerBase.__abs__}rrcó—yr r ©rrAs  rÚsqrtzIntegerBase.sqrtrrcó—yr r r s  rÚ__iadd__zIntegerBase.__iadd__…rrcó—yr r r s  rÚ__isub__zIntegerBase.__isub__‰rrcó—yr r r s  rÚ__imul__zIntegerBase.__imul__rrcó—yr r r s  rÚ__imod__zIntegerBase.__imod__‘rrcó—yr r r s  rÚ__and__zIntegerBase.__and__–rrcó—yr r r s  rÚ__or__zIntegerBase.__or__šrrcó—yr r ©rÚposs  rÚ
__rshift__zIntegerBase.__rshift__žrrcó—yr r rWs  rÚ __irshift__zIntegerBase.__irshift__¢rrcó—yr r rWs  rÚ
__lshift__zIntegerBase.__lshift__¦rrcó—yr r rWs  rÚ __ilshift__zIntegerBase.__ilshift__ªrrcó—yr r )rÚns  rÚget_bitzIntegerBase.get_bit®rrcó—yr r r s rÚis_oddzIntegerBase.is_odd³rrcó—yr r r s rÚis_evenzIntegerBase.is_even·rrcó—yr r r s rÚ size_in_bitszIntegerBase.size_in_bits»rrcó—yr r r s rÚ size_in_byteszIntegerBase.size_in_bytes¿rrcó—yr r r s rÚis_perfect_squarezIntegerBase.is_perfect_squareÃrrcó—yr r )rÚ small_primes  rÚfail_if_divisible_byz IntegerBase.fail_if_divisible_byÇrrcó—yr r )rÚaÚbs   rÚmultiply_accumulatezIntegerBase.multiply_accumulateËrrcó—yr r )rÚsources  rÚsetzIntegerBase.setÏrrcó—yr r rHs  rÚinplace_inversezIntegerBase.inplace_inverseÓrrcó—yr r rHs  rÚinversezIntegerBase.inverse×rrcó—yr r r s  rÚgcdzIntegerBase.gcdÛrrcó—yr r r s  rÚlcmzIntegerBase.lcmßrrcó—yr r )rqras  rÚ jacobi_symbolzIntegerBase.jacobi_symbolãrrcóΗ|dvr|S|dzdk(r0t||dzdz|«}t|d|«|k7r td«‚|Sd}|dz
dz}|dzs|dz }|dz}|dzsŒ|jd«}    t||dz
dz|«}|dk(r|dz }Œ||dz
k(rn td«‚|}t|||«}t|||«}    t||dzdz|«}
|    dk7rttd|«D]} t|    d| z|«dk(sŒn |k(rtd||fz«‚t|d|| z
dz
z|«} | }| dz|z}|    | dzz|z}    |
| z|z}
|    dk7rŒtt|
d|«|k7r td«‚|
S)    a®Tonelli-shanks algorithm for computing the square root
        of n modulo a prime p.
 
        n must be in the range [0..p-1].
        p must be at least even.
 
        The return value r is the square root of modulo p. If non-zero,
        another solution will also exist (p-r).
 
        Note we cannot assume that p is really a prime: if it's not,
        we can either raise an exception or return the correct value.
        )rééér‚ézCannot compute square rootrz'Cannot compute square root of %d mod %d)ÚpowÚ
ValueErrorÚ    __class__r) raÚpÚrootÚsÚqÚzÚeulerÚmÚcÚtÚrÚirrs              rÚ_tonelli_shankszIntegerBase._tonelli_shanksèsÙ€ð" ‰;؈Hà ˆq‰5AŠ:ܐq˜1˜q™5 Q™,¨Ó*ˆDܐ4˜˜A‹ !Ò#Ü Ð!=Ó>Ð>؈Kà ˆØ ‰Uq‰LˆØq’5Ø ‰FˆAØ !‰GˆAðq“5ð K‰K˜‹NˆØÜ˜˜A ™E a™<¨Ó+ˆEؘŠzؐQ‘ØØ˜˜A™Š~ØäÐ9Ó:Ð :à ˆÜ 1a‹LˆÜ 1a‹LˆÜ A˜‘E˜a‘< Ó #ˆà1ŠfÜ  1Ó%ò Üq˜!˜Q™$ “? aÓ'Ùð ðAŠvÜ Ð!JÈaÐQRÈVÑ!SÓTÐTܐAq˜1˜q™5 1™9‘~ qÓ)ˆA؈Aؐ1‘q‘ˆAؐQ˜‘T‘˜Q‘ˆAؐQ‘˜!‘ ˆAð1‹fô ˆq!Q‹<˜1Ò ÜÐ9Ó:Ð :àˆrc óÆ—|jdd«}|jdd«}|jdd«}|€tj«j}|€ |€ t    d«‚| | t    d«‚|xs|}|dz
dzdz}d|dz|z
z
}t |d«d    «}| |d|dz
zz}|d|zdz
z}|j t|«||dz
«z«S)
a!Generate a random natural integer of a certain size.
 
        :Keywords:
          exact_bits : positive integer
            The length in bits of the resulting random Integer number.
            The number is guaranteed to fulfil the relation:
 
                2^bits > result >= 2^(bits - 1)
 
          max_bits : positive integer
            The maximum length in bits of the resulting random Integer number.
            The number is guaranteed to fulfil the relation:
 
                2^bits > result >=0
 
          randfunc : callable
            A function that returns a random byte string. The length of the
            byte string is passed as parameter. Optional.
            If not provided (or ``None``), randomness is read from the system RNG.
 
        :Return: a Integer object
        Ú
exact_bitsNÚmax_bitsÚrandfuncz3Either 'exact_bits' or 'max_bits' must be specifiedz2'exact_bits' and 'max_bits' are mutually exclusiver‚ér)ÚpoprÚnewÚreadr‡rrr)    ÚclsÚkwargsr–r—r˜ÚbitsÚ bytes_neededÚsignificant_bits_msbÚmsbs             rÚrandomzIntegerBase.random)s€ð2—Z‘Z  ¨dÓ3ˆ
Ø—:‘:˜j¨$Ó/ˆØ—:‘:˜j¨$Ó/ˆà Ð Ü—z‘z“|×(Ñ(ˆHà Ð  (Ð"2ÜÐRÓSÐ Sà Ð ! hÐ&:ÜÐQÓRÐ RàÒ%˜XˆØ ™ a™¨1Ñ,ˆ Ø  L°1Ñ$4°tÑ$;Ñ<ÐÜ‘8˜A“;˜q‘>Ó"ˆØ Ð !Ø 1Ð-°Ñ1Ñ2Ñ 2ˆCØ Ð)Ñ)¨QÑ.Ñ.ˆà~‰~œd 3›i©(°<À!Ñ3CÓ*DÑDÓEÐErc ó—|jdd«}|jdd«}|jdd«}|jdd«}|r!tdt|j«z«‚d||fvr td«‚||dz
}d||fvr td    «‚|€t    j
«j }||z
}||«j«}d
}d |cxkr|ks(n|j||¬ «}d |cxkr
|ksŒ||zSŒ&||zS) a¢Generate a random integer within a given internal.
 
        :Keywords:
          min_inclusive : integer
            The lower end of the interval (inclusive).
          max_inclusive : integer
            The higher end of the interval (inclusive).
          max_exclusive : integer
            The higher end of the interval (exclusive).
          randfunc : callable
            A function that returns a random byte string. The length of the
            byte string is passed as parameter. Optional.
            If not provided (or ``None``), randomness is read from the system RNG.
        :Returns:
            An Integer randomly taken in the given interval.
        Ú min_inclusiveNÚ max_inclusiveÚ max_exclusiver˜zUnknown keywords: z8max_inclusive and max_exclusive cannot be both specifiedr‚z(Missing keyword to identify the intervaléÿÿÿÿr)r—r˜)    ršr‡ÚstrÚkeysrr›rœrhr£)    rržr¥r¦r§r˜Ú norm_maximumÚ bits_neededÚnorm_candidates             rÚ random_rangezIntegerBase.random_rangeYs6€ð&Ÿ
™
 ?°DÓ9ˆ ØŸ
™
 ?°DÓ9ˆ ØŸ
™
 ?°DÓ9ˆ Ø—:‘:˜j¨$Ó/ˆá ÜÐ1´C¸¿ ¹ Ó4DÑDÓEÐ EØ ˜  }Ð5Ñ 5Üð&ó'ð 'à Ð $Ø)¨AÑ-ˆMØ M =Ð1Ñ 1ÜÐGÓHÐ Hà Ð Ü—z‘z“|×(Ñ(ˆHà$ }Ñ4ˆ Ù˜,Ó'×4Ñ4Ó6ˆ àˆØ~Ô5¨Ô5Ø ŸZ™ZØ-8Ø-5ð(ó&ˆNð~Ô5¨Ó5ð
  Ñ-Ð-ñ 6ð
  Ñ-Ð-rcó—y)a€Multiply two integers, take the modulo, and encode as big endian.
        This specialized method is used for RSA decryption.
 
        Args:
          term1 : integer
            The first term of the multiplication, non-negative.
          term2 : integer
            The second term of the multiplication, non-negative.
          modulus: integer
            The modulus, a positive odd number.
        :Returns:
            A byte string, with the result of the modular multiplication
            encoded in big endian mode.
            It is as long as the modulus would be, with zero padding
            on the left if needed.
        Nr )Úterm1Úterm2rAs   rÚ_mult_modulo_byteszIntegerBase._mult_modulo_bytes‰s€ð&     r)rÚbig)r³r ):Ú__name__Ú
__module__Ú __qualname__ÚabcÚabstractmethodrrrrÚ staticmethodrr"r$r&r(r*r,r.Ú__bool__r0r2r4r7r;r=rBrDrFrIrKrMrOrQrSrUrYr[r]r_rbrdrfrhrjrlrorsrvrxrzr|r~r€r”Ú classmethodr£r®r²r rrr    r    &s$„ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ñò óð ðØ×Ñò óóð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð à€Hà×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ñò óð ð    ×Ñò óð ð    ×Ññ óð ð    ×Ñò óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ð    ×Ññ óð ðØ×Ññ óóð ðñ>óð>ð@ñ-Fóð-Fð^ñ-.óð-.ð^Ø×Ññ óóñ rr    )    r·ÚCrypto.Util.py3compatrrrrÚCryptorr    r rrú<module>r¾s!ðó> ç=Ó=åôv #õv r