写点什么

MongoDB 发布可查询加密预览版,数据库历史上首次

  • 2022-06-17
  • 本文字数:2425 字

    阅读完需:约 8 分钟

MongoDB发布可查询加密预览版,数据库历史上首次

近日,MongoDB 发布可查询加密(Queryable Encryption)预览版,该系统支持客户从客户端加密敏感数据,将完全随机加密的数据存储在数据库服务器端,并对加密数据执行表达式查询。

 

据悉,可查询加密由 MongoDB 高级密码学研究小组设计,加密搜索领域的开拓者 Seny Kamara 和 Tarik Moataz 担任小组负责人。研究小组在密码学领域开展前沿同行评审研究,并携手 MongoDB 工程团队,将密码学和隐私方面的最近创新成果应用到 MongoDB 数据平台。


过去,用户往往会面临两难选择,要么选择保证数据安全,要么选择数据是可查询的,如今有了可查询加密,用户将不再需要“二选一”。据介绍,MongoDB 是目前唯一一家支持客户对完全随机加密数据执行表达式查询的数据库提供商,包括等值查询(预览版中可用)、范围查询、前缀查询、后缀查询、子串查询等(即将推出)。


MongoDB CTO Mark Porter 在接受采访时表示:“这在数据库的历史上是第一次,用户可以针对随机加密数据做到非常复杂的表达式查询,这是非常有意义的一件事。”他还透露,后续可查询加密会进行开源公布,包括算法和数据方面的一些成果。

为什么可查询加密是一项重要技术?


随着越来越多的企业将各类数据传输和存储到云端,数据安全变得愈加重要。具有高敏感工作负载的企业需要采用额外的技术方案,以控制和限制对机密和受监管数据的访问。对于许多企业和机构客户来说,合规部门规定对部分敏感工作负载采用职责分离原则。例如,在证券公司,分析师可以查询客户和股票数量信息,经纪人可以代表投资者进行股票交易,数据库管理员(DBA)负责管理数据等,在这种环境下,需要将证件号码(SSN)这样的敏感和个人身份信息(PII)完全隐藏。

 

遵守数据隐私和客户数据保护是企业需要重点关注的另一个领域。这既适用于使用数据的客户,也适用于为客户存储数据的供应商。数据隐私法规涉及到遵守行业内外与保护敏感数据有关的法律。确保遵守所有保护客户敏感数据的措施是关键的一步骤。个人健康信息(PHI)和个人身份信息等高敏感性信息是典型的需要数据隐私保护的信息。

数据安全的现状和挑战


尽管现有加密解决方案(传输中的数据和静态数据)涵盖许多监管场景,但都无法在敏感数据使用过程中对其进行保护。对于金融服务、医疗保健和关键基础设施企业等领域的客户来说,高敏感性工作负载往往需要采用能够对使用中的数据进行加密的技术。目前,此类技术面临的挑战包括:

 

  • 针对使用中数据的加密技术极其复杂,需要使用来自应用程序端的自定义代码,以便对数据进行加密、处理、筛选和解密,并将其提供给用户。此外,该技术还涉及到加密密钥管理,以便对数据进行加密和解密。

  • 开发者需要掌握一定的密码学经验,以设计出安全的加密解决方案。

  • 当前解决方案的查询功能有限,甚至有一些不具备查询功能,这导致应用层数据加密变得格外困难。

  • 在针对海量加密数据搜索时,部分现有工具(如同态加密或安全隔区)要么需要专有硬件、要么难以满足性能要求、或者加密的安全性难以保证,或者具有不确定的安全属性。 

可查询加密简介


可查询加密消除了繁重的维护任务,在不影响数据保护、合规性和数据隐私安全要求的情况下,提升了应用程序开发速度。



加密字段始终以密文形式存储、传输、处理、检索及查询

 

以下是一个操作流程示例,一位认证用户希望查询数据,如今用户可查询完全随机加密的数据。在本例中,假设我们正在检索用户的社会安全号码。

 

  1. 应用程序提交查询后,MongoDB 驱动程序首先分析查询内容;

  2. 当驱动程序识别出查询内容为加密字段时,会向客户指定的密钥管理服务发出加密密钥请求,例如 AWS 密钥管理服务(AWS KMS)、谷歌云密钥管理服务(Google Cloud KMS)、Azure Key Vault,或任何支持密钥管理互操作协议(KMIP)的密钥管理程序,如 HashiCorp Vault;

  3. 驱动程序将查询的加密字段以密文方式,提交给 MongoDB 服务器;

  4. 可查询加密采用一种快速、可搜索的方式,支持服务器在对数据一无所知的情况下执行完全加密数据查询流程。在此过程中,数据和查询信息本身在服务器中始终保持加密状态;

  5. MongoDB 服务器将加密的查询结果返回给驱动程序;

  6. 查询结果经过驱动程序密钥解密,并以明文形式返回给客户端。

可查询加密的优势


  1. 丰富的加密数据查询功能:MongoDB 据称是目前唯一一家支持客户对加密数据执行丰富查询表达式(包括范围查询、等值查询、前缀查询和后缀查询等,其中等值搜索查询功能在预览版中可用,其余搜索功能将在未来版本中发布)的数据库提供商。对于那些既需要执行表达式查询,又需要确保数据安全的客户而言,可查询加密可以同时满足他们的需求。

  2. 数据全生命周期加密:可查询加密为最敏感的数据增加了另一层安全保障,确保数据在传输中、磁盘存储中、内存处理中、日志中和备份中都安全无虞。此外,可查询加密支持在服务器端采用完全随机的方式加密数据。

  3. 更强大的关键数据隐私保护技术、更广泛的应用场景:借助强大的技术保护功能,客户可使用基于标准的加密技术来满足最严苛的数据隐私要求(包括数据保密性和数据完整性)。客户可以始终保持对加密密钥的控制,确保数据加密/解密操作仅限于客户端。这样,可确保只有获得客户端应用程序访问权限和加密秘钥的授权用户才能看到明文数据。以上强大的控制功能可以助力客户满足各种全球数据安全规范,如健康保险可携性和责任法案(HIPAA 法案)、通用数据保护条例(GDPR)和加州消费者隐私法案(CCPA)等法律规定的数据隐私要求。

  4. 提升应用程序开发速度:开发者无需具备专家级的加密经验,也可以以最高级别的机密性和完整性保护数据。不像采用软件开发工具包(SDK)开发,SDK 的设计选择错误,安全性就会随之降低。可查询加密提供了一种更全面的加密解决方案,其采用基于标准的加密技术并支持强大的密钥管理功能。配置过程简单,且可以通过常见的 MongoDB 驱动程序的直接实现。

  5. 降低制度风险:迁移到云端的客户可放心地将敏感数据存储在 MongoDB Atlas 中。可查询加密不仅支持客户始终控制数据的使用,同时还提供丰富的表达式查询功能,使客户可以查询完全随机的加密数据。

 

2022-06-17 13:113624
用户头像
蔡芳芳 InfoQ主编

发布了 780 篇内容, 共 493.1 次阅读, 收获喜欢 2748 次。

关注

评论 1 条评论

发布
用户头像
完全随机是什么意思啊

可查询加密支持在服务器端采用完全随机的方式加密数据。

2022-06-25 10:48
回复
没有更多了
发现更多内容

一篇万字博文带你入坑爬虫这条不归路 【万字图文】

孤寒者

爬虫 6月月更 爬虫必备知识讲解 万字图文 爬虫入坑文

优酷移动端弹幕穿人架构设计与工程实战总结

阿里巴巴文娱技术

技术 音视频 弹幕 视频 移动端

从“预见”到“遇见”SAE 引领应用步入 Serverless 全托管新时代

Serverless Devs

阿里云 Serverless

安势信息技术市场总监王峰,OpenChain线上研讨会首秀!

安势信息

Linux 开源 DevSecOps SCA SCA工具

选择广州软件定制开发的10个理由

低代码小观

软件开发 管理软件 企业管理软件 项目管理软件 软件定制

软件开发教父 Martin Fowler:幸好我当初没把它扔进垃圾桶

图灵教育

软件开发

打金?工作室?账号被封?游戏灰黑产离我们有多近

行者AI

面向高校 | “云原生技术应用与实践”示范课程项目开放申报

Serverless Devs

常见滑动窗口实现(Java语言实现)

工程师日月

6月月更

【智人智语】剑维软件大中华区油气和智能制造业务部总经理刘晓光:我谨代表剑维软件预祝第六届世界智能大会圆满成功

InfoQ 天津

OpenHarmony 3.2 Beta1版本正式发布

OpenHarmony开发者

Open Harmony

程序员自我修炼:《匠艺整洁之道》读书总结

博文视点Broadview

信息时代,您需要这样的知识管理工具

小炮

【爬虫必备->Scrapy框架】初篇

孤寒者

爬虫 6月月更 scrapy框架

大型物联网平台如何来保障亿级设备安全连接上云?

华为云开发者联盟

物联网 华为云 iotda 大型物联网平台

2022年软饮料国潮发展洞察报告

易观分析

饮品市场

新一期HarmonyOS认证正式发布,速来围观!

HarmonyOS开发者

HarmonyOS

flutter系列之:用来管理复杂状态的State详解

程序那些事

flutter 程序那些事 6月月更 widget

一键部署Java构件到Nexus,同事见了都说好

Jianmu

后端 持续集成 私服 自动化运维 Java构件

InfoQ 极客传媒 15 周年庆征文|业务中台与B-PaaS的前世今生

小诚信驿站

架构 如何落地业务建模 领域建模 热门活动 InfoQ极客传媒15周年庆

小程序IDE,大趋势下催生的效能提速工具

Speedoooo

ide 效率工具 编程效率 移动开发 APP开发

微信团队分享:微信后台在海量并发请求下是如何做到不崩溃的

JackJiang

微服务 即时通讯 im开发 微信架构

重磅!KubeEdge单集群突破10万边缘节点|云原生边缘计算峰会前瞻

华为云开发者联盟

云计算 云原生 华为云

当运行npm install 命令的时候带上ignore-scripts,会发生什么?

华为云开发者联盟

前段

趣步运动挖矿系统开发模式分析

开发微hkkf5566

EMQ&思岚科技:物联网+AI支援抗疫,“无接触”机器人保障上海方舱稳定运转

EMQ映云科技

物联网 IoT mqtt emq 6月月更

大容量、高性能,国家级实验室分布式并行文件存储实践

焱融科技

人工智能 大数据 AI 基础设施 存储

最好用的 6 个 React Tree select 树形组件测评与推荐

蒋川

低代码 开发工具 React 组件 树形选择器

创新不止,英特尔强调HPC的开放性和可持续性

科技之家

C#入门系列(六) -- 分支语句

陈言必行

C# 6月月更

NFT+DeFi链游系统开发技术

薇電13242772558

NFT

MongoDB发布可查询加密预览版,数据库历史上首次_数据库_蔡芳芳_InfoQ精选文章