Шифрование данных на полевом уровне jpa - PullRequest
0 голосов
/ 07 августа 2020

Я могу добиться шифрования данных на уровне поля с помощью конвертера. Но это применимо только для юридических лиц. Не применимо в репозитории JPA. Например, у меня есть требование выполнять поиск по этим конфиденциальным данным с использованием JPARepository, например findBySensitiveColumn. По-видимому, он не зашифрован, поэтому он не может выполнять поиск в базе данных с простым текстом. Если я попытаюсь использовать то же шифрование, что и на стороне преобразователя, оно даст мне другое значение, что приведет к несоответствию с базой данных. Я знаю, что это может быть повторяющийся вопрос. Но я тоже пробовал прослушиватель шифрования. Но не работает. пожалуйста, помогите

1 Ответ

0 голосов
/ 07 августа 2020

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

Большая проблема - частичный поиск и нечеткие совпадения , который работать не будет. Хеши очень чувствительны к изменениям данных, поэтому вам нужно будет точно соответствовать ключу поиска. «Крис Смит» потерпит неудачу, хотя должен был быть «Крис Дж. Смит». Вы потеряете большую гибкость в поиске.

...