SPIRE 系列之三:安全性分析与加固清单
Posted on in Journal
SPIRE 系列第三篇:从信任链、攻击面、JWT-SVID 风险、Server/Agent 加固和事件响应角度,分析如何把 SPIFFE/SPIRE 用成真正的 Zero Trust 身份层。
Latest articles
Posted on in Journal
SPIRE 系列第三篇:从信任链、攻击面、JWT-SVID 风险、Server/Agent 加固和事件响应角度,分析如何把 SPIFFE/SPIRE 用成真正的 Zero Trust 身份层。
Posted on in Tech
介绍 arXiv 是什么, 适合发布什么类型的论文, 以及从准备稿件到提交、背书、授权和公告的完整流程。
Posted on in Journal
SPIRE 系列第二篇:在理解 Workload Identity 与 Zero Trust 目标之后,拆开 SPIRE Server、Agent、Registration Entry、Workload API、部署模式与插件体系。
Posted on in Tech
混沌工程不该只服务于稳定性。面对密码泄漏、账号被盗、数据外泄、勒索加密等安全事故,团队也需要像消防演习一样,在平时用可控、低风险的方式反复演练发现、响应、隔离、恢复和复盘。
Posted on in Journal
SPIRE 系列第一篇:从为什么需要 Workload Identity 开始,解释 SPIFFE/SPIRE 的核心概念、落地路径、部署模式和资源成本,为后续架构、安全与实战 Lab 打基础。
Posted on in Tech
很多人以为从 Cursor 迁到 Codex 只是把 .cursor/ 改成 .codex/,结果第一天就撞墙。真正难迁的不是目录,而是概念:Rules、Commands、AGENTS、Skills、Hooks、Sandbox、Approval 在两边的含义并不一样。结合官方文档和我在博客仓库里的真实迁移痕迹,聊聊怎么迁、先迁什么、哪些坑最容易踩。
Posted on in Tech
AI 很强,但它并不了解你的项目、你的经历和你的判断。真正有用的知识库,不是把笔记堆起来,而是把原始材料、结构化页面、治理规则、来源与校验串成一条流水线。结合我最近折腾的一套私人原型,聊聊我是怎么搭自己的知识库,以及怎样让它不只是一个"仓库"。
Posted on in Journal
这篇文章用一个脱敏后的 Python HTTPS 报错为例,讲清楚 unable to get local issuer certificate 到底是什么意思,为什么很多时候不是客户端代码写坏了,而是证书链没接上;正文讲排查主线,完整脚本与可运行示例放到独立仓库里。
Posted on in Journal
这篇文章把 AWS KMS、data key、encrypted data key、EncryptionContext 以及“为特定用户托管私钥”的工程设计串成一条完整链路,尽量用人话讲清楚它们各自该放在哪里、由谁负责、什么时候该用、什么时候别乱用。
Posted on in Journal
写完一篇文章,常常只活在博客里一次。我做了一个叫 lazy-podcast-mate 的小工具,想把本地 Markdown/TXT/HTML 文章,一条命令变成可发布的播客 MP3。本文聊聊它解决什么问题、内部怎么设计,以及一个 side project 真正该补齐哪些工程细节。
Posted on in Journal
AI 系统的表现,很多时候取决于 harness,而不只是模型权重。本文结合 Meta-Harness 论文,讨论为什么应该把 AGENTS.md、外化记忆、skills、协议、质量门禁和 PDCA 视为可优化的 harness,并给出一套真正可落地的技术栈与路线图。
Posted on in Journal
解读 arXiv:2505.16901(Code Graph Model): 这篇论文不是简单地做代码检索,而是把仓库建成一张"文本富图",再把语义和结构一起送进模型。文末给出按投入递增的技术栈与落地路线图。
Posted on in Journal
一张关系图摆在你面前,几万个节点、几十万条边,你被问:"这里面有几个圈子?谁和谁是一伙的?" 你总不能靠肉眼画圈吧。这时候 Louvain 算法就派上用场了——它不是万能药,但在"社区发现"这个活儿上,它是工业界用得最多的那把瑞士军刀。本文从直觉讲到模块度公式,再到 graphology-communities-louvain 的实战用法,以及它什么时候该用、什么时候别用。
Posted on in Journal
上一篇讲过用 promptfoo 测 LLM API 类的 AI skill。可咱们日常写的更多是另一种——给 Cursor、Codex、Claude Code 用的本地 skill,它没有 endpoint,没有固定 prompt,调用方是另一个 agent。这种 skill 该怎么测?本文给一套从结构 lint 到行为回归的完整方案。
Posted on in Journal
RRF(Reciprocal Rank Fusion)是 RAG 检索里一个长得土、却几乎没人舍得换掉的小公式。不需要训练,不挑分数尺度,一行代码就能把 BM25 和向量检索揉到一起。本文把公式拆开,给一个手算例子,再聊聊它什么时候好用、什么时候该让位给 reranker。
Posted on in Journal
把一个陌生代码库变成可问可答的 DeepWiki 知识库,靠的不是"把 README 喂给 GPT",而是 Tree-sitter 解析 + Embedding 向量 + 图数据库 + LLM 生成 四件套。本文不谈具体实现代码,只讲方法论、流程与取舍,并进一步讨论:代码作为 source of truth 之后,文档如何分层,以及如何让知识库反过来 harness AI 编码。
Posted on in Journal
很多团队做 AI skill,还停留在“这次跑通了,看起来不错”的阶段。可真正上线之后,问题往往不在第一次回答,而在波动、成本、工具调用路径和安全边界。本文借 Promptfoo 这把尺子,聊聊怎么系统地评估、测试并给 AI skill 做质量与安全把关。
Posted on in Journal
很多团队把 TLS 证书当成一次性配置,直到某个周五晚上证书快过期了,才想起这件事不能靠日历提醒。本文以 Kubernetes 服务为例,讲清楚怎么把 cert-manager 当执行层,把 Venafi 当策略和 CA 门卫,做到声明式签发、自动续期、私钥轮转,以及应用侧平滑 reload。
Posted on in Journal
笔记散落各处,AI 却帮不了你?聊聊怎么用 Obsidian 的本地 Markdown 文件,配合 LLM 插件、MCP 和编译式知识库,把"一堆文件"变成"能回答问题的第二大脑"。
Posted on in Journal
从 Flask 老项目里的聚合接口说起,聊聊 gevent 和 asyncio 到底差在哪里,各自适合什么场景,又各有哪些坑。