开发者社区> 问答> 正文

能不能用python生成wordpress的密码,python报错

能不能用python生成wordpress的密码image.png ,请大神回答

展开
收起
python小菜菜 2020-05-27 15:25:40 892 0
1 条回答
写回答
取消 提交回答
  • "这个就是生成随机数啊,python有这个功能######回复 <a href=""http://my.oschina.net/u/231592"" class=""referer"" target=""_blank"">@心扬 : http://www.williamlong.info/archives/1978.html 表示没有多难啊?######没有这么简单,你看看WORDPRESS的密码算法######可以的。直接md5+salt插入数据库######你能写一个方法把一个字符串用wordpress的算法进行加密吗######直接用Python或者PHP生成一个MD5值然后插到数据库是不生效的, 还是建议通过SQL修改密码,这里假设你的用户 登录名为admin, 新密码为123456
    UPDATE wordpress.wp_users SET user_pass = MD5( '123456' ) WHERE wp_users.user_login ='admin';######

    不了解wordpress具体是怎么做的, 下面是我的做法

    将salt作为密码的一部分存入数据库

    import uuid
    from hashlib import sha256
    from hmac import HMAC
    
    def secret_hash(source, salt=None, key=app.secret_key):
        if salt is None:
            salt = str(uuid.uuid4())
        if isinstance(source, unicode):
            source = source.encode("utf-8")
        result = source + key
        for i in xrange(8):
            result = HMAC(result, salt, sha256).hexdigest()
        return salt + result
    
    database_pw = secret_hash("123456")
    然后在验证的时候, 将数据库中的salt和用户输入的密码做hash

    if database_pw == secret_hash(user_pw, salt=database_pw[:36])

    ######具体的代码可以参考 https://github.com/deepgully/me/blob/master/tools/common.py 和 https://github.com/deepgully/me/blob/master/apis/common.py" ![image.png](https://ucc.alicdn.com/pic/developer-ecology/7f74656dface406a88c2c370bd037f14.png)
    2020-05-27 16:25:55
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载