我们如何自己简单地实现不可逆的加密算法?
你说的“不可逆加密”的意思就是不能解密么?那还要它有什么用呢?
估计你要的是单向Hash算法,现成的很多,比如MD5、SHA1等,绝大多数语言里都有现成的库可以用。
PS.自己从头设计一个“安全”的Hash算法很难,如果你不是深入钻研过数论的还是算了吧。
既然是简单的,我觉得直接用 md5+盐 就挺简单了吧,如果觉得固定盐还是不太安全,可以采用 固定盐+随机盐 的方法,随机盐可以随用户信息一块存下来。
md5
很多语言都提供了像md5等这样工具,来进行不可逆的转换。没必要自己实现一个。
你自己想要自己实现一个,你就必须知道原理是怎样的。这其中涉及到很复杂的数学和计算机相关的知识。
rel:http://baike.baidu.com/view/7636.htm md5实现的原理
我说个简单的原理。
转换成数字,乘以六对10求余。
这样可以保证4和9混淆。(都只剩4了)
之后。。。
之后就靠楼主自己发挥了。
使用语言提供的cryptography吧,这个方法选对了你想逆都逆不回来的。
MD5不就不可逆么
不可逆需要两个特性
不过如果你自己随便捣鼓出来的加密肯定是分分钟被人破解啦
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(7)
你说的“不可逆加密”的意思就是不能解密么?那还要它有什么用呢?
估计你要的是单向Hash算法,现成的很多,比如MD5、SHA1等,绝大多数语言里都有现成的库可以用。
PS.自己从头设计一个“安全”的Hash算法很难,如果你不是深入钻研过数论的还是算了吧。
既然是简单的,我觉得直接用
md5
+盐 就挺简单了吧,如果觉得固定盐还是不太安全,可以采用 固定盐+随机盐 的方法,随机盐可以随用户信息一块存下来。很多语言都提供了像md5等这样工具,来进行不可逆的转换。没必要自己实现一个。
你自己想要自己实现一个,你就必须知道原理是怎样的。这其中涉及到很复杂的数学和计算机相关的知识。
rel:http://baike.baidu.com/view/7636.htm md5实现的原理
我说个简单的原理。
转换成数字,乘以六对10求余。
这样可以保证4和9混淆。(都只剩4了)
之后。。。
之后就靠楼主自己发挥了。
使用语言提供的cryptography吧,这个方法选对了你想逆都逆不回来的。
MD5不就不可逆么
不可逆需要两个特性
不过如果你自己随便捣鼓出来的加密肯定是分分钟被人破解啦