話題はこれ↓
詳しい話はこれ↓
興味があるところだけ書くと、EdDSAの署名は秘密鍵、公開鍵として、平文を受け取って次のように計算したの組*1。詳しくはwikipediaとかを見てください。
ここで署名のロジックが入力としてを受け取っているとき、 のように不正な公開鍵を渡して、これが計算されてしまうとECDSAにおけるnonce reuse attackのような感じでが計算できる。
具体的にはで、が未知なので2式で引き算をしてを消すとになって、とやってが得られる。
上述のポストなどでは署名するロジックはは受け取らずに自前で計算するか、受け取ってもそれがに対応したものであることを確かめましょうといってる(まあこれは計算して一致するか見ることになる)。
個人的には引数に誤った値を渡したらロジックが思わぬ挙動になって結果的に困るみたいなのはそうですねと思うんだけど、特にredditの記事では割と深刻っぽい雰囲気で書いてある。誤用しうる状態すらも許せないってことなんだろうか。実際これが攻撃やバグにつながるかと言われると、それこそCTFでくらいしかそういうシチュエーションにならないような気がするし、これで問題を作れって言われても自然な形にするのにはだいぶ苦心することになるだろうな、と思う。暗号界隈的にはどういう受け止め方をされているんだろう。気になる。
redditのスレちゃんと読んでなかったけどCTFでは既出らしいです ctf/2018-12-08-hxp/crypto_uff at master · p4-team/ctf · GitHub
*1:ここでは曲線状の点だけどは整数なので注意。あとはであるシード