Package br.com.seedgrid.privacy
Annotation Interface EncryptedField
Marca um campo
String como sensivel: cifrado no banco (reversivel) e, opcionalmente,
pesquisavel por igualdade via um campo auxiliar de hash deterministico.-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionComo normalizar o valor antes de gerar o hash de busca — para que variacoes de formatacao do MESMO dado gerem o MESMO hash e a busca por igualdade funcione independentemente de como o usuario digitou.Nome do campo IRMAO (no mesmo objeto/embeddable) que guarda o hash de busca deterministico.
-
Element Details
-
searchField
String searchFieldNome do campo IRMAO (no mesmo objeto/embeddable) que guarda o hash de busca deterministico. Vazio = nao gera hash (o campo e cifrado, mas nao pesquisavel por igualdade). Se informado, oEncryptedFieldListenerpreenche esse campo no@PrePersist/@PreUpdate.- Default:
""
-
normalize
SearchNormalization normalizeComo normalizar o valor antes de gerar o hash de busca — para que variacoes de formatacao do MESMO dado gerem o MESMO hash e a busca por igualdade funcione independentemente de como o usuario digitou. Nao afeta o valor cifrado guardado no banco, so o hash de busca.SearchNormalization.CANONICAL— CPF/CNPJ/telefone/CEP:"123.456.789-00","12345678900"e"123 456 789 00"viram o mesmo hash.SearchNormalization.EMAIL— e-mail:trim+lowercaseapenas (case-insensitive, sem colidir).SearchNormalization.NONE(default) — hash do valor exato, byte a byte.
- Default:
NONE
-
cryptoAlgorithm
CryptoAlgorithm cryptoAlgorithm- Default:
AES_256_GCM
-
searchAlgorithm
SearchAlgorithm searchAlgorithm- Default:
HMAC_SHA256
-