• 技术文章 >后端开发 >php教程

    php密码加密速度较慢

    2016-06-06 20:17:03原创783

    用户密码加密采用password_hash
    先hash时间戳,再用hash后的值跟静态盐跟用户密码hash得到密码,
    线上运行发现速度比较慢,最慢一次大约有2000ms,
    有什么好的解决方案么?

    回复内容:

    用户密码加密采用password_hash
    先hash时间戳,再用hash后的值跟静态盐跟用户密码hash得到密码,
    线上运行发现速度比较慢,最慢一次大约有2000ms,
    有什么好的解决方案么?

    加盐md5即可, php自带的加密函数不利于跨平台

    1.用MD5加密
    2.PHP的几个常用加密函数:https://jellybool.com/post/php-encrypt-functions
    3.自定义加密 // 百度很多的
    4.PHP 标准AES加密算法类 http://www.oschina.net/code/snippet_99277_45148
    github 一个php自定义加密的:
    `

    require_once("xxtea.php");
    $str = "Hello World! 你好,中国!";
    $key = "1234567890";
    $encrypt_data = xxtea_encrypt($str, $key);
    $decrypt_data = xxtea_decrypt($encrypt_data, $key);
    if ($str == $decrypt_data) {
        echo "success!";
    } else {
        echo "fail!";
    }

    ?>`

    https://github.com/xxtea/xxtea-php

    可以让hash的逻辑在mysql里做,mysql有MD5函数、password函数,可以试试

    问题找到了,password_hash会传入三个参数,最后一个参数是一个数组,里面有一个'cost'指定加密迭代次数,默认13即2^13次。将数改小之后速度提升明显。

    如果你写个PHP扩展
    如果你用Docker部署环境。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php
    上一篇:linux - root下,使用crontab 执行php脚本,777文件夹is_writable却返回不可写,命令行运行这个脚本没问题? 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 聊聊ChatGPT是啥?PHP怎么使用ChatGPT?• 一文详解PHP用流方式实现下载文件(附代码示例)• PHP反序列化入门总结(小白必看)• PHP原生类的总结分享• 聊聊PHP escapeshellarg函数使用的中文问题
    1/1

    PHP中文网