如何隐藏其他用户的秘密?

时间:2013-05-10 22:56:14

标签: c++ security encryption passwords

我希望存储一个用户密码(必须以明文形式保留以发送到服务器),即使他们可以访问该程序,同一台计算机的其他用户也无法访问它。这样做的最佳方式是什么(平台无关是最好的,第二是依赖于小平台的部分(例如某个函数getCurrentUserSecret()),最后是完全依赖于平台的解决方案,例如Windows Data Protection API。) p>

1 个答案:

答案 0 :(得分:1)

由于您必须以明文形式传输它,为什么不将其以明文形式存储在只有相关用户具有读取文件访问权限的位置。我认为没有办法以管理员/ root无法规避的方式解决您的问题,即使加密也是如此(除非您让用户输入另一个密码来解密存储的明文密码)。

编辑评论:我不知道任何操作系统在登录时计算备用“哈希”密码值,并将其存储在内存中。即使它确实如此,root也可以仍然访问该内存以获取哈希值,操作系统必须特别注意确保任何此类内存块永远不会被提交到交换