I know this topic has been discussed many times on this platform; however, I still lack the intuition behind proof systems' zero-knowledge property.
I understand that goal of the simulator is to simulate the real transcript between the verifier and prover. So if the simulator can create a transcript without having access to the witness that is indistinguishable from real proof by the verifier(it can trick the verifier), we say the proof is zero knowledge.
Here is what doesn't make sense.
Verifier uses the real proof to verify not the simulator-created proof. If the simulated one can trick, how it is related to the real proof? Do simulator has some sort of extra information which real prover doesn't have?
With the comment I received, my understanding shifted a bit; I would appreaciate it if anyone could tell me it's correct. The intuition is that prover could have generated this transcript using the simulator (as a result, nothing could have been extracted from simulation generated transcript). However, we don't know whether proof actually proves the witness's knowledge, which is "Knowledge soundness" property. Am I correct?