Как сравнить зашифрованные строки со случайными начальными числами?

Я хочу хранить данные профиля в зашифрованном виде в базе данных. Однако некоторые детали должны быть уникальными, и, поскольку алгоритм шифрования рандомизирует начальное число для каждого шифрования, исчерпывающе можно сказать, хранится ли уже значение в базе данных.

  • Я мог бы перебрать каждую строку и расшифровать необходимый столбец, но это заняло бы слишком много времени, если количество строк велико.
  • Я мог бы хранить хэши этих (незашифрованных) деталей , но это в первую очередь убило бы точку шифрования .

Итак, как мне сравнить зашифрованную строку (со случайным начальным числом) с другими, сохраненными в базе данных?

Любая помощь приветствуется. Шифрование выполняется с помощью php ( MCRYPT_RIJNDAEL_256 / NOFB ), база данных - MySQL.

Правка / решение: Хранение хешированных данных в дополнение к зашифрованному значению кажется моим лучшим решением. Это делает проверку уникальных столбцов достаточно простой для меня. Спасибо всем, кто оставил свои комментарии / ответы.

6
задан Alasjo 2 January 2012 в 11:50
поделиться