2024-4-17 群讨论:防刷机制

以下来自本人拉的一个关于 Java 技术的讨论群。关注公众号:hashcon,私信进群拉你

防刷子机制

主要分为两种场景:

  1. 针对未登录或者未注册用户,对于注册,各种验证码等类似的接口进行防刷机制,同时尽量减少对于用户的打扰。
  2. 针对已经登陆的用户
    1. 参与活动设置必要的门槛:比如最近交易量。
    2. 引入 MFA 之后,限制用户只能通过绑定的 MFA 的设备参与活动。

针对 2 其实主要是从业务的角度考虑,MFA 机制不仅是安全性的保证,MFA 更是利于验证用户设备有效,从而可以使用设备做一些业务的限制。

针对 1,可以使用以下的机制减少验证码对于用户的打扰:

  1. 使用类似于 Google reCAPTCHA Enterprise(reCAPTCHA v3)或者国内可以用 hCAPTCHA Enterprise 服务,针对敏感接口,例如注册,短信 OTP 接口等等接入,每次请求会带上一个 Google Recaptcha Enterprise 的评分:
    1. reCAPTCHA v3 在用户浏览网站时连续地评估用户行为。这包括用户与页面的交互方式(如鼠标移动、滚动、点击等)、设备和浏览器的信息。它还可能分析用户在整个会话中的行为,包括访问多个页面的顺序和速度。
    2. 基于这些行为分析,reCAPTCHA v3 为每个用户请求分配一个分数,范围从 0.0 到 1.0。分数越接近 1.0 表示系统越认为该行为来自真实人类,分数越低则越可能是由自动化脚本或机器人产生。这里是一个分数分布的例子:
  2. 你的后台根据这个分数(笔者这里是针对所有低于 0.8 的请求),请求响应是需要验证码才能继续。这里的验证码实现方案就很多很多了,笔者就不赘述了。
  3. 也就是,对于大部分用户,注册的时候,其实连验证码都不需要输入。对于评分比较低的用户才去让用户接受挑战(challenge),或者是输入验证码,或者是其他挑战方式。

为何不建议使用 ip + 设备封禁或者限流(限流并不是禁止访问,而是跳转或者弹出验证码)?相较于上面的手段,对于用户的打扰比较多。同时 ip 和设备比较容易伪造(ip 可以通过 vpn,设备可以模拟等等),并且,现在的浏览器的发展趋势是 user-agent 趋于统一,暴露的信息越来越少:

developers.google.com/privacy-san...

个人简介:个人业余研究了 AI LLM 微调与 RAG,目前成果是微调了三个模型:

  1. 一个模型是基于 whisper 模型的微调,使用我原来做的精翻的视频按照语句段落切分的片段,并尝试按照方言类别,以及技术类别分别尝试微调的成果。用于视频字幕识别。
  2. 一个模型是基于 Mistral Large 的模型的微调,识别提取视频课件的片段,辅以实际的课件文字进行识别微调。用于识别课件的片段。
  3. 最后一个模型是基于 Claude 3 的模型微调,使用我之前制作的翻译字幕,与 AWS、Go 社区、CNCF 生态里面的官方英文文档以及中文文档作为语料,按照内容段交叉拆分,进行微调,用于字幕翻译。
    目前,准确率已经非常高了。大家如果有想要我制作的视频,欢迎关注留言。
    本人也是开源代码爱好者,贡献过很多项目的源码(Mycat 和 Java JFRUnit 的核心贡献者,贡献过 OpenJDK,Spring,Spring Cloud,Apache Bookkeeper,Apache RocketMQ,Ribbon,Lettuce、 SocketIO、Longchain4j 等项目 ),同时也是深度技术迷,编写过很多硬核的原理分析系列(JVM)。本人也有一个 Java 技术交流群,感兴趣的欢迎关注。
    另外,一如即往的是,全网的所有收益,都会捐赠给希望工程,坚持靠爱与兴趣发电。
相关推荐
码事漫谈4 小时前
C++ 多线程开发:从零开始的完整指南
后端
9ilk4 小时前
【C++】--- 特殊类设计
开发语言·c++·后端
码事漫谈4 小时前
十字路口的抉择:B端与C端C++开发者的职业路径全解析
后端
提笔了无痕6 小时前
git基本了解、常用基本命令与使用
git·后端
java1234_小锋6 小时前
Spring IoC的实现机制是什么?
java·后端·spring
喵个咪6 小时前
开箱即用的 GoWind Admin|风行,企业级前后端一体中后台框架:JWT 集成指南
后端·go
绝不收费—免费看不了了联系我6 小时前
Fastapi的单进程响应问题 和 解决方法
开发语言·后端·python·fastapi
喵个咪7 小时前
开箱即用的 GoWind Admin|风行,企业级前后端一体中后台框架:OPA 集成指南:从原理到实践
后端·go
GSDjisidi7 小时前
东京IT软件会社-(株)GSD|多种技术栈募集,高度人才+20分
开发语言·面试·职场和发展
Victor3567 小时前
Netty(11) Netty的心跳机制是什么?为什么需要它?
后端