zero knowledge proof of encryption Is there a way to prove that a ciphertext $c$ was encrypted under a given public key, $Pk$, without revealing the plain text message $m$?
For most classical encryption schemes from the literature, what you want will in fact be trivial, as it is common that every possible ciphertext is a valid encryption of at least some message $m$ with respect to the public key. This is not implied by the standard security properties (and does not hold, for example, with respect to IND-CCA secure encryption schemes), but it holds for many IND-CPA secure encryption schemes.

Take for example ElGamal over a group $\mathbb{G}$, with public key $(g,h)$ ans secret key $s$ such that $h = g^s$. Then any pair $(c_1,c_2)$ correspond to a valid encryption of some message $m$: set $r$ to be the value such that $c_1 = g^r$ (it exists since $g$ is a generator of $\mathbb{G}$), and set $m$ to be $c_2/h^r$. Then, you obviously have $(c_1,c_2) = (g^r, h^rm)$.

The bottom-line is: if you want such a zero-knowledge proof, you should specify which encryption scheme you want it for - for some classical schemes, no proof is needed.