楕円暗号(Edwards 曲線)
解決したいこと
エドワード曲線での加法を自分で導出したいが、計算結果が違う、そもそも導出の方法が合っているのか困っています。
モンゴメリ曲線または Curve25519($y^2 = Ax^3 + Bx^2 + Cx$)では加法は 2 点 $(P, Q)$、曲線上の点 $P$, $Q$ を通る直線とモンゴメリ曲線の交点を $R'$ とする。$P + Q$ は $R'$ を $x$ 軸対象に対称移動($y$ 座標を反転)させれば良いとのことでした。
しかし、楕円暗号としてよく使用されるものは Ed25519 であり、実際に使用されるのは Curve25519 ではなく Edwards 曲線が使用されるとのことです。いろいろ調べてみたのですが、この Edwards 楕円曲線における加法は「〜の公式で与えられる」としか書いておらず導出がある本・サイトはないでしょうか。
導出結果
また、Wikipedia から、エドワード曲線上の点 $P$, $Q$ と $(0, -1)$ の 3 点を通る曲線とエドワード曲線の交点が $P + Q$ の結果である(実際は $x$ 軸対象に移動するみたいです)と合ったので、何度か計算してみたのですが、公式と合わず困っています。
本来は、
$$
x_3 = \frac{x_1y_2 + x_2y_1}{1 + dx_1x_2y_1y_2}
$$
というシンプルな形になるみたいですが、私が計算した結果は以下のように分子・分母ともに余計な項が含まれてしまっています。
$$
x_3 = \frac{(x_1y_2 + x_2y_1) - (y_1x_1 + y_2x_2)}{(1 + dx_1x_2y_1y_2) - (x_1x_2 + y_1y_2)}
$$
ご教示いただけますと幸いです。
よろしくお願いいたします。