Контекст, используемый в дешифровании или верификации подписи, не ослеплен против атак временным анализом
Отсутствие ослепляющий для алгоритма RSA происходит, когда вы не позволяете ослепить для объекта контекста RSA перед использованием объекта для верификации подписи или дешифрования.
Например, вы не включаете ослепление в объекте контекста rsa
перед этим шагом дешифрования:
ret = RSA_public_decrypt(in_len, in, out, rsa, RSA_PKCS1_PADDING)
Без ослепления время это берет для криптографической операции, которая будет завершена, имеет корреляцию со значением ключа. Атакующий может собрать информацию о ключе RSA путем измерения времени для завершения. Ослепление удаляет эту корреляцию и защищает операцию дешифрования или верификации от атак временным анализом.
Прежде, чем выполнить дешифрование RSA или верификацию подписи, позвольте ослепить.
ret = RSA_blinding_on(rsa, NULL);
Группа: криптография |
Язык: C | C++ |
Значение по умолчанию: 'off' |
Синтаксис командной строки:
CRYPTO_RSA_NO_BLINDING |
Влияние: носитель |
ID CWE: 310, 326, 573 |
Find defects (-checkers)
| Incompatible padding for RSA algorithm operation
| Missing padding for RSA algorithm
| Nonsecure RSA public exponent
| Weak padding for RSA algorithm