Pour détecter une tricherie d'un côté ou de l'autre, on utilise une fonction f qu'on va appeler fonction d'engagement et qui est une fonction à sens unique, c'est-à-dire dont il est difficile de trouver la fonction réciproque. On la prend ici de la forme
f (x) = xa mod N
avec N un nombre RSA c'est-à-dire produit de deux nombres premiers distincts.