vaptcha-手势验证码
很外向,上班总想坐老板的位置。
网址:https://www.vaptcha.com/#demo
第一次接触是在大学刚毕业的时候,搞了一半就没搞了。时隔1年多,回来看看。
难点,图片还原,轨迹,canvas校验等。
轨迹的话没办法,要么自己搞模型,要么去对接打码。canvas校验的这个其实咋说呢,部分生产的结果值过不了,有的又能过。
const { createCanvas, loadImage } = require('canvas')
var rt = function() {function t() {}t.prototype.GenerateFP = function(t) {// var t = this.getComplexCanvasFingerprint(t);return this.extractCRC32FromBase64(t);};t.prototype.getComplexCanvasFingerprint = function(t) {var e = 'BrowserLeaks,com <canvas> 1.0' + t;var n =createCanvas(220, 30,'svg')var i = n.getContext("2d");i.textBaseline = "top";i.font = "14px 'Arial'";i.textBaseline = "alphabetic";i.fillStyle = "#f60";i.fillRect(125, 1, 62, 20);i.fillStyle = "#069";i.fillText(e, 2, 15);i.fillStyle = "rgba(102, 204, 0, 0.7)";i.fillText(e, 4, 17);return n.toDataURL();};t.prototype.extractCRC32FromBase64 = function(t) {t = t.replace("data:image/png;base64,", "");var e = atob(t);var n = e.slice(-16, -12);return this.string2Hex(n.toString());};t.prototype.string2Hex = function(t) {var e = "";for (var n = 0; n < t.length; n++) {var i = t.charCodeAt(n);i <= 15 && (e += "0");e += i.toString(16).toLocaleUpperCase();}return e;};return t;
}();
var at = new rt();
console.log(at.GenerateFP("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"))
这个也是我们最终生产加密值en所需要的,这个的话好像并没有强行要求,大家可写死试试并发的情况。
关于图片还原的数组,在这里,断点往回看看就清楚了。
reductionImg = function (){l = ri.hex2int(at.GenerateFP(ha))s = l + h + parseInt(secretC) + c;m = ri.Decrypt(e.img_order, s);
}
然后的话 :哈哈
最后成功之后:
好了好了就这样了,提前祝大家2024快乐,出去玩的小伙伴也要注意安全。
完事儿了哦,大表哥们。以上需要算法,或者识别的都可以给我留言,最后也谢谢李成功的帮助。
记得关注我们的作坊:图腾视觉开放平台-高速、稳定、易用的webapi接口调用 (现已合作大佬超乎你想象)图腾视觉-OCR识别平台
提示:有问题的小伙伴可以私信讨论。
重要的事儿说三遍 :若是侵权请联系作者删,若是侵权请联系作者删,若是侵权请联系作者删。
相关文章:

vaptcha-手势验证码
很外向,上班总想坐老板的位置。 网址:https://www.vaptcha.com/#demo 第一次接触是在大学刚毕业的时候,搞了一半就没搞了。时隔1年多,回来看看。 难点,图片还原,轨迹,canvas校验等。 轨迹的…...

【一种用opencv实现高斯曲线拟合的方法】
背景: 项目中需要实现数据的高斯拟合,进而提取数据中标准差,手头只有opencv库,经过资料查找验证,总结该方法。 基础知识: 1、opencv中solve可以实现对矩阵参数的求解; 2、线的拟合就是对多项…...

find_package 和 find_library的区别
背景 经常看CMakeLists.txt中有find_package和find_library,有时候没留意以为都一样,其实二者差距比较大,下面简单记录一下。 find_package find_package(NAME), 这段代码的本质就是在找一个NAME.cmake这个文件,一般在安装库的…...

socket是如何进行通信的
Socket通信的原理大致分为以下几个步骤: 服务器端建立Socket,开始侦听整个网络中的连接请求。当检测到来自客户端的连接请求时,向客户端发送收到连接请求的信息,并建立与客户端之间的连接。当完成通信后,服务器关闭与…...

STM32-固件打包部署
STM32-固件打包部署 Fang XS.1452512966qq.com STM32固件输出 工程上使用Keil开发STM32软件;在调试过程中,可直接编译下载;例如bootloader和APP,在调试时,可以直接下载2次;但是工程上,需要大…...

微信机器人如何使用?好用吗?好奇
随着微信的使用范围越来越大,所以人一多,管理起来就会遇到很多繁琐的情况需要仍去操作。 比如需要手动一个个通过好友验证,发消息,相同问题一遍遍的回答,消息还容易看漏,回复不过来...... 想着如果有什么可…...

ARMV8 - A64 - 函数调用,内存栈操作
说明 看了下ARM平台上C语言函数调用的反汇编代码,理清楚了其中的内存栈汇编操作,特整理下。本文环境基于:ARMv8-a架构A53核soc,aarch64状态。 预先了解的知识点 内存栈 栈和栈帧的基本概念重点:出栈入栈的单位不是…...

MyBatis 四大核心组件之 ResultSetHandler 源码解析
🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall 🍃 vue3-element-admin 🍃 youlai-boot 🌺 仓库主页: Gitee 💫 Github 💫 GitCode 💖 欢迎点赞…...

docker-compose 单机容器编排
docker-compose 单机容器编排 Dockerfile:先配置好的文件,然后bulid,镜像容器。 docker-compose 既可以基于dockerfile,也可以基于镜像,一键式拉起镜像和容器。 docker-compose 核心就是yml文件,可以定义…...

springboot项目使用Layui作为前端UI的一系列前后端交互的解决方法
背景: 因为比较喜欢Layui,因为多个项目都是从零开始就使用的layui开发的,并且开发过程中借鉴了很多其他项目(如Ruoyi、Pear Admin),因此最终选用大部分Pear Admin的项目中使用的一系列解决方案,…...

【Linux】Firewalld防火墙新增端口、开启、查看等
Linux操作系统中,Firewalld防火墙相关操作如下: 安装 yum install firewalld firewalld-configFirewall开启常见端口命令 新增端口: firewall-cmd --zonepublic --add-port80/tcp --permanentfirewall-cmd --zonepublic --add-port443/tc…...

学习笔记 -- TVS管选型参考
一、TVS管基本工作原理 当TVS管(瞬态电压抑制器)两极受到反向瞬态高能量冲击时,能以纳秒(ns)量级的速度,将两极间的高阻抗变为低阻抗,使两极间的电压箝位于一个预定的值,有效地保护电子线路中的元器件。 在浪涌电压作用下…...

功能更新|免费敏捷工具Leangoo领歌私有部署新增第三方身份认证和API对接
Leangoo领歌是一款永久免费的专业的敏捷开发管理工具,提供端到端敏捷研发管理解决方案,涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。 Leangoo支持敏捷研发管理全流程,包括小型团队敏捷开发,规模化敏捷SAFe,Scr…...

重生奇迹mu战士加点
在重生奇迹MU中,战士作为一个近战职业,主要依赖于物理攻击来输出伤害。因此,在加点方面,战士需要优先考虑加强自身的攻击力,同时也要增强自身的生存能力和耐久度。 以下是可参考的战士加点方案: 1.力量&a…...

【数据结构(十一·多路查找树)】B树、B+树、B*树(6)
文章目录 1. 二叉树 与 B树1.1. 二叉树存在的问题1.2. 多叉树 的概念1.3. B树 的基本介绍 2. 多叉树——2-3树2.1. 基本概念2.2. 实例应用2.3. 其他说明 3. B 树、B树 和 B*树3.1. B树 的介绍3.2. B树 的介绍3.2. B*树 的介绍 1. 二叉树 与 B树 1.1. 二叉树存在的问题 二叉树…...

弟弟的作业
问题 G: 弟弟的作业 [命题人 : 外部导入] 时间限制 : 1.000 sec 内存限制 : 128 MB 题目描述 你的弟弟刚做完了“100以内数的加减法”这部分的作业,请你帮他检查一下。每道题目(包括弟弟的答案)的格式为abc或者a-bc,其中a和b是作…...

代码随想录算法训练营第37天|● 738.单调递增的数字 ● 968.监控二叉树 ● 总结
738. 单调递增的数字 中等 相关标签 相关企业 提示 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时,我们称这个整数是单调递增的。 给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。 示例 1: 输入: n 10输出: …...

出现 java: 找不到符号 符号: 变量 log 的解决方法
目录 1. 问题所示2. 原理分析3. 解决方法3.1 增加编译参数3.2 增加lombok插件3.3 清楚本地缓存1. 问题所示 使用Springboot启动项目的时候,出现如下bug: java: 找不到符号符号: 变量 log位置: 类 org.springblade.example.consumer.rpc.BlogStu...

大数据机器学习与深度学习—— 生成对抗网络(GAN)
GAN概述 在讲GAN之前,先讲一个小趣事,你知道GAN是怎么被发明的吗?据Ian Goodfellow自己说: 之前他一直在研究生成模型,可能是一时兴起,有一天他在酒吧喝酒时,在酒吧里跟朋友讨论起生成模型。然…...

vue前端访问Django channels WebSocket失败
现象 前端报错:SSH.vue:51 WebSocket connection to ‘ws://127.0.0.1:8000/server/terminal/120.59.88.26/22/1/’ failed: 后端报错:Not Found: /server/terminal/120.79.83.26/22/1/ 原因 django的版本与channels的版本不匹配(django…...

厉害了!水浸监控技术有升级啦
水浸监控在今天的社会中变得愈发重要,特别是在各种行业和场所。面对突发的水灾,及时有效的监测和预警系统可以帮助组织减少损失,保障人员和财产的安全。 客户案例 商业办公楼 合肥某大型商业办公楼面临着水灾风险,而传统的监控系…...

【开题报告】基于SpringBoot的大学生心理教育平台的设计与实现
1.研究背景 大学生心理健康问题一直备受关注。随着社会压力的增加、人际关系的复杂化以及学业与就业压力等因素的影响,大学生心理健康问题日益突出。因此,设计并实现基于SpringBoot的大学生心理教育平台具有重要的研究意义和实践价值。 (1&…...

376. 摆动序列
376. 摆动序列 原题链接:完成情况:解题思路:参考代码:_376摆动序列_376摆动序列 错误经验吸取 原题链接: 376. 摆动序列 https://leetcode.cn/problems/wiggle-subsequence/description/ 完成情况: 解题…...

现在个人想上架微信小游戏已经这么难了吗...
引言 大家好,最近我突然想起来我还有一款微信小游戏还没有上架,于是捣鼓了一天把游戏完善了一下,然后准备提交审核,却发现异常的艰难... 1.为什么难? 相信大家都大概知道,自从微信平台宣布 9月1日起&…...

C语言数据结构-----二叉树(2)堆的深入理解及应用、链式二叉树的讲解及代码实现
前言 本篇文章讲述的内容有部分是上一节写过的。重复内容不会再进行说明,大家可以看上一节内容 链接: C语言数据结构-----二叉树(1)认识数、二叉树、堆及堆的代码实现 文章目录 前言1.使用堆解决TOP-K问题2.向下调整堆的时间复杂度与向上调整堆的时间复杂度对比3.堆…...

【算法】【动规】等差数列划分
跳转汇总链接 👉🔗算法题汇总链接 1.2 等差数列划分 🔗题目链接 如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是…...

系统架构设计师教程(五)软件工程基础知识
软件工程基础知识 5.1 软件工程5.1.1 软件工程定义5.1.2 软件过程模型5.1.3 敏捷模型敏捷开发的特点敏捷方法的核心思想主要敏捷方法简介 5.1.4 统一过程模型 (RUP)RUP的生命周期RUP中的核心概念RUP的特点 5.1.5 软件能力成熟度模型 5.2 需求工程5.2.1 需求获取需求获取的基本步…...

计算机中的文件管理
操作系统对计算机的管理包括两个方面:硬件资源和软件资源。硬件资源的管理包括CPU 的管理、存储器的管理、设备管理等,主要解决硬件资源的有效和合理利用问题。 软件资源包括各种系统程序、各种应用程序、各种用户程序,也包括大量的文档材料、…...

Linux常见排错思路及命令
Linux常见排错思路及命令 一、引言 在Linux系统中,由于其高度可配置和可定制的特性,可能会遇到各种问题。本文将介绍一些常见的排错思路,并提供一些常用的命令,以帮助您快速定位和解决问题。 二、常见排错思路 查看系统日志 …...

【springboot】【easyexcel】excel文件读取
目录 pom.xmlExcelVo逐行读取并处理全部读取并处理向ExcelListener 传参 pom.xml <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.1</version> </dependency>ExcelVo 字段映射…...