一点背景:我将构建一个Web服务器,当我开始使用时,它可能是最新版本的apache。它将使用来自我所拥有的临时安全系统的感官信息进行更新。
作为对手,我正在设计一个与之配合使用的应用程序,它将自动联系网络服务器并每1.5分钟提取一次感官信息。
我想要一个身份验证方法,以便普通的Bob无法看到这些信息,主要是因为服务器的一部分也会有一些命令和控制。
问题:我觉得简单的用户名和密码是错误的方法,因为它不是动态的,理论上看到发送的相同凭据经常是危险的,所以是否有其他认证方法那会减轻这个吗?
问题pt。 2:显然我想要一个加密的频道,如果每隔一分半钟尝试重新协商,https就会绊倒吗?
我还没有开始这个项目,但却没有选择任何语言来写它,这意味着我对建议非常开放,非常感谢任何帮助。
答案 0 :(得分:0)
问题:我觉得简单的用户名和密码是错误的 这样做的方法,因为它不是动态的,理论上看到的 相同的凭证发送频繁可能是危险的,所以 还有其他任何可以减轻这种情况的身份验证方法吗?
您可以使用Google Sign-In允许通过Google帐户登录。
或者您可以使用Google Authenticator或通过SMS实施双因素身份验证,以证明登录的用户具有多个身份验证因素。这些因素可能是:
编辑:重新阅读您的问题 - 是的您可以使用用户名和密码进行身份验证(通过HTTPS),但是您应该在客户端存储会话标识符,然后将其发送到未来而不是每次的用户名/密码。这样更安全,因为它可以安全地存储在客户端,如果暴露,标识符可以很容易地被撤销。
问题pt。 2:显然我想要一个加密频道,将https 如果每隔一分钟试图重新谈判,就会绊倒自己?
不,这就是它的设计目标。浏览器会在一段时间内保持打开HTTPS连接。此外,在需要建立新连接的情况下,他们将使用会话恢复而不是执行完整的HTTPS握手。会话恢复比建立全新会话快得多。有关详细信息,请参阅this article on the CloudFlare blog。