Tornado Cash (TORN) diwujudkan susulan satu isu yang timbul dalam ketelusan sejarah transaksi kripto yang membolehkan sesiapa sahaja menjejaki tabiat perbelanjaan individu melalui public address mereka walaupun maklumat peribadi mereka masih terjamin.
Tornado Cash merupakan penyelesaian privasi terdesentralisasi yang dibina di atas rangkaian Ethereum. Walaupun Tornado Cash dibangunkan berdasarkan penyelidikan sumber terbuka oleh pasukan Zcash (privacy coin), protokol tersebut membenarkan pengguna menghantar deposit ETH dan ERC-20 melalui servis kontrak pintar.
Selepas menghantar deposit ETH atau ERC-20 ke Tornado Cash, pengguna boleh mengeluarkan mata wang kriptonya melalui alamat baharu. Pengasas tidak mempunyai sebarang kawalan terhadap Tornado Cash, dan ini dianggap sebagai protokol desentralisasi sepenuhnya.
Urus niaga dalam penggunaan Tornado Cash dicampur menggunakan zero-knowledge proofs yang menyembunyikan maklumat transaksi. Tornado Cash juga adalah perkhidmatan desentralisasi yang dijalankan melalui kontrak pintar.
Oleh itu, tiada pihak ketiga berpusat boleh mengambil jagaan dana sepanjang proses mixing. Penggunaan Tornado Cash ialah dengan mendepositkan dana ke Tornado Cash, selepas itu ia akan menghasilkan random key dan akan mendepositkan token ERC-20.
Bagi membuat pengeluaran pada masa-masa yang akan datang, pengguna harus mengemukakan bukti memiliki key yang sah. Mulakan dengan membuat deposit dan memilih token ERC-20 serta jumlah deposit. Setelah selesai klik pada “Deposit” dan sahkan.
Dalam pada itu, Tornado Cash bertindak sebagai proksi yang memastikan transaksi tanpa nama dengan bukti zk-SNARK (singkatan untuk zero-knowledge succinct non-interactive argument of knowledge).
Selain itu, Tornado Cash telah meningkatkan privasi transaksi dengan memutuskan rantaian hubungan antara sumber dan alamat destinasi. Tornado Cash juga menggunakan kontrak pintar yang menerima deposit ETH, kemudiannya boleh ditarik balik dengan pelbagai alamat yang berbeza.
Dengan adanya protokol zero-knowledge, terdapat dua parti yang terbabit iaitu the prover dan verifier. Apabila pengguna mengeluarkan ETH ke kontrak pintar Tornado, mereka akan menjana secret dan menghantar hash bersama dengan jumlah deposit ke dalam kontrak pintar.
Sehubungan itu, kontrak pintar akan menambah dana ke senarai depositnya, dan apabila pengguna ingin membuat pengeluaran, pengguna perlu memberikan corresponding secret yang sepadan dengan deposit yang tidak dibelanjakan daripada senarai deposit Tornado Cash.