/parallel-pohlig-hellman

Parallel implementation of Pohligh-Hellman + baby-step gient-step for discrete log computation

Primary LanguageJupyter NotebookMIT LicenseMIT

Parallel Pohlig-Hellman

This is a parallel Pohlig-Hellman + baby-step giant-step implementation made for the final project of Parallel and distributed systems, paradigms and models course at unipi.

It employs a few tricks to make computation fast and somewhat scalable, namely:

  • all the standard implementation tricks of sequential bsgs,
  • shared hash table exploiting atomic operations,
  • implicit storage in the table of the resulting element g^i, avoiding allocating big nums and improving memory usage.