hash02/aml-detection-engine
GitHub: hash02/aml-detection-engine
基于规则引擎和 AI 异常检测的区块链反洗钱欺诈检测引擎,支持动态分流和高风险交易识别。
Stars: 0 | Forks: 0
# NEXUS-RISK — 区块链 AML 检测引擎
[](/)
[](/)
[](/)
[](/)
## 这是什么
一个用于区块链交易的可运行欺诈检测引擎。不是概念,不是演示。而是一个经过训练和测试的实际系统,使用了来自已知攻击(如 Tornado Cash、Ronin Bridge、Lazarus Group、Wormhole 和 Nomad 众包抢劫攻击)的真实 Etherscan 数据。
它从传统的 AML 规则引擎(阈值 + 速度)演变成了完整的三层检测堆栈:规则 → AI 异常检测 → 动态分流标记。
**由内而外构建。** 我在金融服务行业工作。我了解合规团队实际上需要这样的工具提供什么,以及他们从当前系统中得不到什么。
## 结果
| 指标 | 数值 |
|--------|-------|
| 总体检测率 | **94.9%** |
| 误报率 | **20.2%** |
| 规则总数 | **22** |
| 测试交易数 | **813** (644 条真实 Etherscan + 169 条合成取证数据) |
| 分析师队列减少(分流) | **63%** |
| 仅 AI 发现的异常 | **21** |
## 案例研究 — 真实攻击,真实数据
| 案例 | 攻击类型 | 检测情况 | 备注 |
|------|------------|-----------|-------|
| Tornado Cash (0.1/10/100 ETH + Gov) | 混币器洗钱 | **100%** | 所有 311 笔交易全部捕获 |
| Lazarus Group / Stake.com 黑客攻击 | 国家行为体 + OFAC | **100%** | 所有 119 笔交易全部捕获 |
| Ronin Bridge ($625M) | 国家行为体 + 跨链桥 | **84.3%** | 遗漏 = 非 OFAC 中间地址 |
| Bybit drainer | 闪速抽干 | **100%** | 单笔交易事件 |
| Euler Finance ($197M) | 闪电贷攻击 | **23.3%** | 遗漏 = 需要区块级时间戳 |
| Wormhole Bridge ($320M) | 跨链桥攻击 | **100%** | 合成取证数据 |
| Nomad Bridge ($190M) | 众包抢劫 (300+ 钱包) | **100%** | 合成取证数据 |
| Vitalik.eth (对照组) | 合法巨鲸 | **20.4% FP** | 已知钱包,低误报率 |
| ETH Foundation (对照组) | 合法机构 | **20.0% FP** | 资助分发模式 |
5.1% 的检测差距是结构性的 — Euler 需要区块级时间戳(每小时 Etherscan 数据中不可用),Ronin 的中间地址未列入 OFAC。更多的规则无法弥补这一差距。更好的数据源可以。
## 架构 — 三层检测堆栈
```
┌─────────────────────────────────────────────────────┐
│ LAYER 1: Rule Engine v11 — 22 Rules │
│ Known patterns, legally defensible, explainable │
│ Fast: O(n log n), deterministic │
├─────────────────────────────────────────────────────┤
│ LAYER 2: AI Anomaly Detection │
│ Isolation Forest on 13 graph features │
│ Zero-day immune — learns "normal", flags deviation │
│ Top signals: time_burstiness, passthrough wallets │
├─────────────────────────────────────────────────────┤
│ LAYER 3: Dynamic Triage (Item Rarity System) │
│ 4-dimension confidence scoring │
│ LEGENDARY → RARE → MAGIC → COMMON │
│ 695 flagged → 256 high-priority (63% reduction) │
└─────────────────────────────────────────────────────┘
```
## 22 条规则
**v6 · 核心阈值**
`large_amount` · `velocity` · `fan_in` · `structuring`
**v7 · 链原生**
`mixer_touch` · `bridge_hop` · `peel_chain` · `layering`
**v8 · 钱包情报**
`novel_dump` · `conc_inflow`
**v9 · 速度 + 制裁**
`OFAC_SDN` · `flash_loan_burst` · `coord_burst`
**v10 · 休眠**
`dormant_activation` — BitFinex 式休眠钱包在数年后复活
**v11 · 高级模式**
`wash_cycle` · `smurfing` · `exit_rush` · `rapid_succession` · `high_risk_country` · `exchange_avoidance` · `layering_deep`
## 攻击模式分类
| 分组 | 攻击 | 特征 |
|-------|---------|-----------|
| 混币器洗钱 | Tornado Cash | 国家标记 + 混币器接触 + 分层 |
| 国家行为体 | Ronin, Lazarus, Bybit | OFAC 匹配 + 跨链桥 + 扇出 |
| 协议攻击 | Euler | 闪电贷爆发 + 新钱包 + 快速抛售 |
| 休眠复活 | BitFinex | 5 年以上休眠 + 突然大额移动 |
| 跨链桥攻击 | Wormhole, Nomad | 新钱包 + 跨链桥 + 协同爆发 |
## 仓库结构
```
aml-detection-engine/
├── engine/
│ └── engine_v11_blockchain.py # Main rule engine — 22 rules, full scoring
├── ai_layer/
│ ├── aml_ai_layer.py # Isolation Forest + graph features
│ └── triage_labeler.py # Dynamic confidence scoring (rarity tiers)
├── dashboard/
│ └── nexus_dashboard.html # Open in browser — full results dashboard
├── data/
│ └── sample_transactions.csv # 30-row sample (20 forensic + 10 control)
├── scripts/
│ └── generate_cases.py # Synthetic forensic data generator
└── README.md
```
## 如何运行
**要求:**
```
pip install pandas numpy scikit-learn
```
**在样本数据上运行规则引擎:**
```
python engine/engine_v11_blockchain.py
# 输出:风险评分、分类层级、SAR 报告
```
**运行 AI 层:**
```
python ai_layer/aml_ai_layer.py
# 首先需要 rule engine 输出
```
**运行分流评分:**
```
python ai_layer/triage_labeler.py
# 输出:每笔交易的 LEGENDARY/RARE/MAGIC/COMMON 分类
```
**查看仪表板:**
```
Open dashboard/nexus_dashboard.html in any browser
No server needed — fully static
```
**使用您自己的数据:**
将 `engine_v11_blockchain.py` 中的 `DATA_PATH` 指向您的 CSV。必需列:
```
sender_id, receiver_id, amount, country, timestamp
```
可选(提高检测率):`sender_tx_count`, `sender_avg_amount`, `sender_active_days`, `account_type`
**真实以太坊数据**(需要 Etherscan API 密钥):
使用您的 API 密钥编辑 `scripts/generate_cases.py` — 获取任何钱包地址的真实交易历史。
## 下一步计划
- [ ] **实时演示** — Streamlit 应用:上传 CSV 或输入钱包地址,即时获取风险评分
- [ ] **GitHub Actions CI** — 每次推送自动运行评估,随时间跟踪检测率
- [ ] **GNN 层** — 钱包交易图上的 GraphSAGE(需要 5k+ 标记样本)
- [ ] **实时 API** — Flask 端点,生产就绪(CORS + auth)
- [ ] **Dune Analytics 集成** — 区块级的真实链上数据
## 关于
由 **Bionic Banker** 构建 — 一位在传统金融与区块链交叉领域工作的金融服务专业人士。我白天在传统金融体系内工作,晚上构建那些本应存在的工具。
📝 研究 + 写作: [bionicbanker.tech](https://bionicbanker.tech)
🐦 Twitter/X: [@BionicBanker](https://twitter.com/BionicBanker)
💼 LinkedIn: [Bionic Banker](https://linkedin.com/in/bionicbanker)
## 免责声明
本引擎是一个研究和教育工具。它使用根据公开事后分析(Certik、Coinbase Security、Immunefi)建模的合成取证数据。它不构成财务或法律建议。真正的 AML 合规需要持证专业人士和受监管的系统。
*NEXUS-RISK v11 · 2026 年 2 月 · 检测率: 94.9% · 规则: 22 · AI 层: 已上线*
标签:AML, Apex, DeFi 安全, Etherscan, FinTech, IP 地址批量处理, Isolation Forest, Layer2, Lazarus Group, RegTech, TCP/UDP协议, Tornado Cash, 云计算, 交易监控, 以太坊, 加密货币合规, 动态分类, 区块链安全, 反洗钱, 合规科技, 多模态安全, 孤立森林, 异常检测, 拉撒路集团, 数据清洗, 机器学习, 欺诈检测, 混币器检测, 网络安全, 规则引擎, 跨链桥漏洞, 逆向工具, 金融科技, 闪电贷攻击, 隐私保护, 风控引擎, 风险控制