PHP加密函数—crypt()函数加密

在介绍加密函数之前,我们先来介绍一下数据加密原理:就是对原来的明文件或者数据按照某种算法进行处理,使其成为不可读的一段代码,通常称之为“密文”,通过这样的途径来达到保护数据不被非法窃取和阅读的目的!

在PHP中能对数据进行加密的函数主要有:crypt()、md5()以及sha1(),还有就是加密扩展库Mcrpyt和Mash。在这篇文章中,我们先介绍使用crpyt()函数进行加密!

crypt()函数可以完成单向加密功能,是单向字符串散列!

crypt()函数语法格式如下:string crypt ( string $str [, string $salt ] )算法salt长度

CRYPT_STD_DES2-character(默认)

CRYPT_EXT_DES9-character

CRYPT_MD512-character(以$1$开头)

CRYPT_BLOWFISH16-character(以$2$开头)

这里要说明一下:

在默认的情况下,PHP使用一个或者两个字符的 DES 干扰串,如果系统使用的是MD5,那么就会使用 12个字符,可以通过 CRYPT_SALT_LENGTH 变量来查看当前所使用的干扰串的长度!

crypt()函数实例用法:

下面我们使用一个实例,让大家一目了然,具体代码如下:<?php

header("Content-Type:text/html; charset=utf-8");

$atr = "php中文网 www.php.cn"; //声明字符串变量$atr

echo "加密之前atr的值为:".$atr;

$atr1 = crypt($atr); //对变量$str 加密

echo "
加密之后str的值为:".$atr1; //输出加密后的变量

?>

输出的结果如下:

上面的实例执行之后,一直刷新浏览器,你会发现每次生成的加密结果都是不一样的,那么该如何进行对加密后的数据进行判断就成了问题。crypt()函数是单向加密的,密文不可还原成明文的,而且每次加密后的数据都是不同的,这就是 salt 参数要解决的问题了。

crypt()函数用 salt参数对明文进行加密,判断时,对输出的信息再次使用相同的 salt 参数进行加密,对比两次加密后的结果来进行判断!

下面的实例对输入用户名进行检查,具体代码如下:<?php

header("Content-Type:text/html; charset=utf-8");

$link=mysqli_connect("localhost","root","");

$db_selected = mysqli_select_db($link,"my_db");

?>

if(isset($_POST["username"])!=""){

$usr=crypt(isset($_POST["username"]),"tm"); //对用户名进行加密

$sql = "select * from tb_user where user = '".$usr."'";//生成查询语句

$rst = mysqli_query($link,$sql); //执行语句,返回结果集

if($rst){

echo "用户名存在";

}else{

echo "用户名可以使用";

}

}

?>

输出结果如下:

下一篇我们将介绍如何使用MD5()函数进行加密,具体请阅读《PHP加密函数—md5()函数加密》!

【相关推荐】

1. 相关专题推荐:《PHP加密函数》

php crypt,PHP加密函数—crypt()函数加密用法实例相关推荐

  1. python *args用法_python函数参数*args**kwargs用法实例

    #coding=utf8 __author__ = 'Administrator' # 当函数的参数不确定时,可以使用*args和**kwargs.*args没有key值,**kwargs有key值 ...

  2. php crypt mysql password_php使用crypt()函数进行加密

    一.代码 $str = '应用crypt()函数进行单向加密!'; //声明字符串变量$str echo '加密前$str的值为:'.$str; $crypttostr = crypt($str); ...

  3. php中md5加密函数怎么用,PHP加密函数—md5()函数加密实例用法

    PHP加密函数-md5()函数加密 什么是MD5()函数? MD5()函数是计算器字符串的 MD5散列值,使用MD5的算法,MD5的全称是Message-Digest Algorithm 5,它的作用 ...

  4. php 自带加密、解密函数

    php 自带的加密函数  不可逆的加密函数为:md5().crypt() md5() 用来计算 MD5 哈稀.语法为:string md5(string str); crypt() 将字符串用 UNI ...

  5. php的crypt,php中crypt()函数的定义和用法汇总

    在php函数中,有不少加密的函数,其中一个可以实现数据加密功能的函数叫crypt()函数.crypt() 函数使用一种单向算法,没有相应的解密函数.它返回使用 DES.Blowfish 或 MD5 算 ...

  6. php中md5加密函数怎么用,php中md5()函数的定义和用法汇总

    PHP加密函数-md5()函数加密什么是MD5()函数?MD5()函数是计算器字符串的 MD5散列值,使用MD5的算法,MD5的全称是Message-Digest Algorithm 5,它的作用是把 ...

  7. php字符串加密解密源码,PHP中加密解密字符串函数源代码

    PHP中加密解密字符串函数源代码: /** *功能:对字符串进行加密处理 *参数一:需要加密的内容 *参数二:密钥 */ function passport_encrypt($str,$key){ / ...

  8. 《MySQL》入门基础知识点大全:数据库操作、增删改查、联表查询、常用函数、MD5加密、事务特性、隔离级别

    MySQL基础知识大全 1.操作数据库 1.1 创建表 1.2 修改表名 1.3 增加表的字段 1.4 修改表的字段 1.4.1 修改表的字段 1.4.2 修改表名 1.5 删除表的字段 1.6 删除 ...

  9. MySQL Day05 子查询、函数、MD5加密、SELECT小结

    1 MySQL子查询 WHERE 这个值是计算出来的 本质:在where语句中嵌套一个子查询语句 1.查询Customer Relations 的所有考试结果(学号,科目编号,成绩) -- ===== ...

最新文章

  1. Velodyne VLP-16激光雷达数据分析
  2. jQuery - AJAX 简介
  3. Session机制详解及分布式中Session共享解决方案
  4. 我应该在CSS中使用px或rem值单位吗?
  5. python如何显示时间_如何让python显示当前时间(东部)
  6. 微型计算机原理risc,微型计算机原理习题及解答-20210409003329.docx-原创力文档
  7. Qt文档阅读笔记-QWebPage官方解析与实例
  8. Linux系统发行版本介绍(一)——CentOS介绍
  9. webWMS开发过程记录(三)- 需求分析(略)
  10. java 中高级面试题_Java中高级面试题
  11. Fiddler https最新抓包方法(Android 9.0)
  12. rvm、Ruby安装(亲测有效)
  13. 如何快速识别图片中的文字?建议使用者两种方法
  14. Nginx目录结构、编译参数、状态码概述
  15. 便携打气宝方案开发-充气宝芯片
  16. oracle11g登录企业管理器,Oracle11g RAC常用操作 (维护及管理)
  17. 计算机应用基础商娟叶,探究混合式学习在中职计算机基础教学中的设计与应用...
  18. 功能: Form窗口最大化时,控件相对位置变化的问题 (学习日记2016-12-23)
  19. Python笔记---常用正则表达式练习
  20. err: git push.default Update were rejected because a pushed branch tip is behand remote

热门文章

  1. web常见的攻击方式有哪些?如何防御?
  2. proxy跨域不生效_配置proxy解决跨域问题
  3. Ubuntu18.04 安装 kaolin 库
  4. JavaScript实现tab效果图
  5. 练手小项目(5)安全卫士_软件管理器
  6. Ubuntu 搭建代理服务器squid
  7. 半监督学习之Temporal Ensembling For Semi-supervised Learning
  8. VTK--交互方式vtkInteractorStyleTrackballCamera
  9. 【Windows】mklink命令
  10. 数据库触发器定义删除用法及举例