Зависит от того, какой отступ вы используете.Наиболее распространенной схемой заполнения (поскольку она обратима и содержит небольшую проверку целостности) является заполнение PKCS # 5: добавляется такое количество байтов, что конечный размер кратен размеру блока, и добавляется хотя бы один байт.,(Каждый добавленный байт имеет то же значение, что и количество добавленных байтов.)
Т.е. будет добавлен не более одного полного блока (16 байтов для AES).
n + AES_BLOCK_SIZE
всегдадостаточно (а в некоторых случаях достаточно), но вы можете вычислить его более точно как n + AES_BLOCK_SIZE - (n % AES_BLOCK_SIZE)
.
Обратите внимание, что есть некоторые режимы работы, которые вообще не нуждаются в заполнении, такие как CTR, CFB иРежим OFB.Также обратите внимание, что вам часто требуется передавать вектор инициализации (еще один полный блок).