gpt4 book ai didi

ruby - 使用 Ruby 安全地将密码发送到网站

转载 作者:塔克拉玛干 更新时间:2023-11-01 19:12:03 26 4
gpt4 key购买 nike

Minecraft 使用启动器来减少游戏被盗:任何人都可以免费下载,但用户必须提供高级帐户的凭据才能更新游戏。我想为一个项目构建一个类似的启动器(在 Ruby 中),但我无法弄清楚如何安全地将密码发送到 HTTP 服务器(如果重要的话,用 Sinatra 编写)。显然,将它作为 URL 中的参数是一个非常糟糕的主意。

另外,我考虑过使用密码字段以某种方式发送它,但我不知道它们是如何工作的(我通常不使用 HTTP 的东西)。这仍然是一种可能性。

简短摘要:在 Ruby 中,我想通过 HTTP 请求将敏感信息发送到 Ruby/Sinatra 服务器。

感谢阅读本文!

最佳答案

使用密码字段没有帮助。即使通过 POST 发送也不行。它们以明文形式发送,无论您多么努力地隐藏它们 - 这就是 http 的本质。

您绝对应该使用 TLS 而不是 https。 stdlib 给你 Net::HTTP为此,您可以使用任何支持 https 的 http 客户端。

如果此计划涉及金钱/值(value),请不要满足于任何不足!发明你自己的协议(protocol)是

  • 更多的工作(我承认 TLS 并不总是很容易设置,但仍然少很多工作)
  • 在 99.9% 的情况下不安全
  • 在其余情况下完全损坏

不,老实说,发明安全协议(protocol)可能是目前最困难的工作之一。所以跛脚并坚持主流(https),它最终会得到返回。

编辑:

您问 TLS 是否因为需要证书而花钱。这只是服务器端的问题,在单向认证的 TLS 中,只有服务器需要出示证书,因此连接到该服务器的客户端不必购买这样的证书。但是,如果您也操作服务器,那么您将需要这样的证书。如果您不想花钱,可以考虑免费提供 https 的托管服务。 Heroku提供我所知道的免费服务,我想还有其他提供商。

关于ruby - 使用 Ruby 安全地将密码发送到网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11190282/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com