开源分享:夹层 Inlay,一个本地优先的文件隐藏与提取工具
分享一个我开源的文件工具:夹层 Inlay。它可以将一个文件追加到另一个文件末尾,并通过记录的字节偏移量将原始内容提取出来。处理过程在浏览器本地完成,也提供 Python 命令行工具。
它可以做什么?
- 选择载体和待隐藏文件,生成合并文件,并记录字节偏移量。
- 下载 JSON 提取说明,记录原文件名、大小和载荷的 SHA-256 摘要。
- 导入提取说明或手动填写偏移量,提取追加的文件;有摘要时可校验内容是否一致。
- 使用内置示例体验完整流程,也可下载离线包使用,或通过 Python CLI 处理。
工作原理
输出文件的字节结构是 载体 + 载荷。偏移量 gap 等于原载体的字节数,提取时从该位置读取后续字节。这个过程不改变载荷本身,也可以与 Python 的追加写入和按偏移量读取互通。
快速体验
- 打开项目页面,选择“载入示例”,或自行选择载体与待隐藏文件。
- 生成合并文件,并保存文件与提取说明。
- 在提取界面选择合并文件,导入说明,提取并检查 SHA-256 校验结果。
传递时请保留原文件,避免聊天软件压缩、转码或重新保存破坏追加的数据。载体能否继续正常打开以及可处理的文件大小,取决于格式、读取器与浏览器。
边界说明:文件隐藏不等于加密。SHA-256 用于检测载荷变化,不能证明发送者身份,也不能替代加密或认证。
本地运行
开发环境需要 Node.js 20 或更高版本。克隆仓库后运行:
git clone https://github.com/zzbcode/inlay.git
cd inlay
npm ci
npm run build
npm start
然后访问 http://127.0.0.1:8765/。如果只想离线使用,也可以从项目发行版下载离线包并打开其中的页面。更多格式说明、兼容性及 CLI 用法请参考仓库文档。
项目采用 MIT 许可证。欢迎试用、提出问题,或分享你遇到的兼容性场景。
浙公网安备 33010602011771号