A search problem may be identified as one, which requires an actual “search” for an answer or a solution. Such a problem may have no obvious method, which could be followed to determine a solution, other than to intelligently search through all candidate or potential solutions, which constitute the search space, until a satisfactory one is found. Typically, we may have an efficient way of determining whether one of the possible solutions is actually correct, but no efficient way of determining how to find a correct solution. There are many such search problems, both theoretically and practically motivated, but they all have these difficulties in common. Consider the example of RSA cryptanalysis, where we are given an integer n which is the product of two large prime numbers a and b, and we need to factor n into its factors a and b. This can be achieved by attempting (according to the sieve of Eratosthenes) to divide n by every prime integer between 2 and √n, and hence it is a special kind of a search problem in itself. Several efforts in the past aimed to translate various encryption and hashing schemes into Boolean satisfiability (SAT). The SAT problem is a computationally intractable (NP-hard) problem but relatively efficient SAT-Solvers are built having computational complexity of 2^k (1-∈), where 0< ∈ <1 and thus can prune the search space significantly. Guided by the above concepts, we propose herein a scheme that can encrypt a message by using a ‘big’ Boolean function, which produces an equation that cannot be solved by the conventional SAT-Solvers and leads to a dramatic increase in the search space from 2^n to 〖〖(2〗^(2^m ))〗^n in the worst case. Logical cryptanalysis shows that the proposed scheme is very hard to break, indeed. To the best of our knowledge, the adversary cannot reduce or prune the search space (except for shortening the task needed at every node), and is forced to traverse the whole search space. He might arrive at several candidate solutions, and has to search for clues as to which of them is the correct solution.
Read full abstract