Book contents
- Frontmatter
- Contents
- Preface
- Preliminaries
- 1 Basic properties of the integers
- 2 Congruences
- 3 Computing with large integers
- 4 Euclid's algorithm
- 5 The distribution of primes
- 6 Finite and discrete probability distributions
- 7 Probabilistic algorithms
- 8 Abelian groups
- 9 Rings
- 10 Probabilistic primality testing
- 11 Finding generators and discrete logarithms in
- 12 Quadratic residues and quadratic reciprocity
- 13 Computational problems related to quadratic residues
- 14 Modules and vector spaces
- 15 Matrices
- 16 Subexponential-time discrete logarithms and factoring
- 17 More rings
- 18 Polynomial arithmetic and applications
- 19 Linearly generated sequences and applications
- 20 Finite fields
- 21 Algorithms for finite fields
- 22 Deterministic primality testing
- Appendix: Some useful facts
- Bibliography
- Index of notation
- Index
11 - Finding generators and discrete logarithms in
Published online by Cambridge University Press: 05 June 2012
- Frontmatter
- Contents
- Preface
- Preliminaries
- 1 Basic properties of the integers
- 2 Congruences
- 3 Computing with large integers
- 4 Euclid's algorithm
- 5 The distribution of primes
- 6 Finite and discrete probability distributions
- 7 Probabilistic algorithms
- 8 Abelian groups
- 9 Rings
- 10 Probabilistic primality testing
- 11 Finding generators and discrete logarithms in
- 12 Quadratic residues and quadratic reciprocity
- 13 Computational problems related to quadratic residues
- 14 Modules and vector spaces
- 15 Matrices
- 16 Subexponential-time discrete logarithms and factoring
- 17 More rings
- 18 Polynomial arithmetic and applications
- 19 Linearly generated sequences and applications
- 20 Finite fields
- 21 Algorithms for finite fields
- 22 Deterministic primality testing
- Appendix: Some useful facts
- Bibliography
- Index of notation
- Index
Summary
As we have seen in Theorem 9.16, for a prime is a cyclic group of order p - 1. This means that there exists a generator, such that for all, α can be written uniquely as α = γx, where x is an integer with 0 ≤ x < p - 1; the integer x is called the discrete logarithm of α to the base γ, and is denoted logγ α.
This chapter discusses some computational problems in this setting; namely, how to efficiently find a generator γ, and given γ and α, how to compute logγ α.
More generally, if γ generates a subgroup G of of order q, where q | (p - 1), and α ∈ G, then logγ α is defined to be the unique integer x with 0 ≤ x < q and α = γx. In some situations it is more convenient to view logγ α as an element of ℤq. Also for x ∈ ℤq, with x = [a]q, one may write γx to denote γa. There can be no confusion, since if x = [a′]q, then γa′ = γa. However, in this chapter, we shall view logγ α as an integer.
Although we work in the group, all of the algorithms discussed in this chapter trivially generalize to any finite cyclic group that has a suitably compact representation of group elements and an efficient algorithm for performing the group operation on these representations.
- Type
- Chapter
- Information
- A Computational Introduction to Number Theory and Algebra , pp. 268 - 282Publisher: Cambridge University PressPrint publication year: 2005