随着隐私维护需求的日益增长,TEE 再次成为讨论的焦点。固然 TEE 在数年前就曾经被讨论过,但由于硬件安全性问题未能得到普遍采用。但是,随着 MPC 和 ZK 技术在性能和技术请求方面遇到应战,许多研讨者和开发者重新关注起了 TEE。
这种趋向也引发了 Twitter 上关于 TEE 能否会取代 ZK 技术的讨论。一些用户以为,TEE 和 ZK 是互补关系,而非竞争关系,由于它们处置的是不同的问题,且二者都不圆满。还有用户指出,AWS 和 Intel 提供的安全性比 Rollup 的多重签名维护更高。思索到 TEE 在设计空间上的扩展性,这是 ZK 无法完成的,因而这种权衡是值得的。
什么是 TEE?
TEE 其实并不是一个陌生的概念。我们常用的苹果手机中就应用了 TEE 技术,即「Secure Enclave」,其主要功用是维护用户的敏感信息和执行加密操作。Secure Enclave 集成在系统级芯片中,与主处置器隔离以确保高安全性。举个例子,每当你运用 Touch ID 或 Face ID 时,Secure Enclave 都会考证你的生物辨认信息,并维护这些信息不被泄露。
TEE全称为 Trusted Execution Environment(可信执行环境),是计算机或移动设备内的一个安全区域,独立于主操作系统运转。其主要特性包括:与主操作系统隔离,即便主操作系统遭到攻击,内部数据和执行依然安全;经过硬件支持和加密技术,避免内部的代码和数据在运转过程中被窜改;运用加密技术维护敏感数据,避免泄露。
目前,常见的 TEE 完成方式有以下几种:
-
Intel SGX:提供硬件支持的隔离执行环境,创建一个安全的内存区域(enclave)来维护敏感数据和代码。
-
ARM TrustZone:在处置器内创建了一个安全世界和一个正常世界,安全世界运转敏感操作,正常世界处置普通任务。
-
AWS Nitro Enclaves:基于 AWS Nitro TPM 安全芯片,提供在云端的可信执行环境,专为处置秘密数据的云计算场景设计。
在加密市场,TEE 技术最常用于在可信战争安的环境中中止链下计算。同时,TEE 的远程证明(Remote Attestation)功用允许远程用户考证在 TEE 中运转的代码的完好性,确保数据处置的安全性。但是,TEE 也存在去中心化缺乏的问题,由于它们依赖于如 Intel 和 AWS 等中心化供给商。假如这些硬件存在后门或漏洞,系统安全性可能会遭到要挟。但作为辅助伎俩,TEE 技术易于构建且本钱较低,合适需求高安全性和隐私维护的应用场景。这些优势也使得 TEE 技术能够应用于各种加密应用,如隐私维护及增强 Layer2 安全性等。
TEE 项目清点
Flashbots:经过 SGX 完成隐私买卖和去中心化区块构建
Flashbots 于 2022 年开端探求 SGX 等可信执行环境相关的隐私技术,并将其作为买卖供给链上无需信任协作的重要构建模块。2023 年 3 月,Flashbots胜利在 Intel 开发的可信执行环境 SGX enclace 中运转了一个区块构建器,向完成隐私买卖和区块构建者去中心化的方向迈进了一步。借助 SGX enclace,区块构建者和其他基础设备供给商无法看到用户买卖的内容,且构建者在 enclave 内构建可考证的有效区块,并照实报告其出价,可能能够消弭对 mev-boost 中继的需求。此外,这一技术有助于减少独家订单流的风险,使买卖在坚持私密的同时,依然可供一切在 enclave 内运转的区块构建者访问。
固然 TEE 的确能够提供外部资源访问及隐私维护,但其性能相较于非 TEE 技术而言并不高。而且存在一些中心化风险。Flashbots 发现,仅依赖 TEE 并不能处置一切问题,还需求分离其他安全措施,并引入其他实体来考证 TEE 的计算和代码,以确保系统的透明性和可信性。因而,Flashbots 想象了一个由 TEE 组成的网络(Kettles),同时还有一个可信的无权限公共链(SUAVE Chain)担任管理这个网络,并托管 TEE 中要运转的程序等。这就是 SUAVE 的基本想象。
SUAVE(Single Unified Auction for Value Expression)是旨在处置 MEV 相关应战的基础设备,专注于将内存池和区块生成的角色从现有的区块链中分别出来,构成一个独立的网络(排序层),可作为任何区块链即插即用的内存池和去中心化区块构建者。
(更多 SUAVE 引见能够参考 ChainFeeds此前文章)
SUAVE 将分两个阶段推出。首个版本为SUAVE Centauri,包括隐私订单流拍卖(OFA)和 SUAVE Devnet(测试网)。这个版本的完成并不触及密码学和 TEE 技术。第二个版本是 Andromeda,将在受信任的执行环境(如 SGX)中运转执行节点。为了确保离线运转的 TEE 节点上的计算和代码如预期运转,Flashbots 经过 TEE 的远程证明功用,使智能合约能够考证来自 TEE 的音讯。细致步骤包括:为 Solidity 代码添加新的预编译功用以生成远程证明;应用 SGX 处置器生成证明;在链上完整考证证明;并运用 Automata-V3-DCAP 库来考证这些证明。
总结起来,SUAVE 将经过整合 TEE 来替代当前的第三方,SUAVE 系统中运转的应用程序(如订单流拍卖或区块构建器)都将在 TEE 内运转,并且经过链上远程证明白保 TEE 计算和代码完好性。
Taiko:经过 SGX 构建多重证明系统 Raiko
TEE 的概念还能够扩展到 Rollup,以构建多重证明系统。多重证明指的是为一个区块生成多种类型的证明,相似于以太坊的多客户端机制。这种机制能够确保即便一个证明存在漏洞,其他证明依然有效。
在多重证明机制下,任何有兴味生成证明的用户都能够运转一个节点,提取买卖和一切状态访问的 Merkle 证明等数据。运用这些数据生成不同类型的证明,然后将一切证明一同提交到智能合约中,由智能合约考证证明的正确性。关于 TEE 生成的证明,需求检查 ECDSA 签名能否由预期地址签名。当一切证明经过考证并确认区块哈希分歧后,该区块将被标志为已证明,并记载在链上。
Taiko正在应用 Intel SGX 技术构建多重证明系统 Raiko,用于考证 Taiko 和以太坊区块。经过运用 SGX,Taiko 能够确保执行关键任务时的数据隐私战争安性,即便存在潜在漏洞,TEE 也能提供额外的维护,避免攻击者破坏证明系统。SGX 证明能够在单台计算机上运转,仅需几秒钟即可完成,不会影响生成证明的效率。此外,Taiko 推出了一个新架构,支持将客户程序编译为能够在 ZK 和 TEE 中运转的格式,确保区块状态转换的正确性,并经过基准测试和监控评价性能和效率。
固然 TEE 提供了许多优势,但在完成过程中仍面临一些应战。例如,SGX 设置需求支持不同云提供商的 CPU,并优化考证过程中的 Gas 本钱。此外,还需求树立一个安全通道来考证计算和代码的正确性。为理处置这些应战,Taiko 运用 Gramine OS 将运转的应用程序封装在可信 enclave 中,并提供易于运用的 Docker 和 Kubernetes 配置,使得任何具有 SGX 功用的 CPU 的用户都能够便当地部署和管理这些应用程序。
依据 Taiko 的公告,Raiko 目前支持 SP1、Risc0 和 SGX,并不时努力集成 Jolt 和 Powdr。未来,Taiko 计划集成更多 Riscv32 ZK-VM,扩展 Wasm ZK-VM ,与 Reth 直接集成以完成区块的实时证明,及采用模块化架构以支持多链区块证明。
Scroll:与 Automata 协作开发 TEE Prover
Scroll的多重证明机制旨在完成三个目的:增强 L2 安全性、不增加结局时间及仅为 L2 买卖引入边沿本钱。因而,除了 ZK 证明,在选择辅助证明机制时,Scroll 需求权衡结局性和本钱效益。狡诈证明固然安全性高,但结局时间太长。而 zkEVM 考证器固然强大,但开发本钱高且复杂。最后,Scroll 选择了运用 Justin Drake提出的 TEE Prover 作为辅助证明机制。
TEE Prover 在受维护的 TEE 环境中运转,能够快速执行买卖并生成证明,因而并不会增加结局性。此外,TEE Prover 的另一个重要优势在于其效率。证明过程相关的开支能够疏忽不计。
目前,Scroll 正在与模块化证明层 Automata协作开发用于 Scroll 的 TEE Prover。Automata 是一个模块化的考证层,旨在经过 TEE 协处置器将机器级信任扩展至以太坊。Scroll 的 TEE Prover 由链上和链下两个主要组件组成:
-
SGX Prover:链下组件,运转在 enclave 中,用于检查在 enclave 内执行区块后的状态根能否与现有状态根匹配,随后向 SGX Verifier 提交执行证明(PoE)。
-
SGX Verifier:这是一个部署在 L1 链上的智能合约,需求考证 SGX Prover 提出的状态转换及 Intel SGX enclave 提交的证明报告能否正确。
SGX Prover 会监控排序器在 L1 上提交的买卖批次,确保其在执行状态转换时所用的数据完好且未被窜改。然后,SGX Prover 会生成一个包含一切必要信息的区块证明(PoB),确保一切参与考证和执行的节点都运用相同的数据集。执行终了后,SGX Prover 会提交执行证明(PoE)到 L1。随后,SGX Verifier 将检查 PoE 能否由有效的 SGX Prover 签署。
SGX Prover 运用 Rust 编程言语编写,并运用 SputnikVM 作为其执行智能合约的 EVM 引擎。该完成能够在支持 SGX 硬件方式的机器上编译和运转,同时也能够在非 SGX 环境中中止调试。而 SGX Verifier 则运用了 Automata 开源的 DCAP v3 考证库,能够对 Scroll 测试网的整个区块历史中止考证。
此外,为了减少对 TEE 完成和硬件制造商的信任问题,Scroll 还在研讨一种协议,聚合来自不同硬件和客户端的 TEE Prover。该协议将分离阈值签名计划。阈值签名计划是一种密码学技术,允许多个参与者共同生成一个签名,只需至少抵达特定数量的参与者同意时,签名才有效。细致来说,TEE Prover 需求多个(例如 N 个)TEE 证明者中至少 T 个证明者生成分歧的证明。
Automata:应用 TEE 协处置器增强区块链的安全性和隐私性
Automata Network是一个模块化考证层,将硬件作为共同的 Root of Trust,启用了很多用例,包括基于 TEE 考证器的多考证器系统,为 RPC 中继提供公平性和隐私及在加密 enclave 中构建区块等。
上文也提到,Scroll 的多证明系统就是与 Automata 协作开发的。除此之外,Automata 还将 TEE 协处置器作为多证明 AVS引入了 EigenLayer 主网。TEE 协处置器是一种执行特定计算任务的硬件,用于补充或扩展主链的才干。Automata Network 的 TEE 协处置器经过在被 TEE 隔离区内执行安全计算,扩展了区块链的功用。
细致而言,Multi-Prover AVS 是一个任务控制中心,担任依据不同协议的请求谐和和管理多个独立的考证器。各个协议能够公开发布需求考证的任务,然后能够组织一个由长期奖励鼓舞的承诺 TEE 委员会。实践中止考证的节点(操作者)能够注册参与这些任务,并且能够相互协作以确保安全。而持有代币并愿意支持协议安全性的用户为质押者,他们将质押权拜托给信任的操作者。这种质押增强了协议在初期阶段所需的经济安全性,由于质押的资金作为一种保证,鼓舞操作员诚实和高效地工作。EigenLayer 创建了一个无需答应的市场,允许质押者、运营商和协议自由参与。
Secret Network:基于 SGX 技术完成隐私维护
隐私公链Secret Network主要经过 Secret Contract 和 TEE 完成数据隐私维护。为了完成这一目的,Secret Network 采用了 Intel SGX 可信执行环境技术,且为了保证网络分歧性,Secret Network 只允许运用 Intel SGX 芯片,而不支持其他 TEE 技术。
Secret Network 采用远程认证过程来考证 SGX 安全区的完好性战争安性。每个全节点在注册前都会创建认证报告,证明其 CPU 运用了最新的硬件升级,并在链上中止考证。新节点取得共识的共享密钥后,便能够并行处置网络中的计算和买卖,从而保证网络的整体安全性。为了减少可能的攻击向量,Secret Network 选择运用 SGX-SPS(效劳器平台效劳)而不是 SGX-ME(管理引擎)。
细致完成上,Secret Network 运用 SGX 中止带有加密输入、输出和状态的计算。这意味着数据在其生命周期内一直坚持加密状态,避免未经受权的访问。而且 Secret Network 的每个考证节点运用支持 Intel SGX 的 CPU 来处置买卖,确保敏感数据仅在每个考证节点的安全区内解密,而外部无法访问这些数据。
Oasis:采用 SGX 构建隐私智能合约
隐私计算网络Oasis采用模块化架构,将共识和智能合约执行分别分为共识层和 ParaTimes 层。作为智能合约执行层,ParaTimes 由多个并行 ParaTime 组成,每个 ParaTime 代表一个具有共享状态的计算环境。这允许 Oasis 在一个环境中处置复杂计算任务,在另一个环境中处置简单买卖。
ParaTimes 能够分为隐私和非隐私两种类型,不同的 ParaTimes 能够运转不同的虚拟机,还能够设计为答应或无答应系统。作为 Oasis 的中心价值主张之一,Oasis 分离 TEE 技术推出了两种隐私智能合约:Cipher及Sapphire。二者都采用了 Inte SGX 的 TEE 技术。加密数据和智能合约会一同进入 TEE 中,数据会被解密并由智能合约处置,随后在输出时还会再次加密。这个过程确保了数据在整个处置过程中坚持秘密,不会泄露给节点操作员或应用开发者。区别在于,Sapphire 是隐私 EVM 兼容的 ParaTime,而 Cipher 是用于执行 Wasm 智能合约的隐私 ParaTime。
Bool Network:分离 MPC、ZKP 和 TEE 技术,增强比特币考证的安全性和去中心化
Bool Network融合了 MPC、ZKP 及 TEE 三种技术,将外部考证者集群改造为动态躲藏委员会(DHC),以增强网络安全性。
在动态躲藏委员会中,为理处置考证过程中外部考证节点需求共识签名招致的私钥暴露问题,Bool Network 引入了 TEE 技术。例如,经过 Intel SGX 技术,将私钥封装在 TEE 中,使节点设备能够在本地的安全区域内运转,而系统中的其他组件无法访问数据。经过远程证明,见证者节点能够出示证明以考证其的确在 TEE 中运转并寄存密钥,其他节点或智能合约则能够在链上考证这些报告。
此外,BOOL Network 是完整开放准入的,任何具有 TEE 设备的主体都能够经过质押 BOOL 成为考证节点。
Marlin:分离 TEE 和 ZK 协处置器完成去中心化云计算
Marlin是一个可考证计算协议,分离了可信执行环境和 ZK 协处置器,将复杂工作负载拜托给去中心化云。
Marlin 包括多种类型的硬件和子网络。其 TEE 技术主要应用于子网络Marlin Oyster上。Oyster 是一个开放平台,允许开发者在不可信的第三方主机上部署定制计算任务或效劳。Oyster 目前主要依赖于 AWS Nitro Enclaves,这是一种基于 AWS Nitro TPM 安全芯片的可信执行环境。为了完成去中心化的愿景,Oyster 未来可能会兼容更多的硬件供给商。此外,Oyster 允许 DAO 经过智能合约调用直接配置 enclave,无需特定成员管理 SSH 或其他认证密钥。这种办法减少了对人工操作的依赖。
Phala Network:基于 TEE 的多重证明系统 SGX-Prover
Phala Network是一个去中心化的链下计算基础设备,努力于经过 TEE 完成数据隐私战争安计算。目前,Phala Network 仅支持 Intel SGX 作为其 TEE 硬件。基于去中心化 TEE 网络,Phala Network 构建了基于 TEE 的多重证明系统 Phala SGX-Prover。细致来说,链下模块 sgx-prover 运转状态转换程序后会生成包含计算结果的 TEE Proof,并将其提交给链上的 sgx-verifier 中止考证。
而为理处置用户对 SGX 中心化的担忧,Phala Network 引入了 Gatekeeper 和 Worker 两种角色。Gatekeeper 由 PHA 代币持有者经过 NPoS 选举产生,担任管理网络密钥并监视经济模型。而 Workers 则运转在 SGX 硬件上。经过引入密钥轮换机制,Gatekeepers 能够确保 TEE 网络的安全。
目前,Phala Network 具有超越 3 万个由全球用户注册和运转的 TEE 设备。此外,Phala Network 还在探求基于 TEE 的快速结局性处置计划。理论上,能够基于 TEE 证明完成快速结局性,仅在必要时提供 ZK 证明。
总结
面对 Twitter 上的争论,Uniswap CEO Hayden Adams 也发表了自己的观念,他表示,「TEE 收到的负面评价都带有追求圆满反而障碍了好结果的意味。任何事物都存在取舍。在维护区块链范畴,可用的工具应该是越多越好。」
而经过对上面这些用例的探求,能够看出 TEE 技术在处置隐私及安全方面的应用潜力。例如,Flashbots 经过 TEE 完成隐私买卖和去中心化构建,Taiko 和 Scroll 则应用 TEE 完成多重证明制度,确保 L2 买卖的安全性。不过,目前大部分项目都依赖单一的中心化供给商,这可能会带来一定的风险。未来,或答应以兼容更多的硬件供给商,并经过设置节点比例,以确保节点在不同硬件上运转,以进一步减少因过度依赖某一供给商而带来的中心化风险。