Key derivation function: key-hash based computational extractor and stream based pseudorandom expander

PeerJ Comput Sci. 2024 Aug 23:10:e2249. doi: 10.7717/peerj-cs.2249. eCollection 2024.

Abstract

The key derivation function is a specific cryptographic algorithm that transforms private string and public strings into one or more cryptographic keys. The cryptographic keys are essential for protecting electronic data during transmission on the internet. This function is designed based on a computational extractor and pseudorandom expander and is typically constructed using various cryptography ciphers such as stream ciphers, keyed-hash message authentication codes, and block ciphers. Having secure and efficient key derivation function designs is essential in the development of numerous security systems. A vulnerable key derivation function could potentially give attackers the ability to compromise an otherwise secure cryptosystem. This research proposes a different approach by combining two different cryptography ciphers to develop key derivation functions. The findings demonstrate that a computational extractor utilizing keyed-hash message authentication codes and a pseudorandom expander using stream ciphers maintain the highest level of security while also providing efficiency benefits in terms of execution time compared to existing key derivation function schemes.

Keywords: Block ciphers; Key derivation function; Keyed-hash message authentication code based computational extractor; Keyed-hash message authentication codes; Stream cipher based pseudorandom expander; Stream ciphers.

Grants and funding

This work was fully supported by Guangdong University of Science & Technology (Grant no. GKY2023BSQD-46). The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.