Performance Evaluation of Hashing Algorithms on Commodity Hardware
Marut Pandya
TL;DR
The paper addresses the need to compare hashing algorithms used in blockchain on commodity hardware. It employs a multi-threaded benchmarking approach across MacBook Pro, EC2, and EPYC-based systems to measure hash rate, latency, and memory usage for BLAKE3, SHA-256, and SHA-512. Across tests, Blake3 generally achieves higher throughput and lower memory footprint, with gains that depend on input size and hardware. The findings inform algorithm selection for blockchain applications and point to hardware-aware optimization as future work.
Abstract
Hashing functions, which are created to provide brief and erratic digests for the message entered, are the primary cryptographic primitives used in blockchain networks. Hashing is employed in blockchain networks to create linked block lists, which offer safe and secure distributed repository storage for critical information. Due to the unique nature of the hash search problem in blockchain networks, the most parallelization of calculations is possible. This technical report presents a performance evaluation of three popular hashing algorithms Blake3, SHA-256, and SHA-512. These hashing algorithms are widely used in various applications, such as digital signatures, message authentication, and password storage. It then discusses the performance metrics used to evaluate the algorithms, such as hash rate/throughput and memory usage. The evaluation is conducted on a range of hardware platforms, including desktop and VMs. The evaluation includes synthetic benchmarks. The results of the evaluation show that Blake3 generally outperforms both SHA-256 and SHA-512 in terms of throughput and latency. However, the performance advantage of Blake3 varies depending on the specific hardware platform and the size of the input data. The report concludes with recommendations for selecting the most suitable hashing algorithm for a given application, based on its performance requirements and security needs. The evaluation results can also inform future research and development efforts to improve the performance and security of hashing algorithms.
