Hi,
my suggestions are probably to simple, because they are not a real
protection of privacy. But maybe one fits to your needs.
Most simple:
Declare your 'hidden' fields just as "indexed=true stored=false", the
data will be used for searching, but the fields are not listed in the
query response.
Cons: The Terms of the fields can be still examined by advanced users.
As example they could use the field as facet.
Very simple
Use a PhoneticFilter for indexing and searching. The encoding
"ColognePhonetic" generates a numeric hash for each term. The name
"Breschnew" will be saved as "17863".
Cons: Phonetic similaritys will lead to false hits. This hashing is
really only scrambling and not appropriate as security feature.
Simple
Declare a special SearchHandlers in your solrconfig.xml and define an
invariant fieldList parameter. This should contain just the public
subset of your fields.
Cons: I'm not really sure, about this.
Still quite simple
Write a own Filter, which generates real cryptographic hashes
Cons: If the entropy of your data is poor, you may need additional
tricks like padding the data. This filter may slow down your system.
Last but not least be aware, that the searching could be a way to
restore hidden informations. If a query for "billionaire" just get one
hit, it's obvious that "billionaire" is an attribute of the document
even if it is not listed in the result.
Uwe