notesnook 中文文档 下载 App

Notesnook 跨设备同步加密流程 密文才会上传

同步时到底发生了什么

当你在设备 A 创建了一条笔记,按保存(或者自动保存触发)后,Notesnook 客户端的加密流程会:

  1. 把笔记内容序列化成 JSON 对象
  2. 用数据加密密钥(XChaCha20-Poly1305)加密这个 JSON
  3. 把加密后的密文对象(包含密文本身、nonce、salt、算法 ID、条目 ID)发送到服务器
  4. 服务器存入数据库——这个过程不接触明文

设备 B 登录同一个账号时,Notesnook 客户端会:

  1. 从服务器拉取所有加密条目
  2. 用本地的主密钥解密数据加密密钥
  3. 用数据加密密钥解开每条笔记的密文
  4. 渲染显示内容

整个过程中服务器只见过密文。真正的解密只发生在用户的设备上。

离线编辑

Notesnook 完全支持离线编辑。没有网络连接时你可以正常创建、编辑、删除笔记——所有变更先在本地应用层提交。恢复网络后 Notesnook 会自动把本地离线时积累的变更加密上传到服务器。冲突处理是"最后写入胜出"的简单模型。

同步频率

默认是实时同步(只要有网络就自动同步变更)。Pro 计划用户可以在设置里关闭实时同步、改为手动触发,或者完全关闭同步功能。

冲突场景

如果两台设备同时离线编辑同一条笔记,恢复网络后 Notesnook 会保留两份——不会覆盖也不会丢弃。两份冲突的笔记在列表里会用特殊标记提醒你,手动选择保留哪一份或合并。

服务器端能看到什么

服务器看不到:笔记标题、正文内容、Notebook 归属、Tag、Vault 锁定状态——这些全部在加密数据里。

继续阅读:恢复密钥保管