Esempio n. 1
0
 def dumps_public_key(cls, raw_key):
     numbers = raw_key.public_numbers()
     return {
         'crv': cls.CURVES_DSS[numbers.curve.name],
         'x': int_to_base64(numbers.x),
         'y': int_to_base64(numbers.y)
     }
 def dumps_public_key(self, key):
     numbers = key.public_numbers()
     return {
         'kty': 'RSA',
         'n': int_to_base64(numbers.n),
         'e': int_to_base64(numbers.e)
     }
Esempio n. 3
0
 def dumps_public_key(self):
     numbers = self.public_key.public_numbers()
     return {
         'crv': self.CURVES_DSS[numbers.curve.name],
         'x': int_to_base64(numbers.x),
         'y': int_to_base64(numbers.y)
     }
Esempio n. 4
0
 def dumps_private_key(cls, raw_key):
     numbers = raw_key.private_numbers()
     return {
         'crv': cls.CURVES_DSS[raw_key.curve.name],
         'x': int_to_base64(numbers.public_numbers.x),
         'y': int_to_base64(numbers.public_numbers.y),
         'd': int_to_base64(numbers.private_value),
     }
Esempio n. 5
0
 def dumps_private_key(self):
     numbers = self.private_key.private_numbers()
     return {
         'crv': self.CURVES_DSS[self.private_key.curve.name],
         'x': int_to_base64(numbers.public_numbers.x),
         'y': int_to_base64(numbers.public_numbers.y),
         'd': int_to_base64(numbers.private_value),
     }
Esempio n. 6
0
 def dumps_private_key(raw_key):
     numbers = raw_key.private_numbers()
     return {
         'n': int_to_base64(numbers.public_numbers.n),
         'e': int_to_base64(numbers.public_numbers.e),
         'd': int_to_base64(numbers.d),
         'p': int_to_base64(numbers.p),
         'q': int_to_base64(numbers.q),
         'dp': int_to_base64(numbers.dmp1),
         'dq': int_to_base64(numbers.dmq1),
         'qi': int_to_base64(numbers.iqmp)
     }
 def dumps_private_key(self, key):
     numbers = key.private_numbers()
     return {
         'kty': 'RSA',
         'n': int_to_base64(numbers.public_numbers.n),
         'e': int_to_base64(numbers.public_numbers.e),
         'd': int_to_base64(numbers.d),
         'p': int_to_base64(numbers.p),
         'q': int_to_base64(numbers.q),
         'dp': int_to_base64(numbers.dmp1),
         'dq': int_to_base64(numbers.dmq1),
         'qi': int_to_base64(numbers.iqmp)
     }
Esempio n. 8
0
 def dumps_public_key(raw_key):
     numbers = raw_key.public_numbers()
     return {'n': int_to_base64(numbers.n), 'e': int_to_base64(numbers.e)}
Esempio n. 9
0
 def dumps_public_key(self):
     numbers = self.public_key.public_numbers()
     return {'n': int_to_base64(numbers.n), 'e': int_to_base64(numbers.e)}
Esempio n. 10
0
from authlib.common.encoding import int_to_base64
import json
import pgpy

# Input is PGP armored pubkey
key, _ = pgpy.PGPKey.from_file('key.asc')
n = int(key._key.keymaterial.n)
e = int(key._key.keymaterial.e)

# Expected JWK format according to https://tools.ietf.org/html/rfc7518#section-6.1
pubkey = {'kty': 'RSA', 'e': int_to_base64(e), 'n': int_to_base64(n)}
print(json.dumps(pubkey))