在2017杭州·云栖大会上,阿里云发布了全新一代的计算类服务器产品--神龙云服务器(X-Dragon Cloud Server)。

神龙云服务器是一种可水平弹性伸缩的高性能计算服务,融合了物理机与云服务器的各自优势,实现超强、超稳的计算能力。

通过采用自主研发的虚拟化2.0技术,神龙云服务器兼有普通云服务器的弹性和物理机的高计算性能及物理级别隔离的优势。同时,秒级交付的特性将更好地满足大中型企业的高性能弹性计算的需求。

神龙服务器的核心亮点之一就是加密计算。

第一部分:加密计算是什么,和它所带来的改变

阿里云加密计算是一种高等级的数据保护技术。通过“芯片级”的可信执行环境,可以让数据所有者最大程度地对云上数据进行保护。

对于客户来说,阿里云加密计算可确保客户云主机上只存有加密过的数据,任何其他人包括云厂商都无法接触到明文数据。客户可以自由地选择适合自己的加密计算方案,并在云上使用。当需要数据明文时,也可通过阿里云加密计算,在硬件层可信执行环境中,将数据安全解密和计算。

阿里云加密计算,目前基于芯片级”可信执行环境作为基础。该技术可以提供最高强度的关键数据和代码运行保护(其设计模型如下图所示),默认可信执行环境之外的所有计算环境,都是不可信的,所有加密信息只能在可信执行环境中运算。其中,“不需要信任”的部分包括了系统硬件,系统固件比如BIOS系统, 虚拟机底层管理器,操作系统内核,其他高权限客户进程,以及本进程内除了可信执行环境以外的所有代码。这些不可信系统部分的隔离是基于高强度的芯片保护,任何属于非信任环境的代码都无法读取数据可信执行环境内部的关键数据。

浅析神龙云服务器背后的加密计算技术

阿里云加密计算技术和以往的加密保护相比,有以下区别:

加密计算技术基于处理器芯片,直接提供硬件可信执行环境,其信任根是基于处理器芯片,而不是基于底层软件保护,比如虚拟机管理器或者操作系统内核。

加密计算技术通过硬件可信执行环境,给客户提供足够灵活的加密方案,由客户自己来定义和控制,确保客户的加解密密钥以及算法,都在自己的控制下。

加密计算技术不需要信任除了硬件可信执行环境以外的任何代码的数据,从而提供更高等级的安全保护。

加密计算技术最大化地复用了处理器的计算能力,这样加密计算本身的计算处理性能充分发挥了处理器的性能。

阿里云加密计算是在硬件层面的“芯片级”数据保护方案。除了加密计算之外,阿里云也提供了全链路的数据加密方案确保客户数据安全及隐私,覆盖物理安全,硬件安全,存储安全,密钥管理,传输加密相关的各个环节。

数据安全和隐私保护是阿里云的第一原则。目前,阿里云自身也在逐步采用加密计算技术保护内部的敏感数据,比如关键密钥,敏感配置信息等,提升云平台的安全度和强韧度。同时,阿里云也将加密计算能力输出给客户。客户可以通过购买特定的神龙云服务器以获取加密计算服务,具体的神龙云服务器原型将很快在官网发布。

第二部分:阿里云加密计算技术原理,以及客户如何用好它

1、加密计算基本架构和使用实例

下面让我们看看加密计算的基本架构。

浅析神龙云服务器背后的加密计算技术

如上图所示,计算环境是加密计算的技术基础,也是完成信息流转的基本计算节点。

为避免客户的数据在未经授权的数据访问中泄露,所有在加密计算环境外流转的敏感数据都处于加密状态。

也就是说,当客户需要对自己敏感数据进行访问和计算时,可以通过在加密计算环境中的授权代码对数据进行恢复,并进行计算。这些关键操作都是在被保护的环境,也就是加密计算环境中进行的。

加密计算环境的安全性是整个加密计算安全性的基石。

当客户使用加密计算技术时,需要通过完整的数据闭环,来确保对数据的保护。下面我们举例说明,如何通过其中的一种加密计算方案,保护客户数据安全。

第一步,客户可以在自己可信的环境下,选取加密数据密钥,对敏感信息明文进行加密,再上载到阿里云客户主机上。

浅析神龙云服务器背后的加密计算技术

第二步,由客户编写需要运行在加密计算环境中的解密程序和运算算法,这里我们统称计算算法。客户需要对加密计算环境中的计算算法程序进行签名,并启动加密计算环境保护这段程序。

浅析神龙云服务器背后的加密计算技术

第三步,客户需要对加密计算环境中的程序进行远程验证,确认加密计算环境的完整性。同时,通过加密计算环境公私密钥对的公钥,加密原始的数据密钥,传输到加密计算环境中,解密,获得数据密钥。这里的公私钥可以使用加密计算环境的硬件特有密钥对,也可以是加密计算环境中的代码,动态生成的密钥对。

浅析神龙云服务器背后的加密计算技术

第四步,这时,客户在加密计算环境中的计算算法,就可以通过数据密钥,将在本地的加密数据,在加密计算环境中进行解密并计算了。到这里,客户的明文数据,除了在客户端可信环境外,只能在客户独有的阿里云加密计算环境中动态出现。

这就意味着,客户云主机上只存有加密过的数据,任何其他人包括云厂商都无法接触到明文数据。

浅析神龙云服务器背后的加密计算技术

2、客户使用场景

加密计算适用于任何需要对敏感数据加以高等级保护的行业和客户,尤其是金融、医疗、以及部署机器学习计算的客户。

这里我们举机器学习的例子,帮助大家了解加密计算的使用场景。

今天,通过大数据学习,很多人工智能的应用都需要采用一个机器学习模型。这个模型往往是通过大量数据训练所得出的。那么,当客户将人工智能应用开发成一个云应用,开放给最终用户的时候,如何保护机器学习模型是一个很现实问题。

如果机器学习模型被其他人掌握,模型则有可能被别人复制使用或绕过。以前,我们只能通过代码混淆,软件加密等中低强度的方法对这些重要的模型进行保护。

而通过采用加密计算技术,客户可以将机器学习模型加密,并通过开发特定的、使用加密计算的模型预测程序,在加密计算环境中使用机器学习模型,保证任何在加密计算环境之外的软件、硬件都无法获取到真实的机器学习模型数据,大大加强了数据安全的强度。