「知識管理的盡頭,是安全與效率的平衡」—— 你的每一份筆記都值得被加密保護
痛點直擊:為什麼需要加密同步?
Obsidian 的好用程度不必多説(個人心目中最佳),然而官方同步服務年費高達 48~96 美元,且對隱私敏感用户而言,將筆記明文存儲在第三方平台存在風險。
使用 Obsidian Git 插件同步方案雖然免費,但安全性存在兩大硬傷:
- 隱私泄露:配置文件、日記、賬號密碼等敏感內容以明文形式存儲Github、Gitea等庫容易泄露
-
私有部署Git倉庫:需要一定的部署經驗和服務器資源,即使私有部署特別敏感數據最好也加密
- 私有部署推薦gitea,佔用資源極小,穩定
解決方案:git-cryptx 的毛遂自薦
該工具為博主基於Rust開發開源,功能、性能、安全性已經過驗證發佈穩定版,如有問題和功能需求歡迎issues。
- 本項目長期維護,同類型工具git-crypt作者已基本不更新功能和解決issues。
特性亮點
- 使用簡單:僅需git-cryptx init初始化和set-key設置密鑰即可配置完成
- 無感加解密:文件在
git add時自動加密,git checkout時自動解密,全程無需手動干預 - 自由定義加密範圍:支持配置個別類型的文件或某些文件夾下的,僅需配置一次
- AES-256-GCM 軍用級加密:採用256位密鑰的高級加密標準(AES)算法,結合伽羅瓦/計數器模式(GCM),提供機密性、完整性和真實性保護
- 跨平台支持:完美兼容 Windows/macOS/Linux,與Git工具、Obsidian Git 插件深度適配
五分鐘搭建安全筆記體系
該方案已通過以下環境驗證:
- macOS Sequoia 15.3 + Obsidian 1.8.4
- Windows 10 + Obsidian 1.8.4
第一步:安裝工具鏈
# MacOS Homebrew 一鍵安裝
brew tap ChrisHyperFunc/brew
brew install git-cryptx
brew upgrade git-cryptx # 保持最新版本
# Windows 下載安裝
https://github.com/ChrisHyperFunc/git-cryptx/releases/tag/v1.0.0
解壓後得到 git-cryptx.exe
需要配置系統環境變量$Path才能使用,這裏推薦直接複製git-cryptx.exe到安裝Git的目錄
Git一般已經配置Path,我的Git安裝目錄複製到:
E:\Applications\Git\cmd\git-cryptx.exe
# Linux 下載安裝
https://github.com/ChrisHyperFunc/git-cryptx/releases/tag/v1.0.0
解壓後得到 git-cryptx,請確保將可執行文件永久添加到系統的 PATH 中:
將以下行添加到您的 ~/.bashrc、~/.bash_profile 或 ~/.zshrc 文件中:
export PATH="$PATH:/path/to/your/git-cryptx-folder"
然後運行:
source ~/.bashrc # 或 source ~/.bash_profile 或 source ~/.zshrc
第二步:初始化加密倉庫
任意Git倉庫:在GitHub或Gitee創建您的Git倉庫(Git如何使用本文不做重點説明)
使用命令工具操作:
git clone https://github.com/yourname/obsidian-doc.git
cd obsidian-doc # 進入你的筆記庫目錄
git-cryptx init # 初始化 git-cryptx
git-cryptx set-key pass123456 # 設置加密解密的密碼
注意:密碼會存儲在.git/cryptx/keys/global_ase_key文件中,用記事本打開可獲取密碼。
第三步:配置加密規則
編輯 .gitattributes 文件:
遵循gitattributes語法規則,配置您想加密的文件:
example.secret filter=git-cryptx diff=git-cryptx
*.secret filter=git-cryptx diff=git-cryptx
config/*.key filter=git-cryptx diff=git-cryptx
sensitive/* filter=git-cryptx diff=git-cryptx
sub_tree_directories/** filter=git-cryptx diff=git-cryptx
如有必要排除(gitattributes文件一定不要加密)
.gitattributes !filter !diff
第四步:集成 Obsidian Git
- 安裝 Obsidian Git 插件
- 配置自動同步策略(推薦 10 分鐘間隔)
高階玩法:多設備協同指南
新設備接入步驟
克隆加密倉庫
使用命令工具操作:
git clone https://github.com/yourname/obsidian-doc.git
cd obsidian-doc # 進入你的筆記庫目錄
使用git-cryptx初始化及設置密鑰
使用命令工具操作:
git-cryptx init # 初始化 git-cryptx
git-cryptx set-key pass123456 # 設置加密解密的密碼
重新檢出文件(該操作用於解密已加密的文件)
# Clean working directory
git clean -fd
# Checkout files to trigger decryption
git checkout .
打開 Obsidian 選擇該目錄即可同步寫作(不需要在下載Git插件)
避坑指南:開發者親授秘籍
- 衝突解決遇到
<<<<<<< HEAD衝突時,需解決明文衝突,可使用IDEA等工具方便操作 - 衝突避免在多機同步使用時,編輯完文檔後最後看下是否有沒推送的改動,確保全部提交,一般workspace.json容易衝突
-
出現 git-cryptx Command Not Found異常Obsidian Git插件面板
- 該問題原因是Git插件內部執行git-cryptx命令時,無法正確讀取系統環境變量,即使其他命令行工具都能正常讀取。此文件在Mac系統中可能會出現。
- 解決辦法:修改.git/config中指定執行git-cryptx為絕對路徑
PS D:\obsidian-doc\.git> cat config [core] repositoryformatversion = 0 filemode = false bare = false logallrefupdates = true symlinks = false ignorecase = true [remote "origin"] url = ssh://git@github.com/yourname/obsidian-doc.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [filter "git-cryptx"] clean = git-cryptx clean %f #修改此處為git-cryptx絕對路徑 smudge = git-cryptx smudge %f #修改此處為git-cryptx絕對路徑 required = true [diff "git-cryptx"] textconv = git-cryptx diff #修改此處為git-cryptx絕對路徑 修改後的效果: # Windows [filter "git-cryptx"] clean = E:/Applications/Git/cmd/git-cryptx.exe clean %f smudge = E:/Applications/Git/cmd/git-cryptx.exe smudge %f required = true [diff "git-cryptx"] textconv = E:/Applications/Git/cmd/git-cryptx.exe diff # Mac 或 Linux 類似 [filter "git-cryptx"] clean = ~/Git/cmd/git-cryptx clean %f smudge = ~/Git/cmd/git-cryptx smudge %f required = true [diff "git-cryptx"] textconv = ~/Git/cmd/git-cryptx diff
結語:讓知識自由流動
通過 Obsidian+Git+git-cryptx 的組合拳,我們既獲得了 Git 的版本控制與多端同步能力,又通過透明加密守護了隱私數據。
Obsidian地址:https://obsidian.md
項目地址:https://github.com/ChrisHyperFunc/git-cryptx
本文作者:DeepSeek 初稿,博主Chris校對完善。
AI 提示詞:
你現在是科技/IT自媒體的優秀從業者,請以《效率工具|Obsidian+git-cryptx:內容加密多機同步的筆記寫作方案》為題,生成md格式的一篇文章。要求符合科技/IT自媒體從業者的表達邏輯,要符合微信公眾號、知乎、掘金等審核要求,吸引讀者,不要生硬。需要貼圖的地方空出來後面補充。
標題內容解釋:Obsidian + Git 插件實現多機同步,git-cryptx是博主採用Rust自研,可以自動實現文件操作無感的加密解密。
實踐中有疑問?歡迎在評論區留言探討!關注本專欄,獲取更多獨立開發者相關深度評測。