If the prover provides a block of data and a public key. The provided data is supposedly ciphertext that was encrypted using the provided public key. Is there a way to prove that the provided data has infact been encrypted using that specific public key?
The verifier does not have access in any way to the plaintext data or the private key. However, the prover does have access to the plaintext data and private key, and can provide additional information to assist in proving, as long as zero knowledge of the plaintext data and private key are exposed to the verifier.
Update: Based on the current responses, it seems unlikely that the verifier would be able to prove or disprove the claim by the prover using only the provided data and public key. However, the question still remains if this could be accomplished using some form of additional proof data, possibly in conjuction with a zero knowledge based algorithm.