# NoteRich本地优先AES-GCM加密技术详解:数据即密钥 在数据泄露日益频繁的数字世界中,你的个人笔记、想法和文档需要最高级别的保护。在**NoteRich**中,我们认为隐私不仅仅是一种功能,而是一种基本权利。 作为一款**本地优先**的笔记应用,NoteRich确保你的数据完全存储在你的设备上。但当你需要备份数据库或跨设备共享笔记时,该怎么办呢?这时,我们的AES-GCM加密技术就派上了用场,它为数据在传输和存储过程中的安全提供了军事级保障。 --- ## 🛡️ 本地优先理念与现实安全保障相结合 NoteRich使用先进的浏览器数据库来本地存储你的笔记。这意味着即使没有网络连接,你也可以访问、编辑和搜索你的笔记。不过,当你决定将整个工作区导出为`.nrs`文件或通过**P2P(点对点)**方式将数据库同步到另一台设备时,你的数据就会离开本地存储环境。 为了确保在这些操作过程中数据保持完全私密,NoteRich采用了**端到端加密(E2EE)**技术。即使导出的文件被上传到公共云存储或在中途被截获,没有密码的话,数据也绝不可能被读取。 --- ## 🔐 NoteRich如何保护你的数据 当你选择对数据库导出或P2P共享进行加密时,NoteRich会采用两步安全流程,以平衡最大安全性与无缝用户体验。 ### 1. PBKDF2密钥生成 如果密码没有经过适当处理,用户输入的密码就很容易受到暴力攻击。NoteRich使用**PBKDF2(基于密码的密钥生成函数2)**将简单的密码转化为强大的256位加密密钥。这一过程加入了独特的“盐值”和数千次迭代,使得黑客很难猜测出你的密码。 ### 2. AES-GCM加密 一旦生成了密钥,NoteRich就会使用**AES-GCM(高级加密标准 - 伽罗瓦/计数器模式)**来加密你的数据。 * **AES**是全球用于保护政府及金融领域机密数据的标准。 * **GCM**不仅加密数据,还提供了*认证功能*。这意味着即使加密文件中的哪怕单个比特被篡改或损坏,NoteRich也能立即检测到并阻止导入,从而保护你免受恶意修改。 --- ## 🔄 加密流程:可视化指南 让我们看看数据在NoteRich生态系统中的安全传输过程。 ```mermaid graph TD A[你的设备 / 本地IndexedDB] -->|未加密的本地访问| B(NoteRich编辑器) subgraph 安全导出与同步 B -->|导出为.nrs| C{设置密码?} C -->|是| D[PBKDF2 + AES-GCM] D --> E[加密备份文件] B -->|P2P数据库同步| F{启用密码?} F -->|是| G[PBKDF2 + AES-GCM] G --> H[加密的P2P传输] end E --> I[安全的云存储/外部驱动器] H --> J[目标设备] style D fill:#e0f2fe,stroke:#0284c7,stroke-width:2px style G fill:#e0f2fe,stroke:#0284c7,stroke-width:2px ``` --- ## 🌐 应用场景:何时进行加密? NoteRich让你完全控制何时进行加密。以下是AES-GCM保护你的知识库的主要场景: ### 📦 加密数据库导出 (.nrs) 无论你是将笔记备份到外部硬盘还是上传到个人云存储,都可以在导出过程中启用**“设置密码”**选项。生成的`.nrs`文件会被完全打乱。只有拥有正确密码的人才能解锁并恢复工作区。 ### 📡 安全的P2P共享 NoteRich支持使用P2T技术实现设备与设备之间的直接同步。虽然P2T已经避免了中央服务器的使用,但添加密码层可以确保**零信任安全**。 * 你生成一个包含加密数据的安全链接或二维码。 * 接收设备必须输入正确的密码才能解密传入的数据块。 * 这对于在设备之间共享敏感笔记或专有项目笔记非常合适,无需担心网络嗅探问题。 --- ## 🛑 “零知识”保证 NoteRich的加密技术最重要的特点之一就是**我们对你的数据一无所知**。 ```mermaid sequenceDiagram participant U 作为用户 participant N 作为NoteRich应用 participant F 作为加密文件 / P2P U->>N: 1. 输入密码 N->>N: 2. 生成密钥 (PBKDF2) N->>N: 3. 使用AES-GCM加密数据 N->>F: 4. 保存/传输 Note over F: 🔒 数据变成了无法阅读的乱码 U->>N: 5. 导入/接收数据 U->>N: 6. 输入密码 N->>N: 7. 生成密钥并验证完整性 N->>U: 8. 访问恢复后的笔记 ``` 由于加密和解密完全在浏览器的安全环境中进行,NoteRich服务器不会看到你的密码,也无法解密你的文件。**你是自己密钥的唯一所有者**。 --- ## 💡 NoteRich用户的最佳实践 为了充分利用NoteRich的安全功能,请记住以下建议: 1. **使用强密码**:由于NoteRich不会存储你的密码,丢失密码意味着无法访问加密文件。使用密码管理器来生成和存储复杂的密码。 2. **验证完整性**:如果加密导入失败并出现“密码错误”或“数据损坏”的错误,那么AES-GCM的认证机制确实起到了保护你免受篡改文件的作用。 3. **利用工作区功能**:结合NoteRich的工作区隔离功能与加密导出功能,为个人和职业笔记创建独立且高度安全的环境。 --- ## 🎯 结论 隐私不应成为妥协。凭借**NoteRich的本地优先架构**和**AES-GCM加密技术**,你可以同时享受本地存储的快速性能和现代密码学的不可破解安全性。 无论你是归档人生中的重要文件还是跨设备同步笔记,NoteRich都能确保你的想法只属于你——而且只有你拥有。 --- <div class="flex flex-wrap gap-2 mt-8 mb-12"> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">本地优先</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">AES-GCM</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">隐私</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">端到端加密</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">P2P同步</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">数据安全</span> <span class="px-3 py-1 bg-[#f4f4f5] border border-[#eaeaea] rounded-full text-xs font-medium text-[#666]">NoteRich</span> </div>