首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSL是从远程到way服务器交换信息的唯一途径吗?

SSL是从远程到way服务器交换信息的唯一途径吗?
EN

Stack Overflow用户
提问于 2015-01-13 11:49:18
回答 2查看 116关注 0票数 0

我是独立游戏开发团队的一员,我们正在联合开发一个项目(C#)。我在后端(PHP/MySQL)上使用了Drupal,我想从数据库检索数据到我们的软件。

因此,例如,如果我希望用户通过Drupal的身份验证(发送密码的服务器侧散列)登录,用户首先需要通过unity或c# HttpRequest (client)提交用户名和密码。

如果我做了正确的研究,有三种可能安全地发送数据(如果我错了,请纠正我):

  1. 实现自己的密码加密/解密(在服务器端解密后使用Drupal的密码散列)
  2. 在c# (客户端)中实现drupal的散列方法
  3. 购买SSL证书并使用HTTPS

可以嗅探HTTP连接或反编译软件,对吗?那么,可能性( 1)和( 2)有什么意义吗?这两种方法之一是否足够安全?

SSL是我们唯一的出路吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-01-13 12:04:05

这取决于您想要的东西有多安全,以及您认为攻击者能够拦截密码有多远。例如,如果您通过JavaScript使用客户端密码哈希,理论上可以在JavaScript库传输到用户时拦截它,并对其进行修改,以便发送密码的明文副本。然后,当它被发送到您的服务器时,就可以被截获。但是,由于你正在开发一款电脑游戏,这种情况可能不会发生。

拥有真正证书的SSL将在某种程度上防止这种情况,因为理论上,MITM (中间人)攻击不可能嗅探(更不用说修改)数据,因为它是沿着线路传播的。要做到这一点,他们将需要您的私人服务器密钥的副本,或者从您的服务器窃取它,或者从证书颁发机构窃取/获取它。虽然这不是不可能的,但它是不可能发生的。

安全性最低的SSL证书现在非常便宜,通常会为您节省大量关于如何实现安全性的工作。我还是接受这个选择吧。

票数 1
EN

Stack Overflow用户

发布于 2015-01-15 11:16:11

  1. 实现自己的密码加密/解密(在服务器端解密后使用Drupal的密码散列)
  2. 在c# (客户端)中实现drupal的散列方法

这些方法的问题是客户端哈希版本实际上变成了密码。因此,如果一个MITM获取哈希版本,他们可以简单地重放它来登录。

  1. 购买SSL证书并使用HTTPS

一定。除了加密之外,HTTPS还保证客户端正在与您的服务器对话,而且它还没有被MITM访问,而且它还可以防止重放攻击(攻击者通过自己的连接重新创建登录请求,然后对响应执行操作)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27921466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档