rt.py: start making even more generic, fixed naming of p and q
This commit is contained in:
parent
c99a147d4a
commit
95f9d527f6
@ -55,29 +55,29 @@ def read_part(f, s):
|
|||||||
return e
|
return e
|
||||||
|
|
||||||
class RsaKey(object):
|
class RsaKey(object):
|
||||||
def __init__(self, n, e, d, q, p, dP, dQ, qInv):
|
def __init__(self, n, e, d, p, q, dP, dQ, qInv):
|
||||||
self.n = n
|
self.n = n
|
||||||
self.e = e
|
self.e = e
|
||||||
self.d = d
|
self.d = d
|
||||||
self.q = q
|
|
||||||
self.p = p
|
self.p = p
|
||||||
|
self.q = q
|
||||||
self.dP = dP
|
self.dP = dP
|
||||||
self.dQ = dQ
|
self.dQ = dQ
|
||||||
self.qInv = qInv
|
self.qInv = qInv
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return "{{\n{0},\n{1},\n{2},\n{3},\n{4},\n{5},\n{6},\n{7}\n}}\n".format(self.n, self.e, self.d, self.q, self.p, self.dP, self.dQ, self.qInv)
|
return "{{\n{0},\n{1},\n{2},\n{3},\n{4},\n{5},\n{6},\n{7}\n}}\n".format(self.n, self.e, self.d, self.p, self.q, self.dP, self.dQ, self.qInv)
|
||||||
|
|
||||||
def read_key(f):
|
def read_key(f):
|
||||||
n = read_part(f, '# RSA modulus n')
|
n = read_part(f, ftype.n)
|
||||||
e = read_part(f, '# RSA public exponent e')
|
e = read_part(f, ftype.e)
|
||||||
d = read_part(f, '# RSA private exponent d')
|
d = read_part(f, ftype.d)
|
||||||
q = read_part(f, '# Prime p')
|
p = read_part(f, ftype.p)
|
||||||
p = read_part(f, '# Prime q')
|
q = read_part(f, ftype.q)
|
||||||
dP = read_part(f, '# p\'s CRT exponent dP')
|
dP = read_part(f, ftype.dP)
|
||||||
dQ = read_part(f, '# q\'s CRT exponent dQ')
|
dQ = read_part(f, ftype.dQ)
|
||||||
qInv = read_part(f, '# CRT coefficient qInv')
|
qInv = read_part(f, ftype.qInv)
|
||||||
k = RsaKey(n, e, d, q, p, dP, dQ, qInv)
|
k = RsaKey(n, e, d, p, q, dP, dQ, qInv)
|
||||||
return k
|
return k
|
||||||
|
|
||||||
class Data(object):
|
class Data(object):
|
||||||
@ -140,6 +140,15 @@ class PkcsType(object):
|
|||||||
self.o3 = '# Encryption'
|
self.o3 = '# Encryption'
|
||||||
else:
|
else:
|
||||||
raise ValueError('Type unknown: ' + name)
|
raise ValueError('Type unknown: ' + name)
|
||||||
|
if name == 'pss' or name == 'oaep':
|
||||||
|
self.n = '# RSA modulus n'
|
||||||
|
self.e = '# RSA public exponent e'
|
||||||
|
self.d = '# RSA private exponent d'
|
||||||
|
self.p = '# Prime p'
|
||||||
|
self.q = '# Prime q'
|
||||||
|
self.dP = '# p\'s CRT exponent dP'
|
||||||
|
self.dQ = '# q\'s CRT exponent dQ'
|
||||||
|
self.qInv = '# CRT coefficient qInv'
|
||||||
self.name = name
|
self.name = name
|
||||||
|
|
||||||
ftype = PkcsType(sys.argv[2])
|
ftype = PkcsType(sys.argv[2])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user