开发者社区> 问答> 正文

网络上的密码到底要怎样保存?:报错

之前下载到CSDN的密码库, 最近又收到人人的密码库, 杯具的是都是明码, 我的CSDN的密码和人人的密码不一样,在这2个库中,我也看到他们的确不一样,真的不一样.....

我是怎么设计会员库的呢? 大家分享一下..

1:密码至少经过一次处理,再进行不可逆加密存储, 

2:修改密码时, 需要验证原密码, 原密码再经过一次不可逆加密,然后存储,并保存修改密码的时间.(这个是借鉴了QQ的那个密码历史记录.)

你们还有什么更高级的? 一起分享一下?

展开
收起
kun坤 2020-06-06 11:43:56 580 0
1 条回答
写回答
取消 提交回答
  • 防彩虹表就可以了

    比如全局用urandom生成一个48字节的salt

    每个用户用注册时间生成一个20多字节的salt

    再加用户本身的密码

    做下sha512

    够严实了

     

    ######AES+TwoFish######前段时间做了个小系统,我把密码字段保存成:md5(encode(lower(name)::bytea, 'base64') || encode(password, 'base64'))
    ######每一个密码设计一个对应的Salt,加密时将明文和Salt连接再加密存储######discuz就是用的这个方法.######

    我们数据库密码现在也做了base64的转换

    ######

    昨天刚刚写一个密码存储的代码,介绍一下,密码->DES(密码的MD5字符做密钥)->置换库(自家保存)->Base64->MD5,字段保存.

    ###### 我直接用的sha256处理了一下,别的暂时还没弄明白是为什么,像  置换、 salt等等方法是什么意思呢######求csdn密码库,我注册邮箱忘了,无法登陆天涯删帖
    2020-06-06 11:44:02
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
可编程网络视角的网络创新研究 立即下载
可编程网络和SDN3.0 立即下载
开放促进创新:构建开放网络生态 立即下载