MATHEMATICS-MODULAR MATH目录
1. Quadratic Residues
推荐视频 Quadratic Residues
即,a^2>p时, (a^2-x)是p的倍数 (当a^2<p时, x = a^2)
(这里的mp代指p的倍数)
例子:
p=7
a += 1
1^2 = 1 (mod 7) # 1<7, x=a^2=1
2^2 = 4 (mod 7) # 4<7, x=a^2=4
3^2 = 2 (mod 7) # 9>7, x=a^2-p*1=2
4^2 = 2 (mod 7) # 16>7, x=a^2-p*2=2
5^2 = 4 (mod 7) # 25>7, x=a^2-p*3=4
6^2 = 1 (mod 7) # 36>7, x=a^2-p*5=1
# 1,2,4 are Quadratic Residue of 7
# 3,5,6 are Quadratic Non-Residue of 7
题:
given:
p = 29
ints = x = [14,6,11]
find a^2, get a (always have two a values: +a and -a)
原理:
a^2 = 6 + 29*2 = 64
a= 8, -8
flag = 8
代码:
p = 29
ints = [14,6,11]
print(min(x for x in range(p) if pow(x,2,p) in ints)) #8
2. Legendre Symbol
推荐阅读 Legendre_symbol
根据已知条件 p = 3 mod 4 以及