【发布时间】:2016-10-20 09:34:29
【问题描述】:
对于我目前正在从事的一个开源项目,我需要人们信任一个网站。基本上,用户会在他的手机上写“foo”。它将进入网站,该网站将接收消息“foo”并将其发送到在该用户 PC 上运行的服务器。我希望人们确保服务器没有将“foo”更改为“bar”。我知道我没有恶意,但潜在用户不知道,所以我需要他们信任我。
有两种可能性。第一个是使用密码学。用户将在他的手机“abc”上进行加密,而在用户 PC 上运行的服务器将对其进行解密。但这对用户来说很麻烦(他需要在另一个应用程序中对其进行加密)。第二种可能性是通过向用户展示服务器上运行的代码来说服用户我不是恶意的。我可以轻松地在 Github 上显示代码。问题是如何保证 Github 上运行的代码和 Heroku 上运行的代码是一样的?
【问题讨论】:
-
无论你向用户展示什么,她都必须相信你的话,它确实是运行你的服务器的东西。也许她至少信任 Heroku,然后 Heroku 可以保证已部署到服务器的内容以及给定的 URL 指向该服务器。但我不认为他们目前这样做。
-
需要这种“无信任服务器”的非常注重安全的用户的特殊部分使用单独的加密工具在客户端签名和验证消息似乎不太麻烦(但他们的首选模式操作)。
标签: heroku github open-source