Baldur: A Hybrid Blockchain Database with FPGA or GPU Acceleration

R. Ifrim, Dumitrel Loghin, D. Popescu
{"title":"Baldur: A Hybrid Blockchain Database with FPGA or GPU Acceleration","authors":"R. Ifrim, Dumitrel Loghin, D. Popescu","doi":"10.1145/3595647.3595650","DOIUrl":null,"url":null,"abstract":"In the last decade, blockchain technologies have entered the enterprise space in the form of permissioned blockchains, verifiable databases, and hybrid blockchain database systems (HBDB). The core of these blockchain technologies is represented by cryptography operations such as secure hashing typically with SHA-3 algorithms, signature generation, and signature verification, typically done with an Elliptic Curve Digital Signature Algorithm (ECDSA). These cryptography operations incur significant overhead and often they can be done in parallel with other operations such as data fetching and processing. Moreover, these operations can be offloaded to a hardware accelerator. In this paper, starting from the above observations, we present Baldur, an HBDB system in which most of the cryptography operations are offloaded to an accelerator. Specifically, we offload to either a Field Programmable Gate Array (FPGA) or a Graphics Processing Unit (GPU) the Keccak SHA-3 hashing and secp256k1 ECDSA signature verification for the requests received by Baldur from users. We present our preliminary implementation and results for an AMD-Xilinx Varium C1100 FPGA and an Nvidia RTX A6000 GPU. In stand-alone mode, our secp256k1 FPGA implementation achieves a throughput of 12,000 verifications per second, which is 11 × higher compared to the original implementation from AMD-Xilinx. Our GPU implementation achieves a throughput of close to 60,000 verifications per second, which is 25% higher compared to the CPU. When integrated into Baldur, the FPGA and GPU improve the throughput by 12% and 7%, respectively, in the best case. These results are promising but they can be improved, and, hence we plan to further optimize our FPGA and GPU designs and implementations in the future.","PeriodicalId":218306,"journal":{"name":"Proceedings of the 1st Workshop on Verifiable Database Systems","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-06-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 1st Workshop on Verifiable Database Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3595647.3595650","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

In the last decade, blockchain technologies have entered the enterprise space in the form of permissioned blockchains, verifiable databases, and hybrid blockchain database systems (HBDB). The core of these blockchain technologies is represented by cryptography operations such as secure hashing typically with SHA-3 algorithms, signature generation, and signature verification, typically done with an Elliptic Curve Digital Signature Algorithm (ECDSA). These cryptography operations incur significant overhead and often they can be done in parallel with other operations such as data fetching and processing. Moreover, these operations can be offloaded to a hardware accelerator. In this paper, starting from the above observations, we present Baldur, an HBDB system in which most of the cryptography operations are offloaded to an accelerator. Specifically, we offload to either a Field Programmable Gate Array (FPGA) or a Graphics Processing Unit (GPU) the Keccak SHA-3 hashing and secp256k1 ECDSA signature verification for the requests received by Baldur from users. We present our preliminary implementation and results for an AMD-Xilinx Varium C1100 FPGA and an Nvidia RTX A6000 GPU. In stand-alone mode, our secp256k1 FPGA implementation achieves a throughput of 12,000 verifications per second, which is 11 × higher compared to the original implementation from AMD-Xilinx. Our GPU implementation achieves a throughput of close to 60,000 verifications per second, which is 25% higher compared to the CPU. When integrated into Baldur, the FPGA and GPU improve the throughput by 12% and 7%, respectively, in the best case. These results are promising but they can be improved, and, hence we plan to further optimize our FPGA and GPU designs and implementations in the future.
Baldur:一个带有FPGA或GPU加速的混合区块链数据库
在过去十年中,区块链技术以许可区块链、可验证数据库和混合区块链数据库系统(HBDB)的形式进入企业领域。这些区块链技术的核心由加密操作表示,例如通常使用SHA-3算法的安全散列,签名生成和签名验证,通常使用椭圆曲线数字签名算法(ECDSA)完成。这些加密操作会产生很大的开销,并且通常可以与其他操作(如数据获取和处理)并行进行。此外,这些操作可以卸载到硬件加速器上。在本文中,从上述观察开始,我们提出了Baldur,这是一个HBDB系统,其中大多数加密操作都被卸载到加速器上。具体来说,我们将Baldur从用户收到的请求的Keccak SHA-3散列和secp256k1 ECDSA签名验证卸载到现场可编程门阵列(FPGA)或图形处理单元(GPU)。我们介绍了AMD-Xilinx Varium C1100 FPGA和Nvidia RTX A6000 GPU的初步实现和结果。在独立模式下,我们的secp256k1 FPGA实现实现了每秒12,000次验证的吞吐量,与AMD-Xilinx的原始实现相比提高了11倍。我们的GPU实现实现了接近每秒60,000次验证的吞吐量,与CPU相比高出25%。当集成到Baldur时,在最好的情况下,FPGA和GPU的吞吐量分别提高了12%和7%。这些结果是有希望的,但它们可以改进,因此,我们计划在未来进一步优化我们的FPGA和GPU设计和实现。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信