解决现代隐私挑战的新方法

IronCore Labs产品更新

在过去的12个月里,IronCore不断推出新产品、新功能、在性能、可用性等方面取得重大飞跃。

如果你和我们一样,你可能会发现这些天很难从新闻的洪流中移开视线。在2020年的旋风中,我们想回顾一下过去一年我们在产品线方面取得的进展。

新产品名称

我们最近更改了一些核心产品的名称,以承认它们已经超越了原来的用例,增加了新的功能。

数据控制平台

我们的零知识sdk,支持基于加密的访问控制,我们曾经把它称为端到端加密工具包,现在是数据控制平台.我们做这个改变有几个原因,但其中之一是,虽然我们所做的基本上是由密码学驱动的,但我们也不止于此。例如,我们非常强调审计跟踪、数据管理策略和其他方面,这些方面使数据所有者能够控制他们的数据。

除了通常认为的端到端加密场景中的客户端用例外,我们还支持服务器端加密和解密,两者的混合.通过扩展名称的范围,我们希望人们能够考虑更广泛的用例,在这些用例中,他们希望严格管理和保护数据。

SaaS盾™️

我们的SaaS客户管理密钥产品现在被称为SaaS Shield。与我们的核心平台一样,我们扩展了产品的功能。我们支持客户持有的加密密钥,并且我们将很快发布对SaaS客户安全日志基础设施的近实时日志流的支持。这个日志流将首先包括数据访问事件,但很快就会加入其他出于安全性和遵从性原因而感兴趣的事件,比如对用户、组和权限的更改。

数据控制策略和编辑器

我们的数据控制平台的一个常见用途是确保只有特定的用户和系统可以看到特定类别的信息。我们的核心是通过公钥加密和组来实现这一点。但在更复杂的系统中管理团队可能会很麻烦。所以我们去年发布了政策的最初版本。

数据控制策略允许您用敏感性级别(可定制,但例如,低/中/高或公共/私有/受限)和类别(也可定制,但例如,HR/Finance/Legal/Health)标记数据。

然后,您可以确定哪些用户集(雇员甚至客户)应该能够访问敏感性和类别的每个组合。

直到最近,建立这些策略规则还意味着手写配置文件。我们很高兴地宣布,我们现在有了一个图形化的策略编辑器,管理员可以用来创建和维护他们的数据策略。

用于数据控制策略的新的图形化策略编辑器

加密字段搜索

在数据控制平台中,IronCore现在支持对加密数据的搜索和过滤,包括子字符串搜索。

这是一件大事。

当我们告诉人们应该加密和控制他们的数据时,我们最常听到的事情之一是担心它将变得无用。例如,加密客户的家庭地址听起来很棒,但由于商业原因,需要有人调出居住在某个特定城市的所有客户的记录。

以前,您需要维护一个单独的索引,以根据特定属性查找记录(这可能泄露大量敏感数据),或者在客户机中提取所有记录并对它们进行解密和过滤。现在,搜索和筛选操作可以在服务器上进行,而服务器看不到任何未加密的数据。

这个特性特别适用于搜索通常包含少量数据的字段(大致从一个单词到一个段落)。IronCore还不支持安全的加密搜索方法来搜索更大的文本大小,比如完整的文档搜索。

扩展语言和平台支持

我们的目标是,没有任何理由不严格控制和保护私有数据。我们认为这就是现代应用程序的构建方式,我们希望每个人、每个地方都能使用它。

这么做,你不应该相信我们。这意味着我们,IronCore实验室,永远不应该有访问或访问任何人的私人数据的能力。我们从未见过明文数据或私钥,这意味着所有加密和解密操作都发生在客户机设备上或我们客户的基础设施内。因此,我们必须支持各种平台和语言。

我们努力建立广泛的支持。我们已经投入了大量的时间、金钱和精力来使我们的图书馆便携化。下面是我们目前的支持列表。如果您的首选语言或平台没有在下面列出,请与我们联系。

数据控制平台语言支持

在过去的一年里,我们扩大了我们的语言支持,现在我们支持所有这些语言:

  • 生锈
  • Java
  • Scala
  • 打印稿
  • JavaScript
  • c++
  • 斯威夫特(β)

我们支持以下平台:

  • 网页浏览器(带有WebAssembly)
  • NodeJS
  • macOS本地
  • Linux本地
  • Windows原生
  • Android原生
  • iOS本地(β)

SaaS屏蔽语言支持

SaaS Shield是一个服务器端加密/解密解决方案,不需要我们的数据控制平台所需的广度支持。然而,数据控制平台支持的任何语言和环境都可以由我们的SaaS Shield sdk支持。如果您想要求以下未列出的支持,请联系我们。

运行时:

  • JVM
  • NodeJS

我们在NodeJS上支持TypeScript和JavaScript,也支持任何JVM语言,包括Java和Scala。这些应该可以在任何平台上工作,但是我们专门测试并支持Linux服务器环境。

无缝旋转私钥

有了IronCore的数据控制平台,当数据被加密到组而不是直接到用户时,总是很容易旋转设备密钥和用户密钥。使用我们针对用户和组的多方计算,我们现在能够旋转用户的私钥,即使数据是直接加密给他们的,而不需要更改已经加密的数据。

这种功能的一个关键驱动因素是端到端加密系统经常面临的鸡和蛋的问题:我们如何给尚未生成密钥的人加密数据?

当目标是加密数百万消费者的数据时,这个问题尤其困扰,每个消费者的数据都被加密给他们,解密权以一种可撤销的方式委托给公司。我们称之为GDPR模式,它很有效,但是直到最近,我们还没有一个好的方法来导入现有的数据存储库,并在没有现有密钥的情况下一次性对其进行加密。

现在我们可以。

通过使用私钥旋转,服务器进程可以为用户生成密钥,将其数据加密到公钥中,并将解密工作委托给公司。私钥是加密的,并使用一种模型来分割IronCore和我们的客户之间的信任。

这个过程使用户的密钥处于部分受损害的状态。服务器系统已经看到了这些用户的私钥,如果有人设法捕获了这些私钥,那么用户的数据就会被泄露。注意,此时服务器可以看到纯文本,所以我们主要关注数据未来的更改。

现在,当用户第一次登录时,如果为其生成了密钥,则会旋转其私钥。他们仍然可以访问之前加密给他们的数据,但任何存储了他们的初始私钥的服务器都会发现它没有用。

所有这些都是在幕后完成的,所以用户不需要做任何特别的事情,甚至不需要知道密钥来保护他们的数据安全。

额外的功能

性能

去年,我们为SaaS Shield和数据控制平台的性能投入了大量精力。

对于SaaS Shield,我们将租户安全代理从NodeJS转移到Rust,并看到了60%的提速。然后,我们在客户机和服务器上添加了对批处理操作的支持,并使用自动多线程。

我们更新了数据控制平台的锈库,添加了异步接口和非阻塞I/O,因此嵌入应用程序可以利用其任务中的并行化来实现更高的性能和吞吐量。我们的大多数sdk都来自这个库,因此它们提供了类似的性能提升机会。

最后,对于数据控制平台,我们添加了公钥的客户端缓存,以便大批量加密操作(如初始导入)可以重用公钥,而无需进行网络调用。使用缓存的密钥,并在线程模式下运行时,我们的吞吐量现在是每个加密操作大约10毫秒。我们还提供了原始基准测试结果,并在库中提供了如何自己运行基准测试的说明。

Protobuf支持

我们在数据控制平台中添加了对protobufs的支持,以及在这些protobufs中对数据进行分类的机制。这与策略特性相吻合,并允许在protobuf定义级别对数据进行分类。

内存保护

包含加密例程的recrypt库是我们大多数产品的基础,它获得了内存保护技术。在受支持的平台上,我们能够尽可能防止保存私钥和纯文本的内存作为内存交换或核心转储的一部分被写入磁盘。这样可以更好地保护那些只打算在记忆中短暂停留的秘密。

回顾过去,展望未来

阅读了所有这些更新和新功能后,我为我们所取得的成就感到兴奋。我们的团队花了大量的时间基于客户的反馈来改进我们的产品,这一点很明显。

数据控制平台和SaaS Shield产品是软件公司面临的许多现代数据隐私挑战的答案。随着这些挑战的发展,我们的产品线也在发展。我们致力于倾听客户的意见,向行业同行学习,建立一家专注于通过数据控制让世界变得更安全的公司和运动。

如果你想提升你的数据隐私游戏,或者构建你的下一个以隐私为核心的应用程序,我们希望听到你的意见。让我们谈谈。

咸的散列

关于构建安全的提示、技巧、指针和透视图…

多亏了Riah所罗门鲍勃墙

写的

学者,梦想家,创造者,冒险家,黑客,领导者和观察者。提倡隐私和安全。首席执行官IronCore实验室。

咸的散列

关于构建安全、可测试、可维护的应用程序的提示、技巧、指针和观点。来自IronCore实验室的关于安全和隐私的想法和观察。

写的

学者,梦想家,创造者,冒险家,黑客,领导者和观察者。提倡隐私和安全。首席执行官IronCore实验室。

咸的散列

关于构建安全、可测试、可维护的应用程序的提示、技巧、指针和观点。来自IronCore实验室的关于安全和隐私的想法和观察。

媒介是一个开放的平台,1.7亿读者可以在这里找到深刻和动态的思考。在这里,专家和未被发现的声音同样会深入任何话题的核心,并带来新的想法。了解更多

关注与你有关的作家、出版物和主题,你会在你的主页和收件箱中看到它们。探索

如果你有故事要讲,有知识要分享,有观点要提供,欢迎回家。发布你对任何话题的想法都是很容易和免费的。开一个博客

获取媒体应用程序

有一个“在App Store上下载”的按钮,点击它就会引导你进入iOS App Store
一个按钮,上面写着“Get it on,谷歌Play”,如果点击它,你就会进入谷歌Play商店