Thanks to the development in encryption technology and blockchain, cryptocurrency has already proven feasible and applicable. However, blockchain requires massive information including details of every transaction, the information of the dealer and buyer, which makes the privacy of every user on blockchain vulnerable. With the presence of Zcash, a new concept called Zero-Knowledge proof which focuses on proving and verifying identities appears in front of every researcher and engineer working on blockchain. Because of the enormous quantity of the ZKP schemes and the limited time, in this article, we have compared four main ZKP algorithms-ZK-SNARK, ZK-STARK, MPC protocol-based algorithms, and Bulletproof. By comparing these algorithms, we intend to give relevant engineers and researchers a general understanding of the advantages and disadvantages of these algorithms. In addition, we try to make the relevant people aware of the application scenarios of each ZKP.