惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
S
Securelist
V
Vulnerabilities – Threatpost
C
Cyber Attacks, Cyber Crime and Cyber Security
Schneier on Security
Schneier on Security
Cyberwarzone
Cyberwarzone
Simon Willison's Weblog
Simon Willison's Weblog
Hacker News - Newest:
Hacker News - Newest: "LLM"
P
Palo Alto Networks Blog
T
Troy Hunt's Blog
SecWiki News
SecWiki News
Security Archives - TechRepublic
Security Archives - TechRepublic
T
The Blog of Author Tim Ferriss
Project Zero
Project Zero
Microsoft Security Blog
Microsoft Security Blog
The Register - Security
The Register - Security
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
J
Java Code Geeks
F
Full Disclosure
阮一峰的网络日志
阮一峰的网络日志
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Attack and Defense Labs
Attack and Defense Labs
Know Your Adversary
Know Your Adversary
WordPress大学
WordPress大学
PCI Perspectives
PCI Perspectives
N
News | PayPal Newsroom
The Last Watchdog
The Last Watchdog
酷 壳 – CoolShell
酷 壳 – CoolShell
P
Privacy & Cybersecurity Law Blog
P
Proofpoint News Feed
V
Visual Studio Blog
C
CERT Recently Published Vulnerability Notes
H
Help Net Security
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
云风的 BLOG
云风的 BLOG
月光博客
月光博客
T
The Exploit Database - CXSecurity.com
I
InfoQ
大猫的无限游戏
大猫的无限游戏
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
U
Unit 42
腾讯CDC
小众软件
小众软件
V2EX - 技术
V2EX - 技术
罗磊的独立博客
Cloudbric
Cloudbric
Recorded Future
Recorded Future
IT之家
IT之家
Google DeepMind News
Google DeepMind News
C
CXSECURITY Database RSS Feed - CXSecurity.com

博客园 - 若-飞

LangChain / LangGraph、MCP、Harness Engineer 与 Claude Code 的对应关系 Agent Harness 技术笔记:从 Trajectory 到 Function Calling Loop BLEU 是什么?——从原理到工程实践 一文讲清:Approve / Permit / Permit2 的本质区别 分库分表后跨分页查询的完整方案 ai如何处理私有数据 ai幻觉是啥,以及如何解决 别再让大模型“凭空瞎猜”了!带你认识AI最强外挂:ChromaDB 用 useQuery 管请求:TanStack React Query 入门小结 TRON 四种 API 面怎么选:从节点协议到 JSON-RPC 再到 TronGrid 以太坊节点存储与共识机制全解析 BSC节点发现协议全解析:UDP发现、Bootnode引导与Gossip交易广播 以太坊节点发现背后的分布式哈希表(DHT)与 Kademlia 原理解析 Solidity中的bytes与string:深入理解这两种特殊的动态数组 智能合约自毁:当资产还在,合约死了 —— 深度解析 selfdestruct 导致的资产锁定风险 TDengine CLI (taos) 使用指南 —— Docker 本地开发实战 在 macOS 上用 DBeaver 连接 TDengine:踩坑总结与最终配置指南 Solidity Storage Slot 深度解析 Geth Snapshot Export/Import 深度解析: 不是备份工具,而是数据分析利器 基于BSC 公链的数据备份与 Snapshot 机制深度解析 Docker 共享内存完全指南:从原理到实践,避免常见的理解误区 Docker容器"僵尸状态"问题排查与自动重启方案 SSE协议深度解析:被低估的HTTP服务器推送标准 TDengine vs MySQL:时序数据处理的时代之选 Proxmox 启用 QEMU Guest Agent 实战指南 解决 Blockscout "batch too large" 错误的完整指南 一文讲清楚什么是基准测试(Benchmark) Rust中的宏(Macro):编译时的代码生成魔法 Docker优雅关闭的艺术:为什么stop_grace_period能防止数据丢失 为什么 Go 没有依赖注入和 Bean 机制?语言设计哲学对比
HD钱包--BIP44
若-飞 · 2026-04-28 · via 博客园 - 若-飞

助记词经 BIP39 → BIP44 得到可重复的地址序列。

1.通用路径与意义

 

m / 44' / {coin_type}' / {account}' / {change} / {index}

 

本仓库 TRON 示例路径

 

m/44'/195'/0'/0/i

 
路径段 含义
m 主节点(由 seed 根派生)
44' 固定为 BIP44 的 purpose;' 表示强化派生
{coin_type}' 链 类型:BTC=0,EVM 60(ether/pologon/arbitrum),TRON=195,SOL=501
{account}' 账户序号(0'、1'… 区分不同业务账户),账户级隔离,账户目录;这里可以体现商户ID
{change} 区分 收款地址0 和 找零地址1;BTC 系钱包历史遗留但非常重要的设计,在你现在做 ETH / TRON 地址池 时虽然通常固定为 0,但理解它的本质还是很关键的,尤其以后如果支持 BTC 或 UTXO 链
{index} 同一账户下第几个地址;批量入池时递增 i;账户目录里面的文件

2.工程设计约定

2.1. Gap Limit = 20

钱包在恢复时,如果连续发现 20 个未使用地址就会停止扫描,因此如果你跳过太多 address_index 不用,可能导致后面的已用地址扫描不到,需要通过连续使用 index 或记录 last_used_index 来避免这个问题。

生成太多没用的地址话,需要去链上查询地址是否存在/查询地址是否有交易,就会浪费时间,导致性能遍历慢

3.优点/缺点

3.1. 优点

优点类别 优点 具体说明 对工程系统的价值
备份能力 一次备份即可恢复全部地址 只需保存 seed(助记词),即可恢复所有私钥和地址 极大降低备份复杂度
地址扩展能力 可生成无限地址 从一个 seed 可派生无限 address_index 非常适合地址池系统
安全隔离能力 层级隔离(Hardened) account' 层可隔离不同账户风险 支持多账户安全设计
私钥隔离能力 可只暴露 xpub 服务器可只用 xpub 生成地址 私钥无需在线
多账户支持 天然支持多账户结构 account' 层可区分不同业务或商户 非常适合多商户钱包
可审计能力 可用 xpub 做只读审计 财务系统可查看余额但不能动资金 支持审计系统
隐私增强 每笔交易可使用新地址 避免地址复用带来的链上分析 提升用户隐私
标准化程度高 跨钱包兼容性强 多钱包使用相同标准路径 易迁移系统
恢复能力强 设备丢失也可恢复 只要 seed 存在即可恢复 可靠性高
自动地址管理 地址可顺序生成 address_index++ 即可生成新地址 非常适合充值地址池
冷热分离支持 支持冷/热钱包架构 冷端保私钥,热端只用 xpub 提升整体安全性
多币种支持 支持不同链统一管理 coin_type' 区分链 一套 seed 管多链

3.2. 缺点

缺点类型 问题描述 产生原因 风险等级 解决 / 缓解方式
Seed 单点失效风险 seed 一旦泄露,可推导全部私钥,资产全部失控 HD 钱包所有私钥来自同一个 seed 🔴 极高 seed 离线保存(冷存储)、多重备份、助记词加密
xpub 隐私泄露风险 xpub 泄露后,攻击者可推导所有地址并分析资金流 Non-Hardened 支持从 xpub 推导地址 🟠 中 不公开 xpub,按 account 隔离使用
Gap Limit 扫描遗漏问题 跳过太多 address_index,恢复钱包时可能扫描不到已使用地址 默认 Gap Limit=20(扫描停止规则) 🟠 中 顺序使用 index 或记录 last_used_index
地址扫描性能问题 生成大量未使用地址,恢复或扫描时需要逐个查询链上状态,耗时增加 钱包恢复需要判断地址是否被使用 🟡 中 控制 address_index 增长速度,使用缓存
链上查询成本增加 判断地址是否使用,需要查询区块或交易记录 无法离线判断地址是否存在交易 🟡 中 使用索引服务(如节点索引、数据库)
实现复杂度较高 路径管理、索引管理、恢复逻辑复杂 HD 结构是树形派生 🟡 中 统一 derivation path 设计
错误路径风险 使用错误路径会导致资产找不到 不同钱包 derivation path 不一致 🟠 中 严格固定标准路径
子私钥泄露风险(Non-Hardened) child_priv + xpub 可能推导父私钥 Non-Hardened 派生特性 🔴 高 account 层使用 Hardened
地址管理复杂度 地址数量大时需要维护 index 状态 无限地址能力带来的管理问题 🟡 中 数据库存储 index 状态

4.硬化派生 vs 非硬化派生

项目 Non-Hardened(非硬化派生) Hardened(硬化派生)
路径表示 60 60'
符号含义 没有 ' 带 '
index 范围 0 ~ 2³¹−1 2³¹ ~ 2³²−1(内部通过 +2³¹ 实现)
示例路径 m/44'/60'/0'/0/5 m/44'/60'/0'
典型用途 批量生成地址 建立安全隔离边界
是否能用 xpub 派生子公钥 ✅ 可以 ❌ 不可以
是否需要父私钥参与计算 ❌ 不需要 ✅ 必须需要
子私钥计算公式(核心区别) child_priv = parent_priv + H(parent_pub + index) child_priv = parent_priv + H(parent_priv + index)
子公钥计算公式 child_pub = parent_pub + H(parent_pub + index)·G ❌ 无法从 parent_pub 推导
是否支持 xpub 批量生成地址 ✅ 支持 ❌ 不支持
是否可能发生 child_priv + xpub 推 parent_priv 攻击 ⚠️ 可能 ✅ 不可能
安全性级别
常见使用层级 change、address_index purpose、coin_type、account
典型 BIP44 位置 m/44'/60'/0'/0/0 中最后两层 m/44'/60'/0' 前三层
是否允许只持有 xpub 的服务器生成地址 ✅ 可以 ❌ 不可以
适合的系统场景 地址池、充值地址生成 主账户隔离、多币种隔离

5.HD 钱包攻击方式与防护总览表

攻击类型 攻击原理 发生条件 风险等级 防护方式(核心)
xpub + 子私钥反推父私钥攻击 利用 Non-Hardened 派生公式,从 child_priv + parent_xpub 推出 parent_priv 泄露:
① 某个子私钥
② 对应层的 xpub
🔴 高 关键层使用 Hardened(如 account')
xpub 泄露隐私攻击 拿到 xpub 可推导所有地址,追踪资产流动 xpub 泄露 🟠 中 xpub 按商户/账户隔离,不全局共享
种子(seed)泄露攻击 seed 可恢复整个 HD 钱包 seed 被窃取 🔴 极高 离线保存 seed(冷存储)
路径碰撞或误用攻击 使用错误 derivation path,导致资产混乱 多系统路径不统一 🟠 中 严格统一 derivation path
Gap Limit 扫描遗漏攻击 跳过太多 index,恢复钱包时漏地址 address_index 跳跃太大 🟡 中 顺序使用 index 或记录 last_index
地址重用攻击(隐私问题) 重复使用地址暴露交易关联关系 地址重复使用 🟡 中 每次交易生成新地址
恶意钱包实现攻击 钱包生成伪随机或弱密钥 使用不安全库 🔴 高 使用成熟 HD 实现库
链上扫描推测资产规模 通过地址序列推测资产结构 地址结构暴露 🟡 中 多账户拆分隔离
服务器私钥泄露攻击 热钱包泄露 xprv 私钥在线存储 🔴 极高 使用冷/热分离架构

6.推荐工程范式安全架构

关键层 hardened ✅

地址层 non-hardened ✅

推荐工程范式路径:m/44'/60'/0'/0/0

 

冷环境(保存 xprv) m/44'/60'/0' ↓ 导出 xpub 热服务器(只保存 xpub) m/44'/60'/0'/0/0 m/44'/60'/0'/0/1 m/44'/60'/0'/0/2 ...

 

posted @ 2026-04-28 21:52  若-飞  阅读(32)  评论()    收藏  举报