في واحدة من
المقالات السابقة
، قمنا بمراجعة تقنيات العملات المشفرة المجهولة. نلقي نظرة اليوم على مشكلة إخفاء الهوية من ناحية أخرى ونقدم نظرة عامة على أكثر الطرق شهرة لتحليل المجموعات المجهولة الهوية اليوم. في هذه المقالة ، سوف نركز على تحليل معاملات blockchain نفسها ، متجاوزين إمكانية توصيل عناوين المحفظة بعناوين IP الخاصة بهم على مستوى بروتوكول p2p ، حيث إن التقنيات في هذه الحالة رتابة إلى حد ما. لفهم هذه المقالة ، تكون المعرفة السطحية بجهاز العملات المشفرة الشائعة كافية على مستوى فهم ماهية المدخلات والمخرجات للمعاملة.

في عام 2009 ، عندما ظهر بيتكوين للتو ، كان يعتبر وسيلة لنقل مجهول ، لأنه لم يكن من الممكن مقارنة المفتاح العام للمحفظة بمالكها. ولكن مرت هذه الأوقات ، واليوم التقنيات معروفة لتحليل الرسم البياني للدفع وتحديد تجمعات العناوين في جميع المواقع تقريبا على الشبكة: التبادلات ، مجمعات التعدين ، المبادلات وأسواق darknet.
تستخدم كل هذه التقنيات تقريبًا نفس الأساليب - أولاً ، باستخدام الاستدلال البسيط ، يتم دمج العناوين في مجموعات ، ثم تحديد ما إذا كانت كل مجموعة تنتمي إلى موقع معين أم لا. يمكنك قراءة المزيد حول هذا الموضوع في
لعبة Fistful of Bitcoins: وصف المدفوعات بين الرجال الذين لا يحملون أسماءنظرًا لأن خصوصية التحويلات لا تزال ليست الهدف الرئيسي لعملة البيتكوين ، فقد بدأ الطلب يظهر لطرق للحفاظ على سرية رسوم المدفوعات الخاصة بهم. كانت المحاولات الأولى هي "تبديل التبديل" - وهي الخدمات التي ترسل المعاملات نيابة عن عدة مستخدمين ، والتي تتطلب الثقة في الخلاط نفسه. لتقليل المخاطر المرتبطة بالثقة في الخدمات المركزية ، ظهر بروتوكول CoinJoin المعروف ، والذي لم يسمح لطرف ثالث (وهو الخلاط نفسه) بالسيطرة على أموال المستخدمين. مع تطور هذه الفكرة بدأت cryptocurrency في الظهور ، والتي الشيء الرئيسي هو خصوصية التحويلات. في
Coinmarketcap top ، يمكنك الآن العثور على ثلاثة منهم - Monero و Dash و ZCash ، التي تبلغ رسملتها الإجمالية وقت كتابة هذا التقرير حوالي 1.8 مليار دولار. بعد ذلك ، سوف نلقي نظرة فاحصة على طرق تحليل هذه القيود.
CoinJoin
اقترح Greg Maxwell بروتوكول
CoinJoin في عام 2013 كبديل للخلاطات الحالية ، والتي لا تتطلب نقل عملات البيتكوين الخاصة بهم إلى طرف ثالث. جوهر البروتوكول هو أن العديد من المستخدمين يتم طردهم لتسديد مدفوعاتهم في معاملة واحدة.
في هذا المثال ، يقرر Ernie و Barack إدخال وإجراء التحويلات إلى Charlie و Donald من خلال معاملة مشتركة. كما نرى في الصورة ، يصبح من الصعب فهم من قرر الدفع مقابل حملة Donald - Ernie أو Barack.
لكن في هذه الحالة ، لا تعني كلمة "صعبة" "مستحيل". كانت واحدة من التقنيات الأولى (والناجحة للغاية) لإلغاء تعريف معاملات
CoinJoin هي
CoinJoin sudoku . يقترح المؤلف تحليل مجموعات مختلفة من المدخلات والمخرجات ، والتي تعطي في المجموع نفس القيمة ، على افتراض أنها يمكن أن تتوافق مع دفعة واحدة. في الممارسة العملية ، قد يبدو هذا مثل هذا (المصدر -
https://www.coinjoinsudoku.com/advisory/ ):
في عمل
"تراكبات تعزيز الخصوصية في Bitcoin" ، ذهب المؤلفون إلى أبعد من ذلك وقاموا بفحص المهاجم - المهاجم الذي شارك بنشاط في المعاملات. إذا شارك المهاجم في عدد من المعاملات المشتركة ، فيمكنه استبعاد مدخلاته ومخرجاته ، مما يسهل على نفسه تحليلها.
لكن النقطة الرئيسية "لعدم الثقة" في هذا المخطط هي طبيعتها المركزية. يجب على المستخدمين اختيار خدمة "موثوق بها" لهذه الأغراض ، والتي يمكنها ببساطة حفظ سجلات العجن التي تمر بها (على الرغم من أنها لا تستطيع سرقة المال).
من بين أشياء أخرى ، يحتاج المستخدم نفسه أيضًا إلى اتخاذ تدابير لتقليل مخاطر إعادة تحديد هوية دفعه. من المهم للغاية عدم استخدام نفس العنوان للمدفوعات أكثر من مرة ، لأن ذلك سيسهل إلى حد كبير تحليل المهاجم لسلسلة المعاملات.
ومع ذلك ، على الرغم من أن هذه واحدة من المحاولات الأولى ولديها نموذج ضعيف نوعًا من عدم الكشف عن هويتها ، فقد تضاعف عدد هذه المعاملات على مدار العام الماضي ثلاثة أضعاف ووصل إلى 4.09٪ من إجمالي عدد المدفوعات (وفقًا
لموقع longhash.com ) ، مما يشير إلى تزايد الطلب على الخصوصية في شبكات البيتكوين.
اندفاع
اندفاعة (DarkCoin سابقًا) → شوكة Bitcoin. المعاملات في Dash ليست خاصة بشكل افتراضي ، لإجراء دفعات خاصة في Dash هناك وظيفة إرسال خاصة. لقد ورثت مبدأ CoinJoin ، إلى جانب معظم أوجه القصور فيه.
اندفاعة يقسم خروج المستخدم إلى نوعين: عادي وخاص. يمكن استخدام السابق لتنفيذ معاملة شفافة ، وهذه الأخيرة مطلوبة للمشاركة في الاختلاط. عند تحويل المخرجات العادية ، تقسم المعاملة التي تنفقها إلى فئات من النموذج 1.00001 DASH ، و 0.100001 DASH ، وما إلى ذلك ، وتنقل العناوين لمرة واحدة إلى العناوين التي يسيطر عليها المستخدم. بعد ذلك ، يحدد المرسل الرمز الرئيسي الذي سيتم ربط المعاملة به. عند طلب عدد كافٍ من المشاركين ، يتم تشكيل معاملة وإرسالها إلى توقيع كل مرسل. بعد ذلك ، هي على استعداد لإرسالها إلى الشبكة.
مثال لمعاملة PrivateSend في Dash يستخدم ثلاثة عناوين مختلفة للمرسل والمستلم. المصدر -
اندفاعة مفصلة :
على عكس CoinJoin ، يتخلص المستخدم من الحاجة للتأكد من أن مفتاحه العام لا يظهر مرتين في أحد هذه الالتباسات. ومع ذلك ، فإن هذا يحمي بشكل ضعيف من تتبع المصدر - يمكنك تتبع سلسلة "التحويلات" إلى مخرج حقيقي ، حيث يمكنك استخدام إحدى الطرق القياسية لتحليل مصادر المعاملات لبيتكوين. من الناحية العملية ، تبين أنه إذا كان للنواتج سلف مشترك واحد ، فعلى الأرجح يكون هذا هو المرسل نفسه.
فئة مخرجات المعاملات الخاصة تعقد هجمات مثل CoinJoin sudoku ، لكن لا تحميهم تمامًا. جنبا إلى جنب مع بعض الاستدلال هذه الميزة يمكن إلغاؤها.
حقيقة أن بروتوكول الخلط جزء من Dash ويزيل الحاجة إلى استخدام خدمات الجهة الخارجية لا يلغي الحاجة إلى الثقة في الأعمدة المختارة. لا أحد يستطيع أن يضمن أن صاحب أي من الأديرة لا يجمع سجلات حول طلبات المعاملات من جانبه.
كما هو الحال مع CoinJoin ، قد يواجه المستخدم نقص السيولة ليعجن نقله. في هذه الحالة ، يُنصح المستخدمون باختيار العديد من الأعمدة لتكوين المعاملة ، لكن هذا يزيد فقط من خطر التعثر على مالك عديمي الضمير.
الآن تنتقد الويب بنشاط نموذج خصوصية Dash. يمكنك العثور على مشاركات على Reddit حول كيفية تمكن شخص ما من إعادة تعريف جزء من معاملات الإرسال الخاصة. على سبيل المثال ، في
هذا المنشور ، يدعي المؤلف أنه خلال الـ 15 يومًا الماضية تمكن من تتبع حوالي 13٪ من المعاملات إلى مصدرها.
ZCash
ظهر
ZCash في عام 2016
كتطبيق لبروتوكول
ZeroCash وأصبح معروفًا للجميع من خلال استخدام zkSNARKs لأدلة المعرفة الصفرية. لا يلزم ZCash استخدام المعاملات السرية فقط - معظم المعاملات على شبكتها شفافة وترث أجهزتها من البيتكوين.
لاستخدام وظيفة الدفع السرية ، يجب على المستخدم تحويل الجزء الضروري من الأموال إلى ما يسمى بالتجمع المحمي. وبالتالي ، يمكن تقسيم المعاملات الآمنة إلى ثلاثة أنواع ، حسب مرحلة التجمع المحمي:
- معاملة التدريع. المعاملة من المساحة العامة إلى تجمع محمية. هنا ، المرسل ، على عكس المستلم ، لا يختبئ ، لكن يمكنك أن ترى مقدار الأموال التي تنفق "في الظل".
- معاملة خاصة. المعاملة داخل بركة محمية. هنا ، لا يعرف المرسل ولا المستلم ولا مبلغ التحويل. في الواقع ، من المعروف فقط أن الأموال تنفق في هذه الصفقة التي "كانت في أي وقت مضى في المجمع".
- معاملة التجريد. معاملة سحب الأموال من تجمع. من غير المعروف من يعرضها ، لكن من المعروف لمن وعددهم.
شكل توضيحي لأنواع مختلفة من المعاملات. من اليسار إلى اليمين: معاملة شفافة منتظمة ، معاملة محمية ، معاملة خاصة ، معاملة مرفوعة. المصدر -
"تحليل تجريبي لعدم الكشف عن هويته في Zcash" :
من المهم أن نلاحظ أن الشبكة تتطلب أن جميع العملات التي تم إنشاؤها (المكافآت كتلة) الوقوع في تجمع محمية ، وبالتالي زيادة مجهولة الهوية المحددة لخلط المعاملات.
التحليل التجريبي للمعاملات العامة في ZCash (في بداية عام 2018 كانت تمثل 73 ٪ من إجمالي عدد المعاملات) ليست صعبة بشكل خاص ويخضع لنفس تقنيات بيتكوين نفسها. ومع ذلك ، فإن الحصول على إحصائيات حول من ومقدار الأموال التي تم سحبها من التجمع المحمي أمر أصعب بكثير. واحدة من أولى محاولات تحليل المعاملات الآمنة في عام 2018 كان العمل
"تحليل تجريبي لعدم الكشف عن هويته في Zcash" . قام مؤلفوها بالتحقيق في المدفوعات استنادًا إلى العديد من الأساليب البحثية - الملاحظات التي تمت بناءً على سلوك المستخدم:
- إذا كانت المعاملة تنفق مخرجات شفافة أو أكثر (بغض النظر عما إذا كانت المعاملة شفافة أو محمية أو مختلطة) ، فمن المرجح أن هذه المخرجات تنتمي إلى نفس عضو الشبكة.
- إذا تم الإشارة إلى مستلم واحد فقط في عملية نقل شفافة (أي بدون تغيير) ، فمن المرجح أن جميع مصادر الأموال لهذه الصفقة تخص المستلم.
- أي انسحاب من التجمع المحمي بمبلغ 250.0001 ZEC (كان هناك الكثير من هذه التحويلات) ينتمي إلى مؤسسي الشبكة. هذا يعادل تقريبا مكافأة 100 كتلة.
- إذا كان هناك أكثر من 100 مخارج في معاملة مجردة ، أحدها ينتمي إلى مجموعة تعدين معروفة ، فيمكننا أن نستنتج أن هذا سحب أموال من عمال المناجم. يمكن تعيين جميع المخرجات الأخرى على أنها تنتمي إلى عمال المناجم.
- إذا كان هناك زوج من المعاملات المحجوبة والمجففة بمبلغ فريد وفرق من عدة كتل ، وكانت معاملة التدريع قد حدثت في وقت سابق ، فإن هذه المعاملات مترابطة. هذا موصوف في في قابلية ربط معاملات Zcash .
توضح الرسوم التوضيحية أدناه بعض التحليلات التي تمكن مؤلفو العمل من بنائها على أساس هذه الاستدلال:
كان المؤلفون قادرين على تحديد 65.6 ٪ من المعاملات سحب الأموال من المجمع. لا يمكن تحقيق نجاحات كبيرة في تحديد المدفوعات داخل المجمع.
في عمل حديث ،
"خصوصية وربط قابلية التعدين في Zcash" ، حلل باحثون من جامعة لوكسمبورغ أداء مجمعات التعدين وحددوا نمطين عند دفع المكافآت:
- يعرض مجمع التعدين المكافأة المكشوفة على عنوانه العام ومن هناك يوزع المكافأة على عمال المناجم. أطلقوا عليه نمط T.
- تجمع التعدين بتخزين العملات المعدنية الملغومة في البركة المحمية وفي بعض الأحيان تمنح المكافآت لعمال المناجم من هناك إلى عناوينهم العامة. هذا النمط كان يسمى النمط Z.
لم يكن من الصعب إثبات ملكية المعاملات الخاصة بمجمعات محددة - فقد قارن الباحثون ببساطة العناوين العامة لدفع المكافآت مع عناوين كبار عمال المناجم المنشورة على المواقع الإلكترونية للمجمعات نفسها.
باتباع هذا النهج ، تمكن الباحثون من زيادة حصة المدفوعات المجمعة المحددة من 65.6 ٪ في العمل السابق إلى 84.1 ٪ على نفس البيانات.
ومع ذلك ، فإن هذا النهج له عيوبه:
- يمكن تطبيقه على فترة زمنية ضيقة إلى حد ما من حوالي 2000 قطعة (حوالي أربعة أيام) ، حيث يميل عمال المناجم إلى تغيير مجمعات التعدين ؛
- من الصعب للغاية تحديد المعاملات التي تنتمي إلى مجمعات صغيرة لم تجد سوى عدد قليل من الكتل ، لأن معاملاتها المدفوعة لا تتناسب مع النمط العام مع تجمعات كبيرة بسبب العدد القليل من المخارج لهم.
يتم عرض نتائج التحليل في الرسم التوضيحي:
بناءً على هذه البيانات ، يستنتج المؤلفون أن 95.6٪ من جميع معاملات ZCash يُحتمل أن يتم "الكشف عنها" ، مما يجعل خصوصية ZCash أقرب إلى مستوى البيتكوين.
كما نرى ، على الرغم من حماية التشفير القوية ، يمكن الحصول على الكثير من البيانات للتحليل والاستنتاجات من المعلومات المفتوحة في blockchain.
Monero
تم إطلاق Monero في أبريل 2014 وهو أشهر تطبيق لبروتوكول
CryptoNote . بدلاً من العناوين العامة لمستلمي الأموال ، تستخدم Monero عناوين لمرة واحدة في كل دفعة ، لذلك بالنسبة للمراقب الخارجي ، لا توجد وسيلة لمطابقة التشفير مع عنوان المستلم لمرة واحدة بعنوانه العام. لإخفاء المرسل ، تستخدم هذه التقنية فكرة العجن ، لكنها تفعل ذلك بطريقة مختلفة عن CoinJoin. في Monero ، لا يحتاج المرسل للبحث عن مرشح آخر لإكمال معاملة مشتركة. بدلاً من ذلك ، تجمع المحفظة نفسها مخارج تعسفية من blockchain ، وتخفي بينها المخرج الذي تريد إنفاقه ، وتربط كل ذلك بتوقيع الخاتم. يعمل توقيع الرنة هنا على إقناع مدقق المعاملات بأن المرسل يمتلك فعليًا أحد مخرجات العجن وأنه لا يتم إنفاقه. يحقق هذا درجة عالية من عدم اليقين عند محاولة تتبع الدفع إلى المستلم. مثال يمكننا أن نرى في الرسم التوضيحي:
لقد اتضح أن "درجة الخصوصية" للمعاملة تعتمد على حجم توقيع الخاتم الخاص بها - فكلما كانت النواتج العشوائية تستخدم في الخلط ، زاد صعوبة تتبعها.
حتى عام 2016 ، كان الاختلاط في شبكة Monero اختياريًا ، ثم تم رفع الحد الأدنى لحجم توقيع الخاتم إلى 3. لذا فقد نما كل عام وهو الآن 11.
في عام 2017 ، في عمل بعنوان
"تحليل تجريبي للتتبع في Monero Blockchain" ، أشارت مجموعة من الباحثين إلى نقطتي ضعف في بروتوكول
العملة المشفرة (تجدر الإشارة إلى أنهما لم
يكنا أول من تحدث عن ذلك ، لكنهما كانا قادرين على تقديم نتائج تحليل المعاملة في الممارسة العملية ).
تشير الثغرة الأولى إلى التأثير السلبي لاستخدام المعاملات الصالحة مسبقًا دون عجن. ويسمى أيضا تحليل "سلسلة من ردود الفعل". لقد أظهر المؤلفون في الممارسة العملية أن الاعتماد فقط على إخفاء الهوية بعناوين لمرة واحدة ليس عديم الفائدة فحسب ، بل إنه يؤدي أيضًا إلى إلغاء تحديد الهوية للمدفوعات الأخرى باستخدام هذه المخرجات كمخرجات للعجن - ومن المعروف بالفعل أين تم إنفاقها. مع وجود عدد صغير من المخرجات الخاطئة في معاملة ما ، يمكن حساب المخرجات الحقيقية بدرجة عالية من الاحتمال من خلال طريقة الاستبعاد. وبالتالي ، تمكن الباحثون من تتبع حوالي 62 ٪ من المعاملات التي تمت قبل فبراير 2017.
تتعلق الثغرة الثانية بالطريقة التي تختار بها المحفظة النواتج للخلط. الشيء هو أنه تم اختيار مخارج وهمية من blockchain بالتساوي ، والتي في ذلك الوقت لم تعكس الأنماط السلوكية لمستخدمي cryptocurrency. لاحظ المؤلفون أن المستخدم في أغلب الأحيان ينفق الأموال التي يتلقاها في غضون شهرين إلى ثلاثة أشهر. وهكذا ، في معظم الحالات ، تم إنفاق المخارج الأخيرة. فيما يلي أمثلة لتوزيع أعمار المخرجات في المعاملات:
باستخدام هذا الكشف عن مجريات الأمور في ذلك الوقت ، تمكن المؤلفون من الكشف عن حوالي 80 ٪ من مصادر المعاملات.
ومع ذلك ، أصبحت هذه التقنيات الآن ذات أهمية أكاديمية أكثر ، حيث قام المطورون بالفعل بتصحيح نقاط الضعف هذه - لقد رفعوا الحد الأدنى للميكسين إلى 11 ، قانون التوزيع ، الذي يتم بموجبه تجميع مخرجات الخلط واستبدالها بحقيقة أكثر تقريبًا وتنفيذ بروتوكول للمعاملات السرية.
في عمل آخر ، بعنوان
"تحليل التتبع التجريبي الجديد لـ CryptoNote-Block Blockinsins" ، يحاول الباحثون تحليل معاملات Monero باستخدام "مجموعات مغلقة".
دعنا نفسر مع مثال. لنفترض أن لدينا أربعة مخرجات pk1 ، pk2 ، pk3 و pk4. نحتاج الآن إلى العثور على أربع مثل هذه المعاملات حيث سيتم استخدامها حصريًا:
في حالتنا ، يمكننا أن نستنتج أن هذه المخرجات الأربعة يتم إنفاقها جميعًا في هذه المعاملات الأربعة ، وفي المرة التالية التي نلتقي فيها بمعاملة واحدة من هذه المخرجات على الأقل ، يمكننا استبعادها من مجموعة عدم الكشف عن هويتها بأنها خاطئة عن قصد.
أجرى المؤلفون تجارب على سلسلة Monero blockchain مع المعاملات السرية المشمولة بالفعل والحد الأدنى لحجم توقيع الخاتم 5. ومع ذلك ، نظرًا لأن هذه المجموعات ظاهرة نادرة إلى حد ما ، فقد تمكنوا من تتبع 0.084٪ فقط من المخرجات ، ويمكن اعتبار هذه التقنية إضافة إلى طرق أخرى للتحليل. تتيح لنا هذه النتيجة أن نستنتج أن Monero الحديثة توفر ضمانات قوية للسرية.
ما هي النتيجة
لقد أجرينا دراسة واسعة إلى حد ما عن طرق تحليل المجموعات غير المعروفة. على الرغم من أن لا أحد يحاول كسر التشفير ، فإن البعض منهم لديه نقطة ضعف في الطبيعة المركزية لخدمات إخفاء الهوية وغيرها في القدرة على إجراء معاملات شفافة. في رأينا ، تقدم Monero أفضل ضمانات للسرية لهذا اليوم (مع الثغرات الثابتة سابقًا) ، حيث أن الدراسات الحديثة لا توفر أي نتائج مهمة لتتبع المعاملات.