I sistemi ZK hanno due componenti: provatori e verificatori. La prova è computazionalmente costosa (una volta richiedeva giorni, ora richiede secondi). La verifica è economica sulle catene di smart contract ma impossibilmente costosa su Bitcoin nativamente. L'innovazione: rendere possibile la verifica ZK su Bitcoin attraverso circuiti offuscati, portando il verificatore off-chain.