位置: 编程技术 - 正文

PHP实践教程之过滤、验证、转义与密码详解(php实验报告)

编辑:rootadmin

推荐整理分享PHP实践教程之过滤、验证、转义与密码详解(php实验报告),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php实训,php实用教程,php教程 实例,php教程 实例,php教程 实例,php实训,php实训,php实践项目,内容如对您有帮助,希望把文章链接给更多的朋友!

本文主要给大家介绍的是关于PHP实践之过滤、验证、转义与密码等相关的内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

一、过滤、验证和转义

1).不要相信任何来自不受自己直接控制的数据源中的数据。包括但不限于:

$_GET $_POST $_REQUEST $_COOKIE $argv file_get_contents() 远程数据库 远程API 来自客户端的数据

2).解决办法:过滤输入。删除不安全的字符,在数据到达应用的存储层之前,必须过滤数据。需要过滤的数据包括不限于:HTML、SQL查询和用户资料信息。

HTML:使用htmlentities()函数过滤HTML成对应的实体。这个函数会转义制定字符的HTML字符,以便在存储层安全的渲染。正确的使用方式是使用htmlentities($input, ENT_QUOTES, 'UTF-8')过滤输入。或者使用HTML Purifier。缺点是慢 SQL查询: 有时必须根据数据构建SQL查询。这时要要使用PDO预处理语句过滤外部数据。 用户资料信息:使用filter_var()和filter_input()过滤用户资料信息

3).验证数据:也可以使用filter_var() ,验证成功返回要验证的值,失败返回false。但是这个函数无法验证所有数据,所以可以使用一些验证功能组件。例如aura/filter或者symfony/validator

4)转义输出:任然可以使用htmlentities这个函数,一些模板引擎也自带了转义功能。

密码

PHP实践教程之过滤、验证、转义与密码详解(php实验报告)

1).绝对不能知道用户的密码。

2).绝对不要约束用户的密码,要限制的话只限制最小长度。

3).绝对不能使用电子邮件发送用户的密码。你可以发送一个修改密码的链接,上面带一个token验证是用户本人就行了。

4).使用bcrypt计算用户密码的哈希值。加密和哈希不是一回事,加密是双向算法,加密的数据可以被解密。但是哈希是单项算法,哈希之后的数据无法被还原,想同的数据哈希之后得到的数据始终是相同的。使用数据库存储通过bcrypt哈希密码之后的值。

5).使用密码哈希API简化计算密码哈希和验证密码的操作。下面的注册用户的一般操作

下面是接受这个请求的PHP文件

6).根据机器的具体计算能力修改password_hash()的第三个值。计算哈希值一般需要0.1s-0.5s。

7).密码的哈希值存储在varchar()类型的数据库列中。

8).登录用户的一般流程

9).PHP5.5.0版本之前的密码哈希API无法使用,推荐使用ircmaxell/password-compat组件。

总结

标签: php实验报告

本文链接地址:https://www.jiuchutong.com/biancheng/287533.html 转载请保留说明!

上一篇:PHP 实现页面静态化的几种方法(php静态页面实现搜索功能)

下一篇:PHP十六进制颜色随机生成器功能示例(web十六进制颜色)

  • 小规模不超过30万怎么交税
  • 应税所得率表
  • 缴纳以前年度所得税怎么做账
  • 自然人独资交企业所得税吗
  • 出口合同包括哪些条款
  • 报完税的发票还能作废吗
  • 增值税应税销售额包括哪些
  • 税票抵扣是用进项票还是销项票
  • 销项负数发票原发票还有用吗?
  • 外购生物资产的成本不包括
  • 商业保险费可以在个人所得税税前扣除吗
  • 个人转让不动产给个人独资企业
  • 盈利能力分析对企业发展的意义
  • 包装报废会计处理
  • 发票上有个含税金额什么意思?
  • 专用发票的清单要开2张吗
  • 农民专业合作经济组织可以贷款吗
  • 净资产利润率多少算好
  • 1697509029
  • 电信网费普通发票税率为什么是0
  • 小规模纳税人印花税怎样计算
  • 小规模怎么查询
  • 双系统怎么卸载ubuntu
  • 京东白条账单制和订单制是什么样的
  • 认证未抵扣往哪里记
  • 费用怎么冲销
  • 上市公司发行股份是什么意思
  • PHP:Memcached::casByKey()的用法_Memcached类
  • 电脑卡住了按什么键回到桌面
  • linux-base
  • 典当行交易是给现金吗
  • 广告宣传费的税收筹划
  • 犹他州现神秘物体
  • php解析接口
  • thinkphp隐藏index.php
  • 捆绑销售如何进行账务处理?
  • php redis常用命令
  • 企业所得税法定税率是多少
  • 图书发票怎么开
  • python的Django框架
  • ChatGPT遭禁用、抵制后又停止Plus付费发生了?
  • 数以千计的拼音是什么
  • wordpress自定义文章模板
  • 预存5000送2000什么套路
  • 银行账本怎么记账
  • 物业公司物业费税率是多少
  • sql join 语句
  • 没有以前年度损益科目应该加在什么地方
  • 预计净残值影响折旧吗
  • 净利润和盈余公式的关系
  • 购买房屋缴纳的契税可以退税政策
  • 建筑公司预收工程款
  • 全年一次性奖金税率表2023最新
  • 销售退回会计分录
  • 厂家返利怎么入账
  • 单位租的个人房子需要采集房产税源吗
  • 固定资产提前报废当月计提折旧吗
  • 电费应收和实收怎么算
  • 应交增值税进项税额月底怎么处理
  • 当月进货没有认证怎么办
  • 收取客户好处算违法吗
  • 内退文件2018
  • 发票怎么打印的出来
  • 房租押金不退如何处理
  • 个体户开广告发票需要交税吗
  • 缴纳工会筹备金应该记什么科目
  • 餐费发票报销需提供清单吗
  • windowsserver2008r2版本区别
  • centos操作命令
  • linux用户空间获取TCP序号
  • SmartFTP.exe - SmartFTP是什么进程
  • 电脑开机蓝屏怎么解决xp系统
  • win10安装失败
  • 简介英文
  • linux自动重启程序脚本
  • npm镜像是什么意思
  • python常见的格式化输出小结
  • 河南新乡地税局罗姓病逝
  • 地税发票查询官网查询
  • 中国税务报客户端
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设