位置: 编程技术 - 正文

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十六进制颜色)

  • 税务师入会与不入会冲突
  • 累计折旧科目一直有余额吗
  • 劳务报酬支出 怎么做账
  • 未取得发票的费用,在汇算清缴中按利润计算吗
  • 出差补贴计入
  • 企业付的快递费是扣增值税还是进入费用扣除
  • 增值税期初应补税额计算
  • 小规模纳税人农产品进项税抵扣
  • 资产负债表的日期可以是1月1日吗
  • 印花税按什么征收
  • 业务分成方案
  • 留底的预缴税款怎么处理?
  • 道路运输业税率多少
  • 金税盘领用发票查询不到
  • 个税负数怎么做账
  • 公司解散实收资本会计怎么处理
  • 退役士兵增值税优惠申报方法
  • 个体户需不需要银行开户
  • 审计调整分录如何处理
  • 垃圾清运工程师
  • 建筑企业按什么确认收入
  • 城建税的会计分录是什么
  • 软件开发行业的现状
  • 文化事业建设费减免政策
  • 误删开始菜单
  • Window7+CentOS 6.5双系统安装图文方法
  • 哪些资产类科目增加记贷方
  • 公司现金用途
  • PHP:ftp_nb_continue()的用法_FTP函数
  • 理财产品利息税
  • 出差没有发票,会计如何入账
  • 实行核定征收印花税的纳税期限为一个月税额较小的
  • 360路由器怎么连接网络
  • 跨省不动产登记
  • 纳入资本公积
  • laravel框架实现cms的体会
  • 出口退还增值税消费税政策
  • 职工教育经费是否可以抵扣进项税
  • ps打不出字怎么回事
  • javascrapt
  • 定额发票申报税率怎么填
  • 企业所得税季报是填累计数吗
  • 购入固定资产怎么做账务处理
  • python如何提取文件中的数据
  • 开公司抬头的发票需要提供什么
  • 分公司民事责任由谁承担
  • sql server提示不允许保存更改
  • 软件企业研发费用
  • 企业所得税固定资产的计税基础
  • 农产品进项税额抵扣范围
  • 工程管理服务属于哪个行业
  • 小规模纳税人企业所得税怎么算
  • 营业外收入交企业所得税吗
  • 三个月 租房
  • 建筑行业收到的工程转给项目经理成本票从哪来
  • 公司没有车加油费怎么报
  • 流动性比率过小什么意思
  • 软件公司购进软件会计科目
  • 银行转出去的账可以追回吗?
  • 递延所得税资产账务处理
  • 平行结转分步法例题
  • sql server的使用方法
  • win10预览版0x80072ee2
  • xp系统弹出广告怎么处理
  • spoolsrv.exe - spoolsrv是什么进程 有什么作用
  • win7z
  • 升级mac os
  • linux文件一般放哪里
  • cocos2dx入门
  • js获取浏览器当前访问的ip
  • shell数据处理
  • vuecli脚手架是干什么的
  • js获取form表单数据并显示
  • 深入理解计算机系统 电子书
  • shell脚本 su
  • Unity3D游戏开发(第2版)
  • unity移动
  • 所得税 营业税计算公式
  • 浙江国地税联合申报系统
  • 增值税发票冲红是什么意思
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设