我的博客

实战:使用 eCapture 捕获 gRPC 明文并在 Wireshark 中解密

在微服务架构中,gRPC(基于 HTTP/2 + Protobuf)通常运行在 TLS 加密之上,且其负载(Payload)为二进制格式。这给抓包调试带来了巨大的挑战:传统的 tcpdump 只能看到加密后的乱码数据。 本文介绍一种非侵入式的“魔法”方案:使用 eBPF 工具 eCapture,直接在内核层面 Hook TLS 函数,导出带有解密密钥的 pcapng 文件,或者直接导出明文...

DPDK 虚拟网卡 (Virtual Devices) 深度指南

DPDK 虚拟网卡 (Virtual Devices) 深度指南 1. 概述 DPDK 的虚拟网卡(Virtual Device / vdev)机制允许开发者在没有物理硬件的情况下,或者为了特定的系统集成需求,使用软件定义的网络接口。这极大地扩展了 DPDK 的应用边界,从纯物理网卡的高性能转发延伸到了容器网络、进程间通信(IPC)以及开发调试领域。 2. 核心原理 普通的 DPDK...

eBPF 动态指令重写技术:原理与实践

eBPF 动态指令重写技术:原理与实践 本文详细解析了 pwru 核心黑科技——内核级 PCAP 过滤器注入所采用的指令重写技术。 1. 为什么需要指令重写? 在 eBPF 程序中,传统的交互方式是使用 BPF Maps。用户态更新 Map,内核态读取 Map 并根据配置执行不同的 if/else 分支。 传统 Map 方式的局限性: 性能损耗:每次包处理都需要发起 bpf...

Go 稳定性模式:Recovery 拦截器与 SafeGo 详解

Go 稳定性模式:Recovery 拦截器与 SafeGo 详解 在 Go 语言的工程实践中,稳定性(Stability)是构建生产级应用的首要考量。与 Java 或 C++ 等语言不同,Go 的并发模型虽然轻量且强大,但也有一个致命的“弱点”:单个 Goroutine 的未捕获 Panic 会导致整个进程(Runtime)崩溃。 本文将深入探讨两种保障 Go 服务稳定性的核心模式:Re...

密码机 (HSM) 工作原理与交互流程详解

密码机 (HSM) 工作原理与交互流程详解 在金融、政府和企业级安全应用中,密码机 (HSM, Hardware Security Module) 是保障核心数据安全的关键设备。本文将详细解析密码机的工作原理,并深入探讨客户端、服务端与密码机之间的交互流程,特别是基于 SDF 和 PKCS#11 标准的应用场景。 1. 什么是密码机 (HSM)? 密码机是一种专用的物理计算设备,旨在保...