楕円曲線DSA
さもないと、ステップ6の式から秘密鍵 d A {\displaystyle d_{A}} を得ることが可能となってしまう。メッセージ m {\displaystyle m} および m ′ {\displaystyle m'} に対して、未知だが同じ k {\displaystyle k} から得られた2つの署名 ( r , s ) {\displaystyle (r,s)} および ( r , s ′ ) {\displaystyle (r,s')} がある場合、攻撃者は z {\displaystyle z} および z ′ {\displaystyle z'} を計算することが可能であり、 s − s ′ = k − 1 ( z − z ′ ) {\displaystyle s-s'=k^{-1}(z-z')} であることから、 k = z − z ′ s − s ′ {\displaystyle k={\frac {z-z'}{s-s'}}} が得られる。 s = k − 1 ( z + r d A ) {\displaystyle s=k^{-1}(z+rd_{A})} であるから、攻撃者は秘密鍵 d A = s k − z r {\displaystyle d_{A}={\frac {sk-z}{r}}} を得ることができる。このように単一の k {\displaystyle k} を用いることは不適切な実装であり、PlayStation 3のソフトウェア署名鍵が漏洩したのはこれが原因であった。
2010年12月、fail0verflowと名乗るグループが、ソニーがPlayStation 3のソフトウェア署名に用いていたECDSA秘密鍵の回復に成功したと発表した。しかし、これは k {\displaystyle k} をランダムではなく固定値としていたソニーの不適切な実装によるものであり、アルゴリズム自体の脆弱性ではない。署名生成のセクションで述べたように、 k {\displaystyle k} を固定値で用いることは秘密鍵 d A {\displaystyle d_{A}} を計算可能とし、アルゴリズムを破綻させるものである。
2011年3月29日、2人の研究者による論文がIACR(英語版)に発表された。この論文では、サイドチャネル攻撃の一つであるタイミング攻撃によって、ECDSAを認証に利用し、OpenSSLを用いたサーバのTLS秘密鍵を入手可能であることが示された。この脆弱性はOpenSSL 1.0.0eで修正された。