

tokenized and hashed version of the message message.hashed
so the message “hello world” would be encrypted but you would also get hash(“hello”)+ " "+ hash(“world”) stored on the server? This would mean an attacker could recognize frequently used English words by calculating hash(“hello”) and searching? … I would think the client should tokenize and encrypt the hashes as well: encrypt(hash(“hello”), private_key) + " " + encrypt(hash(“world”), private_key)
Random thought: What if the user submits a merkle-tree, so searching for a sub-string could mean searching for a path in the tree …
Maybe hashes in the tree could be encrypted using a key from the client.
Are there entire operating systems written in a functional language? Why is it imperative languages like C?