Fix base64 encodings

This commit is contained in:
Magnus Hagander
2019-01-19 20:03:33 +01:00
parent 9b42500478
commit edad84b1d0
3 changed files with 11 additions and 11 deletions

View File

@ -551,8 +551,8 @@ def communityauth(request, siteid):
# Generate redirect
return HttpResponseRedirect("%s?i=%s&d=%s" % (
site.redirecturl,
base64.b64encode(iv, "-_"),
base64.b64encode(cipher, "-_"),
base64.b64encode(iv, b"-_").decode('ascii'),
base64.b64encode(cipher, b"-_").decode('ascii'),
))
@ -597,8 +597,8 @@ def _encrypt_site_response(site, s):
# Base64-encode the response, just to be consistent
return "%s&%s" % (
base64.b64encode(iv, '-_'),
base64.b64encode(cipher, '-_'),
base64.b64encode(iv, b'-_').decode('ascii'),
base64.b64encode(cipher, b'-_').decode('ascii'),
)

View File

@ -16,4 +16,4 @@ if __name__ == "__main__":
r = Random.new()
key = r.read(32)
print base64.b64encode(key)
print(base64.b64encode(key))

View File

@ -54,15 +54,15 @@ if __name__ == "__main__":
# the first block more random..
# Since this is a fake authentication, put it 5 minutes into the future to
# give more time to copy/paste it.
s = "t=%s&%s" % (int(time.time() + 300), urllib.urlencode(info))
s = "t=%s&%s" % (int(time.time() + 300), urllib.parse.urlencode(info))
r = Random.new()
iv = r.read(16)
encryptor = AES.new(base64.b64decode(options.key), AES.MODE_CBC, iv)
cipher = encryptor.encrypt(s + ' ' * (16 - (len(s) % 16)))
print "Paste the following after the receiving url:"
print "?i=%s&d=%s" % (
base64.b64encode(iv, "-_"),
base64.b64encode(cipher, "-_"),
)
print("Paste the following after the receiving url:")
print("?i=%s&d=%s" % (
base64.b64encode(iv, b"-_").decode('ascii'),
base64.b64encode(cipher, b"-_").decode('ascii'),
))