现在我正在构建一个个人网站/博客,并且我已经按照自己想要的方式获得了它,除非我对如何向其添加帖子有两种想法。
只是我会添加帖子,而且我有一个用户/姓名密码登录似乎相当过时了。)。
我正在寻找替代方案来玩游戏并尝试我的一个想法就是:
生成非对称密钥,我个人保持私有,并且该站点具有公钥。当我尝试添加帖子或修改任何内容时,网站将生成随机字符串,使用公钥加密并显示它。我使用一个小应用程序解密这个我可以一起鞭打并将未加密的字符串传递回网站,这将允许修改继续。
我只是想知道我应该注意的任何警告,或者如果有人认为这是一个坏主意,或许我可以尝试另类?
答案 0 :(得分:7)
为什么不只是拥有一个用户名和密码,让您的Web浏览器记住登录,或者发送一个未过期的身份验证cookie。使用自签名SSL证书来保护通信通道。如果要使用公钥/私钥加密,只需设置SSH隧道并从服务器上的localhost发布。相信我,最好重新使用已知良好的加密/安全性,而不是试图自己动手。
答案 1 :(得分:3)
为什么不从你的建议中继续前进一步并将加密的字符串放入URL?
例如,将当前日期和时间转换为字符串 - 例如。 0904240905 - 使用您的私钥对其进行加密,并将其添加到网址,例如: http://yoursite.com/admin/dksjfh4d392s
其中dksjfh4d392s
是加密字符串。然后,您的站点有一个servlet,它从URL中提取加密的字符串,验证它是否解密到最近的时间,然后为您提供会话cookie,同时允许您执行管理任务。
答案 2 :(得分:1)
我认为非对称密钥是一种优雅的解决方案 - 但用户名/密码几乎肯定会更容易实现。
如果您正在构建自己的网站,那么您只是为了踢它(否则您将使用WordPress,Drupal,Django等),那么为什么不以不同的方式做事呢?
如果您发现自己想要博客但却无法识别自己,那么您可能会发现必须携带您的keymat应用程序可能会受到一些限制。
但是,据说,@ Kurt对加密有正确的想法 - DIY几乎肯定会比使用已经尝试和测试的东西更糟糕。
答案 3 :(得分:0)
我听过的关于安全性的最明智的陈述之一是“不要试图重新发明它”。
在线安全已经经历了如此多的迭代,很有可能你提出的任何好主意都有一些以前被发现,考虑和修复过的缺陷。
如果您想要“随意”安全,请使用用户名和密码保护您的网站。如果您想要“强大”的安全性,请在其上粘贴SSL证书。如果您想要“银行”安全性,请添加反击键安全性。
答案 4 :(得分:0)
SSL客户端证书无论如何都会这样做。为什么不直接使用其中一个?
更多人不使用SSL客户端证书的主要原因是他们是行政噩梦 - 您必须让最终用户创建密钥,然后签署他们的证书,然后确保最终用户不失去他们的钥匙(当他们丢失他们的笔记本电脑,升级到新的操作系统等),他们通常这样做,所以当最终用户丢失他们的私钥时,你必须签署更多的证书。