Le modèle de confidentialité de Cloak est basé sur un modèle de dépôt et de retrait, où les dépôts incluent uniquement un engagement cryptographique et les retraits incluent uniquement une preuve à divulgation nulle (ZK), il n'y a donc aucun lien on-chain entre eux. Une note détient les secrets nécessaires pour retirer des fonds, elle est traitée comme une clé privée. Les engagements sont des hachages Poseidon de montant + aléatoire + clé de dépense stockés dans un arbre de Merkle on-chain. Pour retirer, une preuve ZK montre l'appartenance, la propriété secrète, la validité du nullificateur et les valeurs correctes, sans révéler quelle note a été dépensée. Les nullificateurs empêchent la double dépense en marquant les notes comme dépensées. Ce design permet une vérification et une dépense privées, avec des preuves générées par le SDK directement à partir de l'état on-chain.