Uma equipe de desenvolvimento de softwares de segurança está desenvolvendo um sistema de segurança de informações baseado em um método de troca de chaves que trabalha de modo que os participantes de um evento de troca de informações gerem chaves privadas e públicas, troquem as públicas e, matematicamente, cheguem a uma chave secreta compartilhada, sem que essa seja transmitida. Esse método se baseia na dificuldade existente de calcular logaritmos discretos e é chamado de: