博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W+、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌
🍅文末获取源码联系🍅
👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人
文章目录
第一章 项目简介
Python基于Django的登录网站验证码的生成与识别系统,开发设计了两种验证码模式:图形验证码以及滑动验证码,图形验证码主要通过动态的图形内容来验证,滑动验证码通过滑动交互的方式来实现拼图缺口的填入,在登录验证的过程中需要确保验证信息的准确性,一旦发生验证错误后台会自动刷新函数来确保验证码的随机性,同时如同一IP验证失败超过最大次数平台会自动锁定冻结账号信息,验证码可以帮助提升系统平台登录的安全性,防止暴力破解账户信息的情况发生。
第二章 系统演示视频
第三章 技术栈
前端:html、css、js
后端:Django
数据库:Mysql
第四章 系统功能需求分析
实际针对本次的内容设计,主要集中在对于登录换机的管理,在登录环节的管理中,以图形验证和文字验证两种方式来对用户的登录进行验证的确认工作,当在验证过程中连续输入三次错误的信息后,系统会对用户账户进行直接锁定。对于IP进行一天24小时的锁定。而在网站的管理方面则是通过以下的内容来完成B/S结构下的王铮整体功能开发,主要的功能结构图如下图所示:
后台的管理内容相对比较的简单,其内容主要围绕着校验信息的记录,通过校验列表能够针对某一个IP的校验过程进行信息的全方位记录,通过信息的记录来完成对IP地址锁定的功能实现,当有某一个IP地址连续三次输入错误的验证信息后,会在后台的网站中对于该IP进行限制。其他功能主要围绕着后台用户管理中对于管理员个人信息的维护及管理员的管理等内容。
第五章 系统设计
5.1 验证码的形式
本次设计的验证码分为了两种方式,一种为图形方式的验证码,这种验证码是通过利用了django框架来完成实施的动态图形的刷新。在动态的验证码实现过程中,主要是通过以滑动的方式来进行验证码的校验,通过利用服务器随机形成的图片,在图片中会有小的可以拖动的拼块,需要用户拖动小的拼块至背景图片中正确的位置,来实现校验的功能,并且会保存随机抠图位置的坐标。在实现滑动的过程中会进行用户拖动距离值的校验,从而验证妥当是否符合要求,是否验证通过。前端将用户拖动距离值传入服务端,服务端校验误差是否在容许范围内。
第二种验证则为传统的验证码方式,在验证码的框中会随机生成英文字母、数字等内容,需要用户根据验证码框中的信息来完成对应的内容填写,通过校验文本框中输入的信息与验证码框汇总的信息是否一致从而完成整个的登录过程。本次的设计在验证码的显示过程中加入了扭曲变形,增加了模糊处理,能够通过点击验证码进行随机切换。
5.2 验证码的安全性设置
为登录实际验证码,其重要的一个考虑的内容就是安全,验证码能够有效的杜绝恶意的登录过程,通过校验来确保是人工进行操作,从而能够更好的杜绝病毒、木马的侵入式登录。在此次的验证码登录安全测试的过程中,如果发生验证码的校验失败,则后台会进行一次验证码的新函数的生成,从而保证再次刷新的验证码依旧是随机产生的。后台在校验失败次数的统计过程中,本次设置了一定时间间隔内相同 IP 允许验证失败的最大次数,一旦达到上限,则拒绝提供服务,类似账号锁定。为了保证安全性,本次在针对登录、验证码校验等重要功能的开发过程中,通过添加失败次数统计,并且进行锁定IP的内容设计,以应对暴力破解的请求行为发生,从而更好的保证整个系统的运行稳定,对用户的个人信息安全的良好维护。
第六章 系统实现
6.1 文字验证码登录界面
本次设计的验证码登录的网站首页如下,从页面中可以看到有验证码的校验框,分为文本框以及验证码的显示框,具体界面呈现如下图:
图6.1验证码校验登录界面
6. 2 输入错误的验证码界面
当用户未按照验证码中的正确内容来进行验证码的输入时,当点击登录按钮后,系统会进行验证码的校验,在校验完毕后会弹出对话框提示用户验证码输入不正确,与此同时后台也会对登录的IP进行登记,如下图所示:
图6.2 错误的验证码输入界面
6.3 图像验证码登录界面
此次设计的图像验证码的登录界面展示如下,在验证码的验证中是以图片作为验证的方式,拖动图块至正确的位置来进行验证,图像验证码的登录首页展示如下:
图6.3新增二维码界面
6.4 图像验证码拖动错误界面
当没有按照指定的要求将图块拖动至指定的位置,则系统会根据拖动的距离等信息来进行函数的判断,从而认定验证码校验未通过,当出现该情况时,系统会提示验证失败,具体界面呈现如下图所示:
图6.4图像验证码验证错误界面
6.5 后台管理系统界面
当管理员完成了系统登录之后,能够在后台的管理界面汇总来查看到当前的用户数量、用户登录的异常情况统计数据等信息,主页的显示内容如下所示:
图6.5后台管理系统主界面
6.6 校验列表界面
在校验列表中,能够看到有访问的IP地址的访问时间记录,有被限制访问的IP地址的限制时间记录等,能够对IP的访问进行有效的控制,校验列表界面如下所示:
图6.6校验列表界面
第六章 推荐阅读
Python基于大数据的微博舆论可视化、微博情感分析系统(V5)
Java基于Spring Boot+Vue框架的大学生就业招聘系统
第七章 源码获取:
大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻
👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
2024-2025年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅
基于Python Opencv的人脸识别上课签到考勤系统,可准确识别人脸
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人