I'm trying to implement system for encrypted and searchable audit logs. The system will work in the following manner:
There will be an untrusted audit log server, where all the logs will be saved and which will return audit logs corresponding to search queries. The administrator of the system will generate a public key, that he will upload to the log server and private key, that he will store for later decryption and search.
Other systems will upload audit logs (for simplicity in the format "who did what and when") encrypted with the public key, which they obtain from the log server, alongside with keywords by which the corresponding audit log can be found. The keywords have to be also encrypted because the audit log server cannot be trusted.
At first, I thought the scheme can be implemented by "PEKS" introduced in Public Key Encryption with Keyword Search. However, I think it will be vulnerable for some statistical attacks because there will be an only a small set of keywords generated for log entries (please correct me if I'm wrong).
I also read Building an Encrypted and Searchable Audit Log but the scheme introduced there is not exactly what I'm trying to accomplish. I would use Secure indexes but the scheme uses symmetric encryption. Is it possible to create some kind of secure index that will use asymmetric searchable encryption?
Edit: For simplicity, consider semi-trusted server, it wont tamper stored data (it wont insert, edit nor delete stored audit logs)