O protocolo Zcash tem dois tipos de endereços de carteira (“wallet”): z-addresses e t-addresses. O endereço z é privado enquanto o endereço t é público. Como eles são interoperáveis, os usuários podem escolher o tipo de privacidade que desejam usar para cada transação. Isso significa que para cada uma delas existem quatro possibilidades, de acordo com o que o remetente e o destinatário optaram:
• Privado: o remetente e o destinatário usam endereços z. Ambos os endereços e o valor da transação são privados.
• Desblindagem: o remetente usa um endereço z e o destinatário usa um endereço t. O endereço do remetente é privado. O endereço do destinatário e o valor recebido são públicos.
• Blindagem: O remetente usa um endereço t e o destinatário usa um endereço z. O endereço do remetente e o valor que ele está enviando são públicos. O endereço do destinatário é privado.
• Público: o remetente e o destinatário usam endereços t. Seus endereços e o valor são públicos.
Com endereços z, há um registro da transação no blockchain, mostrando que ela ocorreu e que as taxas foram pagas, mas os detalhes são criptografados usando o protocolo zk-SNARK (prova de conhecimento zero), o qual consegue garantir que as partes envolvidas sejam verificadas mas sem revelar nenhuma informação entre si ou à rede.
Enquanto o Bitcoin utiliza o algoritmo SHA-256 o Zcash utiliza o Equihash, o que torna seus hardwares e softwares de mineração incompatíveis. De qualquer forma, ambas usam o mecanismo de consenso chamado de Proof of Work – PoW (Prova de Trabalho) na validação das transações, assim como possuem igualmente oferta máxima de 21 milhões de criptomoedas.

