Unwrapping the concept of zero-knowledge proofs