Skip to content

网盘加密工具:更快捷的文件更新同步机制,更彻底的信息加密

Notifications You must be signed in to change notification settings

NicerWang/NetDiskGuard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetDisk Guard

本项目为突发奇想开发,可能存在某些Bug,欢迎反馈。

请保存好密钥和索引文件,请谨慎进行文件操作,数据无价。

网盘加密工具,在网盘面前捍卫你的隐私。

目前的开源网盘加密工具,都是直接逐个加密文件,然后用户手动上传到网盘。

如果直接创建一个整个压缩包加密上传,则使用、检索、更新都不方便。

本项目旨在解决两个关键问题:

1. 本地文件产生更新怎么办?

在传统的加密方案中,你需要再次加密,并且找到产生变化的文件,手动上传,而后才能实现本地和云端加密数据的同步。

2. 加密不彻底,加密后的内容仍保留了文件目录、文件名等信息。

因为如果没有这些内容,用户是无法快速找到所需文件的。

是如何解决的?

本地构建文件索引,上传内容彻底加密。

环境配置

  1. 安装依赖(Python环境)

    pip install cryptography
  2. 运行环境,进入一个Python实现的假Shell

    python shell.py

使用手册

程序中切换状态时也会显示使用说明。

  1. 出现以下提示符,表明程序处在等待加载状态

    >>>

    此时可用的命令有:

    • load -i 索引文件位置 [-d 实际文件目录] [-k 索引加密密钥]

      如果不设置-d,则后续无法执行sync命令,但仍然可以进行其他操作。

      如果索引文件存在,则必须-k指定密钥,程序会根据密钥读取索引。

      如果索引文件不存在,则程序将会产生密钥,请牢记该密钥,请牢记该密钥,请牢记该密钥,但索引文件直到第一次sync才会生成。

    • exit

      退出程序。

  2. 如果正确载入了索引,则程序进入索引操作状态

    [索引文件名@索引目录位置]>>>

    此时可用的命令有:

    • ls,cd,pwd,exit(功能略)

    • cat 当前目录下的文件名

      查看实际文件对应的加密文件名。注意,文件一定要在当前目录下。 该功能的目标是,用户可以直接查找到目标文件对应的加密文件名,从网盘下载该加密文件解密,就可以得到原文件。

    • sync 加密文件存储目录

      完成文件加密,并更新索引文件。 该功能的目标是,将加密后的文件都放入到加密文件存储目录,用户直接将该目录上传到网盘即可。 目录前会含有时间字符串,只需要上传本次sync操作产生的新加密文件即可。

    • recover 加密文件目录 恢复目标目录

      恢复加密文件。 该功能的执行流程是,将加密文件目录下的加密文件,根据原文件结构,恢复到恢复目标目录。

    • clear [文件列表txt位置]

      检测已失效的加密文件,以txt格式保存到指定位置,默认为invalid_时间字符串.txt 用户对目录中的文件修改后进行sync,会产生很多失效的加密文件(理论上文件内容可以恢复,起到历史记录的作用,但暂未实现)。 失效的加密文件仍会占用网盘空间,用户可以删除这些文件,不会影响文件完整性。

请保存好密钥和索引文件,请谨慎进行文件操作,数据无价。

About

网盘加密工具:更快捷的文件更新同步机制,更彻底的信息加密

Topics

Resources

Stars

Watchers

Forks

Languages