Уязвимость затрагивает реализацию Oracle алгоритма цифровой подписи на эллиптических кривых (ECDSA) в версиях Java 15 и выше. ECDSA — это алгоритм, использующий принципы эллиптической криптографии для цифровой аутентификации сообщений.
При отправке цифровой подписи на основе эллиптических кривых вы должны доказать получателю, что у вас есть доступ к закрытому ключу, соответствующему открытому ключу. Говоря проще, хэш фиксированной длины данных, необходимый для аутентификации, вы подписываете своим закрытым ключом и отправляете подписанный хэш.
Ошибка была найдена Нилом Мэдденом. Оказалось, что в Java отсутствовала проверка верности для части алгоритма (некоторые части алгоритма равнялись нулю, что недопустимо). Это и позволяло злоумышленникам обходить цифровые подписи.