无效的fernet令牌

时间:2017-08-17 19:40:17

标签: python sockets encryption

您好我正在尝试加密通过Python中的套接字发送的数据(使用cryptography.fernet),但每当我运行代码发送数据时,我在服务器端获得了cryptography.fernet.invalidtoken异常。我可以在本地使用相同的密钥解密令牌,所以我认为它必须是套接字。这是我正在使用的代码:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((host,port))
print colored("listening...","red")
s.listen(10)
conn,addr = s.accept()
print colored("connected!","red")
data = conn.recv(1024)
print data

1 个答案:

答案 0 :(得分:-1)

抱歉,我没有提供加密功能或例外。我急于把它弄出来。无论如何,我找到了解决方案。问题是conn.recv()中定义的缓冲区太小,收到的令牌被截断。将缓冲区大小增加到大于原始1024的值可解决问题。