ZCash uses zero-knowledge Succinct Non-interactive Arguments of Knowledge (zk-SNARKs) to ensure that all information (sender, reciever, ammount) is encrypted, without the possibility of double-spending. The only information that is revealed regarding transactions is the time in which they take place.