Next Article in Journal
ReSOLV: Applying Cryptocurrency Blockchain Methods to Enable Global Cross-Platform Software License Validation
Previous Article in Journal
Robust Secure Authentication and Data Storage with Perfect Secrecy
Article Menu

Export Article

Cryptography 2018, 2(2), 9; doi:10.3390/cryptography2020009

Article
Kolmogorov One-Way Functions Revisited
1,2
,
1,2
and
3,4,5,†,*
1
Department Matemática, Instituto Superior Técnico, Avenida Rovisco Pais 1, 1049-001 Lisboa, Portugal
2
Centro de Matemática, Aplicações Fundamentais e Investigação Operacional (CMAF-CIO), Campo Grande 016, 1749-016 Lisboa, Portugal
3
Department Informática, Faculdade de Ciências, Campo Grande 016, 1749-016 Lisboa, Portugal
4
LASIGE, Faculdade de Ciências, U Lisboa, Portugal; Campo Grande 016, 1749-016 Lisboa, Portugal
5
Instituto de Telecomunicações, Avenida Rovisco Pais, 1, 1049-001 Lisboa, Portugal
*
Correspondence: ansouto@fc.ul.pt
Current address: Campo Grande 016, 1749-016 Lisboa, Portugal
Received: 29 March 2018 / Accepted: 25 April 2018 / Published: 28 April 2018

Abstract

:
We study characterizations of one-way functions in terms of time-bounded Kolmogorov complexity. As the main contribution, we propose definitions for strong and weak Kolmogorov one-way functions and show that these are equivalent to classical strong and weak one-way functions, respectively. The new definitions were motivated by the fact that the expected value approach is not able to characterize strong one-way functions as we prove in the paper.
Keywords:
Kolmogorov complexity; one-way functions; cryptography; complexity theory
MSC:
68Q30-94A60

1. Introduction

One-way functions are polynomially computable functions that are hard to invert, meaning that, given a set of images, there should not exist an efficient algorithm to compute its pre-image. One-way functions are not known to exist. However, their existence has major consequences in mathematics, as well as in everyone’s daily life: on one hand, their existence implies that P NP (see [1]); on the other hand, if they do not exist, then most cryptographic protocols and pseudo-random generators are not secure since their security is based on the hardness of several one-way function candidates [2,3,4,5,6].
In the literature, it is possible to find three definitions of one-way functions that essentially differ on the power of the polynomial-time algorithm that is used to invert the function and on its probability of success: deterministic, weak and strong (by increasing order of strength). A function f is a deterministic one-way function if all polynomial-time deterministic algorithms fail to invert at least a polynomial fraction of the inputs; f is a weak one-way function if at least a polynomial fraction of the inputs are resilient to polynomial time probabilistic algorithms; and, finally, f is a strong one-way function if any polynomial-time probabilistic algorithm can only invert a negligible fraction of the inputs. Despite the distinctly different hardness assumptions, it is known that weak one-way functions exist if and only if strong one-way functions exist (see [1] for details).
In Algorithmic Information Theory, the central notion is Kolmogorov complexity, K ( x ) , proposed independently in [7,8,9], that measures the information contained in a string x by means of the length of its shortest description. The computational hardness is easily encoded in this information measure by considering its time-bounded version, K t ( x ) , where the restriction is that the program describing x must run within time t ( | x | ) .
Here, we are interested in the connection between Kolmogorov complexity and the study of one-way functions, a line of work first considered in [10,11]. In these works, the Kolmogorov complexity of x given f ( x ) , K t ( x | f ( x ) ) , is studied as a measure of how hard it is to invert f ( x ) to obtain x. From this, several variants of K t ( x | f ( x ) ) are analyzed, namely K f t ( x | f ( x ) , r , n ) , where r is a random string r Σ t ( n ) used to model access to a random coin and n is the size of x. The authors provided a partial characterization of strong and weak one-way functions based on the expected value of K f t log t ( x | f ( x ) , r , n ) , i.e., of the time-bounded Kolmogorov complexity of the pre-image x of length n given the value of f ( x ) and a random string r. In particular, they prove that if E [ K f t log t ( x | f ( x ) , r , n ) ] > c for any positive constant c and polynomial t, then f is a weak one-way function, and, if f is a strong one-way function, then E [ K f t ( x | f ( x ) , r , n ) ] > c log n for every constant c and polynomial t. The converse implications were left open. Furthermore, based on the difference between K f t ( x | r , n ) and K f t ( x | f ( x ) , r , n ) , they proposed an individual approach characterization to one-way functions. In this paper, we show in Proposition 4 that the expected value approach cannot be used to fully characterize the class of strong one-way functions. Moreover, we provide a sufficient condition under which Kolmogorov one-way functions (as defined in [11]) are weak one-way functions.
Pursuing the idea of having a full classification of classes of one-way functions using Kolmogorov based measures, we give alternative characterizations of one-way functions based on time-bounded Kolmogorov complexity. As the main contribution of this paper, we define several classes of functions, namely Kolmogorov strong and weak one-way functions and show that these are equivalent to the usual notions of strong and weak one-way functions.
The paper is organized as follows: in Section 2, we recall the definitions of one-way functions and some known results, as well as the basics on Kolmogorov complexity; in Section 3.1, we define Kolmogorov weak/strong one-way functions and show that they are equivalent to weak and strong one-way functions, respectively; in Section 3.2, we show that the expected value of K f t ( x | f ( x ) , r , n ) is not enough to characterize strong one-way functions; in Section 3.3, we define Kolmogorov Δ -functions and establish their relationship with weak one-way functions; finally, in Section 4, we conclude the paper.

2. Preliminaries

2.1. One-Way Functions

We begin by recalling the usual definitions of honest one-way functions that are used in the literature, and by stating some known results relating these classes of functions. Throughout the paper, we assume one-way functions are honest. Furthermore, we only consider injective one-way functions. We denote by Σ the set with 0 and 1, thus making Σ * the alphabet of all finite binary strings and Σ n the set of strings of size n. In the next definitions, we use the adapt the definitions presented in [1] and that were considered in [11].
Definition 1
(Weak one-way function (as in [11]). A function f : Σ * Σ * is aweak one-way function ( wowf )if the following conditions hold:
  • There is a deterministic polynomial time algorithm A such that on input x, A outputs f ( x ) , i.e., A ( x ) = f ( x ) .
  • For any polynomial t ( · ) , there is a polynomial q ( · ) such that, for any probabilistic t-time bounded algorithm B and sufficiently large n,
    P ( x , r ) Σ n × Σ t ( n ) f ( B ( f ( x ) , r , n ) ) f ( x ) > 1 q ( n ) ·
Definition 2 
(Strong one-way function (as in [11]). A function f : Σ * Σ * is astrong one-way function ( sowf )if the following conditions hold:
  • There is a deterministic polynomial time algorithm A such that on input x, A outputs f ( x ) , i.e., A ( x ) = f ( x ) .
  • For any polynomial t ( · ) , for every positive polynomial q ( · ) , for any probabilistic t-time bounded algorithm B , and for sufficiently large n,
    P ( x , r ) Σ n × Σ t ( n ) f ( B ( f ( x ) , r , n ) ) = f ( x ) < 1 q ( n ) ·
The following results are well known: weak one-way functions exist iff strong one-way functions exist; if f is a strong one-way function, then f is a weak one-way function.

2.2. Kolmogorov Complexity

We start by presenting the basics on Kolmogorov complexity that will be used throughout the paper. We refer the reader to [12] for an extensive overview of the topic. Throughout the paper, we assume a fixed prefix-free Turing machine as a model of computation. It is worthwhile mentioning that the choice of such machine only affects the results by constant terms.
Definition 3 (Kolmogorov complexity of a string).
Given a universal Turing machine U with access to an oracle f, for any strings x , y Σ * , we define the Kolmogorov complexity of x given input y as the length of the smallest program that given y outputs x with access to an oracle f, i.e.,
K f ( x | y ) = min p | p | : U f ( p , y ) = x .
For any time constructible function t, the t-time bounded Kolmogorov complexity of x given y with oracle access to f is
K f t ( x | y ) = min p | p | : U f ( p , y ) = x i n a t m o s t t ( | x | ) s t e p s .
Intuitively, the larger the term K f t ( x | y ) is, the harder it is to obtain x given y. This motivates the use of K f poly ( x | f ( x ) ) to measure how hard it is to invert f ( x ) and obtain x given polynomial time. Furthermore, in this notion, we can easily mimic the behavior of a stronger adversary, say a probabilistic polynomial time machine, by considering K f poly ( x | f ( x ) , r , n ) , where r is a random string in Σ t ( n ) and n is the size of x.
We recall some results from [11] that already establish connections between strong and weak one-way functions and time-bounded Kolmogorov complexity. There, the authors were able to characterize what happens to K f t ( x | f ( x ) , r ) , on average, when f is a sowf.
Theorem 1 ([11]).
Let f be an injective and polynomial time computable function.
If f is a strong one-way function, then for every constant c and polynomial t ( · ) , the expected value of K f t ( x | f ( x ) , r , n ) over pairs ( x , r ) Σ n × Σ t ( n ) is larger than c log n for every sufficiently large n.
For the other direction, it is only known that if the expected value of K f t log t ( x | f ( x ) , r , n ) is greater than c for any constant c, then f is a wowf.
Theorem 2 ([11]).
Let f be an injective and polynomial time computable function. If, for every polynomial t ( · ) and for every constant c, the expected value of K f t log t ( x | f ( x ) , r , n ) over pairs ( x , r ) Σ n × Σ t ( n ) is larger than c for sufficiently large n, then f is a weak one-way function.
These results are summarized in the following diagram, where arrows represent known consequences:
f i s sowf f i s wowf , f i s sowf E K f t ( x | f ( x ) , r , n ) > c log n , E K f t log t ( x | f ( x ) , r , n ) > c f i s wowf .
It was left open whether one could use the approach of expected value of K f t ( x | f ( x ) , r , n ) to fully characterize the classes of weak and strong one-way functions. Here, we provide a partial negative answer, and show that if, for all constants c, E [ K f t ( x | f ( x ) , r , n ) ] > c log n , then this does not imply that f is a strong one-way function, by providing a wowf that is not a sowf that satisfies this requirement.
Furthermore, we show that this result generalizes and show that if a strong one-way function f has E [ K f t ( x | f ( x ) , r , n ) ] O ( p ( n ) ) , for some function p ( · ) , there exists a weak one-way function g (which is not strong one-way) such that E [ K g t ( x | g ( x ) , r , n ) ] O ( p ( n ) ) . These results show that a characterization of strong one-way functions solely based on the expected values should not be possible.
In the sequel, we propose alternative definitions that solve these issues, giving a Kolmogorov complexity characterization of one-way functions. We define Kolmogorov weak and strong one-way functions (Kw and Ks) and Kolmogorov Δ -weak and strong one-way functions ( K Δ - w and K Δ - s ) and show the following equivalences (⟷) and implications (⟶):
f i s Ks f i s sowf f i s K Δ - s f i s K Δ - w f i s Kw f i s wowf f i s K Δ - w f i s wowf .

3. Results

3.1. Kolmogorov Characterization of One-Way Functions

Here, we propose a definition of classes of functions (Kolmogorov weak and Kolmogorov strong) solely based on the fraction of strings ( x , r ) for which K f t ( x | f ( x ) , r , n ) c , for a constant c. This is motivated by the fact that if K f t ( x | f ( x ) , r , n ) c , then it is enough to run all programs of size up to c for time t ( n ) and check (using the oracle for f) which one returns the inverse of f ( x ) . In the sequel, we will show that these classes coincide with the classical classes of weak and strong one-way functions.
Definition 4 (Kolmogorov weak one-way function).
Let f : Σ * Σ * be an injective polynomial time computable function. We say that f is a Kolmogorov weak one-way function if for every polynomial t ( · ) , there is a polynomial q ( · ) such that, for all positive integers c and sufficiently large n, we have
P ( x , r ) Σ n + t ( n ) K f t ( x | f ( x ) , r , n ) c 1 - 1 q ( n ) .
This definition is analogous to the one of weak one-way functions, but here we bound the probability that the polynomially time-bounded Kolmogorov complexity of inverting f ( x ) is a constant.
Proposition 1.
A function f is a Kolmogorov weak one-way function iff f is an injective weak one-way function.
Proof. 
( ) Suppose by contraposition that f is not a weak one-way function. Then, there is a polynomial t such that, for all polynomials q, there is a probabilistic t-time bounded algorithm B such that, for infinitely many ns, P ( x , r ) Σ n + t ( n ) f ( B ( f ( x ) , r , n ) ) = f ( x ) > 1 - 1 q ( n ) .
Let C be the size of the program B . Then, we know that
P ( x , r ) Σ n × Σ t ( n ) [ K f t ( x | f ( x ) , r , n ) C ] > 1 - 1 q ( n ) ,
which means f cannot be a Kolmogorov weak one-way function.
( ) Suppose by contraposition that f is not a Kolmogorov weak one-way function. Then, there is a polynomial t ( · ) such that, for all polynomials q ( · ) , there is a constant C such that, for infinitely many ns, we have
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , r , n ) C > 1 - 1 q ( n ) .
Now, consider the algorithm A that given the inputs f ( x ) Σ n , r Σ t ( n ) and n = | x | constructs all strings (which are seen as programs) of size C, runs them for time t ( n ) and then checks using the oracle for f if the obtained result is indeed x. This algorithm runs in time T ( n ) = 2 C t ( n ) for inputs of size n (which is a polynomial on n) and for infinitely many ns, inverts a fraction of the inputs larger than 1 - 1 / q ( n ) . Therefore, by construction,
P ( x , r ) Σ n × Σ T ( n ) f ( A ( f ( x ) , r , n ) ) = f ( x ) > 1 - 1 q ( n ) ,
which means that f is not a weak one-way function. ☐
We now define the class of Kolmogorov strong one-way functions. This class, as we will show, coincides with the class of strong one-way functions.
Definition 5 (Kolmogorov strong one-way function).
Let f : Σ * Σ * be an injective polynomial time computable function. We say that f is a Kolmogorov strong one-way function if for every polynomials t ( · ) and q ( · ) , positive integer c and sufficiently large n, we have
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , r , n ) < c 1 q ( n ) .
Proposition 2.
A function f is a Kolmogorov strong one-way function iff f is a strong one-way function.
Proof. 
( ) Suppose by contraposition that f is not a strong one-way function. Then, there is a probabilistic t-time bounded algorithm B and a polynomial q such that
P ( x , r ) Σ n + t ( n ) f ( B ( f ( x ) , r , n ) ) = f ( x ) 1 q ( n ) .
Thus,
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , r , n ) < | B | 1 q ( n ) ,
which means f cannot be a Kolmogorov strong one-way function.
( ) Suppose by contraposition that f is not a Kolmogorov strong one-way function. Then, there are polynomials t ( · ) , q ( · ) and a constant C such that
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , r , n ) < C 1 q ( n ) .
Now, consider the algorithm A that given x Σ n constructs all strings of size C runs them for time t ( n ) and then checks using the oracle for f if the obtained result is indeed x. This algorithm runs in time T ( n ) = 2 C t ( n ) for inputs of size n and inverts a fraction of the inputs larger than 1 / q ( n ) . Thus,
P ( x , r ) Σ n × Σ T ( n ) f ( A ( f ( x ) , r , n ) ) = f ( x ) 1 q ( n ) ,
meaning that f is not a strong one-way function. ☐

3.2. Expected Value Approach

In this section, we show that a characterization of strong one-way functions via the expected value of K f t ( x | f ( x ) , r , n ) is not possible. In particular, we show that if a strong one-way function f is such that the expected value of K f t ( x | f ( x ) , r , n ) is of order Ω ( p ( n ) ) for some function p, then there is a weak one-way function g (which is not strong one-way function) such that the expected value of K g t ( x | g ( x ) , r , n ) is also of order Ω ( p ( n ) ) .
We will also use the notion of first-bit secure function, which intuitively is a function that inverting, knowing the first-bit of the pre-image, is as hard as inverting the function by itself. In a way, this guarantees that the complexity of inverting strings in the sets { 0 } × Σ n - 1 and { 1 } × Σ n - 1 is similar.
Definition 6 (First-bit secure function).
We say that a function f is first-bit secure if for sufficiently large n and x Σ n - 1
K f t ( 0 x | f ( 0 x ) ) = K f t ( 1 x | f ( 1 x ) ) .
We now show that, if we assume the existence of first-bit secure strong one-way functions, there are weak one-way functions that are not strong. To see this, consider the function
f = λ x . 1 g ( x ) , if   x = 1 y , x , if   x = 0 y ,
where g is a strong one-way function that is first-bit secure. Then, f is a weak one-way function but not a strong one-way function since,
  • given input x, its output is given either by the identity function or by g, which are both polynomial time computable;
  • we can easily deterministically invert half of the inputs and so there is an algorithm, e.g., the first projection Π = λ x , y , z . x such that,
    P ( x , r ) Σ n × Σ t ( n ) f ( Π ( f ( x ) , r , n ) ) = f ( x ) 1 / 2 ,
    and thus f is not a strong one-way function;
  • on the other hand, since g ( · ) is a strong one-way function, for any polynomial q ( · ) and any algorithm B ,
    P ( x , r ) Σ n × Σ t ( n ) f ( B ( g ( x ) , r , n ) ) = g ( x ) < 1 q ( n ) ,
    and so the same projection algorithm Π is such that
    P ( x , r ) Σ n × Σ t ( n ) f ( Π ( f ( x ) , r , n ) ) = f ( x ) < 1 2 + 1 2 q ( n ) ,
    which means that
    P ( x , r ) Σ n × Σ t ( n ) f ( Π ( f ( x ) , r , n ) ) f ( x ) > 1 - 1 2 + 1 2 q ( n ) = p ( n ) ,
    and thus, taking s ( n ) = 1 / p ( n ) , P ( x , r ) Σ n × Σ t ( n ) f ( Π ( f ( x ) , r , n ) ) f ( x ) > 1 s ( n ) , i.e., f is a weak one-way function.
Having this construction in mind, we can show the following result:
Proposition 3.
Assuming the existence of one-way functions, there exists a weak one-way function f (which is not a strong one-way function) such that for any constant c and sufficiently large n, E K f t x | f ( x ) , r , n > c log n .
Proof. 
Consider the function f defined above in Label (15). Furthermore, recall from Theorem 1 that, if g is a strong one-way function, then, for any positive integer c and for any sufficiently large n, E [ K f t ( x | g ( x ) , r , n ) ] > c log n , where n is the size of x. In addition, notice that since g in the definition of f is a first-bit secure function, it also holds that E [ K f t ( 1 y | g ( 1 y ) , r , n ) ] > c log n for y of size n - 1 for sufficiently large ns. Then,
E K f t ( x | f ( x ) , r , n ) = x Σ n p ( x ) K f t ( x | f ( x ) , r , n )
= x { 0 } × Σ n - 1 p ( x ) K f t x | f ( x ) , r , n + x { 1 } × Σ n - 1 p ( x ) K f t ( x | f ( x ) , r , n )
= x { 0 } × Σ n - 1 p ( x ) K f t ( x | x , r , n ) + x { 1 } × Σ n - 1 p ( x ) K f t ( x | g ( x ) , r , n )
> c + 1 2 c log n
> ( c + 1 ) log n .
 ☐
From the discussion above, we derive the following corollary.
Corollary 1.
Let f be such that E K f t ( x | f ( x ) , r , n ) > c log n . Then, f is not necessarily a strong one-way function.
It is worthwhile mentioning that the proof of Proposition 3 can be generalized to a possible characterization of a sowf given by E K f t ( x | f ( x ) , r , n ) Ω ( p ( n ) ) :
Proposition 4.
If f is a strong one-way function that is first-bit secure and E [ K f t ( x | f ( x ) , r , n ) ] Ω ( p ( n ) ) for some function p ( · ) , then there exists a weak one-way function g that is not a strong one-way function such that E K g t ( x | g ( x ) , r , n ) Ω ( p ( n ) ) .
This result implies that the expected value of K f t ( x | f ( x ) , r , n ) is not enough to fully characterize strong one-way functions that are not weak one-way functions.

3.3. Kolmogorov Δ -Characterization of One-Way Functions

In this section, we provide new results regarding the characterization of one-way functions using the complexity of x versus the complexity of x given f ( x ) . If these terms are very close to each other (i.e., their difference is small), we can conclude that f ( x ) does not reveal much information about its pre-image x, as one would expect from one-way functions. Results about this notion were proved in [11] where Kolmogorov one-way functions were introduced. We begin by providing a condition under which Kolmogorov one-way functions are weak one-way functions. Following this, we introduce the classes of Kolmogorov Δ -strong and Δ -weak one-way functions and relate them with weak one-way functions.
Recall the following notions introduced in [11].
Definition 7
( ( t , ε , δ ) -secure Kolmogorov one-way function, [11]). Let t ( · ) be a polynomial, f : Σ n Σ m an injective and polynomial time computable function and δ ( · ) a positive function. We say that an instance x Σ n is ( t , δ ) -secure relative to a random string r Σ t ( n ) and f if
K f t ( x | r , n ) - K f t ( x | f ( x ) , r , n ) δ ( n ) .
Let ε ( · ) be a function. We say that f is a ( t , ε , δ ) - secure Kolmogorov one-way function if, for sufficiently large n,
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | r , n ) - K f t ( x | f ( x ) , r , n ) > δ ( n ) ε ( n ) .
In due course, we will use the following result from [11].
Corollary 2 
([11]). Let t ( · ) be a polynomial. If f is a ( t , ε , δ ) -secure Kolmogorov one-way function such that
lim n ( 1 - ε ( n ) ) · ( n - log n - δ ( n ) ) - 2 = + ,
then f is a weak one-way function.
We also recall the notion of Kolmogorov one-way function from [11].
Definition 8 
(Kolmogorov one-way function, [11]). Let f : Σ * Σ * be an injective polynomial time computable function. We say that f is a Kolmogorov one-way function if for every polynomial t ( · ) , positive integer c, sufficiently large n, and x of length n,
K f t ( x | n ) - K f t ( x | f ( x ) , n ) c log n .
In [11], it was shown that, if f is a Kolmogorov one-way function, then it is a deterministic one-way function (which is a weak one-way function where the adversary only has deterministic computational power and is not probabilistic). However, relating this notion to weak or strong one-way functions seems a hard task given that, in the definition of Kolmogorov one-way functions, there is not any randomness parameter.
However, we now show that Kolmogorov one-way functions are indeed weak one-way functions when a condition on the amount of information given by randomness is fulfilled.
Proposition 5.
Let f be a Kolmogorov one-way function. If there is a constant ε with 0 < ε < 1 and a positive function γ ( · ) such that, for sufficiently large n,
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , n ) - K f t ( x | f ( x ) , r , n ) > n ε γ ( n ) ,
where lim n γ ( n ) = < 1 , then f is a weak one-way function.
Proof. 
Let f be a Kolmogorov one-way function. Then,
K f t ( x | r , n ) - K f t ( x | f ( x ) , r , n ) K f t ( x | n ) - K f t ( x | f ( x ) , r , n ) K f t ( x | n ) + K f t ( x | f ( x ) , n ) - K f t ( x | f ( x ) , n ) - K f t ( x | f ( x ) , r , n ) c log n + K f t ( x | f ( x ) , n ) - K f t ( x | f ( x ) , r , n ) c log n + n ε with   probability   greater   than 1 - γ ( n ) .
This means that
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | r , n ) - K f t ( x | f ( x ) , r , n ) > c log n + n ε γ ( n ) ,
and so we conclude that f is a ( t , γ ( n ) , c log n + n ε ) -secure Kolmogorov one-way function.
Using Corollary 2, consider the limit
lim n ( ( 1 - γ ( n ) ) goes to 1 - > 0 · ( n - log n - c log n - n ε ) goes to - 2 ) ,
which goes to infinity. Thus, f is a weak one-way function. ☐
Corollary 3.
Let f be a Kolmogorov one-way function. If there is a polynomial q ( · ) and a constant c such that, for sufficiently large n, we have
P ( x , r ) Σ n × Σ t ( n ) K f t ( x | f ( x ) , n ) - K f t ( x | f ( x ) , r , n ) > c log n 1 q ( n ) ,
then f is a weak one-way function.
As we have seen, the notion of Kolmogorov one-way function proposed in [11] lacks the link with the probabilistic features of weak and strong one-way functions, and thus we had to impose a condition relative to how much a random input helps when inverting a function.
We now consider Kolmogorov Δ -weak one-way functions, which already include probabilistic notions in their definition. For this, let
Δ ( x | f ( x ) , r , n ) : = K f t ( x | n ) - K f t ( x | f ( x ) , r , n ) .
Definition 9 (Kolmogorov Δ-weak one-way function).
Let f : Σ * Σ * be an injective polynomial time computable function. We say that f is aKolmogorov Δ -weak one-way function if, for every polynomial t ( · ) , there is a function γ ( n ) and a positive ε with 0 < ε < 1 such that, for sufficiently large n,
P ( x , r ) Σ n × Σ t ( n ) Δ ( x | f ( x ) , r , n ) > n ε γ ( n ) ,
where lim n γ ( n ) < 1 .
With this notion, we are able to prove unconditionally that Kolmogorov Δ -weak one-way functions are indeed weak one-way functions. This is a direct consequence of Proposition 5.
Proposition 6.
If f is a Kolmogorov Δ-weak one-way function, then f is a weak one-way function.
We can then strengthen this notion by considering a logarithmic bound on the Δ term. The choice of parameters for the Δ -weak one-way function was an immediate consequence of Proposition 5 where we analyzed the minimum probability that the help of randomness could provide describing x from f ( x ) in order to still have a Kolmogorov weak-one-way function (and therefore a weak-one function). Since any strong one-way function is a weak one-way function, then the condition for Δ -strong one-way function must be stronger and therefore we have to consider reasonable tighter parameter functions.
Definition 10 (Kolmogorov Δ-strong one-way function).
Let f : Σ * Σ * be an injective polynomial time computable function. We say that f is aKolmogorov Δ -strong one-way function if, for every polynomial t ( · ) , there is a function γ ( n ) and a constant c such that, for sufficiently large n,
P ( x , r ) Σ n × Σ t ( n ) Δ ( x | f ( x ) , r , n ) > c log n γ ( n ) ,
where lim n γ ( n ) < 1 .
We can easily see that a Kolmogorov Δ -strong one-way function is a Kolmogorov Δ -weak one-way function since
P ( x , r ) Δ ( x | f ( x ) , r ) > n ε < P ( x , r ) Δ ( x | f ( x ) , r ) > c log n γ ( n ) .
Corollary 4.
If f is a Kolmogorov Δ-strong one-way function, then f is a weak one-way function.
Despite showing that Kolmogorov Δ -strong one-way functions are indeed stronger than Kolmogorov Δ -weak one-way functions, and that Kolmogorov Δ -weak one-way functions are weak one-way functions, the relationship between Kolmogorov Δ -strong one-way functions and strong one-way functions is not clear.

4. Conclusions

The aim of this work was to use Kolmogorov complexity based measures in order to understand the classes of strong and weak one-way functions. For this, we introduced alternative characterizations of one-way functions based on time-bounded Kolmogorov complexity. In particular, we introduced Kolmogorov Δ -functions and Kolmogorov weak and strong functions. The latter were shown to be equivalent to the class of weak and strong one-way functions, respectively. Furthermore, we showed that we cannot characterize strong one-way functions with the average value of K f t ( x | f ( x ) , r , n ) . We also provided a sufficient condition under which Kolmogorov one-way functions are weak one-way functions. From this, we proposed Kolmogorov Δ -strong and Δ -weak one-way functions that already encompass this condition. We were, however, not able to establish relations between Kolmogorov Δ functions and strong one-way functions, which we find would be an interesting problem to solve as future work.
In [13], the author proposed a unified approach to one-way function and conjectured that, given any one-way function f, the function g ( x , x ) = ( a , f ( x ) + a x ) is also a one way function. In particular, if f is defined over a finite field, then g is a one-way permutation and therefore suitable to be used in the quantum realm. Capitalizing on this approach, de Castro [14] considered for one-way function the function x 2 xor x xor 1 and exploited the quantum properties of such a construction proving that if such function is indeed a one-way function then quantum one-way functions also exist. With this two papers in mind, as a future work, it is interesting to:
  • Develop a specialized Kolmogorov complexity approximation (similar to a zip compressor) that allows the analysis of this function towards the definition proposed in this paper. This would allow to give, not just for this particular function, but also to any other possible proposal for a one-way function, a practical security analysis regarding its one-wayness.
  • The analyses driven in [14] proves that quantum one-way functions exist if and only if classical one-way functions exist and the techniques used to derive the (quantum) security of such functions are different form the classical ones. In the literature, there are several definitions of (bounded) quantum Kolmogorov complexity [15,16,17,18,19,20] . One can study the adaptation of the results presented in this paper to address directly the characterization of one way-functions that are quantum resilient and provide insight regarding some (quantum) one-way function candidates such as the one presented in [14].

Author Contributions

A.S. and F.C. conceived the example proving that the expected value cannot be used to characterise strong one-way functions. F.C. and J.R and A.S. discussed and propose the new definitions and the equivalence results. F.C. and J.R. wrote the rigorous arguments proving the equivalence to classical definitions. F.C. and A.S. wrote all the rest of the paper. All the authors revised the manuscript.

Acknowledgments

This work was partially supported by funds granted to Instituto de Telecomunicações, namely PEst-OE/EEI/LA0008/2013 and UID/EEA/50008/2013, by funds granted to LASIGE Research Unit, ref. UID/CEC/00408/2013 and by way of grant UID/MAT/04561/2013 to Centro de Matemática, Aplicações Fundamentais e Investigação Operacional of Universidade de Lisboa (CMAF-CIO). F.C. acknowledges the support from the Doctoral Programme in the Physics and Mathematics of Information: Foundations of Future Information Technologies and FCT (Portugal) through scholarship SRFH/BD/52243/2013 and A.S. acknowledges the FCT Post-Doc grant SFRH/BPD/76231/2011 and grants of FCT project Confident PTDC/EEI-CTP/4503/2014.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Goldreich, O. Foundations of Cryptography; Cambridge University Press: Cambridge, UK, 2001. [Google Scholar]
  2. Blum, M.; Micali, S. How to generate cryptographically strong sequences of pseudo-random bits. SIAM J. Comput. 1984, 13, 850–864. [Google Scholar] [CrossRef]
  3. Goldwasser, S.; Micali, S.; Rivest, R. A digital signature scheme secure against adaptive chosen-message attacks. SIAM J. Comput. 1988, 17, 281–308. [Google Scholar] [CrossRef]
  4. Impagliazzo, R.; Luby, M. One-way functions are essential for complexity based cryptography. In Proceedings of the Symposium on Foundations of Computer Science ’89, Research Triangle Park, NC, USA, 30 October–1 November 1989. [Google Scholar]
  5. Impagliazzo, R.; Levin, L.; Luby, M. Pseudo-random generation from one-way functions. In Proceedings of the Symposium on Theory of Computing ’89 ACM, Seattle, WA, USA, 14–17 May 1989; pp. 22–24. [Google Scholar]
  6. Rompel, J. One-way functions are necessary and sufficient for secure signatures. In Proceedings of the Symposium on Theory of Computing ’90 ACM, Baltimore, MD, USA, 13–17 May 1990; pp. 387–394. [Google Scholar]
  7. Kolmogorov, A. Three approaches to the quantitative definition of information. Probl. Inf. Transm. 1965, 1, 1–7. [Google Scholar] [CrossRef]
  8. Solomonoff, R. A formal theory of inductive inference, part I. Inf. Control 1964, 7, 1–22. [Google Scholar] [CrossRef]
  9. Chaitin, G. On the length of programs for computing finite binary sequences. J. ACM 1966, 13, 547–569. [Google Scholar] [CrossRef]
  10. Souto, A.; Teixeira, A.; Pinto, A. One-way functions using Kolmogorov complexity. Proc. of CiE 2010, 346–356. [Google Scholar]
  11. Antunes, L.; Matos, A.; Pinto, A.; Souto, A.; Teixeira, A. One-Way Functions Using Algorithmic and Classical Information Theories. Theory Comput. Syst. 2013, 52, 162–178. [Google Scholar] [CrossRef]
  12. Li, M.; Vitányi, P. An Introduction to Kolmogorov Complexity and its Applications; Springer: Berlin, Germany, 2013. [Google Scholar]
  13. Levin, L.A. The Tale of One-Way Functions. Probl. Inf. Trans. 2003, 39, 92–103. [Google Scholar] [CrossRef]
  14. De Castro, A. Quantum one-way permutation over the finite field of two elements. Quantum Inf. Process. 2017, 16, 149. [Google Scholar] [CrossRef]
  15. Vitányi, P. Quantum Kolmogorov complexity based on classical descriptions. IEEE Trans. Inf. Theory 2001, 47, 2464–2479. [Google Scholar] [CrossRef]
  16. Berthiaume, A.; Dam, W.; Laplante, S. Quantum Kolmogorov complexity. J. Comput. Syst. Sci. 2001, 63, 201–221. [Google Scholar] [CrossRef]
  17. Gács, P. Quantum algorithmic entropy. J. Phys. A Math. Gen. 2001, 34, 6859. [Google Scholar] [CrossRef]
  18. Mora, C.; Briegel, H. Algorithmic Complexity and Entanglement of Quantum States. Phys. Rev. Lett. 2005, 95, 200503. [Google Scholar] [CrossRef] [PubMed]
  19. Müller, M. Strongly Universal Quantum Turing Machines and Invariance of Kolmogorov Complexity. IEEE Trans. Inf. Theory 2008, 54, 763–780. [Google Scholar] [CrossRef]
  20. Mateus, P.; Sernadas, A.; Souto, A. Universality of quantum Turing machines with deterministic control. J. Log. Comput. 2017, 27, 1–19. [Google Scholar] [CrossRef]

© 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Cryptography EISSN 2410-387X Published by MDPI AG, Basel, Switzerland RSS E-Mail Table of Contents Alert
Back to Top