加密云存储中的文件,保护你的隐私
博客专区 > NoahX 的博客 > 博客详情
加密云存储中的文件,保护你的隐私
NoahX 发表于4年前
加密云存储中的文件,保护你的隐私
  • 发表于 4年前
  • 阅读 3603
  • 收藏 160
  • 点赞 12
  • 评论 22

腾讯云 十分钟定制你的第一个小程序>>>   

摘要: 前一段时间,CIA 闹得很欢。由此引发我们的思考,是否可以相信云存储。从目前的现状来说,答案是 NO。我们的数据存储在云端(各种快盘,Dropbox 等),大家都是开发的想想也知道,你的数据还是有可能被第三者看到的。所以常理上讲,云上只存些不太私密的数据,如:常规照片,软件。但如果我想存储一些证件照片,证书文件与一些其它的隐私数据呢?

一、背景

前几天一个硬盘坏了(SSD),数据无一幸免。还好我有一定的数据备份。新硬盘到了,我想的是不能再这样下去了。我需要利用现有存储(Dropbox,xx快盘等),实时备份我的重要数据。问题也来了,存储安全吗?不会出xx门吧?

二、分析

存储安全从本质上来说肯定是不安全的,所以我需要对本地的文件进行加密。云端只存储我加密后的文件,这种方式就算 CIA 也很难搞定。


那我们采用何种加密方式呢?Zip 加密码?文件包工具加密还是显得太麻烦,编辑一个文档要先解包再打包。而解包后的数据存在磁盘上也是隐患(可以被深度数据分析工具发现)。


TrueCrypt 是一种不错的加密方式,直接把一个文件(或分区)映射为一个虚拟盘(解密后的文件只会缓存在内存中,所以是安全的),但与云存储放在一起好像就不太协调。问题是 TrueCrypt 存储是按单文件方式,如一个10G的数据文件。不用我说大家也可能会想到,你每次修改你的任何虚拟盘中的数据都会触发文件变更,导致每次要重传10G!!!的文件。虽然有些云存储客户端支持对大文件的分析不用全部重传,但还是相当不爽。


EncFS 也是一种文件系统加密方式,通过映射一个目录来做虚拟目录存储(解密后的文件只会缓存在内存中,所以是安全的)。EncFS 不像 TrueCrypt 把所有的文件都存放在一个加密文件中。它的加密方式是保持你原有的目录结构,把文件名、目录名、文件内容进行加密。

  • 好处:单文件加密非常适合云存储,你修改了哪个文件只需要上传那个文件对应的加密文集即可。
  • 坏处:第三方人员,可以看到你的目录结构。多文件分散,不易于本地维护。

三、加密目录(EncFS)

注:我用的是 Linux(Mint)系统,所以教程会按 Linux 系统来写。如果你使用 Windows 系统也可以通过 encfs4win(http://members.ferrara.linux.it/freddy77/encfs.html)或同类工具完成加密。

1、在云存储目录中创建准备用于存放加密文件的目录(mkdir)

如:/opt/noah/Dropbox/.encrypted/Photos
我在 Dropbox 中创建了 .encrypted 主目录,然后专门创建了存放私人内容的目录 Photos

2、创建映射目录(mkdir)

数据是存放在 .encrypted/Photos 中,但你使用 EncFS 时并不直接操作加密目录。而是映射目录。
我的映射目录创建在 /home/noah/EncFS/Photos,空着就可以或者你可以放一些不相关的内容进行混淆。

注:EncFS 在映射加密目录时,不会影响原映射目录内容。

3、安装 encfs

sudo apt-get install encfs

4、初始化加密目录

encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos

选择模式

Creating new encrypted volume.
Please choose from one of the following options:
 enter "x" for expert configuration mode,
 enter "p" for pre-configured paranoia mode,
 anything else, or an empty line will select standard mode.
?>

选 p 就可以,x 为专家模式(可以修改加密算法,加密方式等)。 

然后输入密码。(建议14个字符以上密码,密码的长度就是你文件的安全程度,目前暴力破14位以上密码可能需要几百年)
创建完成后,你向 EncFs/Photos 中放入文件,对应的加密目录 .encrypted/Photos 也会生成加密文件。Dropbox 发现变更后会自动上传加密文件。

5、卸载加密目录

不使用时,断开映射关系。EncFs/Photos 中的内容恢复,没有任何文件痕迹。

sudo umount ~/EncFS/Photos/

6、重新挂载加密目录

指令与初始化时一样,EncFS 发现目录已经加密就不会让你再初始化了。

encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos

也可以将这个过程做一个 sh 文件,简化挂载过程

#!/bin/bash
# if the script was not launched from a terminal, restart it from a terminal
if [[ ! -t 0 ]] && [[ -x /usr/bin/x-terminal-emulator ]]; then
   /usr/bin/x-terminal-emulator -e "bash -c \"$0 $*; read -s -p 'Press enter to continue...'\""
   exit
fi

mkdir -p ~/EncFS/Photos
encfs /opt/noah/Dropbox/.encrypted/Photos/ ~/EncFS/Photos


四、效果

1、加密目录数据

2、映射目录数据(映射后)

3、云端数据

五、总结

由于文件在本地就已经加密。就算云传输通道不安全,云存储不安全,对我来说已经足够安全了。
我再强调一下,安全都是相对而言的。没有绝对安全的事物,也希望大家不要因为这点问题而争论不休。

共有 人打赏支持
粉丝 138
博文 59
码字总数 48419
评论 (22)
迷路的游侠
79
shanrenren
null
张露兵
该回复已被加密。
Chriesh
KWOjq6f09,dFFD90rjg
阿唐
$272@&fdsdhw2 2g5jwwb
Raymin
确实要加密,我的文件放入 DropBox 之前,都加密过了。
srwth
有用
anglix
有必要吗?哪天加解密出问题你就死惨了!
网盘服务端一般也会加密,而且服务器上不会简单直接的存储目录结构。
设想一下,你要做一个网盘,面对全国甚至全球用户,你会怎么做?

如果把用户目录原样存储,那么相同的文件怎样排重……

我认为更重要的是:选择一个靠谱公司的产品(公司口碑好,不易倒闭)、保护好自己的密码!
SamuelJames
把加密目录下的.encfs6.xml文件删除就不能解密了,这个文件保存有加密后的Key和加密算法等相关信息。要是这个文件丢失的话有点麻烦。
姚文强
http://www.cnbeta.com/articles/275314.htm
这篇文章对众吊丝来说应该更有吸引力
景愿
别折腾这些东西,根本没人在意你硬盘放了什么,直接上传就OK了
郭大侠
好文,说到心坎里去了!
谭健。
http://www.howtogeek.com/121737/how-to-encrypt-cloud-storage-on-linux-and-windows-with-encfs/
newwell
5aSn5ZOl5L2g5aW95bGM5ZWKLOaIkeWPiOmVv+efpeivhuS6hi4
袁国涛
有些东西确实需要加密,上传的时候老告诉你文件名有敏感词,希特
neoaries
有那麼大的網盤嗎?10g?
Andyfoo
云存储主要是照片,视频
小鲅鱼
FileVault
谭健。

引用来自“neoaries”的评论

有那麼大的網盤嗎?10g?

百度2T,腾讯10T
neoaries

引用来自“谭健。”的评论

引用来自“neoaries”的评论

有那麼大的網盤嗎?10g?

百度2T,腾讯10T

免費?
×
NoahX
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: