Abstract
Non-cryptographic (NC) hash functions are the core part of many networking and security applications such as traffic flow monitoring and deep packet inspection. For these applications, speed is more important than strong cryptographic properties. In Terabit Ethernet networks, the speed of the hash functions can have a significant impact on the overall performance of the system when it is required to process the packets at a line rate. Hence, improving the speed of hash functions can have a significant impact on the overall performance of such architectures. Designing a good hash function is a challenging task because of the highly non-linear and complex relationship between input and output variables. Techniques based on Evolutionary Computation (EC) excel in addressing such challenges. In this paper, we propose novel fast non-cryptographic hash functions using genetic programming, and we call the resulting hash functions the GPNCH (Genetic Programming-based Non-Cryptographic Hash) family. We choose to employ avalanche metrics as a fitness function because the networking and security applications we consider require hash functions to be uniform and independent. We evaluate the performance of GPNCH functions on FPGA and compare the delay, throughput, and resource occupation with the state-of-the-art NC hash functions that satisfy the avalanche criteria. We show that GPNCH functions outperform the other algorithms in terms of latency, operating frequency, and throughput at the modest cost of hardware resources.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
The advantages of using FPGAs. https://www.af-inventions.de/en/services/fpga-development/fpga-advantages.html. Accessed 15 Sep 2022
FPGA optimization guide for intel®oneapi toolkits:developer guide. https://www.intel.com/content/www/us/en/develop/documentation/oneapi-fpga-optimization-guide/top/optimize-your-design/resource-use/data-types-and-operations/avoid-expensive-functions.html. Accessed 20 Jan 2023
Natural selection. https://education.nationalgeographic.org/resource/natural-selection/. Accessed 15 Oct 2022
Shifting to an FPGA data center future: How are FPGAs a potential solution? https://www.allaboutcircuits.com/news/shifting-to-a-field-programable-gate-array-data-center-future/. Accessed 15 Sept 2022
World’s fastest internet network upgraded to staggering 46 terabit/s. https://newatlas.com/telecommunications/esnet6-worlds-fastest-internet-46-terabit-second/. Accessed 01 Nov 2022
Claesen, T., Sateesan, A., Vliegen, J., Mentens, N.: Novel non-cryptographic hash functions for networking and security applications on FPGA. In: 2021 24th Euromicro conference on digital system design (DSD), pp. 347–354 IEEE (2021)
Cormode, G., Muthukrishnan, S.: An improved data stream summary: the count-min sketch and its applications. J. Algorithms 55(1), 58–75 (2005)
Daemen, J., Hoffert, S., Van Assche, G., Van Keer, R.: The design of xoodoo and xoofff. IACR Transactions on Symmetric Cryptology, p. 1–38 (2018)
Dobai, R., Korenek, J.: Evolution of non-cryptographic hash function pairs for FPGA-based network applications. In: 2015 IEEE Symposium Series on Computational Intelligence, pp. 1214–1219 IEEE (2015)
Eiben, A. E., Smith, J. E., et al.: Introduction to evolutionary computing, vol. 53 Springer, 2003. https://doi.org/10.1007/978-3-662-05094-1
Estébanez, C., Saez, Y., Recio, G., Isasi, P.: Automatic design of noncryptographic hash functions using genetic programming. Comput. Intell. 30(4), 798–831 (2014)
Flajolet, P., Fusy, É., Gandouet, O., Meunier, F.: Hyperloglog: the analysis of a near-optimal cardinality estimation algorithm. Discrete Math. Theor. Comput. Sci. (2007)
Fortin, F.-A., De Rainville, F.-M., Gardner, M.-A.G., Parizeau, M., Gagné, C.: Deap: Evolutionary algorithms made easy. J. Mach. Learn. Res. 13(1), 2171–2175 (2012)
Fowler, G., Vo, K.-P., Eastlake, D., Hansen, T.: The FNV non-cryptographic hash algorithm. IETF-draft. (2012)
Grochol, D., Sekanina, L.: Evolutionary design of fast high-quality hash functions for network applications. Proc. Genet. Evol. Comput. Conf. 2016, 901–908 (2016)
Grochol, D., Sekanina, L.: Multi-objective evolution of hash functions for high speed networks. In: 2017 IEEE Congress on Evolutionary Computation (CEC), pp. 1533–1540. IEEE (2017)
Grochol, D., Sekanina, L.: Fast reconfigurable hash functions for network flow hashing in FPGAs. In: 2018 NASA/ESA Conference on Adaptive Hardware and Systems (AHS), pp. 257–263 IEEE (2018)
Grochol, D., Sekanina, L.: Evolutionary design of hash functions for IPv6 network flow hashing. In: 2020 IEEE Congress on Evolutionary Computation (CEC), pp. 1–8. IEEE, (2020)
Henke, C., Schmoll, C., Zseby, T.: Empirical evaluation of hash functions for multipoint measurements. ACM SIGCOMM Comput. Commun. Rev. 38(3), 39–50 (2008)
Hu, Y., Cheng, G., Tang, Y., Wang, F.: A practical design of hash functions for ipv6 using multi-objective genetic programming. Comput. Commun. 162, 160–168 (2020)
Kidoň, M., Dobai, R.: Evolutionary design of hash functions for IP address hashing using genetic programming. In: 2017 IEEE Congress on Evolutionary Computation (CEC), pp. 1720–1727 IEEE (2017)
Kirsch, A., Mitzenmacher, M.: Less Hashing, Same Performance: Building a Better Bloom Filter. In: Azar, Y., Erlebach, T. (eds.) ESA 2006. LNCS, vol. 4168, pp. 456–467. Springer, Heidelberg (2006). https://doi.org/10.1007/11841036_42
Luo, L., Guo, D., Ma, R.T., Rottenstreich, O., Luo, X.: Optimizing Bloom Filter: challenges, solutions, and comparisons. IEEE Commun. Surv. Tutorials 21(2), 1912–1949 (2018)
Mannatunga, K., Perera, M.: Performance evaluation of division algorithms in FPGA. (2016)
NIST. Digital identity guidelines. Technical Report NIST Special Publication 800–63-3, INCLUDES UPDATES AS OF 03 Feb 2020, U.S. Department of Commerce, Washington, D.C. (2017)
Picek, S., Yang, B., Rozic, V., Vliegen, J., Winderickx, J., De Cnudde, T., Mentens, N.: PRNGs for Masking Applications and Their Mapping to Evolvable Hardware. In: Lemke-Rust, K., Tunstall, M. (eds.) CARDIS 2016. LNCS, vol. 10146, pp. 209–227. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-54669-8_13
Ramakrishna, M.: Practical performance of bloom filters and parallel free-text searching. Commun. ACM 32(10), 1237–1239 (1989)
Saez, Y., Estebanez, C., Quintana, D., Isasi, P.: Evolutionary hash functions for specific domains. Appl. Soft Comput. 78, 58–69 (2019)
Sateesan, A., Vliegen, J., Daemen, J., Mentens, N.: Novel Bloom filter algorithms and architectures for ultra-high-speed network security applications. In: 2020 23rd Euromicro Conference on Digital System Design (DSD), pp. 262–269. IEEE, (2020)
Sateesan, A., Vliegen, J., Daemen, J., Mentens, N.: Hardware-oriented optimization of Bloom filter algorithms and architectures for ultra-high-speed lookups in network applications. Microprocess. Microsyst. 93, 104619 (2022)
Webster, A.. F.., Tavares, S.. E..: On the Design of S-Boxes. In: Williams, H.C. (ed.) Advances in Cryptology — CRYPTO ’85 Proceedings, pp. 523–534. Springer Berlin Heidelberg, Berlin, Heidelberg (2000). https://doi.org/10.1007/3-540-39799-X_41
Acknowledgement
This work is supported by the ESCALATE project, funded by FWO (G0E0719N) and SNSF (200021L_182005). This work is also supported by Cybersecurity Research Flanders (VR20192203) and the Higher Education Commission, Pakistan.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Hassan, M., Sateesan, A., Vliegen, J., Picek, S., Mentens, N. (2023). Evolving Non-cryptographic Hash Functions Using Genetic Programming for High-speed Lookups in Network Security Applications. In: Correia, J., Smith, S., Qaddoura, R. (eds) Applications of Evolutionary Computation. EvoApplications 2023. Lecture Notes in Computer Science, vol 13989. Springer, Cham. https://doi.org/10.1007/978-3-031-30229-9_20
Download citation
DOI: https://doi.org/10.1007/978-3-031-30229-9_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-30228-2
Online ISBN: 978-3-031-30229-9
eBook Packages: Computer ScienceComputer Science (R0)