squeaknode/squeakserver/server/util.py
Jonathan Zernik 74817948cc
Use new squeak protocol (#64)
* Use new squeak protocol with encryption/decryption key instead of data key hash.

* Use from_bytes method for encrypted decryption key

* Undo changes to use temporary local install of squeaklib
2020-07-03 21:51:47 -07:00

23 lines
384 B
Python

import os
DATA_KEY_LENGTH = 32
def get_hash(squeak):
return squeak.GetHash()[::-1]
def generate_offer_nonce():
return os.urandom(DATA_KEY_LENGTH)
def generate_offer_preimage():
return os.urandom(DATA_KEY_LENGTH)
def bxor(b1, b2): # use xor for bytes
result = bytearray()
for b1, b2 in zip(b1, b2):
result.append(b1 ^ b2)
return bytes(result)