If we've got a commutative (where a * (b*c) = (a*b) * c) trapdoor function, we can use that to derive a shared secret key over a wire on which nefarious evesdroppers might be listening. The technique is known as a Diffie-Hellman handshake!
In a request share an "ephemeral public key" Ep & multiply it by your ephemeral secret key Es. The server does the same & multiplies Ep by its secret key Rs. If `(Ep . Es) . Rs = (Ep . Rs) . Es1 with dot being the secret key we've got a shared key!
2/4?