Digital Signature Algorithm
鍵生成は2つのフェイズに分けられる。1つ目は他者と共有されるパラメータの選択であり、2つ目は公開鍵および秘密鍵の生成である。
パラメータ (p, q, g) を基に鍵ペアを生成する。
0 < x < q なる x をランダムに選択する。
y = g mod p を計算する。
公開鍵は (p, q, g, y)、秘密鍵は x である。
冪剰余 h mod p および g mod p の効率的な計算法が存在する。冪乗#効率的な演算法を参照のこと。