Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- g=25857960803
- h=20101567521
- p=34359738421
- N=p-1
- def Shanks(g,h,p,N):
- n=floor(sqrt(N).numerical_approx())+1
- L1=[]
- L1.append(1)
- for i in range(n+1):
- L1.append((L1[i-1]*g)%p)
- gn=L1[n].inverse_mod(p)
- l2=h
- j=0
- while j<n+1 :
- for i in range(n+1):
- if l2==L1[i]:
- x=i+n*j
- break
- l2=(l2*gn)%p
- j=j+1
- return x
- t=cputime()
- Shanks(g,h,p,N)
- #g.powermod(1099511627791)
- #print(randint(1,p-1))
- #rozw=25303478531
- cputime(t)
- p=next_prime(2^35)
- F=GF(p)
- g=F.random_element()
- N=g.multiplicative_order()
- N % (p-1)
- g
- h
- p
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement