Aca me entregaron un codigo el cual veo algo medio raro donde se utiliza una key de varchar 32 con md5 que luego se usa en otras tablas, se que no es lo ideal, lo que veo que hace es:
Código PHP:
$md5 = sprintf("%010u", $user->getId());
$md5 .= '/';
$md5 .= sprintf("% 320s", $mail->getMaill());
$this->id = md5($md5);