Алгоритм CBC шифрования может не подходить для создания уникального ключа в базах данных по нескольким причинам:
- Повторное использование вектора инициализации (IV) с тем же ключом. habr.com Это катастрофическая ошибка, которая может полностью скомпрометировать шифрование. habr.com Злоумышленник, который контролирует часть шифруемых данных, может восстановить другие части сообщения. habr.com
- Возможность атаки «padding oracle». help.stingray-mobile.ru В режиме CBC блок данных шифруется, а затем выполняется XOR между результатом шифрования и следующим блоком данных. help.stingray-mobile.ru Последний блок данных дополняется по тем или иным правилам. help.stingray-mobile.ru Суть атаки в том, что злоумышленник, имея шифротекст, может расшифровать всё сообщение, кроме первого блока (при неизвестном векторе инициализации), а при известном — целиком. help.stingray-mobile.ru
Для создания уникальных первичных ключей в таблицах или идентификаторов транзакций лучше использовать другие алгоритмы шифрования, например, основанные на генерации случайных чисел. habr.com