【论文笔记13】基于智能合约实现PKI的重构

原文作者:Christos Patsonakis , Katerina Samari, Aggelos Kiayias, and Mema Roussopoulos*
原文标题:Implementing a Smart Contract PKI*
原文链接:Implementing a Smart Contract PKI | IEEE Journals & Magazine | IEEE Xplore
原文来源:IEEE Transactions on Engineering Management  2020
笔记作者:quangaoyuan
笔记小编:quangaoyuan

0x00 关键词

区块链;智能合约;合约安全;隐私安全;映射研究

0x01 摘要

公钥基础设施 (PKI) 为保护 Internet 通信提供了基础。目前,PKI 由中央机构操作,这些机构涉及许多安全事件。区块链中基于智能合约实现的 PKI 使用分布式、容错的交易日志来存储所有身份记录,或者使用恒定大小的数据来验证存储在链下的身份记录。

然而,以上策略基本从未实施过,因此关于它们的可行性研究内容很少。

安全证明:在本文中,我们为Patsonakis 等人的在以太坊上基于智能合约的 PKI 实施、评估并提供完整的安全证明。

重构PKI:这种结构以计算复杂性为代价产生了恒定大小的存储。为了探索这种权衡,我们提出并实施了第二种结构,它消除了对可信设置的需要,保留了其安全属性,并表明它是唯一可以部署在以太坊实时链上的具有恒定大小状态的版本。

我们将这些结构与将所有身份记录存储在智能合约状态中的简单方法进行比较,以说明以太坊及其成本模型的几个缺点。

扩展:我们提出了一些微调模型的修改,对于像以太坊这样的任何智能合约平台都应该考虑这些修改,以便它可以支持任意分布式应用程序。

0x02 相关工作

今天的互联网并不是完全去中心化的。例如,域名系统 (DNS) 和公钥基础设施 (PKI) 服务是促进和保护 Internet 上的通信最关键的构建块。这些系统管理身份名称和值(即 DNS 的 IP 地址或 PKI 的公钥)之间的映射。但是,这些关键系统处于集中式远程第三方的控制之下,必须信任这些第三方才能正常运行。这是有问题的,例如集中式 PKI 中的众多事件证明了这一点,其中认证机构受到了损害(例如,[2]-[4])。

区块链解决了在开放网络环境中经过充分研究的分布式共识问题(参见 [5])。它们提供分布式的、容错的、可审计的、仅附加的交易账本。由于这种潜力,社区呼吁通过利用区块链技术构建关键的命名和 PKI 服务来“重新分散”互联网,从而消除互联网对集中实体的依赖(例如,[6] 和 [ 7])。

基于区块链的身份管理系统的著名例子是 Namecoin [7] 和 Emercoin [8]。这些系统使用区块链来存储、验证和查询与身份相关的记录。然而,这种方法效率低下。首先,它强制客户下载并维护区块链的完整副本以验证记录。其次,计算和存储需求与注册记录的数量成线性关系。第三,它通过排除重要的、存储受限的设备(例如智能手机)来限制系统的适用性。最后,它使区块链膨胀,增加了矿工必须维持的状态的规模,这可能与希望同步并为区块链安全做出贡献的新矿工的激励措施不一致。

一些研究使用区块链来存储、查询和验证每个(身份、公钥)对的有效性,或者它的某些表示(例如,哈希)[7]、[8]、[12]-[17 ]。 Blockstack [6] 允许通过其虚拟链开发任意状态机,即它是一个智能合约平台。 Blockstack 的 BNS 是一个实现分布式 DNS 的虚拟链(智能合约)。 BNS 将 DNS 区域文件的哈希值(参见 [18])存储在 Blockstack 的分布式对等网络 Atlas 上。 BNS 客户端通过在区块链中搜索包含此哈希的 BNS 交易来验证存储在 Atlas 上的区域文件哈希。因此,BNS 会导致与 Namecoin 和 Emercoin 相同的低效率,我们在第一节中讨论过。相比之下,我们基于哈希树的 PKI 遵循不同的设计原则,在智能合约的状态中存储所有(身份、公钥)对通过使用密码累加器。我们 PKI 的客户可以通过这些累加器并通过与(可能不可靠的)存储网络进行交互来验证身份记录。因此,在我们的 PKI 中,不需要线性搜索区块链。此外,我们的设计可以在任何允许开发智能合约的系统之上实施。因此,我们基于哈希树的 PKI 甚至可以在 Blockstack 之上实现。尽管如此,我们还是选择在以太坊之上实现我们的构建,因为它有一个更加丰富多样的应用生态系统。多重签名钱包(例如,[19])和各种(非)可替代令牌(例如,[20])只是几个示例应用程序,它们可以从我们的构造提供的标准区块链认证机制中受益。

Melara等人。 [21] 介绍了 CONIKS,这是一种保护隐私的去中心化 PKI,用户可以在其中监控自己(身份、公钥)对的一致性。虽然隐私是一个重要的属性,例如对于聊天应用程序,但它不是传统 PKI 的要求。例如,在 web-PKI 范式中,参与者的(身份,公钥)对是公开的。 CONIKS 的操作基于“身份提供者”,即签署经过身份验证的绑定并出于隐私目的适当转换身份名称的中心化实体。 CONIKS 假设存在一个单独的 PKI 来分发身份提供者的公钥。因此,它不构成独立的 PKI 服务,而我们的基于哈希树的 PKI 则可以。更重要的是,CONIKS 缺乏其安全和隐私属性的正式证明。源自 CONIKS 的系统也是如此,即 EthIKS [22]、Catena [23] 和 Conifer [24],它们在以太坊和比特币之上实现了 CONIKS。

Certcoin [9] 是一个基于区块链的 PKI 提议,它采用加密累加器,但存在许多低效率,例如,它在每次撤销期间从头开始重新计算累加器值。此外,Certcoin 没有针对它实现的 PKI 的安全模型,也没有证明它提供了所声称的服务 [1]。

在之前的工作中,我们提出了基于哈希树的 PKI [25],它建立在哈希树之上,即 Camacho 等人的通用累加器。 [10],它是一种公共状态的、加法的、通用的累加器。因此,它符合 Patsonakis 等人基于智能合约的 PKI 的设计。 [1],这是唯一具有正式安全模型和部分证明的 PKI 系统。与我们之前的工作相比,这里我们通过在 UC 框架中提供作者基于 RSA 的 PKI 的完整、正式的安全证明来扩展 [1] 的原始工作。特别是,我们提供了基于哈希树的 PKI 构造的具体形式化,并描述了将其复杂性从线性降低到对数的进一步改进。我们基于散列树的 PKI 的证明与基于 RSA 的 PKI 的证明非常相似,由于篇幅,我们将其省略。我们的建设推进了 Patsonakis 等人的最先进系统。 [1] 通过消除对可信设置阶段的需要,从而导致真正分散的 PKI 服务。我们构建所消耗的状态是恒定大小的,这与 EthIKS 等系统相反,其状态随着系统中注册的身份数量线性增长。我们在第 VIII-C 节更彻底地讨论了公共智能合约平台上的线性状态 PKI 构造所产生的问题。

为了解决这些低效率问题,研究人员最近提出了基于下一代区块链的系统,即智能合约平台 [1]、[9]。这些系统将身份记录的存储与其验证分离。身份记录的存储由一个单独的、经过身份验证的(但可能不可靠的)存储网络处理,与下载和验证整个区块链相比,它允许更紧凑地检索完整的操作历史记录。为了验证身份记录的有效性,他们维护了智能合约的状态加密累加器,这是一种空前高效的数据结构,允许可验证的成员资格和非成员资格查询。然而,这些基于智能合约的身份管理系统尚未实施,因此,在未来系统的设计权衡方面,指导开发人员的实践经验很少。
 

0x03 总结

在本文中,作者介绍了在以太坊上实施 Patsonakis 等人提出的、最新的基于智能合约的 PKI 的经验。 Patsonakis 等人提出的、最新的基于智能合约的 PKI 的主要构建块是基于强 RSA 假设的公共状态、加法、通用累加器。这个累加器有利于存储开销,但以计算开销为代价来实现恒定大小的状态和证明。

为了探索存储与计算成本的权衡,作者正式定义了第二个基于智能合约的 PKI,该 PKI 建立在 [10] 的基于哈希树的通用累加器之上。与基于 RSA 的累加器不同,基于哈希树的累加器不需要信任设置,从而造就一个真正去中心化的系统。作者提供 Patsonakis 等人工作的完整的安全证明。基于哈希树的 PKI 的证明保留了与基于 RSA 的方法相同的安全模型和属性。

作者实施并通过实验评估了上述两种结构,并说明了它们的运营成本以及它们的构建模块的货币成本。结果表明,基于哈希树的构造是唯一可以部署在以太坊实时链上的具有恒定大小状态的基于智能合约的 PKI,从而提供了第一个可行且可证明安全的区块链认证机制。作者还将这两个系统与大多数先前方案的简单方法进行比较(例如,以太坊名称服务 [12],其中所有身份记录都存储在智能合约的状态中)说明了以太坊及其成本模型的几个缺点以及它执行以下操作的方式:

1)影响 PKI 系统的每个版本;

2)阻碍智能合约标准库的建立;

3) 激励开发者采取若干弊端;

4) 数据的区块链存储价格。

作者对以太坊的成本模型提出了一些小的修改,以解决上述问题。最后,作者确定了在以太坊上开发遇到的几个问题领域,并提出了改进平台的具体建议,旨在提高开发人员的效率和智能合约的可靠性。作者认为,这些改进对于任何希望支持任意分布式应用程序的智能合约平台都是可行的。

猜你喜欢

转载自blog.csdn.net/weixin_40889839/article/details/123823839
今日推荐