1
0
Fork 0

GitBook: [ru] 10 pages modified

This commit is contained in:
bt11ba 2021-09-10 17:53:20 +00:00 committed by gitbook-bot
parent e76772396c
commit c1a8288246
No known key found for this signature in database
GPG Key ID: 07D2180C7B12D0FF
3 changed files with 48 additions and 51 deletions

View File

@ -1,58 +1,46 @@
# Познакомьтесь с Tornado.Cash
# Introduction of Tornado.Cash
![](.gitbook/assets/image.png)
\[Информационный раздел постоянно пополняется\]
Torndo Cash is a **fully decentralized** **non-custodial** **protocol** allowing private transactions in the crypto-space.
Tornado Cash - это полностью децентрализованный некастодиальный протокол, позволяющий осуществлять частные транзакции в сфере криптовалют.
As a decentralized protocol, Tornado.Cash smart contracts have been implemented within the Ethereum blockchain which makes them immutable. They can neither be changed or tampered with. Therefore, nobody - including initial developers - can modify or shut them down. All governance and mining smart contracts are deployed by the community in a decentralized manner.
Как децентрализованный протокол, смарт-контракты Tornado.Cash реализованы в блокчейне Ethereum, что делает их неизменяемыми. Они не могут быть изменены или подделаны. Поэтому никто, включая первоначальных разработчиков проекта, не может их модифицировать или отключить. Все смарт-контракты для управления сетью, стекингом и эмиссией развертываются сообществом в децентрализованном порядке.
As a non-custodial protocol, users keep custody of their cryptocurrencies while operating Tornado.Cash. Indeed, at each deposit, they are provided with the private key enabling the access to the deposited funds, which gives users complete control over their assets.
Поскольку Tornado.Cash является некастодиальным протоколом, пользователи сохраняют свою криптовалюту у себя во время работы с Tornado.Cash. При каждом пополнении счета, пользователям предоставляется приватный ключ, позволяющий получить доступ к размещенным средствам, что дает полный контроль над активами.
## How privacy is achieved?
## Как достигается конфиденциальность?
Tornado Cash improves transaction privacy by breaking the on-chain link between source and destination addresses. It uses a smart contract that accepts ETH & other tokens deposits from one address and enable their withdrawal from a different address.
Tornado Cash повышает конфиденциальность транзакций за счет разрыва связи между кошельками \(адресами\) пользователей в сети блокчейн. Проект использует смарт-контракт, который принимает депозиты в ETH и других токенах с одного адреса и позволяет выводить их с другого адреса.
To preserve privacy, few good practices are in order, such as the use of a relayer for gas payments to withdraw funds towards an address with no pre-existing balance.
Чтобы сохранить конфиденциальность, необходимо использовать несколько уровней защиты, например, использовать ретранслятор \(Relayer\) для платежей при выводе средств на адрес, не имеющий ранее существующего баланса в ETH для оплаты комиссий.
More details are available in _Behind the scenes:_ [_How does Tornado.Cash work?_](how-does-tornado.cash-work.md) _****_& [Tips to remain anonymous](tips-to-remain-anonymous.md).
Более подробную информацию можно найти в разделе Проект Изнутри:
## Where is Tornado.Cash at?
[Как работает Tornado.Cash?](https://docs.tornado.cash/how-does-tornado.cash-work) и [Советы по сохранению анонимности.](https://docs.tornado.cash/tips-to-remain-anonymous)
The protocol has been operating on the **Ethereum blockchain** since its inception in 2019. It was recently deployed, in June 2021, on **Binance Smart Chain** & **Polygon**.
## На чем базируется Tornado.Cash?
As of today, Tornado.Cash can be used with the following tokens:
Протокол работает на блокчейне Ethereum с момента его создания в 2019 году. Недавно, в июне 2021 года, он был развернут на Binance Smart Chain & Polygon.
На сегодняшний день Tornado.Cash можно использовать со следующими токенами:
* На Ethereum: ETH \(Ethereum\), DAI \(Dai\), cDAI \(Compound Dai\), USDC \(USD Coin\), USDT \(Tether\) и WBTC \(Wrapped Bitcoin\).
* На блокчейне Binance: BNB \(Binance Coin\)
* В сети Polygon: MATIC \(Polygon\).
* On Ethereum : **ETH** _\(Ethereum\)_, **DAI** _\(Dai\)_, **cDAI** _\(Compound Dai\)_, **USDC** _\(USD Coin\)_, **USDT** _\(Tether\)_ & **WBTC** _\(Wrapped Bitcoin\)_
* On Binance Smart Chain: **BNB** _\(Binance Coin\)_.
* On Polygon Network: **MATIC** _\(Polygon\)_
![](.gitbook/assets/non-custodial-anonymous-transactions-on-ethereum-3-.png)
Протокол также включает систему анонимного майнинга для части своих токенов, позволяя пользователям зарабатывать токены управления \(governance coin\). Благодаря токенам TORN пользователи Tornado Cash активно участвуют в формировании протокола. Сообщество имеет большой вес и влияет на эволюцию проекта Tornado Cash и улучшение его функций. Параметры протокола и распределение токенов полностью контролируются сообществом благодаря такому управлению.
The protocol also includes an **anonymity mining system for some of its token**, allowing its users to earn a **governance token**. Thanks to TORN tokens, Tornado Cash users actively participate in shaping the protocol. The community has a strong weight regarding the evolution of Tornado Cash and the improvement of its features. Indeed, protocol parameters & token distribution are completely under the community's control through this governance.
Более подробная информация об [анонимном майнинге](https://docs.tornado.cash/anonymity-mining) и токене [Tornado.Cash](https://docs.tornado.cash/torn) доступна по ссылкам.
_More information about_ [_Anonymity mining_](anonymity-mining.md) _&_ [_Tornado.Cash token_](torn.md) _are available._
## Как работает Tornado.Cash?
## How does Tornado.Cash run?
Программный код, лежащий в основе функционала Tornado.Cash, а также смарт-контакты, схемы и инструментарий имеют открытый исходный код.
[Codes behind Tornado.Cash functioning](https://github.com/tornadocash) - smart contacts, circuits & toolchain - are fully **open sourced.** Working as a DAO \(Decentralized Autonomous Organization\), Tornado.Cash governance and mining smart contracts are deployed by its community.
Работая как DAO \(децентрализованная автономная организация\), управление Tornado.Cash и майнинговые смарт-контракты развертываются его сообществом.
The protocol also functions with zk-SNARK, which enables zero-knowledge proofs allowing users to demonstrate possession of information without needing to reveal it. The use of this technology is based **on open source research made by Zcash team with the help of Ethereum community**. To set-up zk-SNARK initial keys, Tornado.Cash[ Trusted Setup Community](https://tornado-cash.medium.com/tornado-cash-trusted-setup-ceremony-b846e1e00be1) was launched in May 2020 & accounted [for 1114 contributions](https://tornado-cash.medium.com/the-biggest-trusted-setup-ceremony-in-the-world-3c6ab9c8fffa). This significant number of contributors makes it impossible to compromise the protocol by faking zero-knowledge proofs.
Протокол также работает с технологией zk-SNARK, которая обеспечивает доказательства с нулевым разглашением \(zero-knowledge proofs\), позволяя пользователям продемонстрировать сервису владение активом без деанонимизации.
Использование этой технологии основано на исследованиях с открытым исходным кодом, проведенных командой Zcash при помощи сообщества Ethereum. Для создания начальных ключей zk-SNARK в мае 2020 года было запущено сообщество Tornado.Cash [Trusted Setup Community](https://tornado-cash.medium.com/tornado-cash-trusted-setup-ceremony-b846e1e00be1), в которое на данный момент внесено [1114 вкладов](https://tornado-cash.medium.com/the-biggest-trusted-setup-ceremony-in-the-world-3c6ab9c8fffa).
Такое значительное количество участников делает невозможным компрометацию протокола путем подделки доказательства с нулевым разглашением.
Пользовательский интерфейс размещен на IPFS \(InterPlanetary File System\) сообщества, что сводит к минимуму риск удаления данных. На практике, интерфейс будет работать до тех пор, пока хотя бы один пользователь будет хостить его.
User interface is hosted on **IPFS** \(InterPlanetary File System\) by the community, minimizing risks of data being deleted. Indeed, the interface will work as long as at least one user is hosting it.
автор __[_@ayefda_](https://torn.community/u/ayefda)\_\_
_Written by_ [_@ayefda_](https://torn.community/u/ayefda)\_\_

View File

@ -1,7 +1,7 @@
# Table of contents
* [Познакомьтесь с Tornado.Cash](README.md)
* [How does Tornado.Cash work?](how-does-tornado.cash-work.md)
* [Как работает Tornado.cash? EDIT](how-does-tornado.cash-work.md)
* [Tips to remain anonymous](tips-to-remain-anonymous.md)
* [Deposit & Withdraw](untitled.md)
* [Anonymity mining](anonymity-mining.md)

View File

@ -1,36 +1,45 @@
# How does Tornado.Cash work?
# Как работает Tornado.cash? EDIT
Before diving in tutorials explaining & easing the use of Tornado.Cash, here is an overall overview of the protocol global functioning.
\[Информационный раздел постоянно пополняется\]
### Global overview of Tornado.Cash functioning
Прежде чем погрузиться в мануалы, объясняющие и облегчающие пользование сервисом Tornado.Cash, мы представляем вам общий обзор функционала протокола.
To achieve privacy, Tornado.Cash **uses smart contracts that accept tokens deposits from one address and enable their withdrawal from a different address**. Those smart contracts work as pools that mix all deposited assets.
### **Общий обзор функционала Tornado.Cash**
Once the funds are withdrawn by a complete new address from those pools, the on-chain link between the source & the destination is broken. The withdrawn crypto-assets are therefore anonymized.
When a user puts funds into a pool \(a.k.a. the deposit\), a private note is generated. This private note works as a private key for the user to access those funds later. To withdraw them, the same user can use a different address - an old or a new one - and recover his/her funds thanks to this private key.
The strength of such a protocol comes naturally from its number of users and the size of its pool. The more users deposit into the pool the merrier. However, to preserve privacy & anonymity, the user must keep some basic rules in mind such as:
Для достижения конфиденциальности транзакций Tornado.Cash использует смарт-контракты, которые принимают токены на депозит с одного адреса и позволяют выводить их на другой. Эти смарт-контракты работают как пулы, которые объединяют все депонированные активы.
* Using a relayer to pay gas at withdrawal;
* Leaving a lapse of time between the deposit & the withdrawal action;
* Mixing its funds with the crowd by waiting for several transactions before recovering its assets.
Как только средства выводятся из пула с нового адреса, связь между источником и получателем в сети блокчейн разрывается. Таким образом, выведенные криптоактивы анонимизируются.
Когда пользователь помещает средства в пул \(то есть - осуществляет депозит\), генерируется приватная заметка Tornado Cash Note. Эта приватная заметка служит для пользователя закрытым ключом для последующего доступа к своим средствам. Чтобы снять средства, пользователь может использовать свой старый кошелек либо совершенно новый - с помощью заметки Tornado Cash Note средства будут выведены в считанные минуты.
.
Защита данных, обеспеченная данным протоколом, естественным образом зависит от количества пользователей и размера пула. Чем больше пользователей вносят средства в пул, тем лучше. Однако, чтобы сохранить анонимность, пользователь должен помнить об основных правилах сохранения конфиденциальности:
* Выжидать определенное время между внесением депозита и снятием средств.
* Смешивать свои средства со средствами других пользователей - подождите пока после вашего депозита будут внесены новые, прежде чем выводить свои активы.
_More recommendations are provided on:_ [_Tips to remain anonymous_](tips-to-remain-anonymous.md)_._
### Contribution of zk-SNARK & hashing process
Дополнительные рекомендации приведены в разделе: Советы по сохранению анонимности.
Tornado.Cash use Zero-Knowledge Succinct Non-Interactive Argument of Knowledge \(also called zk-SNARK\) to verify & allow transactions.
### Какой вклад в проект внесли доказательство zk-SNARK и процесс хэширования
To process a deposit, Tornado.Cash generates a random area of bytes, computes it through the [Pederson Hash](https://iden3-docs.readthedocs.io/en/latest/iden3_repos/research/publications/zkproof-standards-workshop-2/pedersen-hash/pedersen.html) \(as it is friendlier with zk-SNARK\), then send the token & the 20 mimc hash to the smart contract. The contract will then insert it into the Merkle tree.
Tornado.Cash использует доказательство Zero-Knowledge Succinct Non-Interactive Argument of Knowledge \(также называемый zk-SNARK\) для проверки и разрешения транзакций.
To process a withdrawal, the same area of bytes is split into two separate parts: the **secret** on one side & the **nullifier** on the other side. The nullifier is hashed. This nullifier is a public input that is sent on-chain to get checked with the smart contrat & the Merkle tree data. It avoids double spending for instance.
Чтобы обработать депозит, Tornado.Cash генерирует случайную область байтов, вычисляет ее через [хэш Педерсона](https://iden3-docs.readthedocs.io/en/latest/iden3_repos/research/publications/zkproof-standards-workshop-2/pedersen-hash/pedersen.html) \(так как он более совместим с zk-SNARK\), затем отправляет токен и хэш 20 mimc смарт-контракту. Контракт затем вставляет его в дерево Меркла.
Thanks to zk-SNARK, it is possible to prove the 20 mimc hash of the initial commitment and of the nullifier without revealing any information. Even if the nullifier is public, privacy is sustained as there is no way to link the hashed nullifier to the initial commitment. Besides, even if the information that the transaction is present in the Merkle root, the information about the exact Merkle path, thus the location of the transaction, is still kept private.
Для обработки вывода средств та же область байтов разбивается на две отдельные части: секрет с одной стороны и нуллификатор с другой.
Deposits are simple on a technological point of view, but expensive in terms of gas as they need to compute the 20 mimc hash & update the Merkle tree. At the opposite, the withdrawal process is complex, but cheaper as gas is only needed for the nullifier hash and the zero-knowledge proof.
Нуллификатор хэшируется. Этот нуллификатор является публичным вводом информации, который передается по цепочке для сверки с данными смарт-контракта и деревом Меркла. Это позволяет, например, избежать задвоенных транзакций.
Благодаря zk-SNARK можно доказать 20 mimc хэш исходного обязательства и нуллификатора, не раскрывая никакой конкретной информации. Даже если нуллификатор является публичной информацией, конфиденциальность сохраняется, так как нет возможности связать хэшированный нуллификатор с первоначальным платежным обязательством. Кроме того, информация о том, что транзакция присутствует в корне Меркла, информация о точном пути транзакции и о местонахождении транзакции является приватной.
Депозиты просты с технологической точки зрения, но сложны с точки зрения трудозатрат, поскольку необходимо вычислить 20 mimc хэш и обновить дерево Меркла. В то время как процесс снятия средств является более сложным, но более дешевым в плане трудозатрат, поскольку они требуются только для хэша нуллификатора и доказательства с нулевым разглашением.
_Written by_ [_@ayefda_](https://torn.community/u/ayefda)\_\_
автор __[_@ayefda_](https://torn.community/u/ayefda)\_\_