1.模数N有多个素因子
若n有标准分解,其中为互异的质因子,各>=1为质因子的次数,则欧拉函数在该处的值为
2. 例题
题目描述
N: 354310197788450668375574751057289586709675753302459449015681646382998462561802151374370754341840428653605057806091472622706794753654585704100730705332735132864391989775383537436430359173676996997054882798053707469331417
C: 282842633492408577281831254245741920755323424104102398421981481337205518675226234369756985327042568267502677372280659094612505978974036535080521060001152914179012015718871004014522014970132793771302673777703325019885612
e: 179035370981636133132245432750992042394591457522546261029637587317523727185809146206719771590973123758793458930420520595993004207841411050899679231464320187803127209527479569027405599593058280463339361150144159254131739
已知N,c,e,需要求出phi,那么就利用上面模数N有多个素因子的公式计算,需要将N进行标准分解。
在线分解大整数的网站:
http://factordb.com/
这个网站分解不出,应该是N太大了,下面使用本地 yafu 分解:yafu-x64 factor()
p1 = 823788941880716711
p2 = 1108080208092857
k1 = 8
k2 = 5
phi = pow(p1, k1 - 1) * pow(p2, k2 - 1) * (p1 - 1) * (p2 - 1)
d = invert(e, phi)
m = pow(C, d, N)
print(n2s(m))