DLM


The Discrete Logarithm Multiplier E=DLMdlb(K,C) allows computation, through a small number of operations, of the number (E) whose discrete logarithm in a defined logarithm base (dlb) is equal to the discrete logarithm of the entry number (C) in the same base, multiplied by a factor (K) modulo (2n-1).

In other words, E can be found using the following expression :

DLdlb(E) = {K* DLdlb(C)} mod (2n-1)

Note that the discrete algorithm is not known nor computed but, in fact, the final result corresponds effectively to a multiplication of discrete logarithms.

Lets take an example and search vector E with C = 22, dlb = 2, K = 23. So E = DLM2(23,22)

  1. DL2(22) gives 25 (see table for dlb = 2 on page discrete logarithm)
  2. K*25 = 23*25 = 575 or 17 modulo 31
  3. E can be found by DL2(E) = 17
  4. in the table for dlb = 2 we find DL2(16) = 17
  5. so E = 16 !

The DLM for dlb = 3, K = 23 and C=16 gives E = DLM3(23,16)

  1. DL3(16) gives 13 (see table for dlb = 3 on page discrete logarithm)
  2. K*13 = 23*13 = 299 or 20 modulo 31
  3. E can be found by DL3(23) = 20 (see table dlb = 3)
  4. E = 23

Remark : the DLM is a multiplicative group so that it's possible, with the same computing method :