Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
ashutosh1206
GitHub Repository: ashutosh1206/crypton
Path: blob/master/RSA-encryption/Attack-Wiener-variant/exploit.py
1402 views
1
from sage.all import *
2
3
def wiener(e, n):
4
m = 12345
5
c = pow(m, e, n)
6
q0 = 1
7
8
list1 = continued_fraction(Integer(e)/Integer(n))
9
conv = list1.convergents()
10
for i in conv:
11
k = i.numerator()
12
q1 = i.denominator()
13
14
for r in range(30):
15
for s in range(30):
16
d = r*q1 + s*q0
17
m1 = pow(c, d, n)
18
if m1 == m:
19
return d
20
q0 = q1
21
return None
22