Мы хотим создать настольное приложение, которое ищет локально упакованную текстовую базу данных размером несколько ГБ.Мы думаем об использовании lucene.
Таким образом, в основном пользователь будет искать несколько слов, а локальная база данных lucene выдаст результат.Тем не менее, мы хотим запретить пользователю получать полнотекстовый дамп индекса lucene, поскольку текстовая база данных является ценной и частной.Веб-приложение здесь не является решением, так как Заказчик хотел бы, чтобы это настольное приложение работало в областях, где Интернет недоступен.
Как мы шифруем базу данных Lucene, чтобы только клиентское приложение могло получить доступ к индексу Luceneи любопытный пользователь не может получить полнотекстовый дамп индекса?
Один из способов, как мы думали, это сделать, если индекс lucene можно было бы сохранить в зашифрованной файловой системе в файле (что-то вродеTrueCrypt).Поэтому настольное приложение «монтирует» файл, содержащий индексы lucene.
И это должно быть кроссплатформенным (Linux, Windows) ... Мы бы использовали Qt или Java для написания настольного приложения.
Есть ли более простой / лучший способ сделать это?
[Это для клиента.Да, да, концептуально это плохо :-) но так они этого хотят.По сути, дело в том, что только настольное приложение должно иметь доступ к индексу lucene, и никому другому.Кто-то указал, что это по сути DRM.Да, это похоже на DRM]