Skip to content

工作空间端到端加密数据同步 #2165

Closed
@88250

Description

@88250

端到端加密

  • 设备 A 上的数据在本地进行加密,加密后上传到云端
  • 云端没有明文数据,只有加密过的数据
  • 设备 B 从云端下载加密数据,在本地进行解密
  • 加密解密用的密码由用户设置,仅在设备 A 和设备 B 上存储

数据同步

  • 基于文件修改时间
  • 使用 Rsync 传输
  • 自动间隔 1 分钟同步一次

多工作空间

  • 本地同步数据存放文件夹路径,默认在工作空间/sync/
  • 云端同步数据存放文件夹名称,需要用户创建或选择已有路径

用户本地不同的工作空间对应云端不同的同步数据集,支持多工作空间同步。

关键点

  • 从 data 到 sync 的增量加密
  • 从 sync 到 data 的增量解密
  • 下载以后按需重建笔记本
  • 发生冲突时接受云端版本,本地版本存入历史

实现

  • 同步密码
    云端同步数据存放文件夹
    本地同步数据存放文件夹
    工作空间加密至本地同步数据存放文件夹
    本地同步数据最近修改版本
    云端可用空间大小检查
    云端 API 查询同步数据最近修改版本
    对比本地和云端修改版本,获得同步方向
    使用 Rsync 进行数据传输
    本地被覆盖数据解密并移动到对应笔记本的历史中
    定时任务自动同步

Activity

added this to the 1.3.0 milestone on Jun 18, 2021
pinned this issue on Jun 21, 2021
unpinned this issue on Jul 20, 2021

9 remaining items

pinned this issue on Jul 23, 2021
unpinned this issue on Jul 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Relationships

None yet

    Development

    No branches or pull requests

      Participants

      @88250@Vanessa219

      Issue actions

        工作空间端到端加密数据同步 · Issue #2165 · siyuan-note/siyuan