1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ECDH鍵交換

Last updated at Posted at 2020-02-16

暗号系のライブラリを見ていると、良くecdhというフォルダが出てくる。
何だろうと常日頃思っていたが、ECDSAを調べていたら説明が出てきた。

どういうもの?

ECDHは、Elliptic-Curve Diffie–Hellmanの頭字語で、
共有鍵暗号で、2者間で鍵を共有するために使う。

交換方法

以下の形で、$A$ と $B$ が鍵を交換する。以下、出てくる数字は全て整数。

下準備

$A$ と $B$ が以下を共有する:

  • 有限体 $\mathbb{F}_p$ の位数 $p$
  • 楕円曲線の係数。以下の $a, b$
    $$
    y^2 = x^3 + ax + b\ (a, b \in \mathbb{F}_p, \triangle = 4a^3 + 27b^2 \ne 0)
    $$
  • ジェネレーターとなる元 $g \in \mathbb{F}_p$

手順

  1. $A$ が乱数 $r$ を作って、$P_1 = r \times G$ を計算して $B$ に送る。
  2. $B$ が乱数 $s$ を作って、$P_2 = s \times G$ を計算して $A$ に送る。
  3. $A$ が $P_2 \times r$を計算して鍵にする。
  4. $B$ が $P_1 \times s$を計算して鍵にする。

$A$ と $B$ のどちらの鍵も、$r \times s \times G$なので、同じ鍵を共有することになる。

参考文献

楕円曲線暗号入門「計算機緒論2」配布資料/伊豆哲也

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?