-
密码管家的伪随机密码生成器源代码
资源介绍
和同学设计了一个生成伪随机密码的思路,与大家分享。
设计宗旨
1,不同网站不同账号对应的注册密码不同;
2,只需记住一个较长的种子;
3,一个网站数据泄露,不会被推出其它网站密码。
由1和2得出:密码是{网站名,账号名,种子}的函数。
由3得出:已知{密码,网站名,账号名,密码生成函数}时,不能算出种子。
设计思路
使用数论方法:
1,选一个古诗词顺口溜之类的东西,各种变化成为一个几十字节的种子;
2,将{网站名,账号名,种子}转化为三个大整数{w,u,s},w和u大约有二三十bit,s大约有几百bit;
3,中间变量r=mod(power(w,u),s);
4,根据密码的长度上线选择一个合适的n,
4,密码p取r的最后n位,一般用不了一百bit。
安全分析
已知{w,u,p,n},如何求s。
由于n的存在,使得攻击者的有用信息量限制在了n个bit,这远远小于s的信息量,因此无法推算。
- 上一篇: java实现多线程间的同步与互斥(读者写者问题)
- 下一篇: ASP学生信息管理系统论文