【发布时间】:2017-06-26 20:09:02
【问题描述】:
我有一个在 Web 浏览器中运行的 Unity WebGL 应用程序,它使用普通的旧 Unity WWW 和 http://... 与远程服务器通信,它在服务器上调用几个不同的 php 脚本并使用 POST 发送参数并获取东西回来。
在浏览器中,我可以轻松地选择调试控制台并查看所有正在调用的 php 脚本及其参数,这是我不想要的,因为黑客可以这样做并查看所有内容,然后破解我的网站。
我是否可以在我的网站上购买 SSL 证书并启用 SSL,然后使用 https 进行所有通信,而不是我手动编写代码来加密和解密。
这样做是否会自动为我加密所有内容,这样黑客就不能只打开他们的浏览器控制台并查看调用了哪些 php 脚本以及向/从它们发送和接收的数据?
谢谢
【问题讨论】:
-
用户(“黑客”或其他)可以看到他们的浏览器向您的服务器发送和接收的内容。这是正常行为。如果此信息允许他们完全控制您的服务器,那么您需要保护您的应用程序。首先, 用户如何能够仅通过使用您的网站来“破解您的网站”?
-
可能他将用户 ID 作为 WebGL 游戏中每个操作的参数传递,而不是依赖服务器端会话来通知游戏服务器请求来自哪个用户。因此,如果用户看到他正在这样做,他们可以调用移动玩家的 url,指定其他玩家的 id,然后随意移动其他玩家。
-
我只是想知道 SSL 是否会阻止某人使用他们的浏览器来查看我从浏览器发送的内容以及我调用了哪些 php 脚本,这样我就不必经历所有的麻烦手动编码加密和创建服务器大小的会话等。有人知道 SSL 是否会阻止他们看到它吗?
-
@Programmer2:不,SSL 不会阻止这种情况。 SSL 对浏览器和服务器之间的通道进行加密。浏览器本身仍然可以看到它在做什么。它必须。至于“手动编码加密”,这听起来像是在不了解您要解决的问题的性质的情况下挥动魔杖的尝试。也就是说,它不会解决问题。但如果您能详细说明问题的性质,我们或许可以提供建议。