3

I am looking from 3 functions $f,g,h$ from $\mathbb N \to \mathbb N$ (they can be bijections, they need to be injective at least), such that:

$$f \circ h \circ g = h $$

and $f$ is hard to reverse programmatically, and $h$ is hard to reverse programmatically.

$g$ and $h$ cannot be keyed functions as they will be public.

Right now, I am using AES SP 801-108 for $h$ but any function hard to reverse will do.

1 Answers1

0

It is essentially key exchange: let $x$ be the input, $g$ encrypts $x$ using public key 1, $h$ encrypts the result using public key 2, and then $f$ decrypts the result using private key 1, where private key 1 and public key 1 is a public-key pair. Additionally we need the decryption $f$ cancels $g$ and leaves $h$, which can be obtained from many public-key schemes, such as RSA, suggested by @fgrieu.

The "hard-to-reverse" requirement of $f$ is tricky because the private-key often gives public-key as a simple reverse. If only $f$ is given, then it might be possible. This seems impossible if both $f, g$ are publicly given because they mush be dependent (if $f$ is parametered by $k$, then $g$ must depend on $k$).

xacid
  • 74
  • 2