安全类文章都在这里,按攻击面分成两支。两支是各自独立的——技术内容几乎不重叠,不必对照着读,也不存在先读哪一支的顺序。

content/posts/security/
├── blockchain/   链上安全 —— 智能合约、跨链桥、共识、密钥与签名流程
└── web/          Web 安全 —— 浏览器、服务端、认证与会话、供应链

两支各收什么

分类的依据不是"用什么语言写的",而是攻击者能触碰到的那一层在哪里

链上安全 blockchain/ Web 安全 web/
执行环境 公开、确定性、不可回滚 私有、可打补丁、可回滚
攻击者能看到 全部状态与全部代码 只有你暴露的接口
攻击者能做 抢跑、闪电贷、任意组合调用 构造请求、伪造会话、投毒依赖
一次失败的代价 资金即时且不可逆地转走 数据泄露,通常可止损
补救手段 只有事前防御 事前 + 事中 + 事后

边界上的判断规则:如果失效的那条假设与"代码跑在一条谁都能读、谁都能调、改不了也退不回"的链上有关,归 blockchain/;如果它与"请求是谁发的、凭据是怎么来的、依赖是从哪装的"有关,归 web/

一个交易所被钓鱼盗走签名密钥,两边都沾——钓鱼手法属于 Web 侧,而"签名者看到的界面 ≠ 他实际签署的数据"这条失效假设属于链上侧。这类按造成损失的那一步归档,并在另一侧交叉引用。

链上安全

链上安全事故档案——2010–2026 年 29 起有公开技术复盘的事故,按失效的假设分成七类,每篇走同一套结构(背景 → 漏洞 → 攻击复盘 → 为什么没被发现 → 防御 → 举一反三 → 小结)。

要动手写合约的话,从上线前检查清单倒着读回去更省时间。

Web 安全

分成两部分,回答两个不同的问题:

两部分均为编排阶段,分类骨架与收录标准见各自首页。

和课程的关系

这个目录收的是事故与防御实践,不讲基础机制。机制在课程里:

两支各自定各自的收录标准(见各分区首页),但有一条是共同的:给不出机制的不收。 只说"某某被黑了多少钱"“某某泄露了多少条数据”、讲不清那条假设为什么会失效的,不进来。