アルゴリズム論特論(塩田)第12回 (4) 今日のまとめ
前へ / 戻る
$\newcommand{\ol}[1]{\overline{#1}}$
$\newcommand{\znz}[1]{\mathbb{Z}/#1 \mathbb{Z}}$
$\newcommand{\znzc}[1]{(\mathbb{Z}/#1 \mathbb{Z})^{\times}}$
$\newcommand{\inv}[1]{\displaystyle{\frac{1}{#1}}}$
参考2
Python の組み込み関数 pow が pow(x,e,n) でべき乗剰余 $x^e\,\%\, n$ を求めてくれるのに対し、
math.pow は第3引数を受け付けません。
うっかり
from math import *
と書いてしまうと Python は pow と math.pow を混乱してしまいます。
ご注意ください。
今日のまとめ
- 暗号通信は ( 高速な ) 共通鍵暗号で行い、その鍵交換に ( 安全な ) 公開鍵暗号を用いる暗号をハイブリッド暗号という。
- 離散対数を利用して Diffie-Hellman は鍵交換システムを提案した。
- 法 $p$ をランダムに作ってしまうと原始根 $g$ を求める計算量が大きいので、$g$ を求めやすい $p$ を意図的に作る。