验证码现在已经广泛用在各种软件上,主要是用于登录与注册的校验。验证码的作用主要是防止恶意注册或暴力登录,早期验证码都是数字验证码,现在基本无法满足需求了,现在验证码已经发展成多种多样了,今天给大家推荐一款C#实现的滑块验证码。

先看看效果:

项目简介

功能:用户拖动滑块完成时完成校验,支持PC端及移动端。并在后台保存用户校验过程的时间、精度、滑动轨迹等信息。

原理是将大图片分分为20份,并进行混淆拼接,支持自定义图片。

技术架构

1、.Net 4.0

2、C# + Jquery + Newtonsoft.Json

项目结构

核心代码

        /// <summary>/// 校验前端是否通过验证/// </summary>public void CheckCode(HttpContext context){context.Response.ContentType = "text/plain";string ls_point = context.Request["point"];//完成时x轴对于左上角位置位置string datelist = context.Request["datelist"];//滑动过程特征string timespan = context.Request["timespan"];//耗时if (HttpContext.Current.Session["code"] == null){ WriteError(context, "发生错误"); return; }if (string.IsNullOrEmpty(ls_point)){ WriteError(context, "未获取到坐标值"); return; }int li_old_point = 0, li_now_point = 0;try { li_old_point = int.Parse(HttpContext.Current.Session["code"].ToString()); }catch { WriteError(context, "发生错误-1"); return; }try { li_now_point = int.Parse(ls_point); }catch { WriteError(context, "获取到的坐标值不正确"); return; }//错误if (Math.Abs(li_old_point - li_now_point) > _deviationPx){int li_count = 0;try{li_count = int.Parse(HttpContext.Current.Session["code_errornum"].ToString());}catch { li_count = 0; }li_count++;if (li_count > _MaxErrorNum){//超过最大错误次数后不再校验HttpContext.Current.Session["code"] = null;Write(context, "{\"state\":-1,\"msg\":" + li_count + "}"); return;}HttpContext.Current.Session["code_errornum"] = li_count;//返回错误次数Write(context, "{\"state\":-1,\"msg\":" + li_count + "}"); return;}if (SlideFeature(datelist)){//机器人??}//校验成功 返回正确坐标HttpContext.Current.Session["isCheck"] = "OK";HttpContext.Current.Session["code_errornum"] = null;HttpContext.Current.Session["code"] = null;Write(context, "{\"state\":0,\"info\":\"正确\",\"data\":" + li_old_point + "}");}

使用方法

===========

$("#__Verification").slide({imgspec: "200*100",successCallBack: function () {console.log("success");alert('你已通过验证!');}});

领取方式:点击下方公众号卡片

回复“1031”,获取链接

C#实现的滑块验证码相关推荐

  1. angularjs 滑块验证码 移动端_SliderCaptcha

    滑块式验证码 用户通过拖动滑块行为来完成校验,支持PC端及移动端.可以将用户拖动行为的时间.精度,滑动轨迹等信息到服务器,然后进行后台算法验证. 特别介绍 Blazor 版本的滑块验证码 传送门 在线 ...

  2. 滑块验证码识别 java版本

    https://blog.csdn.net/qq_19383667/article/details/77879895 好久没有更新技术文章了,很久之前研究过滑块验证码的破解,照着别人的代码改,将其他版 ...

  3. python 滑块验证码_python selenium 淘宝滑块验证码 问题

    正常打开淘宝等页面,搜索商品和滑块验证码是没有问题的,但是用selenium打开,在多次翻页后出现的滑块验证码就总是失败,无论是手动滑还是代码控制都不可以,目前正在找解决办法... 此问题针对多次翻页 ...

  4. Python破解滑块验证码算法,完美避开人机识别

    | 完美是不可能的,加个震惊!Python破解BiliBili滑块验证码,完美避开人机识别,可以有 准备工作 B站登录页 https://passport.bilibili.com/login pyt ...

  5. 若依集成aj-captcha实现滑块验证码(单体版)

    目录 一.集成aj-captcha实现滑块验证码集成包 二.ruoyi-framework\pom.xml添加依赖 三.修改application.yml,加入aj-captcha配置

  6. 前后端滑块验证码实例附源码(java jquery)

    背景: 发送短信验证码或者登录等场景操作之前都需要进行图片验证码校验或者滑块验证码校验:此举是为了减少黑盒对服务端进行暴力破解密码或者频发短信轰炸请求的操作: 但如果滑块验证完全由前端进行操作,实际上 ...

  7. 【Lilishop商城】No3-2.模块详细设计,系统设置(系统配置、行政区划、物流公司、滑块验证码图片、敏感词过滤)的详细设计

     仅涉及后端,全部目录看顶部专栏,代码.文档.接口路径在: [Lilishop商城]记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑,其中重点包括接 ...

  8. Python Selenium破解滑块验证码最新版!

    通过率高达百分之95!真的强! 一.滑块验证码简述 有爬虫,自然就有反爬虫,就像病毒和杀毒软件一样,有攻就有防,两者彼此推进发展.而目前最流行的反爬技术验证码,为了防止爬虫自动注册,批量生成垃圾账号, ...

  9. 绕过滑块验证码登陆网站的实现

    因为有些网站登陆的时候需要经过滑块验证码,这里实现了,一个绕过滑块验证码的实例 from selenium import webdriver import time import random# 1. ...

  10. 调用阿里云web API实现滑块验证码

    文章目录 滑块验证码的实现原理 调用阿里云web API实现图形验证码 效果演示: 本来想着弄一个算术验证码的,后来发现这玩意儿对我自己也太不友好了

最新文章

  1. 产品经理经常使用工具
  2. python小程序3
  3. Python语言编程之正则表达式模式
  4. java 操作系统 模拟 daima_求C/C++或java写的比较简单的操作系统的模拟程序
  5. 扒一扒搜索引擎是如何工作的?
  6. 美丽又实用的欧拉螺线,数学界当之无愧的画家!
  7. Rabbitmq 1.消息如何保障 100%投递成功?
  8. @程序员,如何花式构建线程?
  9. hosts文件修改,文件类型修改
  10. SQLyog中文版安装教程
  11. 学习开源硬件:开源IP,开源RISC-V与开源SoC等
  12. FFmpeg采集树莓派USB摄像头(UVC摄像头)
  13. 树莓派摄像头——图像 视频采集
  14. 前端中文汉字转换为拼音、拼音首字母的插件Chinese-to-Pinyin
  15. _search.php_wholesale_search.php
  16. 程序员转行做什么工作比较好?
  17. java post 405 错误
  18. RK3568 Android11从入门到实战项目专栏目录及介绍
  19. 英飞凌TC264之双核互斥
  20. 【网络原理7】认识HTTP

热门文章

  1. 美国顶级安全公司遭国家黑客攻击,网络武器库失窃
  2. 数据库系列之MongoDB副本集集群环境
  3. 10款js图片代码_图片滚动代码_图片切换代码_图片特效代码_图片轮播代码(三)
  4. 计算机一级ms模拟试题,计算机一级ms模拟试题及答案.doc
  5. PMAC应用五-运动学
  6. Java方法重写(Overriding)和方法重载(Overloading)
  7. Simditor用法
  8. 缺货潮延续!ST、NXP、ADI、瑞萨、安森美、高通、赛灵思等最新动态
  9. javaweb解决编码问题_停止尝试编码解决问题的方法
  10. 计算机考研856学校,18届北京科技大学856环境学姐,目前已录取,分享一下考研经...