witness encryption & witness prf

The concept of witness encryption (WE) is motivated by the problem of designing an encryption scheme that allows users to encrypt messages with respect to an NP statement so that it can only be decrypted by the recipient who knows a valid witness of the NP statement. Another classical application of WE is that it can be used to encrypt messages (e.g. password to a bank account containing the prize money) to any mathematical puzzle or conjecture (e.g. Goldbach’s conjecture, Twin Prime conjecture) and the one who knows how to solve the puzzle or has a valid proof of the conjecture can get the reward by decrypting the ciphertext. It could be particularly useful when the encrypter who announces the prize money is not alive at the time of decryption, that is the witness may not be found during the lifetime of the encrypter.