Что мало по мнению Microsoft? верхний предел данных `cryptprotectdata`
В документации о функции CryptProtectData Microsoft говорит только использовать CryptProtectData
с небольшими буферами.
Этот вызов может быть медленным и ненадежным. Используйте только с небольшими буферами.
CryptProtect / UnprotectData выполняет вызов через RPC в LSA, где выполняется фактическое шифрование или дешифрование, а RPC имеет верхние пределы для объема передаваемых данных. Общее эмпирическое правило для шифрования больших объемов данных состоит в том, чтобы защитить массив с помощью симметричного ключа, а затем защитить симметричный ключ с помощью CryptProtectData. Расшифровка - это просто обращение, и вы найдете более высокую производительность (избегайте дорогостоящих операций RPC) и, как правило, столь же безопасны (в зависимости от симметричного алгоритма, используемого для большого блока данных).
Так что же это за верхний предел? Могу ли я защитить несколько паролей длиной 256 байт каждый?