An Enhanced Threshold RSA-Based Aggregate Signature Scheme to Reduce Blockchain Size
Khaled Chait, Abdelkader Laouid, Mostefa Kara, Mohammad Hammoudeh, Omar Aldabbas, Abdullah T. Alessa
Abstract
The transformative potential of blockchain technology has resulted in its widespread adoption, bringing about numerous advantages such as enhanced data integrity, transparency, and decentralization. Blockchain has effectively proven its ability to establish trustworthy systems across a multitude of applications. As the number of transactions recorded into a blockchain grows, the blockchain’s size expands significantly posing challenges to the network, particularly in terms of storage capacity and processing power. To address this problem, we present a cryptosystem based on RSA to provide aggregate signatures in blockchains. The aggregate signature replaces all transaction signatures of a block. In this scheme, all participating blockchain nodes use the same modulus <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">N</i> , each with its own private and public key pair generated from <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">N</i> . Regardless of the number of transactions, nodes, and signers, the aggregate signature size is always <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">O(k)</i> , where <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">k</i> is a security parameter. The miner that constructs a candidate block computes the aggregate signature σ, replaces all transaction signatures by σ, and transmits the block with only one aggregate signature. The proposed scheme incorporates a flexible and accountable subgroup aggregate signature mechanism, allowing any subset <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">t</i> of <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">n</i> total elements to sign data, where <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">t</i> is the required number of signers. To verify that a set of elements signed the block, the verifier requires the aggregate signature, the aggregate public key, and the data hash. This approach requires minimal interaction between the signers, which results in reduced network traffic. Regardless of the network size, there are always <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">t</i> + <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">n</i> exchanged messages. Experimental analysis shows the proposed aggregate signature scheme’s effectiveness in increasing security robustness and reducing block size and overall network traffic.