def getbox(auth,key): try: key_raw = nacl.public.PublicKey(key, encoder=nacl.encoding.HexEncoder) try: return Box(auth,key_raw) except: raise err.api('invalid auth object') except: raise err.api('invalid server key')
def getauth(secret=''): if secret != '': try: return nacl.public.PrivateKey(secret,encoder=nacl.encoding.HexEncoder) except: raise err.api('invalid secret') else: return PrivateKey.generate()
def payload_resetpassword(box,auth,nonce,tox_id): payload = {"public_key": tox_id[0:64],"timestamp":int(time.time())} try: return box.encrypt(json.dumps(payload),nonce,encoder=nacl.encoding.Base64Encoder).ciphertext except: raise err.api('Error encrypting payload.')
def payload_push(box,auth,nonce,tox_id,name,privacy=1,bio=''): payload = {"tox_id": tox_id, "name":name, "privacy":privacy,"bio":bio,"timestamp":int(time.time())} try: return box.encrypt(json.dumps(payload),nonce,encoder=nacl.encoding.Base64Encoder).ciphertext except: raise err.api('Error encrypting payload.')