Algorithms Of Local Search For Boolean Functions

Friday, October 28, 2011
Hall 1-2 (San Jose Convention Center)
Yaira Rivera, BS , Computer Science, University of Puerto Rico, Rio Piedras campus, San Juan, PR
Rafael Arce, PhD , Computer Science, University of Puerto Rico, Rio Piedras campus, San Juan, PR
The purpose of this research work is to find efficient methods for the search of Boolean functions with high non-linearity (the high non-linearity is calculated by using Walsh-Hadamard transforms). So, how can we create algorithms to search for Boolean functions with good cryptographic properties?. For this we used two main algorithms: the hill-climbing search algorithm and simulated annealing search algorithm. By using the C++ programming language we could implement these algorithms and see which one of them had the best cryptographic properties. We found out that the algorithm with the best output was the simulated annealing search algorithm since it didn't stick with increasing values (like the hill climbing algorithm did), instead it took higher and lower values and combined them to try to get a better solution. The hill climbing algorithm would only accept higher values as the iterations went by and in a point it would stick to a value thinking that it was the best solution when it wasn't. The research work consists in finding new ways of implementing algorithms to make password encryptions more efficient and make passwords more secure (that's why we need high non-linearity since is one of the main objects we need to keep in mind for password encryption).  In conclusion, my mentor and I will continue the work on August since we have new ideas for algorithms and we also want to add some new functions to the algorithms we have implemented to see if we can increase their efficiency.