I am curious at how "good" is computational zero knowledge? Consider Pedersen Commitment $z = g^x h^y$. There exists perfect ZK protocol (based on Schnorr's) to prove that one knows the secret $x$ and $y$. But how about the following "relaxed" one:
(1) The prover sends $G = g^x$ and $H = h^y$ (and the verifier needs to verify $G\times H = z$); (2) The prover runs two instance of Schnorr's protocol to prove that she knows the logarithm of $G$ and $H$
It seems that this protocol is computational ZK, as the simulator could simply pick a random pair ($G'$, $H'$) such that $G' \times H' = z$. Since $(G',H')$ would be indistinguishable from the real $(G,H)$, then the simulator's conversation will be indistinguishable from the real ones (computationally). [Can you verify that this claim is correct? Thanks!]
But then the protocol indeed leaks something - as an example, think about the case where $x=1$. The pedersen commitment then loses its perfect hiding here.
So the question is: when computational ZK is used, is it regarded as satisfactory (if used alone?) Should some additional properties such as witness indistinguisability be required?