企业和学校增加使用Google Drive等服务已经有一段时间,许多的个人用户也将文件存储在Dropbox、Box、Amazon Drive、Microsoft OneDrive等云存储服务上。他们无疑会担心保持其信息的私密性——如果更确定个人数据的安全性的话,那么选择在线存储数据的人可能会多数百万人。
存储在云端的数据几乎都是以加密的形式进行存储,入侵者需要破解以后才能读取那些信息。但是,云计算和云安全的学者发现,各项云存储服务加密密钥的存放地方不尽相同。另外,不管所使用的系统采用何种构造,用户都可以通过一些相对简单的方法来提升自己的数据安全性。
谁保管加密密钥?
商业云存储系统使用特定的加密密钥来对每个用户的数据进行编码。没有它,那些文件看起来会非常混乱,毫无用处——不是有意义的数据。
但谁保管密钥呢?它可以由服务本身储存,也可以由个人用户储存。大多数服务都自己保留密钥,让它们的系统查看和处理用户数据,比如为未来的搜索索引数据。当用户使用密码登录时,这些服务也可以访问密钥,解锁数据以便用户使用。这比用户自己保管密钥要方便得多。
但是那样也没那么安全:就像普通的钥匙一样,如果让其他人拿着,那么它们有可能会被盗用或者被滥用,而数据拥有者毫不知情。而且有些服务可能在安全实践中存在漏洞,导致用户数据容易失窃。
让用户保有控制权
一些不太流行的云服务(包括Mega和SpiderOak)则要求用户通过包含加密功能的专用服务客户端应用程序来上传和下载文件。这个额外的步骤让用户自己保管加密密钥。为了获得那种额外的安全性,用户需要放弃一些功能,例如在他们的云存储文件中进行搜索的功能。
这些服务并不完美——它们自己的应用仍然有可能会遭到入侵,令入侵者能够在文件上传加密之前或者在下载和解密之后读取文件。加密云服务提供商甚至可能在其特定的应用中嵌入可能会给数据带来失窃风险的功能。当然,如果用户丢失密码,那其数据是不可挽回的。
有款新的移动应用表示,它能够让手机照片保持加密状态,从它们被拍下的那一刻起,到传输和存储到云端。未来可能还会出现为其他类型的数据提供保护的其他新服务,不过用户还是应当防范照片被拍下之后的瞬间、在加密和存储之前信息被劫持的可能性。
自我保护
为了最大限度地提高云存储的安全性,最好同时结合这些不同方法的特点。在将数据上传到云端之前,先使用你自己的加密软件来对其进行加密。然后将编码后的文件上传到云端。在再次访问文件的时候,登录到服务,然后下载并自行解密。
当然,这会让用户无法利用上各种各样的云服务功能,如共享文档的实时编辑和搜索云存储文件。提供这些云服务的公司还是有可能会修改那些数据,如在你下载以前改动加密文件。
防止这种情况的最佳办法是,采用验证加密。此方法不仅存储加密文件,而且还存储让用户检测文件自创建以来是否被修改过的附加元数据。
对于不想学习如何编程自己的工具的人来说,有两个基本的选择:寻找一项拥有可信赖的上传和下载软件的云存储服务,该软件是开源的,并且已经通过了独立安全研究人员的验证。或者使用可信赖的开源加密软件在将数据上传到云之前对其进行加密;这些适用于所有的操作系统,且通常是免费的或者非常便宜的。