• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > 在PHP中实现加密的这三种方法,你会选择哪个?

在PHP中实现加密的这三种方法,你会选择哪个?

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了PHP加密,PHP加密函数等相关知识,希望对您有所帮助

你知道在PHP中怎么实现加密算法吗?你知道PHP中有几个加密函数?你会选择使用他们吗?走过路过不要错过啦~本文就将给大家介绍PHP中最常用的实现加密的三种方法!


首先我来简单介绍一下为什么要加密?

通常,当数据在传送时,数据最容易受到攻击,那么加密就是对信息进行编码的过程,以便对未经授权的用户保持隐藏。它能确保私有数据、敏感数据,并可以提高客户端应用程序和服务器之间通信的安全性。

下面就给大家介绍PHP中最常用的三个加密函数,分别是md5()、crypt()和password_hash();

一:使用 md5() 加密

md5()函数可以计算字符串的 MD5 散列,它是最常用的加密方法;

md5函数的语法为:

md5(string,raw)

其中string是要加密的字符串;row是可选参数,它指定输出格式(十六进制或二进制输出格式),可以是TRUE,也可以是FALSE,默认为FALSE(32字符十六进制数)。

使用示例:

加密密码值并存储在数据库中。

<?php$conn = new mysqli('hostname', 'username', 'password', 'databasename');$pwd = $_POST['password'];$encrypted_pwd = md5($pwd);$username = $_POST['username']; $insert ="INSERT into an_users (id, username, password) VALUES  ('', '$username', '$encrypted_pwd')";if($conn->query($insert)){    echo 'Data inserted successfully';} else {    echo 'Error '.$conn->error;  }?>


二、使用 crypt() 加密密码

crypt函数的作用是使用salt返回一个散列字符串。此方法生成弱密码,它为salt接受第二个参数,这是一个可选参数;salt是一个格式化字符串,它告诉crypt()方法使用哪种算法进行散列;

其语法是:

crypt($string, $salt);

有很多salt常量,但这里我使用了CRYPT_MD5,这将生成 12 个字符的salt。

代码如下:

<?php$conn = new mysqli('hostname', 'username', 'password', 'databasename');$pwd = $_POST['password'];if(CRYPT_MD5 == 1) {    $encrypted_pwd = crypt($pwd, '$12$hrd$reer');}$username = $_POST['username'];$insert = "INSERT INTO  an_users (id, username, password) VALUES('', '$username', '$encrypted_pwd')";if($conn->query($insert)){    echo 'Data inserted successfully';} else {    echo 'Error '.$conn->error;  }?>

附:


61236bc053a6e.png


三:使用 password_hash() 加密密码

password_hash()使用足够强度的单向散列算法创建一个新的密码散列,password_hash()函数与crypt()函数兼容,它在PHP 5.1中实现。

password_hash()的语法是 :

password_hash(string, algorithm, options)

其中string是要加密的字符串,algorithm表示对密码进行哈希处理时使用的算法,options是包含选项的关联数组。

使用示例如下:

使用password_hash()加密密码值并存储在数据库中:

<?php// 连接数据库$conn = new mysqli('hostname', 'username', 'password', 'databasename'); $pwd = $_POST['password']; // 使用PASSWORD_DEFAULT$hash = password_hash($pwd, PASSWORD_DEFAULT); $username = $_POST['username'];  $insert ="INSERT into an_users (id, username, password) VALUES  ('', '$username', '$hash')"; if($conn->query($insert)){    echo 'Data inserted successfully';} else {    echo 'Error '.$conn->error;  }?>



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 在PHP中实现加密的这三种方法,你会选择哪个?

相关文章

  • 2022-04-29为网站选择一个适当的DMOZ目录
  • 2022-04-29DedeCMS搜索文件search.php移到网站根目录
  • 2022-04-29CSS如何实现渐变提示框(tooltips)
  • 2022-04-29织梦怎么去掉index.html
  • 2022-04-29PHP中exec和system的区别是什么
  • 2022-04-29Dedecms织梦调用当前顶级栏目名称、ID、url实现方法
  • 2022-04-29总结分享小程序中 swiper 轮播图高度问题的解决方法
  • 2022-04-29PHP中怎么解决serialize函数中文乱码的问题
  • 2022-04-29curl获取结果乱码的解决方法
  • 2022-04-29PS打造线描风格舞者壁纸平面作品设计制作教程

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • PHP如何使用日期时间类Carbon
    • 宝塔Linux面板之修改MySQL默认保存位置
    • Photoshop制作逼真复古效果的黑胶唱片
    • 建网站用哪里的服务器比较好?哪里的空间便宜
    • 浅析Vue中hash路由和history路由的区别
    • Vue中Computed和Watch的用法及区别
    • uni-app中怎么开发一个全局弹层组件(代码示例)
    • 一文讲解Wordpress插件怎么查找并安装
    • PHP如何使用Echarts生成数据统计报表
    • 使用Vue、Three.js实现全景图

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有