写点什么

迈向更好的云安全:可搜索的加密

  • 2010-01-19
  • 本文字数:1399 字

    阅读完需:约 5 分钟

微软研究院密码技术小组 Seny Kamara Kristin Lauter ,在题为《加密的云存储》 (PDF) 的白皮书中,提出了“虚拟的私有云服务”,那是一种由公有云使用新的加密技术所提供的服务。

最近,云计算已经取得了一些进展,并且有人认为 2010 年是云计算之年。使用云计算的好处已经是众所周知的,然而安全方面的考虑是采用它的障碍。如果个人使用某公司提供的在线存储服务,而该公司拥有很好的安全历史记录,那么这是没有问题的,但是对于公司和政府机构来说,他们非常不愿意将数据放在具有很多不确定性的公有云中。

Kamara 和 Lauter 提出了一种虚拟的私有存储服务,它会满足以下需求:

  • 保密性:云存储的提供商不会从客户的数据中得到任何信息。
  • 完整性:任何由云存储提供商所进行的对客户数据未授权的修改,都会被客户侦测到。
  • 不可否认性:任何对客户数据的访问都会被记录,同时还保留了公有存储服务的主要优势。
  • 可用性:客户数据可以在任何时间,从任何计算机被访问。
  • 可靠性:客户数据会被可靠地备份。
  • 高效检索:数据检索的次数和公有的云存储服务相差无几。
  • 数据共享:客户可以与其信任的组织共享他们的数据。

大多数需求都是通过对存储在云中的文档进行加密才解决的,但是加密使得在这些文档中进行搜索,或者在实时编辑的时候进行协作变得很困难。《加密的云存储》白皮书为加密的存储服务提出了一种架构,这会解决“备份、归档、健康记录系统、安全数据交换以及电子发掘(e-discovery)”等安全问题。

该架构的创建基于以下三个组件:

  • 数据处理器(DP)——在将数据传送到云上之前对其进行处理。
  • 数据校验器(DV)——校验数据的完整性。
  • 令牌生成器(TG)——生成允许服务提供商取得文档的令牌。

个人消费者的解决方案涉及到使用本地的应用程序,它拥有上述三个组件。在将数据上传到云之前,Alice 会使用数据处理器将文档与其元数据(标签、时间、大小等等)一起加密和编码,然后她会将其传送到云上。当她需要下载一些文档的时候,Alice 会使用 TG 来生成一个令牌和一个解密的密钥。令牌会被发送到存储提供商,以选择需要下载的被加密文件。然后,DV 会被启用,以使用主密钥(master key)来校验数据的完整性。解密密钥会被用来对文档进行解密。

协作是通过 Alice 生成新的令牌还有解密密钥完成的,密钥会被传送给 Bob,他会使用密钥从云中取得文档并对其进行解密。

对于企业,白皮书提出了类似的方法:

该解决方案提出,要引入额外的证书生成器(CG),它会为所有向云中存储文档或者从云中取得文档的用户生成令牌。证书令牌会确定用户对于特定的文档拥有什么样的权限,从而被用于管理对文档的访问。这个过程其余的部分与消费者的架构的过程是类似的。

为了为云准备数据,数据处理器会:

首先为其建立索引,并使用对称的加密模式(例如 AES)以唯一的密钥对其进行加密。然后它会使用可搜索的加密模式对索引进行加密,用基于属性的加密模式以恰当的手段对唯一密钥加密。最终,它会对加密的数据和索引进行编码,编码的方式使得之后数据校验器能够使用存储证据来验证数据的完整性。

微软研究院密码技术小组和其他的研究机构已经开发出了针对可搜索的加密方法的技术,但主要的问题是它们非常慢,以至于让人无法接受,对一个单独的词的搜索会花费几十秒。在可搜索的加密方法成为虚拟的私有存储服务的可行的解决方案之前,在该领域还需要更多的研究和提高。

查看英文原文: A Step Toward Better Cloud Security: Searchable Encryption

2010-01-19 22:513199
用户头像

发布了 340 篇内容, 共 128.3 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

线性表→顺序表→链表 逐个击破

C++后台开发

数据结构 linux开发 Linux服务器开发 顺序表 C++开发

极客时间运维进阶训练营第七周作业

独钓寒江

鸿蒙开发实例|构建轻量级智能穿戴设备用户界面

TiAmo

华为云 鸿蒙开发 12月月更

阿里巴巴最新推出王者笔记:“Spring MVC源码与实践”

钟奕礼

Java 程序员 java面试 java编程

纯干货,不愧是阿里顶配版Spring Security笔记,面面俱到太全了!

架构师之道

Java spring 架构师

2022年中国期货行业年度发展观察分析

易观分析

金融 期贷

面试官问对分布式锁进行高并发优化,这样答,成功斩获大厂offer

钟奕礼

Java 程序员 java面试 java编程

爱了!阿里巴巴JAVA岗发布,最新内部面试题(含P5-P7)

钟奕礼

Java 程序员 java面试 java编程

三年Crud,一周学会MySQL,助我拿到阿里研发Offer

钟奕礼

程序员 java面试 java编程 #java

easyrecovery2024永久免费版数据恢复软件

茶色酒

EasyRecovery15 easyrecovery2023

Seata分布式事务你懂吗?学习了大佬的笔记,公司说要给我涨薪8K

钟奕礼

Java 程序员 java面试 java编程

天天刷 B站,了解他们的评论系统是如何设计的吗?

小小怪下士

Java 程序员 系统设计

没有二十年功力,写不出Thread.sleep(0)这一行“看似无用”的代码!

钟奕礼

Java 程序员 java面试 java编程

理解Java的强引用、软引用、弱引用和虚引用

钟奕礼

Java 程序员 java面试 java编程

不掌握这些坑,你敢用BigDecimal吗?

钟奕礼

Java 程序员 java面试 java编程

深入浅出学习透析 Nginx 服务器的基本原理和配置指南「运维操作实战篇」

洛神灬殇

nginx web服务器 运维开发 12月日更 12 月 PK 榜

前辈给的Spring Cloud与Docker微服务实战,挽救了要被辞退的我

钟奕礼

Java 程序员 java面试 java编程

在 Istio 服务网格中使用 Argo Rollouts 实现智能的渐进式发布

Se7en

云原生

还在用Jenkins?试试这款面向DevOps的自动化部署工具吧,贼带劲!

架构师之道

开源 编程

FLStudio水果2024中文免费版下载

茶色酒

FL Studio FL Studio21

基于ANTLR的Mysql语法解析

AiDaddy

MySQL ANTLR 语法解析

Discourse 本地开发环境时候出现代理错误

HoneyMoose

移动端防抓包实践

杨充

内卷这么严重!学会这些java核心资料,再也不怕行业内卷了

钟奕礼

Java 程序员 java面试 java编程

我不写单元测试,被批了

钟奕礼

Java 程序员 java面试 java编程

Verilog 表达式

芯动大师

Verilog Verilog语法 Verilog操作符

【工具安装】logstash的安装

No8g攻城狮

elastic Logstash ES ELK Stack Elastic Search

Mysql大合集,你要内容的这里全都有

钟奕礼

Java 程序员 java面试 java编程

CleanMyMac2024值不值的下载安装?

茶色酒

CleanMyMac X CleanMyMac X2023

CleanMyMac2023mac电脑清理磁盘软件

茶色酒

CleanMyMac CleanMyMacX CleanMyMac X

同事跳槽拿下阿里P6Offer,程序员:会点基础还真不行

钟奕礼

Java 程序员 java面试 java编程

迈向更好的云安全:可搜索的加密_安全_Abel Avram_InfoQ精选文章