Annotation Interface EncryptedField


@Retention(RUNTIME) @Target(FIELD) public @interface EncryptedField
Marca um campo String como sensivel: cifrado no banco (reversivel) e, opcionalmente, pesquisavel por igualdade via um campo auxiliar de hash deterministico.
  • Element Details

    • searchField

      String searchField
      Nome 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, o EncryptedFieldListener preenche esse campo no @PrePersist/@PreUpdate.
      Default:
      ""
    • normalize

      Como 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.
      Default:
      NONE
    • cryptoAlgorithm

      CryptoAlgorithm cryptoAlgorithm
      Default:
      AES_256_GCM
    • searchAlgorithm

      SearchAlgorithm searchAlgorithm
      Default:
      HMAC_SHA256