Currently in the development of computer technologies that ensure information security and information protection, cryptographic methods of protection are widely used. The main tasks in cryptography are the development of new encryption features, difficult to break and repetitive ciphers. To solve that problem, falling into the class of NP-complete ones, algorithms based on natural principles have been used in recent years. These include genetic algorithms (GA), evolutionary methods, swarm intelligence algorithms. In models and algorithms of evolutionary computations, the construction of basic models and rules is implemented, according to which it can change (evolve). In recent years, evolutionary computing schemes have been proposed, including the genetic algorithm, genetic programming, evolutionary programming, and evolutionary strategies. The paper discusses the existing cryptography methods, basic concepts and methods of modern cryptography, the notion of a genetic algorithm, a universal hash function, as well as a hash detection method and a genetic hashing algorithm built on it. A genetic algorithm was implemented in the Golang language, modified for the current problem of finding the optimal hash functions. A detailed description of each stage of the algorithm execution is given. Also, within the framework of the research, a study of the function of the genetic algorithm itself and the genetic hashing algorithm was carried out, evaluating the convergence of the genetic algorithm depending on the input data, and evaluating the possible direction of further research.
Read full abstract