شرح مبسط للعبارات السرية الضعيفة
كيف تعرض العبارات السرية الضعيفة بيتكوين للخطر
قد تبقى تقنيات التشفير في بيتكوين آمنة بينما ينشئ برنامج المحفظة عبارة استرداد يسهل توقعها. يبدأ الخطر قبل أول معاملة: من يستطيع إعادة إنشاء العبارة أو المفتاح الخاص يمكنه تحويل الرصيد من جهاز آخر، حتى لو ظلت المحفظة المادية الأصلية غير متصلة.
إجابة سريعة
كيف يمكن أن تكون العبارة الصحيحة غير آمنة؟
وجود 12 أو 24 كلمة صحيحة يثبت فقط صحة الصيغة، وليس أن المحفظة اختارتها من مجموعة عشوائية حقيقية. المولد الضعيف قد ينتج عبارة تبدو طبيعية من قائمة صغيرة يمكن للمهاجمين إعادة إنتاجها.
في هذه الحوادث، تظل قواعد البلوكشين والتوقيع في بيتكوين تعمل كما هو مخطط. الفشل يحدث في توليد المفاتيح بالمحفظة قبل أن تصل أي معاملة للبلوكشين.
فهرس المحتويات
البلوكشين مقابل المحفظة
البلوكشين يتحقق من التوقيعات؛ المحفظة تنشئ السر
هذه مهام منفصلة: البلوكشين يتحقق من المعاملات، والمحفظة تنشئ وتحمي المفاتيح المستخدمة للموافقة عليها. العبارة الضعيفة قد تفشل على مستوى المحفظة حتى لو بقي البلوكشين آمناً.
البلوكشين
يخزن سجل المعاملات ويقبل الإنفاق عند وجود توقيع صحيح.
المحفظة
ينشئ العبارة السرية، ويشتق المفاتيح الخاصة، ويعرض العناوين، ويوقع المعاملات.
المهاجم
يمكن إعادة إنشاء نفس المفاتيح في أي مكان إذا كانت العبارة متوقعة أو منسوخة.
لا يشترط سرقة الجهاز. يمكن للمهاجم استيراد عبارة سرية منسوخة أو متوقعة إلى برنامج متوافق وتوقيع المعاملة من جهازه الخاص.
خرافتان شائعتان
المحافظ الباردة والعتادية تقلل المخاطر، لكنها لا تجعل المفاتيح المكشوفة آمنة
كلا الطريقتين مفيدتان، لكن الحماية تعتمد على أن السر تم إنشاؤه بشكل آمن وبقي سرياً.
لا أحد يستطيع الإنفاق دون جهازي الفعلي
المحفظة الباردة تبقي المفاتيح بعيدة عن أجهزة الكمبيوتر اليومية أثناء الاستخدام العادي، لكن يمكن إعادة إنشاء نفس المفاتيح في أي مكان آخر إذا كان لديك نسخة من العبارة السرية أو إذا كانت قابلة للتوقع.
الجهاز يحمي فقط طالما بقيت العبارة والمفاتيح الخاصة سرية.المحفظة غير المتصلة تجعل البيتكوين غير قابل للوصول مؤقتاً
إبقاء المحفظة غير متصلة يمنع الوصول عن بعد للجهاز، لكنه لا يمنع من يمتلك نسخة من العبارة أو المفتاح الخاص من استخدامها على جهاز آخر.
التخزين غير المتصل يحمي النسخة الأصلية فقط؛ ولا يمكنه إلغاء أي نسخة أخرى.أين يبدأ الضعف
الخطأ قد يحدث قبل ظهور كلمات العبارة السرية
تجمع المحفظة أولاً بيانات لا يمكن لأحد توقعها، ثم تستخدم مولداً عشوائياً آمناً لتحويلها إلى عبارة سرية. إذا كانت البيانات الأولية ضعيفة، قد تبدو العبارة صحيحة لكن تظل قابلة للتوقع.
العشوائية (Entropy)
مصطلح تقني يعني عدم القدرة على التنبؤ. كلما زادت العشوائية (Entropy)، زادت الخيارات الفعلية للمحفظة.
مولد عشوائي آمن
برنامج أو جهاز يحول بيانات أولية غير متوقعة إلى قيم مناسبة لمفاتيح حساسة للأمان.
العبارة السرية
نسخة احتياطية قابلة للقراءة تتيح للمحفظة إعادة إنشاء العديد من المفاتيح الخاصة. أي شخص يمتلك العبارة السرية الكاملة يمكنه غالباً استعادة المحفظة.
المفتاح الخاص
قيمة سرية تُستخدم للموافقة على الإنفاق من عنوان معين. عبارة سرية واحدة يمكن أن تولد عدة مفاتيح خاصة.
الصيغة الصحيحة لا تعني الإنشاء الآمن
لماذا لا تثبت 12 كلمة صحيحة الأمان
تخيل أن اليانصيب يطبع أرقام تذاكر طويلة لكنه يستخدم سراً 1,000 احتمال فقط. كل تذكرة تبدو مقنعة، لكن المهاجم يحتاج فقط لتجربة تلك الاحتمالات. مولد المحفظة الضعيف يفعل الشيء ذاته.
العبارة السرية القوية المكونة من 12 كلمة يجب أن تكون ناتجة عن عدد هائل من الاحتمالات. أما المحفظة الضعيفة فقد تختار من قائمة صغيرة مخفية. لا يمكنك معرفة الفرق بمجرد قراءة الكلمات أو التأكد من صحة العبارة.
ما يراه المالك
12 كلمة صحيحة، ورمز تحقق صحيح، ومحفظة تفتح بشكل طبيعي.
ما يبقى مخفياً
بدأ المولد ببيانات عشوائية قليلة جداً، فكان بإمكانه إنشاء مجموعة محدودة فقط من العبارات.
ما يحصل عليه المهاجم
قائمة مختصرة جداً للاختبار بدلاً من تجربة جميع العبارات الممكنة.
مثال الألف تذكرة هو للتوضيح فقط وليس تقديراً لمحفظة معينة. العدد الفعلي يعتمد على المولد الضعيف.
حالات فشل حقيقية وأسباب متنوعة
ضعف العشوائية كشف محافظ عديدة أكثر من مرة
هذه الحوادث شملت منتجات وأخطاء متنوعة، لكنها تشترك في درس واحد: واجهة المحفظة المقنعة أو العبارة الطويلة لا تعني أن السر غير قابل للتوقع.
Milk Sad / Libbitcoin Explorer
أمر bx seed استخدم مولد Mersenne Twister مع 32 بت فقط من وقت النظام. بدا الناتج كعشوائية محفظة، لكن الباحثين تمكنوا من إعادة إنتاج مجموعة الاحتمالات الصغيرة وربطوا الخلل بحالات سرقة فعلية عبر عدة شبكات بلوكشين.
طول العبارة لا يعوض عن ضعف العشوائية في البداية.RANDSTORM / BitcoinJS
بعض المحافظ القديمة التي تعمل عبر المتصفح قد تعتمد على عشوائية ضعيفة من JavaScript وبيئة المتصفح. بعد سنوات، حذر الباحثون من أن بعض تلك المحافظ قد تظل معرضة للخطر.
المفتاح القديم يظل قديماً حتى لو تم تحديث واجهة المحفظة.Android SecureRandom
ثغرة في توليد الأرقام العشوائية في Android عرضت محافظ بيتكوين للخطر. أصدرت فرق التطوير تحديثات، لكن المستخدمين احتاجوا أيضاً إلى عناوين جديدة وتدوير المفاتيح لأن التحديث لا يمكنه إصلاح المفاتيح الضعيفة السابقة.
إصلاح المولد العشوائي يحمي المفاتيح الجديدة فقط، وليس المفاتيح التي تم إنشاؤها سابقاً.COLDCARD RNG
بعض إصدارات COLDCARD أنشأت عبارات سرية بعشوائية أقل بكثير من المطلوب. أظهرت الحادثة أن الأجهزة المتخصصة قد تفشل إذا لم تستخدم مصادر العشوائية بشكل صحيح.
الأجهزة ليست بديلاً عن التحقق من مسار إنشاء المفاتيح بالكامل.اقرأ دليل حادثة COLDCARD بالكاملفحص عملي للمخاطر
متى يجب اعتبار المحفظة القديمة غير آمنة؟
غالباً لا يمكنك تقييم العبارة بمجرد النظر إلى كلماتها. الأسئلة الأهم: أين ومتى وبأي برنامج أو برمجيات تم إنشاؤها؟
مصدر العبارة السرية غير واضح
لا تعرف أي تطبيق أو موقع أو جهاز أو برنامج أو إجراء أنشأ عبارة الاسترداد في الأصل.
المحفظة مذكورة في إشعار أمني
تم إنشاء العبارة السرية بواسطة إصدار مذكور في تحذير من الشركة أو CVE أو إفصاح بحثي أو إشعار انتقال.
تم استيراد عبارة سرية قديمة إلى محفظة أحدث
نقل نفس عبارة الاسترداد إلى محفظة عتادية حديثة يغير الحاوية فقط، وليس السر نفسه.
قد تكون العبارة السرية أو المفتاح الخاص قد تم كشفهما
تمت كتابتها في موقع إلكتروني، أو تصويرها، أو حفظها في ملاحظات سحابية، أو مشاركتها مع الدعم، أو رآها شخص آخر.
اختر الإجراء المناسب للمخاطر
ماذا تفعل إذا كانت العبارة قديمة أو مشكوك فيها؟
لا داعي للذعر إذا كانت المحفظة قديمة. تحقق أولاً من كيفية إنشاء العبارة السرية وما إذا كان المنتج أو الإصدار مذكوراً في إشعار أمني موثوق، ثم تصرف بناءً على الأدلة.
مصدر معروف ولا يوجد مؤشر على التسريب
حافظ على تحديث المحفظة والبرمجيات الثابتة، واحمِ النسخة الاحتياطية، وراقب الإشعارات الأمنية الموثوقة. المحفظة القديمة ليست بالضرورة غير آمنة.
مصدر العبارة غير معروف أو مذكور في تحذير
أنشئ عبارة سرية جديدة كلياً باستخدام برنامج أو جهاز غير متأثر. تحقق من النسخة الاحتياطية الجديدة، أرسل مبلغاً صغيراً للاختبار، ثم انقل باقي الأموال.
قد يعرف شخص ما العبارة أو المفتاح الخاص
اعتبر الأموال تحت الخطر. انقلها إلى عناوين جديدة من عبارة سرية جديدة. تغيير رمز الجهاز أو كلمة المرور أو الجهاز نفسه لا يغير المفاتيح المكشوفة.
ما لا يصلح العبارة الضعيفة أو المكشوفة
- استيراد نفس العبارة السرية إلى محفظة عتادية جديدة
- تغيير رمز الجهاز أو كلمة مرور التطبيق فقط
- تثبيت تحديث دون إنشاء عبارة سرية جديدة
- فصل الجهاز عن الشبكة بعد كشف السر
لمطوري المحافظ
اختبر المسار الكامل لإنشاء المفتاح
وجود خوارزمية آمنة على الورق لا يكفي. يجب مراجعة المسار الفعلي للإنتاج بدءاً من مصدر العشوائية مروراً بالمولد العشوائي حتى العبارة النهائية، بما يشمل البرمجيات الثابتة والمتصفح ونظام التشغيل وسلوك النظام عند الفشل.
- استخدم مصادر نظام أو عتاد مصممة للعشوائية التشفيرية.
- يجب الفشل الآمن عند غياب مصدر العشوائية الآمن؛ لا تعتمد أبداً على مولد عشوائي عادي دون تنبيه.
- اختبر المنتج النهائي ومسار التنفيذ الفعلي، وليس فقط ملفات الشيفرة المنفصلة.
- وثق طريقة إنشاء العبارات السرية وكيفية انتقال المستخدمين بعد حدوث خلل.
الإفصاحات الأساسية والإرشادات الأمنية
راجع الحوادث والإرشادات التشفيرية
تمت مراجعة الشرح والأمثلة وفقاً لإرشادات NIST، وإفصاح Milk Sad، وتنبيه RANDSTORM من Unciphered، وتحذير Bitcoin.org لمحافظ Android، وBitcoin Optech، وأحدث إرشادات أمان المحافظ.
الأسئلة الشائعة
هل يمكن لأي شخص إنفاق البيتكوين إذا عرف العبارة السرية الخاصة بي؟
عادة نعم. العبارة السرية الكاملة تتيح إعادة إنشاء المفاتيح الخاصة للمحفظة. يمكن للمهاجم استيرادها إلى برنامج أو جهاز آخر وتوقيع المعاملات دون الحاجة لجهازك الأصلي أو رمزه.
هل يتم تخزين البيتكوين داخل المحفظة الباردة؟
لا. البلوكشين يسجل البيتكوين، والمحفظة العتادية تحمي وتستخدم المفاتيح التي تسمح بالإنفاق. إذا حصل شخص آخر على نسخة من هذه المفاتيح، لم يعد الجهاز هو الوسيلة الوحيدة للتوقيع.
هل التخزين البارد يحمي المفتاح الخاص المعروف؟
لا. التخزين البارد يمنع تسرب المفتاح غير المعروف فقط. إذا عرف شخص آخر المفتاح أو العبارة، يمكنه استخدام نظامه الخاص لإرسال معاملة صحيحة.
هل يمكن لتحديث البرنامج إصلاح عبارة سرية ضعيفة قديمة؟
لا. التحديث قد يصلح توليد العبارات الجديدة فقط، ولا يمكنه جعل العبارة القديمة أكثر عشوائية. الحل الآمن هو إنشاء عبارة جديدة ونقل الأموال لعناوين جديدة.
هل يمكنني معرفة ضعف العبارة السرية بمجرد قراءة كلماتها؟
غالباً لا. العبارة الضعيفة قد تحتوي على عدد الكلمات الصحيح ورمز تحقق سليم. الخطر يعتمد على كيفية ومكان توليدها، لذا تحقق من التطبيق أو الجهاز أو البرنامج الأصلي وتاريخه وأي تحذير أمني ذي صلة.
هل كلمة مرور قوية للمحفظة تجعل العبارة الضعيفة آمنة؟
لا. رمز الجهاز أو كلمة مرور التطبيق تحمي فقط من الوصول المحلي، لكنها لا تغير المفاتيح الخاصة الناتجة عن العبارة السرية. قد تضيف عبارة مرور قوية طبقة حماية إضافية في بعض المحافظ، لكنها ليست حلاً لعبارة سرية ضعيفة.
هل تسريب مفتاح خاص واحد يكشف المحفظة بالكامل؟
ليس دائماً. المفتاح الخاص عادة يتحكم في الأموال المرتبطة به فقط. أما تسريب العبارة السرية فيمكن أن يكشف عدة مفاتيح خاصة مشتقة منها. النطاق يعتمد على تصميم المحفظة وما تم تسريبه.
هل يمكن أن تكون العبارة السرية من 24 كلمة ضعيفة أيضاً؟
نعم، المزيد من الكلمات يعني احتمالات أكثر، لكن فقط إذا اختارت المحفظة القيمة الأولية بشكل آمن. المولد الضعيف قد ينتج عبارة من 24 كلمة من مجموعة صغيرة متوقعة.
تابع مع حالة واقعية