把 DNS 服务变为一个聊天室
在 阮一峰周刊 369 期 中这样一篇文章 破解加拿大航空的飞机上网 当时看了之后觉得很有意思,但没有额外作什么思考。过了两周的某一天早上在上班路上突然想到了这个文章,因为是上班路上有点无聊,所以就思考了一下这个问题:如果在某一网络中,只有 DNS 协议的请求能成功,那么在这个网络中的人们能否自由彼此通信?
Hexo 使用通行密钥对文章加密
Hexo 中主流使用 hexo-blog-encrypt 插件可以对文章进行加密。这种方法通过密码实现。相比更为简单的前端 JavaScript 密码比较验证,该方法的加密流程如下
- Markdown 文章头部密码 → PBKDF2 派生密钥 → AES-256-CBC 加密原始内容 → 生成 HMAC 完整性校验 → 输出加密的 HTML
从而实现使用加密厚的内容替换原始内容,防止通过简单 JavaScript 手段直接跳过密码验证。同时解密过程则是
- 用户输入密码 → PBKDF2 派生密钥 → 验证 HMAC → AES-256-CBC 解密 → 获取原始 HTML 内容 → 渲染文章内容
NexT 主题高级标签插件
Hexo NexT 主题提供了一系列的高级的标签插件,可以简单的实现一些复杂的功能。
iPhone 17 壁纸
2025-09-10 苹果发布了全新的 iPhone 17 系列,除了带来了全新的 iPhone Air 系列,同时还新增了每款机型对应的系统壁纸。
Cloudflare Workers 通用 Turnstile 验证模块
最近使用 Cloudflare Workers 实现了一个在线笔记本 和 短链接服务 分别使用了 Cloudflare KV 和 Cloudflare D1 进行数据存储,根据 Cloudflare KV 定价文档 免费计划每天是有次数限制的。为了避免互联网上各种扫描器的请求导致消耗限额,就需要过滤一波非人类请求了。
Windy 自定义色层
Windy 自定义色层
修改方法:打开 App ⭢ 设置 ⭢ 底部 自定义色层 ⭢ Select overlay 选择对应的数据 ⭢ 底部 Import/Export color ⭢ 复制对应的代码到下方文本框 ⭢ 点击 Import gradient ⭢ 点击 Save created color
Hexo 静态博客使用 Cloudflare Turnstile
在 Cloudflare 使用 Workers 建立 Images 代理 一文中。使用 Workers 搭建了一个 Images 代理,通过设置 Referer 和 URL 签名有效期实现简易的防盗链以及防刷流量。但是这些措施只能做到防君子不防小人,其实很轻易的就可以通过代码自动实现刷图片流量。为了避免这种情况,想着能不能使用 Cloudflare Turnstile 阻挡非人类请求的流量。但是研究了一下发现 Cloudflare Turnstile 需要 服务端代码验证 但是很显然,Hexo 这种纯静态博客没有后端服务,所以思索了一下决定还是使用 Workers 实现一个支持静态网页的 Cloudflare Turnstile 方案。
Garmin 国行码表使用 OSM 地图
国行的 Garmin 码表下载并安装 OSM China 地图作为骑行地图。
数据来源 alternativaslibres 并添加了必要的元数据。