技能一覧 › 大学数学 暗号理論

繰り返し二乗法によるべき剰余

指数を 2 進法で表し、 を順に 2 乗して必要なものを掛け合わせることで、 や のようなべき剰余を手計算で求められる

前提

この技能までの道筋(18 技能)
算数中学高校大学大学院

読み込み中…

右端(太枠)がこの技能です。左へドラッグすると、さらに前の前提をさかのぼれます。技能を押すと、そこまでの道筋が光ります。

一覧で見る(前提が先)
  1. 分数のたし算・ひき算 (算数 計算と数のきまり)
  2. 小数の四則計算 (算数 計算と数のきまり)
  3. 正負の数の加法・減法 (中学数学 数と式)
  4. 分数のかけ算・わり算 (算数 計算と数のきまり)
  5. 四則の混じった計算の順序 (算数 計算と数のきまり)
  6. 正負の数の乗除・累乗と四則混合 (中学数学 数と式)
  7. 分配法則を使った計算のくふう (算数 計算と数のきまり)
  8. 文字式の計算(同類項・分配法則) (中学数学 数と式)
  9. 乗法公式による展開 (中学数学 数と式)
  10. 因数分解 (中学数学 数と式)
  11. 約数の見つけ方 (算数 整数の性質)
  12. 文字式で表した整数の性質 (中学数学 数と式)
  13. 余りによる整数の分類 (数学A 整数の性質)
  14. 樹形図で数え上げる (算数 場合の数)
  15. 積の法則と和の法則 (算数 場合の数)
  16. 和の法則・積の法則と樹形図 (数学A 場合の数と確率)
  17. 合同式 (数学A 整数の性質)
  18. n 進法 (数学A 整数の性質)

説明

を で割った余り(べき剰余)を、 を 回掛けることなく求める方法です。指数 を 2 進法で表し、 の余りを「2 乗しては余りを取る」ことで順に作り、必要なものだけを掛け合わせます。指数が数十〜数百あっても、掛け算はおよそ 回で済みます。RSA 暗号の暗号化・復号や、合同式での大きな累乗の計算などで使います。

なぜそうしてよいのか

指数 を 2 進法で ()と表すと、指数法則により となります。つまり という形の数さえ用意できれば、あとは 2 進表示で桁が のところに対応するものを掛ければよいのです。

その は、 なので、一つ前のものを 2 乗するだけで次が得られます。しかも合同式は積について閉じている( なら )ので、毎回 で割った余りに置き換えてから 2 乗したり掛けたりしてよく、扱う数はいつも 未満に収まります。

たとえば なら、 を 28 回掛ける代わりに、2 乗 4 回と掛け算 3 回の計 7 回で済みます。指数が大きいほどこの差は劇的になります。

手順

  1. 指数 を 2 進法で表し、 と 2 のべきの和に分ける。

  2. を で割った余り から始め、(2 乗して で割った余り)を繰り返して、 の表を 2 進表示の最上位の桁まで作る。

  3. 2 進表示で桁が の位置 に対応する だけを選び、掛け合わせる。掛けるたびに で割った余りに置き換える。

  4. 最後に得た 以上 以下の数が を で割った余りである。

例題

を で割った余りを求めよ。

例題の解答

【手順 1】 なので 。

【手順 2】2 乗して余りを取ることを繰り返す(法は )。




【手順 3】桁が の を掛け、そのつど余りを取る。


【手順 4】 は 以上 以下なので、。求める余りは 。

答え:

よくある誤り

この説明は AI が書き、別の AI が例題を独立に解いて答えを確かめ、説明を一歩ずつ査読しました。

入口の問題

この技能を使う問題

この技能の次に学べること