Hi there 👋, this is mrchi.

大锤是我们照顾的一只聪明灵动的橘猫

逆向一个杂牌智能门锁的临时密码生成算法

弄懂了整个算法后,只有一句话想说——mdzz

 2026年3月17日 · 4 分钟 · 1891 字 · mrchi

SQL 查询 - 以豆瓣 top250 电影数据为例

通过豆瓣 Top250 电影数据,学习 SQL 中的常规函数、日期函数、逻辑函数、聚合函数和联合查询等常用语句的实际应用。

 2026年3月14日 · 2 分钟 · 560 字 · mrchi

在 Python 中为 Protobuf 生成类型注解

介绍如何为 Protobuf 生成 Python 类型注解,从而改善编辑器的提示体验。

 2025年10月27日 · 1 分钟 · 493 字 · mrchi

清理 repo 中敏感信息

使用 git-filter-repo 工具彻底清理 Git 仓库历史中的敏感信息,包括本地重写、远端清理和团队协同的完整流程。

 2025年10月14日 · 2 分钟 · 771 字 · mrchi

Python 手写 Base64 编码

介绍 Base64 编码原理,并用 Python 实现不依赖标准库的 Base64 编码函数。

 2020年11月20日 · 1 分钟 · 364 字 · mrchi

Python 计算日历星期

介绍日历星期的标准定义,并用 Python 的 datetime 和 calendar 模块实现周数、起止时间等相关计算。

 2020年11月12日 · 1 分钟 · 393 字 · mrchi

解决 CSV 中文乱码

分析 Excel 打开 CSV 时中文乱码的原因,并给出 Python 导出时的编码兼容方案。

 2020年11月12日 · 2 分钟 · 524 字 · mrchi

尝试使用 Fail2ban 保护 Bitwarden

Fail2ban 是一个日志监控工具,通过正则表达式匹配应用日志,将多次登录失败的 IP 地址封禁,以防止暴力破解攻击。本文介绍如何为 Bitwarden 配置 Fail2ban。

 2020年6月13日 · 1 分钟 · 501 字 · mrchi

使用 curl 备份数据到 WebDAV

介绍在 VPS 上通过 cron 定时使用 curl 将备份文件上传到 WebDAV 服务的方式。

 2020年6月13日 · 1 分钟 · 177 字 · mrchi

OpenWrt 安装 USB 网卡和 RNDIS 驱动

介绍在 OpenWrt 系统下安装 USB 有线网卡、无线网卡和 Android RNDIS 网络共享驱动的步骤。

 2020年6月8日 · 1 分钟 · 284 字 · mrchi