想要在应用内实现加密、增量同步文件到 s3,有什么建议吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
0o0O0o0O0o

想要在应用内实现加密、增量同步文件到 s3,有什么建议吗?

  •  
  •   0o0O0o0O0o 2024 年 3 月 13 日 1608 次点击
    这是一个创建于 774 天前的主题,其中的信息可能已经有所发展或是发生改变。

    原始需求是通过 s3 同步客户端应用的数据,类似于 https://github.com/remotely-save/remotely-save ,但当然不只是笔记软件,可能是 keepass ,也可能是 taskwarrior ,又或者是 beancount ,甚至是 rime 词库,总之是那些数据很私密并且不需要服务端的应用。

    1. 需要增量、压缩
    2. 需要客户端加密的最佳实践
    3. 后端是 s3 ,所以要尽可能减少请求的数量,因为这与费用相关

    我从 这里 发现了一些开源的备份工具,例如 duplicati 、knoxite 、restic 、kopia 等,但是并没有找到太多讲述原理和设计的,大部分都需要去读它们的源码才可能了解和对比它们,所以在这之前我想先寻求一下各位的建议

    4 条回复    2024-03-13 16:48:40 +08:00
    locoz
        1
    locoz  
       2024 年 3 月 13 日 via Android
    看看 juicefs ?感觉也可以适用于你的需求
    0o0O0o0O0o
        2
    0o0O0o0O0o  
    OP
       2024 年 3 月 13 日
    @locoz #1 是的,这个在查找的时候也搜索到过,感觉也非常厉害。
    iX8NEGGn
        3
    iX8NEGGn  
       2024 年 3 月 13 日
    Duplicati 的基础原理挺简单的,它有提供一份简短的技术白皮书: https://www.duplicati.com/assets/Block-basedstorageformat.pdf

    它只有三种文件类型 Filelist 、lndex file 、Block file ,把软件下载下来,自己备份少许文件,把备份的文件解压,看看里面的数据结构,一下就能明白它的原理了。

    其他比较流行的备份软件比如 Duplicacy 、Kopia ,我记得它们的文档也有解释备份或加密模型,之前有研究过,时间过去太久有点忘记了。
    0o0O0o0O0o
        4
    0o0O0o0O0o  
    OP
       2024 年 3 月 13 日
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2713 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 06:21 PVG 14:21 LAX 23:21 JFK 02:21
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86