نکات کلیدی:
- در دنیای وب 3 شما با استفاده از والت خودتان با اپلیکیشنهای غیرمتمرکز کار میکنید.
- ارتباط با اپلیکیشنهای غیرمتمرکز از طریق امضاهای رمزنگاری شده انجام میشود - یعنی امضای تراکنشها با استفاده از کلید خصوصی خودتان برای تأیید آنها.
- اما میتوانید آیتمهای مختلفی را با استفاده از کلید خصوصی خودتان امضاء کنید - مثلاً پیامها و تراکنشها دو آیتم کاملاً متفاوت با پیامدها و تأثیرات مختلف هستند.
- اگر کاملاً در جریان نباشید که چه چیزی را امضاء میکنید، ممکن است خودتان را طعمه هکرها کنید. در این مطلب به شما توضیح میدهیم که پیام تأیید والت چیست و چه کاربردهایی دارد.
حوزه ارزهای دیجیتال یک حوزه پیچیده و تخصصی است که با سرعتی زیاد پیشرفت میکند و خیلی از مواقع درک تجربیات کاربری در این محیط سخت است. پس اگر دائماً با وب 3 تعامل دارید، خوب است که با جزئیات این حوزه آشنا باشید.
در دنیای وب 3 معمولاً کاربران باید تعاملات را از طریق والتشان به صورت رمزنگاری شده امضاء کنند اما همه این تعاملات یکسان نیستند.
در مجموع، دو نوع تعامل در دنیای ارزهای دیجیتال وجود دارد یعنی تراکنش و تأیید. ابهام درباره این دو نوع تراکنش - و نحوه تشخیص آنها - یکی از مهم ترین دلایل اسکم و کلاهبرداری در دنیای وب 3 است. به همین دلیل برای حفاظت از ارزهای دیجیتال خودتان لازم است با این دو نوع تعامل آشنا باشید.
در این مقاله به بررسی تفاوت بین امضای یک پیام تأیید و امضای یک تراکنش قرارداد هوشمند و نحوه تشخیص آنها میپردازیم.
تراکنش بلاکچین چیست؟
توضیحات را با یک یادآوری شروع میکنیم. تراکنش بلاکچین فرایندی است که توسط شما تأیید میشود و منجر به انتقال دادهها یا ارزش از یک نقطه بلاکچین به نقطهای دیگر میشود؛ یا کارهایی مثل ارسال یا دریافت ارز دیجیتال از والت کریپتوی خودتان یا برقراری ارتباط با یک قرارداد هوشمند برای کارهایی مثل استیک کردن، فروش یک NFT یا تعامل با یک استخر نقدینگی.
برای شروع یک تراکنش، باید آن را امضای دیجیتال کنید که این امضاء، موافقت شما با تراکنش موردنظر را نشان داده و تغییر در بلاکچین را شروع میکند.
پیام تأیید والت چیست؟
مثل تراکنشهای بلاکچین، برای پیامهای تأیید والت هم نیاز به امضای شما وجود دارد اما این پیامها تعاملی با بلاکچین ندارند و توابع قراردادهای هوشمند در آنها دخیل نیستند بلکه یک سیستم اعتبارسنجی برای اپلیکیشنهای غیرمتمرکز ایجاد میکنند تا کاربران بتوانند اثبات کنند که مالک والتی هستند که تراکنش با آن اجرا شده است.
پیام تأیید والت کجا نمایش داده میشود؟
علاوه بر امضای درخواستها هنگام کار با اپلیکیشنهای غیرمتمرکز، ممکن است در بازارها هم با چنین پیامهایی روبرو شوید.
با امضای یک پیام خاص شما به اپلیکیشن غیرمتمرکز اطمینان میدهید که مالک کلید خصوصی مورد نظر هستید بدون اینکه نیاز به اجرای یک تراکنش واقعی داشته باشید. این کارها همه خارج از زنجیره انجام میشوند و از آنجایی که با چنین تعاملاتی تغییری در بلاکچین ایجاد نمیشود، امضای تأیید والت هزینه گس هم ندارد.
کلاهبرداریهای مرتبط با پیامهای تأیید والت
به دلیل ابهامات و سوء برداشتهایی که در رابطه با امضاهای تأیید والت وجود دارد، کلاهبرداران میتوانند از آنها سوء استفاده کنند.
اخیراً یک هکر توانست با دسترسی به سایت PREMINT از هزاران کاربر کلاهبرداری کند. این هکر با این حمله توانست یک "پیام تأیید والت" جعلی را در سایت نمایش دهد که قربانیان با تصور اینکه این پیام درست و بدون مشکل است آن را تأیید کردند. این در حالیست که پیام مذکور در اصل یک تراکنش مخرب بوده که امضای آن به هکرها امکان میداد به توکنهای تعویض ناپذیر موجود در والت دسترسی پیدا کنند.
قربانیان این حمله علائم هشداری مثل وجود کارمزد گس را که نشان میداد این تعامل در اصل یک تراکنش است، نادیده گرفته بودند.
در یک مورد دیگر، سایتهای مخرب اطلاعات جدیدترین تراکنش ورودی شما را به دست آورده و با استفاده از اطلاعاتی درباره آدرس فرستنده، حجم اتر و تاریخ تراکنش ادعا میکردند که متامسک برای پذیرش این تراکنش نیاز به امضای شما دارد. واقعیت این است که تراکنشهای ورودی نیاز به هیچ اقدامی از سمت کاربر ندارند. در واقع آنچه که در این حالت انجام شده، امضای یک تراکنش دیگر بود که منجر به از دست رفتن موجودی کاربر میشد. به همین دلیل بارها اشاره شده که همیشه باید مراقب باشید چه چیزی را امضاء میکنید.
چگونه پیامهای مخرب تأیید والت را شناسایی کنیم؟
مهمترین نکتهای که باید از این مقاله به خاطر بسپارید این است که هنگام امضای هرگونه تعاملی با والتتان باید مراقب باشید و این امر مستلزم تشخیص تفاوت بین تأیید والت و تراکنش است. چند نکته که لازم است مراقب آنها باشید، عبارتند از:
- پیام تأیید والت هیچ وقت کارمزد گس ندارد.
- پیام تأیید والت نیاز به کار با توابع قرارداد هوشمند ندارد - در مواقعی که قرار است فقط والت را تأیید کنید، وجود توابعی مثل SetApprovalForAll، SafeTransfer یا SendEth میتواند یک نشانه خطر مهم باشد.
- معمولاً پیام تأیید والت در مواقعی درخواست میشود که با یک اپلیکیشن غیرمتمرکز کار کنید - نباید وقتی در حال گشتن در وب 3 هستید ناگهان و به صورت تصادفی با چنین پیامی برخورد کنید.
آشنایی با وب 3 ضروری است!
هر پیامی که امضاء میکنید عواقب خاص خود را دارد و درک پیامی که قرار است امضاء کنید تنها راه تشخیص عواقب احتمالی آن است.
با اینکه والتهای سختافزاری امن ترین راه ذخیره کلیدهای خصوصی هستند اما حتی والتی مثل لجر نانو هم نمیتواند از شما در برابر عواقب ناشی از امضای یک تراکنش یا پیام اشتباه حفاظت کند.
کلاهبرداریهای مرتبط با والتها معمولاً از نداشتن درک کامل درباره آنچه امضاء میکنید سوء استفاده میکنند. به همین دلیل برای حفاظت از ارزها و توکنهای دیجیتال خودتان، علاوه بر مراقبت از کلیدهای خصوصی باید حتماً با حوزه وب 3 و کلاهبرداریهای این حوزه آشنا باشید.