一个绝对安全的账户密码管家小程序
1 、服务器存储的是非对称加密后的密文。
2 、私钥由用户保管,不会上传到服务器。
3 、公钥由一定的规则生成,跟用户的微信 ID 有关,每个人的公钥都不相同。
4 、只要微信号不注销,账户密码资料随时可查。
大家可以试试,完全免费,便利且绝对安全。
你不如做个基于 keepass 的小程序,我看好像没人做这个。
其次,你说用的是非对称加密,有公钥私钥,但我看到私钥是用户提供的,公钥又和用户 ID 相关,请问用的是什么非对称密码算法可以做到这一点?
如果你真心认为绝对安全,那就更不妥了,因为这足以证明你不懂安全。
看到这两句话我觉得要么是我太弱了,要么是主太强了,至于是哪种,我不知道。
问题:如何做到安全地生成一对密钥,使用户的微信 ID 可以算出公钥?
更基本的问题:在这个场景里,用户比其他人多了什么能力,使用户可以算出私钥而其他人不能(根据微信 ID )算出这个用户的私钥?
大内网的今天,这套方案还不一定比自建密钥管理强
不考虑被微信封小程序?数据全丢?拿到加密数据,脱离微信就无法解密(公钥和微信强相关)?
泄露几个密码无所谓(反正又不是你一家在泄露),丢了密码那才是最大的问题。
ID 生成公钥,再产生私钥的方案一般叫做 IBE (基于身份的加密),该类型有一个非常严重的天生缺陷叫“密钥托管问题”,也就是用户得无条件的相信给他产生私钥的“你”。 解决密钥托管,往往采用双服务器或者其他一些方式,主这个不自建服务器的小程序甚至都达不到带有密钥托管问题的安全的 IBE 方案应有的安全性。
@geelaw 你这个头像和 ID 我在知乎上见到过。
如果是公钥加密私钥解密, 那么在用户本身不能控制私钥的情况下就是绝对不安全
如果是私钥加密公钥解密, 那么在公钥是由 openid “推导” 出来的情况下, 恶意用户完全可以推导出任意用户的公钥进行解密
如果他用的不是 IBE, 而是用了 @lvybupt #80 假设的傻子方法, 私钥的可靠性又会直线下降, 甚至出现私钥可以通过几次尝试就能计算得出的情况.
而且小程序没办法跟系统交互,嵌入浏览器插件估计都要兜圈子,微信登陆不知道通不通用,使用的便利程度也是问题吧。
但你想想,用户还可以选择 1pass, keepass, lastpass, bitwarden … 等等,对比而言,站在一个不认识你的普通用户的角度,你这个是不是安全性最低?
另外主别 at 我,我是真毕不了业了,另外年龄大了已经不会被激将、激怒了