MoneroSwapper MoneroSwapper

اشتباهات رایج در ناشناس‌زدایی Monero

MoneroSwapper · · · 1 min read · 9 views

اشتباهات رایج در ناشناس‌زدایی Monero که باید از آن‌ها پرهیز کنید

Monero یکی از قوی‌ترین مجموعه‌های رمزنگاری حریم خصوصی در کل صنعت را به‌همراه دارد؛ امضاهای حلقه‌ای (ring signatures)، RingCT و آدرس‌های مخفی (stealth addresses) به‌صورت پیش‌فرض فرستنده، مبلغ و گیرندهٔ هر تراکنش را پنهان می‌کنند. با این حال در سال ۲۰۲۰ سازمان IRS-CI آمریکا جایزه‌ای ۶۲۵٬۰۰۰ دلاری برای هر کسی که بتواند XMR را به‌طور قابل‌اتکا ردیابی کند تعیین کرد، و شرکت‌هایی مانند Chainalysis و CipherTrace از آن زمان ابزارهای «ردیابی Monero» را به دولت‌ها می‌فروشند. حقیقت ناخوشایند این است که تقریباً هیچ‌کدام از این تلاش‌ها در عمل پروتکل را نمی‌شکنند. آن‌ها از خودِ کاربر سوءاستفاده می‌کنند.

ناشناس‌زدایی در عمل به‌ندرت یک رویداد رمزنگارانه است. این یک رویداد عملیاتی است؛ نشتِ یک آدرس IP، برداشتی همراه با احراز هویت (KYC) که نامِ واقعی را به یک تراکنش گره می‌زند، یک کلید مشاهده (view key) که به دست شخص اشتباهی می‌رسد، یا الگوی خرجی که فریاد می‌زند «این همان شخص است». ما در MoneroSwapper که تبادل‌ها را پردازش می‌کنیم، دیده‌ایم که محتاط‌ترین کاربران از نظر حریم خصوصی، آن‌هایی نیستند که پیچیده‌ترین ابزارها را دارند؛ آن‌هایی هستند که از یک فهرست کوتاه از خطاهای تکرارشونده دوری می‌کنند. این راهنما همان اشتباهات را، دلیل اهمیت هرکدام، و دقیقاً راه دور زدنشان را بررسی می‌کند تا حریم خصوصی‌ای که فکر می‌کنید دارید، همان حریم خصوصی‌ای باشد که واقعاً به دست می‌آورید.

چرا حریم خصوصی Monero در لایهٔ انسانی شکست می‌خورد

پنهان‌سازی روی زنجیرهٔ Monero به‌طرز چشمگیری دوام آورده است. گذار از امضاهای MLSAG به CLSAG در سال ۲۰۲۰، ورود Bulletproofs+ در ۲۰۲۲، و اندازهٔ حلقهٔ ثابت ۱۶، بیشتر حملات آماری‌ای را که پژوهشگران در دورهٔ ۲۰۱۷ تا ۲۰۱۸ نشان داده بودند بستند. حرکت پیش‌روی شبکه به سمت FCMP++ (اثبات عضویت در کل زنجیره) قصد دارد مجموعهٔ ناشناسی را از ۱۶ طعمه به کل زنجیره گسترش دهد و عملاً به استدلال‌های مبتنی بر حلقه به‌کلی پایان بخشد.

پس اگر زنجیره این‌قدر قوی است، ردیابی واقعاً از کجا می‌آید؟ تقریباً همیشه از سه جا:

  • فراداده‌های شبکه: آدرس IP شما در لحظهٔ پخش (broadcast) یک تراکنش، که توسط یک نود راه دور (remote node) ثبت‌کننده یا یک ناظر غیرفعال شبکه ضبط می‌شود.
  • پیوند خارج از زنجیره: یک صرافی KYC، یک فروشنده، یا طرف معامله‌ای که هویت شما و یکی از تراکنش‌هایتان را می‌داند و سپس بقیه را به آن مرتبط می‌کند.
  • الگوهای رفتاری: اینکه چگونه و چه زمانی خرج می‌کنید؛ مبالغ، زمان‌بندی، و عادات تجمیع وجوه، که بیش از هر چیزی که رمزنگاری بتواند فاش کند، اطلاعات لو می‌دهند.

هر اشتباهی که در ادامه می‌آید به یکی از این سه بردار نگاشت می‌شود. لایهٔ انسانی را اصلاح کنید و پروتکل کار خودش را انجام می‌دهد. آن را نادیده بگیرید، و هیچ مقدار امضای حلقه‌ای نجاتتان نخواهد داد.

رایج‌ترین اشتباهات ناشناس‌زدایی

این‌ها خطاهایی هستند که بیشتر از همه می‌بینیم، تقریباً از «مخرب‌ترین» تا «به‌راحتی نادیده‌گرفته‌شونده» مرتب شده‌اند. هرکدام در چند دقیقه قابل رفع است.

۱. پخش تراکنش از طریق یک نود راه دور روی شبکهٔ آشکار (clearnet)

به‌صورت پیش‌فرض، بسیاری از کیف‌پول‌ها به یک نود راه دور عمومی متصل می‌شوند تا مجبور نباشید بلاک‌چینِ حدوداً ۲۰۰ گیگابایتی را دانلود کنید. مشکل اینجاست: آن نود راه دور آدرس IP‌ای را که تراکنش شما را برای نخستین‌بار ارسال کرده می‌بیند. یک گردانندهٔ نودِ بدخواه یا هک‌شده می‌تواند IP شما را در کنار همان تراکنشی که تازه فرستاده‌اید ثبت کند؛ و گرچه نمی‌تواند محتوای آن را بخواند، حالا می‌داند که یک هویت شبکه‌ای واقعی آن را آغاز کرده است. آن IP را با یک حکم قضایی برای ISP جفت کنید و گمنامی از بین می‌رود.

راه‌حل، عبور دادن ترافیک کیف‌پول از Tor یا I2P است، یا بهتر از آن، اجرای نود خودتان. انتشار Dandelion++ در Monero کمک می‌کند مبدأ یک تراکنش میان همتایان (peers) پنهان شود، اما شما را از همان اولین نودی که ارسال شما را دریافت می‌کند ـ اگر آن نود در حال رصد باشد ـ محافظت نمی‌کند.

۲. برداشت مستقیم از یک صرافی KYC به کیف‌پول «خصوصی» شما

این رایج‌ترین تک‌نشتِ هویت است. شما XMR را روی یک صرافی تحت‌نظارت که پاسپورت و سلفی شما را نگه داشته می‌خرید، سپس به کیف‌پولی که قصد دارید خصوصی بماند برداشت می‌کنید. صرافی حالا ثبت کرده است: این انسانِ احرازهویت‌شده، این برداشت، با این مبلغ دقیق، در این زمان دقیق را کنترل می‌کند. اگر بعداً آن خروجی را به شکلی قابل‌تشخیص خرج کنید، مجموعهٔ ناشناسی اهمیت چندانی ندارد؛ نقطهٔ ورود از پیش نام‌دار شده است.

بهتر: Monero را به شیوه‌ای به دست آورید که از همان ابتدا هویت قانونی شما را به سکه‌ها گره نزند، برای مثال از طریق یک تبادل بدون KYC که در آن فقط یک آدرس دریافت ارائه می‌دهید. هدف، حذف کاملِ نقطهٔ ورودِ نام‌دار است، نه پنهان‌کردن آن پس از وقوع.

۳. استفادهٔ مکرر از یک آدرس عمومی در همه‌جا

آدرس‌های مخفی به این معنا هستند که حتی اگر یک آدرس واحد را منتشر کنید، ناظران روی زنجیره نمی‌توانند پرداخت‌ها را به آن مرتبط کنند. اما شکست‌های OPSEC در خارج از زنجیره روی هم انباشته می‌شوند: اگر آدرس کمک مالی شما روی GitHub، در امضای انجمن، و در یک توییت زیر نام واقعی‌تان ظاهر شود، هرکسی می‌تواند این زمینه‌ها را به‌شکل اجتماعی به هم گره بزند. از زیرآدرس‌ها (Subaddresses) استفاده کنید ـ برای هر طرف معامله یا هر زمینه یک آدرس تازه بسازید ـ تا هرگز رشتهٔ یکسانی را به دو طرفی که ممکن است یادداشت‌هایشان را مقایسه کنند ندهید.

۴. اشتراک‌گذاری کلید مشاهده (view key)

مردم به دلایل مشروع کلید مشاهدهٔ خصوصی خود را واگذار می‌کنند ـ اثبات موجودی به یک حسابدار، یک حسابرس، یا یک مرجع مالیاتی مانند سازمان امور مالیاتی کشور. اما یک کلید مشاهده، هر تراکنش ورودی به کیف‌پول شما را برای همیشه آشکار می‌کند. پس از اشتراک‌گذاری، قابل لغو نیست. آن را به‌عنوان افشای کامل تاریخچهٔ دریافت‌هایتان در نظر بگیرید، و کلید مشاهده را تنها با محدودترین هدف ممکن به اشتراک بگذارید، در حالت ایده‌آل برای یک کیف‌پول یکبارمصرف که صرفاً برای همان تعامل استفاده شده است.

۵. اثبات یک پرداخت با کلید تراکنش به‌صورت عمومی

برای اثبات اینکه به کسی پرداخت کرده‌اید، Monero به شما اجازه می‌دهد کلید خصوصی تراکنش (tx key) به‌علاوهٔ شناسهٔ تراکنش را فاش کنید. این کار به‌صورت خصوصی با گیرنده اشکالی ندارد. اما چسباندن آن در یک رشتهٔ بحث عمومی برای حل اختلاف، به هرکسی اجازه می‌دهد مبلغ و مقصد آن تراکنش خاص را تأیید کند ـ یعنی داوطلبانه محرمانگی را از یکی از انتقال‌های خودتان برداشته‌اید.

۶. خرج‌کردن با الگوهایی که فریاد می‌زنند «کیف‌پول یکسان»

تحلیل رفتاری دست‌کم گرفته می‌شود. اگر ۴٫۷ XMR دریافت کنید و سه روز بعد دقیقاً ۴٫۷ XMR را به جلو بفرستید، با وجود اینکه RingCT مقادیر را روی زنجیره از دید اشخاص ثالث پنهان می‌کند، یک هم‌بستگیِ مبلغیِ آشکار ساخته‌اید ـ زیرا طرف‌های معامله در هر دو سر، مبالغ خودشان را می‌بینند. تجمیع همهٔ خروجی‌ها در یک تراکنش و سپس بلافاصله فرستادن کل مبلغ به‌جلو، آن ورودی‌های پیش‌تر مجزا را به‌عنوان متعلق به یک مالک به هم گره می‌زند. مبالغ را متغیر کنید، به وجوه اجازهٔ ماندن بدهید، و از رفت‌وبرگشت‌های «واریز X، برداشت X» در سرویس‌ها پرهیز کنید.

عادت‌های امن در برابر پرخطر، در یک نگاه

یک کار یکسان را می‌توان به شیوه‌ای انجام داد که از شما محافظت کند یا در سکوت به شما خیانت کند. مقایسهٔ کنش‌های رایج چنین است:

کنششیوهٔ پرخطرشیوهٔ امن‌تر
اتصال کیف‌پول نود عمومی تصادفی روی clearnet نود خودتان، یا نودی که از طریق Tor/I2P به آن می‌رسید
به‌دست‌آوردن XMR صرافی KYC ← برداشت به کیف‌پول خصوصی تبادل بدون KYC، فقط با آدرس دریافت
دریافت پرداخت‌ها یک آدرس عمومی بازاستفاده‌شده در همه‌جا یک Subaddress تازه برای هر طرف معامله
اثبات موجودی انتشار عمومی کلید مشاهده یا کلید tx افشای خصوصی و محدودشده به یک طرف
خرج‌کردن فرستادن دقیقاً همان مبلغ دریافت‌شده مبالغ متغیر، فاصلهٔ زمانی، بدون رفت‌وبرگشت
پروتکل تراکنش شما را پنهان می‌کند. عادت‌های شما تعیین می‌کنند که آیا کسی اصلاً نیاز به خواندن آن دارد یا نه.

یک فهرست عملی برای سخت‌سازی امنیت

اگر هیچ کار دیگری نمی‌کنید، پیش از تراکنش بعدی‌تان این فهرست را مرور کنید. این فهرست هر سه بردار نشت ـ شبکه، خارج از زنجیره، و رفتاری ـ را به‌ترتیب پوشش می‌دهد.

  1. ابتدا حریم خصوصی شبکه را برپا کنید. دیمن رسمی Monero را خودتان اجرا کنید، یا کیف‌پولتان (Feather، Cake، یا رابط گرافیکی رسمی) را طوری پیکربندی کنید که از طریق Tor متصل شود. پیش از فرستادن هر چیزی، تأیید کنید که اتصال واقعاً مسیریابی شده است.
  2. نقطهٔ ورودتان را اصلاح کنید. بررسی کنید XMR کنونی شما چگونه به دست آمده است. اگر از یک منبع KYC گره‌خورده به نامتان آمده، آن موجودی را «شناخته‌شده» تلقی کنید و بر همان اساس برنامه‌ریزی کنید، نه اینکه فرض کنید زنجیره آن را پنهان می‌کند.
  3. برای هر زمینه یک Subaddress تازه استفاده کنید. هرگز یک آدرس یکسان را در دو جایی که می‌توانند به‌شکل اجتماعی به شما مرتبط شوند منتشر نکنید.
  4. کلیدهایتان را قفل کنید. عبارت بازیابی (Mnemonic seed) را آفلاین پشتیبان بگیرید، هرگز آن را در یک وب‌سایت تایپ نکنید، و هرگز یک کلید مشاهده را فراتر از یک هدف واحد و محدود به اشتراک نگذارید.
  5. حواستان به رفتار خرجتان باشد. از فرستادن مبالغ دقیق پرهیز کنید، به خروجی‌ها زمان بدهید تا کهنه شوند، و همه‌چیز را در یک تراکنش لو‌دهنده تجمیع نکنید.

هیچ‌یک از این گام‌ها به مهارت‌های پیشرفته نیاز ندارند. آن‌ها فقط نیازمند این هستند که به‌خاطر بسپارید آن‌ها را پیش از تراکنش انجام دهید، نه بعد از آن ـ زیرا تقریباً هر نشتی در این راهنما، پس از وقوع برگشت‌ناپذیر است.

اشتباهات ظریفی که کاربران باتجربه را به دام می‌اندازند

خطاهای بالا تازه‌واردها را زمین می‌زنند، اما لایهٔ دومی از اشتباهات، کسانی را که خود را محتاط می‌دانند گرفتار می‌کند. این‌ها دقیقاً به این دلیل ارزش دانستن دارند که احساس امنیت می‌دهند.

  • اعتماد به کیف‌پول‌های «سبک» که کلید مشاهدهٔ شما را نگه می‌دارند: برخی کیف‌پول‌های سبک با ارسال کلید مشاهدهٔ خصوصی شما به یک سرور راه دور همگام می‌شوند تا سرور بتواند زنجیره را برایتان اسکن کند. راحت است، اما آن سرور حالا هر پرداختی را که دریافت می‌کنید می‌بیند. اگر سرعت کیف‌پول سبک را بدون این معامله می‌خواهید، یکی را انتخاب کنید که محلی اسکن می‌کند یا در برابر نود خودتان اجرا شود.
  • هم‌بستگی زمان و مبلغ در تبادل اتمی (atomic swap): یک تبادل اتمی Bitcoin–Monero واسطه را حذف می‌کند، اما سمت BTC معامله کاملاً شفاف است. اگر یک مبلغ غیرعادی و دقیق را تبادل کنید و سپس XMR حاصل را فوراً جابه‌جا کنید، یک ناظر می‌تواند ورودی شفاف را با فعالیت بعدی شما از طریق زمان و مقدار تطبیق دهد. به خروجی اجازهٔ ماندن بدهید و پیش از خرج، آن را تقسیم کنید.
  • افشای هویت خودتان با یک آدرس کمک مالی: انتشار یک آدرس ثابت زیر نام مستعاری که از پیش به نام واقعی‌تان گره خورده، هر پرداخت آیندهٔ آن را به نخی تبدیل می‌کند که کسی می‌تواند بکشد. Subaddressها را بچرخانید، و وجوهِ «روبه‌عموم» را از دارایی‌های خصوصی جدا نگه دارید.
  • این فرض که یک مخلوط‌کن یا churn نقطهٔ ورود بد را اصلاح می‌کند: churning ـ یعنی فرستادن XMR به خودتان برای تازه‌کردن مجموعهٔ طعمه ـ یک مبدأ نام‌دارِ KYC را پاک نمی‌کند. آن رویداد نام‌دار همچنان اتفاق افتاده است؛ شما فقط چند پرش (hop) اضافه کرده‌اید. پیشگیری همیشه بر پاک‌سازیِ پس از وقوع برتری دارد.

چرا این موضوع برای کاربران منطقهٔ ما اهمیت دوچندان دارد

برای بسیاری از کاربران فارسی‌زبان، حریم خصوصی فقط یک ترجیح ایدئولوژیک نیست ـ یک ضرورت عملی است. وقتی دسترسی به صرافی‌های بین‌المللی به‌خاطر محدودیت‌های جغرافیایی ناپایدار است و حساب‌ها می‌توانند بدون اطلاع قبلی مسدود شوند، گره‌زدن هویت قانونی شما به یک نقطهٔ ورود KYC ریسکی است که فراتر از ردیابی زنجیره می‌رود. همان رویدادِ نام‌داری که یک تحلیل‌گر زنجیره می‌تواند به آن چنگ بزند، می‌تواند بهانه‌ای برای انجماد وجوه یا درخواست اطلاعات بیشتر هم باشد.

این یعنی منطق «ابتدا نقطهٔ ورود را اصلاح کنید» برای این مخاطب وزن بیشتری دارد. اگر سکه‌ها از همان ابتدا هرگز به نام شما گره نخورده باشند، هیچ پروندهٔ آماده‌ای برای استناد وجود ندارد. به‌علاوه، به‌خاطر بسپارید که مرجع مالیاتی محلی مانند سازمان امور مالیاتی و مقررات بانک مرکزی نیز ممکن است در آینده دربارهٔ دارایی‌های دیجیتال سخت‌گیرتر شوند؛ ساختن عادت‌های سالم امروز، بسیار ارزان‌تر از اصلاح یک تاریخچهٔ لو‌رفته در آینده است.

نکتهٔ پایانی برای این منطقه: به VPN‌های رایگان یا مرورگرهای ناشناخته برای «حریم خصوصی» اعتماد نکنید. بسیاری از آن‌ها ترافیک را ثبت می‌کنند یا نشت DNS دارند. برای ترافیک کیف‌پول، Tor یا نود خودتان هنوز هم استانداردِ قابل‌اتکاست، نه یک افزونهٔ مرورگرِ تبلیغ‌شده.

مطالعهٔ موردی: چگونه یک برداشتِ KYC کل یک کیف‌پول را از هم می‌گشاید

یک سناریوی واقع‌گرایانه را در نظر بگیرید. کاربری ۱۰ XMR را روی یک صرافی بزرگِ تحت‌نظارت که هویت احرازشدهٔ او را دارد می‌خرد. او هر ۱۰ تا را به یک کیف‌پول جدید که آن را «ناشناس» می‌داند برداشت می‌کند. دو روز بعد، دقیقاً ۲٫۵ XMR به یک فروشنده پرداخت می‌کند، سپس بقیه را در یک تراکنش تجمیعی واحد خرج می‌کند.

برای یک تحلیل‌گر زنجیره، برداشت از صرافی یک رویدادِ نام‌دار، تاریخ‌دار و با مبلغ ثابت است. پرداخت بعدی به‌قدری کوچک و از نظر زمانی به‌قدری نزدیک است که یک نامزدِ رفتاریِ قوی به‌شمار می‌رود. تجمیع، خروجی‌های باقی‌مانده را به‌عنوان یک مالک به هم گره می‌زند. هیچ‌کدام از این‌ها RingCT را نمی‌شکند ـ تحلیل‌گر هرگز به آن نیازی ندارد. او صرفاً یک نقطهٔ شروعِ نام‌دار را به یک الگوی قابل‌پیش‌بینی متصل می‌کند. اگر کاربر سکه‌ها را از طریق یک تبادل بدون KYC به دست آورده بود، مبالغ را متغیر کرده بود، و همه‌چیز را از روی Tor مسیریابی کرده بود، هیچ نقطهٔ شروعِ نام‌داری برای لنگرانداختنِ تحلیل وجود نداشت. این همان تفاوتی است که بهداشت عملیاتی ایجاد می‌کند، و همین دلیلی است که ما MoneroSwapper را طوری ساختیم که از همان ابتدا هرگز اسناد هویتی نخواهد.

پرسش‌های پرتکرار

آیا Monero واقعاً قابل ردیابی است؟

خودِ پروتکل ـ امضاهای حلقه‌ای، RingCT و آدرس‌های مخفی ـ هیچ شکست عملی شناخته‌شده‌ای ندارد، و حرکت به سمت FCMP++ آن را بیشتر تقویت خواهد کرد. «ردیابی» در دنیای واقعی تقریباً همیشه به نشت فراداده، پیوند KYC، یا الگوهای رفتاریِ معرفی‌شده توسط کاربر تکیه دارد، نه به شکستن رمزنگاری.

آیا استفاده از یک نود راه دور خطرناک است؟

می‌تواند باشد. یک نود راه دورِ ثبت‌کننده یا بدخواه می‌تواند آدرس IP‌ای را که تراکنش شما را ارسال کرده ثبت کند و یک هویت شبکه‌ای را به آن انتقال گره بزند. اجرای نود خودتان، یا اتصال از طریق Tor یا I2P، این ریسک را برطرف می‌کند. نود در هر صورت همچنان نمی‌تواند محتوای تراکنش شما را بخواند.

آیا اشتراک‌گذاری کلید مشاهده‌ام موجودی‌ام را آشکار می‌کند؟

هر تراکنش ورودی به آن کیف‌پول را آشکار می‌کند، به‌طور دائمی و غیرقابل‌بازگشت. هرکسی که کلید مشاهدهٔ شما را داشته باشد می‌تواند ببیند چه دریافت کرده‌اید. آن را فقط زمانی که کاملاً ضروری است به اشتراک بگذارید، محدود به یک کیف‌پول یکبارمصرف، و هرگز برای وجوه اصلی‌تان.

اگر Monero مبالغ را پنهان می‌کند، چرا برداشت از یک صرافی KYC مهم است؟

زیرا صرافی از پیش هویت شما و مبلغ دقیق برداشت را می‌داند. زنجیره مقادیر را از ناظران شخص ثالث پنهان می‌کند، اما نمی‌تواند یک نقطهٔ ورودِ نام‌دار را که یک طرفِ تحت‌نظارت ثبت کرده پنهان کند. راه‌حل، نساختنِ آن نقطهٔ ورودِ نام‌دار از اساس است.

مهم‌ترین عادتی که باید در پیش گرفت چیست؟

مسیریابی ترافیک کیف‌پول از طریق Tor یا نود خودتان، پیش از آنکه هرگز یک تراکنش را پخش کنید. نشت IP در سطح شبکه رایج‌ترین و مخرب‌ترین بردار است، و با پیکربندی‌های پیش‌فرضِ نودِ عمومی، در سکوت اتفاق می‌افتد.

جمع‌بندی

Monero به‌صورت پیش‌فرض به شما حریم خصوصی می‌دهد، اما «به‌صورت پیش‌فرض» با «به‌طور خودکار، فارغ از هر کاری که می‌کنید» یکسان نیست. رمزنگاری دوام می‌آورد؛ شکست‌ها در لایهٔ انسانی رخ می‌دهند ـ نودهای clearnet، نقاط ورودِ KYC، آدرس‌های بازاستفاده‌شده، کلیدهای لو‌رفته، و خرج‌کردنِ قابل‌پیش‌بینی. هر اشتباهی در این راهنما، پرهیز از آن ارزان و جبران آن گران است، پس زمان اصلاحشان پیش از تراکنش بعدی شماست، نه پس از یک نشت.

اگر نقطهٔ شروعی می‌خواهید که هویت شما را به سکه‌هایتان گره نزند، می‌توانید از طریق یک تبادل بدون KYC به‌صورت ناشناس Monero بخرید و نقطهٔ ورودِ نام‌دار را به‌کلی از تصویر بیرون نگه دارید. این را با نود خودتان، Subaddressهای تازه، و خرج‌کردنِ منضبط جفت کنید، و آنگاه حریم خصوصی‌ای که Monero وعده می‌دهد به همان حریم خصوصی‌ای تبدیل می‌شود که واقعاً نگه می‌دارید.

اشتراک‌گذاری مقاله

مقالات مرتبط

صرافی Monero ناشناس

بدون KYC • بدون ثبت‌نام • تبدیل فوری

همین الآن مبادله کن