UDP安全性和识别传入数据

Cha*_*les 8 python security encryption cryptography udp

我一直在使用UDP创建一个用于传输和接收信息的应用程序.我遇到的问题是安全性.现在我正在使用IP/socketid来确定哪些数据属于谁.

但是,我一直在阅读人们如何简单地欺骗他们的IP,然后只是将数据作为特定的IP发送.所以这似乎是错误的做法(不安全).那么我怎么想确定哪些数据属于哪些用户?例如,您连接了10个用户,所有用户都有特定数据.服务器需要将用户数据与我们收到的数据进行匹配.

我能看到这样做的唯一方法是使用某种客户端/服务器密钥系统并加密数据.我很好奇其他应用程序(或游戏,因为这就是这个应用程序是什么)确保他们的数据是真实的.还有一个事实是,加密比未加密需要更长的时间来处理.虽然我不确定它会影响性能的程度.

任何信息,将不胜感激.谢谢.

Ikk*_*kke 1

你可以看看HMAC

维基百科:

在密码学中,HMAC(基于哈希的消息验证码)是一种用于计算消息验证码 (MAC) 的特定结构,涉及加密哈希函数与密钥的组合。与任何 MAC 一样,它可用于同时验证数据完整性和消息的真实性。

每个客户都需要获得一个只有他们知道的唯一令牌。他们发送的每条消息都会根据令牌和消息进行哈希计算,并将其与消息本身一起发送。然后您可以验证该消息是否来自特定客户端。