تورنادو کش چیست؟
تورنادو کش (Tornado Cash) با هدف حل مشکل حریم خصوصی بلاک چین ها از طریق استفاده از تراکنش های خصوصی ایجاد شد. این پلتفرم مانند سامورایی و واسابی نیست زیرا سکه ها را به روشی متفاوت ترکیب می کند، اما TornadoCash در نهایت همان هدف را دارد که تراکنش های مالی را خصوصی نگه می دارد.
تورنادو کش (TORN) چیست؟
Tornado Cash (TORN) یک راه حل غیرمتمرکز حفظ حریم خصوصی است که بر روی اتریوم ساخته شده است. در حالی که Tornado Cash بر اساس تحقیقات منبع باز توسط تیم Zcash (یکی از سکه های حفظ حریم خصوصی) توسعه یافته است، این پروتکل به کاربران اجازه می دهد تا سپرده های ETH و ERC-20 را از طریق سرویس قرارداد هوشمند خود ارسال کنند.
پس از ارسال سپرده ETH یا ERC-20 به TornadoCash، می توانید ارز دیجیتال خود را از طریق یک آدرس جدید برداشت کنید. هنگامی که دارایی از آدرس جدید خارج می شود، هیچ راهی برای ارتباط برداشت با سپرده وجود ندارد که به نوبه خود محرمانه بودن دارایی را تضمین می کند.
پروتکل TORN از ماه می 2020 متعلق به این تیم است تورنادو کش، کنترل کیف پول multisig پروتکل را از طریق به روز رسانی قرارداد معروف به Trusted Setup Ceremony واگذار کرد. از آن زمان، بنیانگذاران هیچ کنترلی بر TornadoCash ندارند و یک پروتکل کاملاً غیرمتمرکز در نظر گرفته می شود.
توکن TORN یک رمز منبع ثابت ERC-20 است که به دارندگان این امکان را میدهد تا تغییرات پروتکل را پیشنهاد و رأی دهند. کاربران Tornado Cash با تعامل با پروتکل امتیازهای ناشناس کسب می کنند که سپس به یک حساب امن واریز می شود. هنگامی که آنها به اندازه کافی امتیاز ناشناس جمع آوری می کنند، می توانند آنها را در یک فرآیند امن مشابه به توکن های TORN تبدیل کنند.
بررسی عملکرد Tornado Cash
برای دستیابی به حریم خصوصی، TornadoCash از قراردادهای هوشمندی استفاده می کند که سپرده های رمزنگاری شده را از یک آدرس می پذیرد و امکان برداشت از آدرس دیگری را فراهم می کند. این قراردادهای هوشمند به عنوان مجموعه هایی عمل می کنند که تمام دارایی های سپرده شده را ترکیب می کند.
هنگامی که وجوه از این استخرها از یک آدرس کاملاً جدید برداشت می شود، پیوند بین منبع و مقصد از بین می رود. بنابراین دارایی های رمزنگاری حذف شده ناشناس هستند.
در حالی که توکن ها در استخر تورنادو پول هستند، اما نگهبانی در دست کاربران باقی می ماند. بنابراین کاربران کنترل کامل روی توکن های خود دارند.
استخرهای حافظه پنهان تورنادو با مقدار ثابت سنتی:
هنگامی که یک کاربر وجوه را به یک استخر واریز می کند، یک یادداشت شخصی ایجاد می شود. این یادداشت خصوصی به عنوان یک کلید خصوصی برای کاربر عمل می کند تا بعداً به این وجوه دسترسی پیدا کند. برای برداشت آنها، همان کاربر می تواند از آدرس دیگری (قدیمی یا جدید) استفاده کند و وجوه خود را به لطف این کلید خصوصی بازیابی کند.
استخرهای جدید TornadoCash، استخر جدید ETH با مبالغ سفارشی و انتقال امن:
وجوه به طور مستقیم به یک آدرس کیف پول داده شده مرتبط است. بدون یادداشت یا کلید خصوصی. کاربران می توانند با تماس با استخر با آدرس مناسب به وجوه خود دسترسی داشته باشند.
حضانت یا از طریق واریز توکن به استخر یا با ثبت نام در استخر و دریافت حواله امن از آدرس دیگری به دست می آید.
قدرت چنین پروتکلی با تعداد کاربران و اندازه استخر آن ارتباط مستقیم دارد. هرچه کاربران بیشتری به استخر سپرده گذاری کنند، بهتر است. با این حال، برای حفظ حریم خصوصی و ناشناس ماندن، کاربر باید برخی از قوانین اساسی را در نظر داشته باشد، مانند:
- استفاده از رله برای پرداخت هزینه گاز در هنگام بکسل.
- سپری شدن زمان بین واریز و برداشت؛
- قبل از برداشت دارایی های خود، با انتظار برای چندین تراکنش، وجوه خود را با جمعیت مخلوط کنید.
مشارکت zk-SNARK و فرآیند هش
TornadoCash از اثبات دانش غیر تعاملی یا به اختصار از دانش صفر (معروف به zk-SNARK) برای تأیید و تأیید تراکنش ها استفاده می کند.
برای پردازش یک سپرده، TornadoCash یک منطقه تصادفی از بایت ها تولید می کند، آن را با استفاده از Pedersen Hash هش می کند (زیرا برای zk-SNARK راحت تر است)، سپس توکن و (20 هش MiMC) را در قرارداد هش می کند و درخت مرکل قرارداد خود را قرار می دهد.
برای پردازش یک برداشت، همان ناحیه از بایت ها به دو بخش جداگانه تقسیم می شود: رمز در یک طرف و ابزار رمزگشایی در طرف دیگر. باطل هش شده است. این باطل کننده یک ورودی عمومی است که به زنجیره ارسال می شود تا در مقابل قرارداد هوشمند و داده های درخت مرکل بررسی شود. به عنوان مثال از خرج مضاعف جلوگیری می کند.
به لطف zk-SNARK، می توان هش 20 MiMC سپرده اولیه را ثابت کرد و بدون افشای هیچ اطلاعاتی آن را باطل کرد. حتی اگر اعتباردهنده عمومی باشد، حریم خصوصی حفظ میشود، زیرا هیچ راهی برای مرتبط کردن باطلکننده هش شده با کامیت اصلی وجود ندارد. علاوه بر این، حتی اگر اطلاعات تراکنش در ریشه مرکل موجود باشد، اطلاعات مربوط به مسیر دقیق مرکل و متعاقباً مکان تراکنش خصوصی باقی میماند.
سپرده ها از نظر فنی ساده هستند، اما گران هستند زیرا برای محاسبه به 20 هش MiMC و به روز رسانی درخت Merkle نیاز دارند. از سوی دیگر، فرآیند استخراج پیچیده اما ارزانتر است، زیرا هش فقط برای باطل کردن هشها و اثبات دانش صفر مورد نیاز است.
همانطور که گفتیم با استفاده از تورنادو کشتراکنش ها با استفاده از اثبات های دانش صفر ترکیب می شوند. این الگوریتم اطلاعات تراکنش را کاملا مبهم می کند. TornadoCash همچنین یک سرویس غیرمتمرکز است و از طریق قراردادهای هوشمند کار می کند، بنابراین هیچ شخص ثالث متمرکزی نمی تواند مانند سایر روش های اختلاط، نگهبانی وجوه را در طول فرآیند اختلاط به عهده بگیرد.
نکته: درختان مرکل (ساختارهای داده درخت مانند) یک معماری مبتنی بر هش ایجاد می کنند که حریم خصوصی و همچنین یکپارچگی داده ها را حفظ می کند.
برای کار با Tornado Cash، باید وجوه را به Tornado Cash واریز کنید، سپس یک کلید تصادفی ایجاد میکند و توکنهای ERC-20 شما را واریز میکند. برای برداشتهای آتی، باید مدرکی ارائه کنید که یک کلید معتبر دارید.
با واریز شروع کنید و یک توکن ERC-20 و همچنین مبلغ سپرده را انتخاب کنید. بر روی “سپرده” کلیک کنید و آن را تایید کنید.
می توانید با استفاده از یک کیف پول رمزنگاری مانند Metamask یا از طریق Relayer برداشت کنید. اگر تصمیم به استفاده از کیف پول دارید، مطمئن شوید که آدرس جدیدی برای حفظ حریم خصوصی خود ایجاد کرده اید. راه دیگر استفاده از رله ای است که از هرگونه امکان ثبت تراکنشی که به صورت عمومی با شما در زنجیره بلوکی مرتبط است جلوگیری می کند. پس از ایجاد یک آدرس اتریوم جدید، Relayer وجوه شما را واریز می کند و هزینه شبکه اتریوم را از شما دریافت می کند.
هنگامی که تصمیم گرفتید چگونه می خواهید وجوه خود را برداشت کنید، راز سپرده خود را وارد کنید و روی منوی تنظیمات در آنجا کلیک کنید. در اینجا گزینه کیف پول را انتخاب کرده و ذخیره می کنید. سپس باید آدرس خود را وارد کنید و روی “دریافت” کلیک کنید.
چه چیزی تورنادو کش را منحصر به فرد می کند؟
TornadoCash اساسا حریم خصوصی تراکنش ها را با شکستن زنجیره بین آدرس های مبدا و مقصد بهبود می بخشد. Tornado Cash همچنین از قراردادهای هوشمندی استفاده می کند که سپرده های ETH را می پذیرد که می توان از آدرس های مختلف برداشت کرد و همانطور که در بالا ذکر شد برای جلوگیری از حفظ حریم خصوصی، Relayer می تواند برای برداشت به آدرسی بدون موجودی ETH نیز استفاده شود.
TornadoCash به معنای واقعی کلمه به عنوان یک پروکسی عمل می کند که با اثبات zk-SNARK (استدلال دانش صفر غیر تعاملی کوتاه) تراکنش ها را ناشناس نگه می دارد.
با این پروتکل اثبات دانش صفر، دو طرف درگیر هستند:
اثبات كردن: که به دنبال اثبات یک فرضیه است.
تایید کننده: که اعتبار گزاره های تاییدی را شرط می کند.
هنگامی که یک کاربر ETH را در یک قرارداد هوشمند قرار می دهد تورنادو کش واریز می کند، یک توکن تولید می کند و یک هش را به همراه مبلغ سپرده به قرارداد هوشمند ارسال می کند.
قرارداد هوشمند وجوهی را به لیست سپرده خود اضافه می کند و زمانی که کاربر می خواهد برداشت کند، کاربر باید رمز مربوطه را که با سپرده مصرف نشده مطابقت دارد از لیست سپرده Tornado Cash ارائه دهد.
برای برداشت، می توانید از کیف پول رمزنگاری یا Relayer همانطور که در بالا توضیح داده شد استفاده کنید.
با این حال، تیم تورنادو کش توصیه هایی در مورد خروج از پروتکل دارد. برای شروع، آنها توصیه می کنند قبل از برداشت وجوه خود حداقل برای پنج تراکنش منتظر بمانید تا از هرگونه احتمال کشف ارتباط بین سپرده ها و برداشت ها جلوگیری شود. آنها حتی توصیه می کنند که حدود 24 ساعت به عنوان یک قانون سرانگشتی (فقط برای محافظت از حریم خصوصی شما) منتظر بمانید.
تیم Tornado Cash همچنین استفاده از ابزارهای ناشناس بودن اینترنت مانند VPN یا پروکسی را هنگام استفاده از سرویس و پاک کردن کوکیهای DApps خود قبل از استفاده از آدرس برداشت جدید توصیه میکند.
مردم در مورد تورنادو کش چه می گویند؟
برخی از افراد، به ویژه ویتالیک بوترین، در گذشته استدلال کردهاند که پروژههایی مانند TornadoCash موفقیتآمیز هستند، زیرا آنها صرفاً ابزاری برای درگیر نگه داشتن مردم در کار فعلی خود هستند، نه اکوسیستم. به گفته بوترین، کاربران ارزهای دیجیتال به ابزارهای بیشتری در این زمینه نیاز دارند.
با در نظر گرفتن این موضوع، پس از اینکه TornadoCash 500,000 توکن را در فوریه 2021 منتشر کرد، که تقریباً 5٪ از کل عرضه 10,000,000 توکن TORN را نشان می دهد، برخی از مردم نگران نیاز به یک توکن مستقل بودند تورنادو کش ظاهراً به عنوان یک “ابزار” به خوبی کار می کرد. پس از این ایردراپ، توکن Torn (TORN) 200 درصد ارزش داشت.
به گفته وبلاگ تورنادو کش، این توکن ها به مدت 45 روز قفل هستند. 10 درصد اضافی از کل عرضه نیز به یک برنامه ماینینگ ناشناس شبیه به استخراج نقدی، 30 درصد به توسعه دهندگان و حامیان اولیه که به مدت سه سال باز می شوند و 55 درصد به پروتکل اختصاص داده شد. خزانه ای که به صورت خطی در یک دوره پنج ساله باز می شود.