A Systematic Exploration of Evolutionary Computation for the Design of Hardware-oriented Non-cryptographic Hash Functions
Abstract: Non-cryptographic (NC) hash functions are crucial in high-speed search applications and probabilistic data structures (PDS) such as Bloom filters and Count-Min sketches for efficient lookups and counting. These operations necessitate execution at line rates to accommodate the high-speed demands of Terabit Ethernet networks, characterized by bandwidths exceeding 100 Gbps. Consequently, a growing inclination towards hardware platforms, particularly Field Programmable Gate Arrays (FPGAs), is evident in network security applications. Given the centrality of hash functions in these structures, any enhancements to their design carry substantial implications for overall system performance. However, hash functions must exhibit independence, uniform distribution, and hardware-friendly characteristics. In this work, we employ Genetic Programming (GP) with avalanche metrics as a fitness function to devise a hardware-friendly family of NC hash functions called the Evolutionary hash (E-hash). We provide a detailed experimental analysis to offer insights on primitive set combinations involving logical operations and diverse hyperparameter settings, encompassing variables such as the number of nodes, tree height, population size, crossover and mutation rate, tournament size, number of constants, and generations. Compared to existing state-of-the-art hardware-friendly hash functions, the proposed E-hash family exhibits an 8.4% improvement in terms of operating frequency and throughput and 7.74% in latency on FPGA.
Loading