如何为无限数量的客户端保护非交互式身份验证系统?



我正在努力思考如何做一个身份验证系统,该系统允许共享相同源代码但具有随机基于uuid的标识符的任意客户端进行身份验证。这样做的一个必要条件是,客户端必须不需要人工交互来登录该服务器,将其视为需要登录到中央服务器但无法接收用户输入的自动物联网设备。

对于我的用例,我不需要它是一个非常安全的系统。但至少对攻击者有某种障碍会很好。

我的第一个方法是使用标识符 uuid 作为用户名,以及一个将标识符与其他动态值以及秘密一起哈希的函数,但在我看来这有点笨拙......为每个设备生成的哈希必须是常量。

客户端不能使用非简单的哈希/加密方法。以下是他们可以计算的内容列表:MD5 哈希、SHA1 哈希、两个 base64 字符串之间的 XOR、SHA256 哈希和 ARCFOUR。

但是,服务器可以计算任何加密/哈希算法,并且设备的标识符是公开的,任何人都可以访问。但是,源代码是私有的,并且使用https进行通信。

关于如何使用更好的身份验证方法实现这一目标的任何想法?(考虑到这些限制(

您说物联网设备无法接收用户输入。它可以向用户显示或传达任何内容吗?如果是这样,则可以考虑 OAuth2 设备流。

您的 IoT 设备将轮询授权服务器。 您可以使用手机或计算机上的浏览器对物联网设备进行授权。

相关内容

  • 没有找到相关文章

最新更新