Каждая подпись ECDSA даёт соотношение s·k = z + r·d (mod n). Если известно, что старшие биты каждого k равны нулю, или они утекают по побочному каналу, каждая подпись становится приближённым линейным уравнением относительно закрытого ключа d; когда таких подписей достаточно, редукция базиса решётки (LLL или BKZ) для матрицы, построенной из троек (r, s, z), находит d. Это задача о скрытом числе Боне и Венкатесана (1996), которую применили к DSA Хаугрейв-Грэм и Смарт (2001), а также Нгуен и Шпарлинский (2002).
Достаточно утечки нескольких битов на подпись, если подписей от нескольких сотен до нескольких тысяч, а новые методы обходятся утечкой меньше одного бита. Задокументированные случаи: Minerva (2019, утечка битовой длины nonce через время выполнения в смарт-картах и библиотеках), TPM-Fail (2019, TPM Intel на уровне прошивки (fTPM) и TPM от STMicroelectronics), LadderLeak (2020) и исследование «Biased Nonce Sense» 2019 года, авторы которого восстановили ключи по реальным подписям Bitcoin и Ethereum с короткими nonce.
Защита: генерируйте nonce равномерно по всему диапазону (детерминированно по RFC 6979 или с подмешанной случайностью), используйте код с постоянным временем выполнения, который не раскрывает битовую длину nonce, и считайте любую выявленную утечку nonce компрометацией ключа, а не косметическим дефектом.