极验决策引擎如何凭借独特优势,弯道超车传统风控?

前言

市场上的规则决策引擎产品众多,但大多局限于IP、设备、账号等层面,提供的是现成的风控标签和规则。然而,真正的风控,需要的不仅仅是标签和规则。

极验的业务规则决策引擎与众不同,这款决策引擎以界面流程编排为优先设计,为核心,对各种外部数据进行计算、查询、阈值比较和规则触发通知的整体编排。它不仅仅能做到市场上其他产品能做到的,还能做到市场上其他产品做不到的,并协助客户完成初期的规则搭建工作,逐步引导客户熟悉运营流程,直至他们能够轻松驾驭并自主运营。

我们将从以下几个角度来展示它的特点。

别人做到的,我们可以做

目前绝大部分市场上的规则决策引擎产品,都是从IP、设备、账号等层面输出风控标签、画像和已经设置好的聚合运算规则。

而要想做好风控,通常要根据业务场景、历史数据和风险容忍度进行定制化。毕竟规则再多,也可以穷尽,而当下的业务在变、技术在变、对手在变。风控从来都是持续的对抗,持续的变化,而不是一劳永逸的过程。

我们的流程编排系统能够实现任意参数的访问控制,可以非常具体、灵活地描述在什么情况下规则应当被触发(例如,表达式可以定义设备关联账号数的具体数值,或者特定时间段内的行为模式)。

图片

如果把黑产对抗比作战场,这就相当于别人卖你的是各式各样的武器,而我们给你的是一个武器制作工厂,不仅能生成出各式各样的武器,你还可以根据你的需要,去定制生产你所需要的装备

图片

为了更好地说明以上情况,我们对市面上常见的规则决策引擎规则进行了盘点:

图片

某规则决策引擎的风控规则合集

这些规则大致分为三类:

  1. 使用滑动窗口统计某一种模式(键)出现的频率。

  2. 使用滑动窗口统计某个分组键下另外某个维度去重的计数。

  3. 请求参数表达式逻辑判定。

以“使用滑动窗口统计某一种模式(键)出现的频率”为例,例如同设备 1天内关联账号数过多,其实就是典型的分组去重逻辑。系统会根据设备的唯一标识来进行分组,然后统计在 1天的时间窗口内与此设备关联的不同账号数量。如果同一账号多次尝试登录,通常只会计作一次。

我们很容易在我们的流程编排上去实现这个需求:

Step1、拖拽自定义模组至流程

图片

拖拽需要的模块进入流程

Step2、编辑参数形成规则

图片

可以应用任何参数进入频率计算

Step3、编辑完成

图片

一个账号、IP、设备ID,在某段时间内出现频次规则

Step4、开始运行

图片

应用在整个规则判断流程

别人做不到的,我们可以做

在业务决策引擎的流程中,都离不开输入、计算、输出这三个环节,想象一下,你是一家快递分拣中心的负责人,你的任务是确保每个包裹从到达的那一刻起,就立刻被分类并送往正确的目的地。包裹(数据)一到达(输入),就立刻被处理并送往下一个目的地(输出结果)。

在这三个流程中,为了满足更多客户的需求,我们在各个环节都做了相当多的创新。

图片

规则决策抽象出来的三要素

一)在输入环节

我们支持多样化的自定义数据接入方式。不仅限于传统的本地数据库,我们还扩展了对外部API调用的支持。例如,金融行业可以通过外部征信查询接口获取数据,电商公司则可以接入物流公司的API来实时追踪包裹状态。此外,我们还能够高效处理实时数据流,如Kafka、RabbitMQ等消息队列系统,确保数据的即时性和准确性。

图片

二)在计算环节

我们采用了硬实时处理机制,确保数据一经输入便立即进行运算并输出结果,以满足特定行业和场景对系统响应速度的极高要求。

常规的流式计算框架,如Spark Streaming和Flink,虽然能够处理实时数据,但在维持计算状态时可能导致程序不稳定,恢复困难。此外,这些框架通常需要将计算结果与数据库进行周期性同步,导致结果呈现异步性。这对于业务规则决策引擎(BRDE)来说是一个重大缺陷,因为它需要实时同步计算结果以参与流程编排,而异步结果会造成语义上的损失。

与此同时,另一种常见的流式计算方法是通过消息队列消费数据,并利用Redis保存状态(如HyperLogLog或Set),这种方法减轻了流程序的状态管理负担,提高了系统的稳定性和可恢复性。然而,这种方式在面对黑产等不确定请求时,可能会因热点数据难以预测而给Redis数据库带来极大的不稳定性。

举个例子,这就像一个自动传送带系统,厨师做好菜后放在传送带上,直接送到顾客手中。这个系统减轻了厨师的工作量,但如果很多顾客同时点同一道菜,传送带可能会因为某道菜(热点数据)过多而卡住,影响整个餐厅的运作。

图片

正因如此,许多决策引擎产品未能将计算过程直观展示于界面。我们的决策引擎则不同,我们强调计算的透明度和可监控性,特别设计了计算过程的可视化功能。这样,用户能够更深入地理解、监控和管理计算活动,不仅提升了用户体验,还增强了系统的可维护性和可解释性。

图片

计算过程的可视化

我们采用的BRDE在线计算方案,通过haproxy的stick table实现了滑动窗口的去重运算。此运算基于当前事件时间,例如,若当前时间为2024-11-11T22:49:00,则统计周期为2024-11-10T22:49:00至2024-11-11T22:49:00,以此完成去重运算,并与流程编排相结合,实现实时计算结果的返回,以供后续运算使用。

以一个具体场景为例,假设我们设定一个电商平台的预警条件为最近10分钟内订单量超过1000笔。传统的统计方法可能会在17:50至18:00这个固定时间窗口内进行计算。然而,如果订单激增实际上发生在17:55至18:05这一时段,那么依赖固定时间窗口的传统大数据统计将会出现明显的边界效应,分开看17:50至18:00和18:00至18:10,散落在2个时间窗口,都是正常的, 但实际最近17:55至18:05这10分钟的窗口是异常的,但逃离了这个频率项制定的范围。

相较之下,我们的实时数据处理技术采用动态的、连续滚动的时间范围来进行数据聚合,通过多次覆盖数据,有效减少了边界效应,并能捕捉到更细微的变化。一旦达到预警阈值便迅速采取行动。正如常言所说,预防优于治疗,实时止损的效果远优于事后的补救措施。

图片

以某电子商务平台为例,若商品价格设置失误导致偏低,可能会引发消费者在极短时间内的大量抢购,瞬间销量可能高达数万件。但是,传统的预警系统只能在统计周期结束后才发出警报,这意味着我们只能在获取统计结果后才开始采取止损措施,从而错过了最佳干预时机。相较之下,极验业务决策引擎提供一体化的流程编排,还提供了高性能的实时算子。因此,一旦损失濒临预警阈值,系统即可迅速触发警报,显著提升了风险管理的效率和有效性。

同时,极验业务决策引擎提供了极高的灵活性,允许在计算前后进行按需过滤和实时计算。同时,haproxy作为计算引擎,在我们极验的基准测试中,在8核16GB的机器上展现出了高达20万QPS的计算性能,确保了系统的高效运行。

三)在输出环节

在规则触发后,相较于其他规则引擎仅输出风险标签(如高信用风险、低欺诈风险等),我们的系统更加注重实际业务场景的后续处理。虽然标签是风险处理的一个重要指标,但它并不代表风险的完全解决。

因此,我们的业务决策引擎允许用户采取进一步行动,如要求用户进行二次验证或直接限制设备登录,以防范账户盗用和欺诈行为,确保风险得到有效控制。

图片

发邮件或者短信通知

图片

请求、节点和响应

我们助力客户平滑过渡

当然,规则设置并非没有成本。它不仅需要人力运营,而且对专业知识有较高的门槛。

然而,极验凭借十二年的安全SaaS服务经验和成熟的客户成功团队,我们拥有对各行各业业务风控场景的深入理解。基于这些理解,我们不仅能够提供标准化接入售后服务,还能根据客户的具体需求设置定制化的风控规则。这不仅能够帮助客户更好地适应和应对各种业务挑战,还能减少他们的运营成本,降低知识门槛,使他们能够更专注于自己的核心业务。

图片

立即注册试用:https://www.geetest.com/brde

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/63801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows如何使用ssh连接kali

声明: 昨天晚上看了小羽老师的直播课,心血来潮自己也想搞一下这个ssh,中途安装遇到了不少问题,电脑也是重启了好多次,遇到bug就重启也是解决bug的一种方法. 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下&…

SpringMvc完整知识点一

SpringMVC概述 定义 SpringMVC是一种基于Java实现MVC设计模型的轻量级Web框架 MVC设计模型:即将应用程序分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。这种分离…

路由器、二层交换机与三层交换机的区别与应用

路由器、二层交换机和三层交换机是常见的网络设备,常常协同工作。它们都可以转发数据,但在功能、工作层级以及应用场景上存在差异。 1. 工作层级 三者在OSI模型中的工作层级不同: 路由器: 工作在 网络层(第三层&#…

(css)element中el-select下拉框整体样式修改

(css)element中el-select下拉框整体样式修改 重点代码(颜色可行修改) // 修改input默认值颜色 兼容其它主流浏览器 /deep/ input::-webkit-input-placeholder {color: rgba(255, 255, 255, 0.50); } /deep/ input::-moz-input-placeholder {color: rgba…

SEC_ASA 第一天作业

拓扑: 实验需求: 注意:在开始作业之前必须先读“前言”,以免踩坑!!!(☞敢点我试试) 按照拓扑图配置VLAN连接。 注意:ASA防火墙的 Gi0/1口需要起子接口&#x…

「Mac玩转仓颉内测版45」小学奥数篇8 - 排列组合计算

本篇将通过 Python 和 Cangjie 双语讲解如何计算排列与组合。这道题目旨在让学生学会使用排列组合公式解决实际问题,并加深对数学知识和编程逻辑的理解。 关键词 小学奥数Python Cangjie排列与组合 一、题目描述 编写一个程序,计算从 n 个不同元素中取…

Ungoogled Chromium127编译指南 Windows篇 - 获取源码(七)

1. 引言 在完成所有必要工具的安装和配置后,我们进入了Ungoogled Chromium编译过程的第一个关键阶段:获取源代码。本文将详细介绍如何正确获取和准备Ungoogled Chromium的源代码,为后续的编译工作打下基础。 2. 准备工作 2.1 环境检查 在…

人脸识别Adaface之libpytorch部署

目录 1. libpytorch下载2. Adaface模型下载3. 模型转换4. c推理4.1 前处理4.2 推理4.3 编译运行4.3.1 写CMakeLists.txt4.3.2 编译4.3.3 运行 1. libpytorch下载 参考: https://blog.csdn.net/liang_baikai/article/details/127849577 下载完成后,将其解…

Elasticsearch高性能实践

前言 本方案主要从运维层面分析es是实际生产使用过程中的参数优化,深入理解es各个名词及含义,深入分析es的使用过程中应注意的点,详细解释参数设置的原因以及目的,主要包括系统层面,参数层面。除此之外,优…

在idea中使用mysql(超详细)

一、连接mysql 在IDE开发工具中也是可以使用mysql的,这里以开发java常用的IntelliJ IDEA为例。 1. 打开idea,右上角有数据库侧边栏,打开侧边栏点击加号->数据源,可以看到支持很多数据库,选择mysql。 2. 首次使用需…

Python简化算法工具——“按位运算”

一、六种常见的“按位运算” 1.与(&)运算 运算规则:对两个整数对应的二进制位进行操作,当两个相应的二进制位都为1时,该位的结果才为1,否则为0。 a5 #0101b7 #0111print(a&b)#a&b0101#输出对…

Modbus转Profibus网关:打通多电机交流控制,打造自动化神器

在工业控制领域,Modbus和Profibus是两种非常常见的通信协议。Modbus由于其简单的结构、易于实现的特点被广泛应用在各种电子设备中,而Profibus则以其稳定性和实时性在大型自动化系统中占有一席之地。但是,有时候我们需要将这两种协议进行转换…

C++重点和练习

作业1&#xff1a;实现类中有类的几个特殊成员函数 #include <iostream>using namespace std;class Person {string name;int *age; public:Person():name("none"),age(new int(0)){}Person(int age):age(new int(age)){}Person(string name,int age):name(na…

亚马逊云科技用生成式AI,向开发的复杂性动手了

生成式 AI、分布式扩展功能全面进化&#xff0c;还降价了。 同一天的发布&#xff0c;完全不同的方向。 今天凌晨&#xff0c;云计算巨头亚马逊云科技的 re:Invent 与大号创业公司 OpenAI 的发布「撞了车」。后者公布了一系列生成式 AI 应用&#xff0c;价格更贵、性能更强大&a…

【操作系统】实验二:观察Linux,使用proc文件系统

实验二 观察Linux&#xff0c;使用proc文件系统 实验目的&#xff1a;学习Linux内核、进程、存储和其他资源的一些重要特征。读/proc/stat文件&#xff0c;计算并显示系统CPU占用率和用户态CPU占用率。&#xff08;编写一个程序使用/proc机制获得以及修改机器的各种资源参数。…

day2 数据结构 结构体的应用

思维导图 小练习&#xff1a; 定义一个数组&#xff0c;用来存放从终端输入的5个学生的信息【学生的信息包含学生的姓名、年纪、性别、成绩】 1>封装函数 录入5个学生信息 2>封装函数 显示学生信息 3>封装函数 删除第几个学生信息&#xff0c;删除后调用显示学…

SQL Server:只有MDF文件,如何附加数据库

第一步&#xff1a;先新建一个同名数据库&#xff0c;然后停止sql服务&#xff0c;删除新建数据库.ldf文件。 第二步&#xff1a;将要附加的数据库的.mdf文件覆盖刚新建的.mdf文件&#xff0c;并重启sql服务。 第三步&#xff1a;这时数据库DATA目录下只有一个.mdf文件&#xf…

React开发高级篇 - React Hooks以及自定义Hooks实现思路

Hooks介绍 Hooks是react16.8以后新增的钩子API&#xff1b; 目的&#xff1a;增加代码的可复用性&#xff0c;逻辑性&#xff0c;弥补无状态组件没有生命周期&#xff0c;没有数据管理状态state的缺陷。 为什么要使用Hooks&#xff1f; 开发友好&#xff0c;可扩展性强&#…

jmeter调整字号无法生效?

调整之前如上图&#xff0c;字体非常小&#xff0c;哪怕我设置的字号是48 查阅了资料&#xff0c;试了几次&#xff0c;解决办法如下&#xff1a; 用编辑器打开jmeter.bat 在echo off的下一行添加以下代码 set JVM_ARGS%JVM_ARGS% -Dswing.plaf.metal.controlFontDialog-20…

密码学——密码学基础、散列函数与数字签名

1.密码学概述 是信息安全的基础和核心&#xff0c;是防范各种安全威胁的重要手段&#xff0c;信息安全的许多相关知识都与密码学相关。 密码学发展 密码学是一门古老而又年轻的学科 &#xff0c;几千年以前就存在&#xff0c;至今仍在发展演进。地位非常重要甚至起决定性作用…