Commitment in two party protocols
There is no simple answer in general to this question. In this specific setting, the zero-knowledge proof is needed to extract the discrete log of the value sent by the party and this is needed in the proof. In some other two-party protocols, this isn't needed. So, there's no general answer.