I was introduced to NIZK from the notion of CRS: since we have a trusted CRS, then a prover can simulate a challenge by querying the CRS.
Similarly, the prover can simulate the challenge of a verifier by using the Fiat-Shamir heuristic.
- Can someone explain if there is any relation between the two?
- Are they two different methods or very similar?
- Can we replace the oracle with a PRF and a CRS?
Sorry for the confusion, if someone can clarify the two models and also give me pointers would be really appreciated.