コンテンツへスキップ
uencoder

Prime Number

素数とは、1と自分自身でのみ割り切れる1より大きい自然数である。数論の構成要素であり、すべての整数は素数の積として一意に分解される。

目的

整数の構成要素として、数論と暗号(RSA)の基礎を成す。

メカニズム

1より大きい自然数で、約数が1と自分自身のみのものである。算術の基本定理により、すべての整数は素数の積に一意に分解される。素数判定には試し割り、Miller-Rabin(確率的)、AKS(決定的だが遅い)などがある。素数は無限に存在する(ユークリッドの証明)。

ユースケース

  • RSA鍵ペアの生成
  • Diffie-Hellmanのパラメータ
  • 素数サイズのハッシュテーブル
  • 数論におけるリサーチ

例

  • 入力
    The first 10 primes
    Output
    2,3,5,7,11,13,17,19,23,29

    2 is the only even prime

よくあるエラー

Using small primes for RSA moduli
Use large primes (≥1024 bits)

関連用語

関連ツール

References