Consistent variable name

main
Bob Mottram 2020-06-15 22:34:32 +01:00
parent 66cff37a21
commit 522af7dc06
1 changed files with 9 additions and 6 deletions

View File

@ -47,11 +47,11 @@ def normalizeJson(payload: {}) -> str:
sort_keys=True).encode('utf-8') sort_keys=True).encode('utf-8')
def signRs256(payload: {}, privateKey: str) -> str: def signRs256(payload: {}, privateKeyPem: str) -> str:
""" """
Produce a RS256 signature of the payload Produce a RS256 signature of the payload
""" """
key = RSA.importKey(privateKey) key = RSA.importKey(privateKeyPem)
signer = PKCS1_v1_5.new(key) signer = PKCS1_v1_5.new(key)
signature = signer.sign(SHA256.new(payload)) signature = signer.sign(SHA256.new(payload))
return signature return signature
@ -66,8 +66,9 @@ def verifyRs256(payload: {}, signature: str, publicKeyPem: str) -> bool:
return verifier.verify(SHA256.new(payload), signature) return verifier.verify(SHA256.new(payload), signature)
def signJws(payload: {}, privateKey: str) -> str: def signJws(payload: {}, privateKeyPem: str) -> str:
""" Prepare payload to sign """
Prepare payload to sign
""" """
header = { header = {
'alg': 'RS256', 'alg': 'RS256',
@ -78,7 +79,7 @@ def signJws(payload: {}, privateKey: str) -> str:
encodedHeader = b64safeEncode(normalizedJson) encodedHeader = b64safeEncode(normalizedJson)
preparedPayload = b'.'.join([encodedHeader, payload]) preparedPayload = b'.'.join([encodedHeader, payload])
signature = signRs256(preparedPayload, privateKey) signature = signRs256(preparedPayload, privateKeyPem)
encodedSignature = b64safeEncode(signature) encodedSignature = b64safeEncode(signature)
jwsSignature = b'..'.join([encodedHeader, encodedSignature]) jwsSignature = b'..'.join([encodedHeader, encodedSignature])
@ -86,7 +87,9 @@ def signJws(payload: {}, privateKey: str) -> str:
def verifyJws(payload: {}, jwsSignature: str, publicKeyPem: str) -> bool: def verifyJws(payload: {}, jwsSignature: str, publicKeyPem: str) -> bool:
# remove the encoded header from the signature """
Verifies a signature using the given public key
"""
encodedHeader, encodedSignature = jwsSignature.split(b'..') encodedHeader, encodedSignature = jwsSignature.split(b'..')
signature = b64safeDecode(encodedSignature) signature = b64safeDecode(encodedSignature)
payload = b'.'.join([encodedHeader, payload]) payload = b'.'.join([encodedHeader, payload])