What Is Discrete Logarithm Problem (DLP)

This section describes what is Discrete Logarithm Problem (DLP), which is the reverse operation of an exponentiation (or scalar multiplication) operation in an Abelian group.

What Is Discrete Logarithm Problem (DLP)? DLP in an Abelian Group can be described as the following:

For a given element, P, in an Abelian Group, the resulting point of an exponentiation operation, Q = Pn, in multiplicative notation is provided. The problem of finding the smallest exponent, n, such that Pn = Q, is called Discrete Logarithm Problem (DLP).

In other words, the reverse operation of an exponentiation is called DLP, which can be expressed as the following using the "Logarithm" function, log(). This is where the "Discrete Logarithm Problem (DLP)" name comes from:

Given P and (Q = Pn), find the smallest n:
   n = logP(Q)

In additive notation, Discrete Logarithm Problem (DLP) can be expressed as the following using the "division" operation:

Given P and (Q = nP), find the smallest n:
   n = Q/P

Last update: 2019.

Table of Contents

 About This Book

 Geometric Introduction to Elliptic Curves

 Algebraic Introduction to Elliptic Curves

 Abelian Group and Elliptic Curves

Discrete Logarithm Problem (DLP)

 Doubling or Squaring in Abelian Group

 Scalar Multiplication or Exponentiation

What Is Discrete Logarithm Problem (DLP)

 Examples of Discrete Logarithm Problem (DLP)

 What Is Trapdoor Function

 DLP And Trapdoor Function

 Scalar Multiplication on Elliptic Curve as Trapdoor Function

 Finite Fields

 Generators and Cyclic Subgroups

 Reduced Elliptic Curve Groups

 Elliptic Curve Subgroups

 tinyec - Python Library for ECC

 EC (Elliptic Curve) Key Pair

 ECDH (Elliptic Curve Diffie-Hellman) Key Exchange

 ECDSA (Elliptic Curve Digital Signature Algorithm)

 ECES (Elliptic Curve Encryption Scheme)

 Terminology

 References

 Full Version in PDF/EPUB