بيتكوين النقدية (الغرفة) "سرقة الانقسام،" BTC؟ بعد القيام أضافت توقيع Schnorr

قبل بضعة أيام، وكشف بيتكوين النقدية (الغرفة) المطور كافة Lundeberg أن خطط المشروع لإضافة وظيفتين في الترقية مايو 2019، كانت BIP62 وSchnorr التوقيع. ونحن نعلم، BIP62 هو تحسين المطورين بيتكوين قدمت مقترحات تهدف إلى معالجة مشكلة يونة بيتكوين (ولكن ليس بالتبني)، ومخطط Schnorr توقيع بيتكوين الفريق الأساسي هو بالفعل في الدراسة، وفقا لتوقعات مارك، الغرفة هذه التحسينات سوف تجلب الفوائد التالية:

 
  • دفع قنوات خفية كما دفعة العاديين.
  • إخفاء العادية دفعات تبادل الذرية.
  • يمكن نشر شبكة البرق على شبكة تبادل معلومات السلامة الأحيائية.
  • لضمان متعدد الأحزاب (الطبقة 2) من المعاملات أمن سلسلة غير المعترف به.
  • وضع الانتحال جانبا لا يتم نسخ مشكلة، ونحن ننظر إلى تفسير معين من الأقسام Lundeberg:

    الترقية

    ترقية خطة مايو 2019 هما وظائف مهمة هي: (1) التكامل BIP62، مشاكل القيود ليونة، (2) يسمح للمستخدم استخدام بدلا من Schnorr توقيع توقيع ECDSA.

    لماذا هذه الصفقة الكبيرة؟

     
  • لم يعد لديه التمدد طرف ثالث: إصلاح مشكلة طيعة من خلال دمج BIP62، يمكن معاملة P2PKH لا تخضع لأي تأثير طرف ثالث (عمال المناجم، والعقد التتابع، الخ) من. هذا يلغي الحاجة OP_CHECKLOCKTIMEVERIFY أحكام العمل الإضافي. ويمكننا أيضا تصميم عقد الذكية، فإنه ليونة تتأثر.
  • المخفي هو P2PKH: Schnorr توقيع يسمح نظام متعدد تجميع بسيط جدا، الذي التعاون متعدد الاحزاب تحت المفتاح العمومي البلمرة، وإنشاء توقيع الكلي، والاختيار استخدام OP_CHECKSIG P2PKH (تدفع إلى تجزئة مفتاح العامة) عنوان.
  • تجنب الثانية ليونة الطرف بما يلي: لا يمكن تمديد Schnorr توقيع (حتى في حالة البلمرة)، ما لم يكن كل الموقعين التعاون من الصفر لإنشاء توقيع جديد.
  • هذه الجوانب الثلاثة هي جزء من ترقية رئيسية. ومع ذلك، فإنها تشكل ترقية ضخمة: سوف تكون قادرا على المعاملات متعددة التوقيع، الموقعة على طرف ثالث أو مجموعة فرعية لا يمكن القيام بها. وهذا يخلق الظروف المثالية للحصول على عقود معقدة ذكية تحت السلسلة. الأهم من ذلك، سوف تظهر هذه متعدد توقيع على شكل P2PKH سلسلة كتلة، لا يمكن تمييزه من الأجر العادي. وباختصار، فإنه هو بديل أبسط وأكثر حميمية إلى صيغ المعاملات (مثل العزلة شاهد segwit).

    قنوات الدفع أفضل

    قناة دفع OP_CLTV - مراجعة: حاليا واحدة من أكثر العقد المخابرات الأساسي في الغرفة، من Alice- > القياسية القناة وسيلة دفع بوب، حيث السيناريو أليس تمويل التالية الزائفة رمز:

    إفتح إذا أليس وبوب كلا علامة، أو فتح ولو علامات أليس، ولكن بشرط أن يتم استخراج الصفقة بعد معينة مهلة الحد الأدنى استرداد.

    أليس وبوب يمكن أن تتعاون لإنشاء مجموع بوب "تحديث القناة" العملية، فإن الصفقة إرسال بعض المال لبوب في الشرط الأول، يتم إرجاع بعض من الأموال كما تغير إلى أليس. ويمكن أن يكون عدد غير محدود من التحديثات، في كل مرة زيادة الدفع لبوب. عند الانتهاء، سوف بوب نشر على آخر التحديثات. إذا لم بوب الاستجابة، عرف أليس انها يمكن ان تحصل سياسة الأموال استرداد المبلغ بعد مهلة معينة. سياسة استرداد 2015 يتطلب تفعيل OP_CHECKLOCKTIMEVERIFY (OP_CLTV)، لذلك تسمى هذه القناة دفع OP_CLTV.

    وللأسف، فإن البرامج النصية المخصصة أعلاه على سلسلة كتلة واضحة. على الرغم من كل الأطراف المعنية قد تكون مجهولة المصدر، ولكن بالنسبة لأي محلل سلسلة كتلة، فإنه من الواضح أن تم إنشاء واغلاق قناة الأجر.

    استعراض - قناة دفع Spilman: قبل إدخال OP_CLTV، ونحن نعتبر أيضا طريقة دفع قناة بسيط يسمى في Spilman. هذا هو فقط بين أليس وبوب استخدام OP_CHECKMULTISIG 2-من-2، ولكن قبل توجيه التمويل وقعت أليس، أليس وبوب وقت قفل في الصفقة مسبقا استرداد. للأسف، بسبب القضية والتدرجية، وقناة Spilman حاليا ليست آمنة على الغرفة:

    بوب قد تتطلب عمال المناجم لتغيير الأموال TxID أليس، التي سنرد صالح، الذي عقد بوب أجل غير مسمى والسماح لجميع الصناديق قناة دفع فدية.

    جديدة مخبأة قناة دفع: BCH هذه الترقية ستتغير القصة. ليس فقط يمكننا استخدام قناة spilman، وأنها لا تحتاج حتى إلى استخدام OP_CHECKMULTISIG، ولكن يمكنك استخدام عنوان P2PKH العادية:

    منذ ظيفة BIP62 حد ليونة، وقناة Spilman تكون آمنة. أليس فقط يمكن التعامل مع عمليات التمويل لها، وهذا سوف يضر نفسه فقط. اكتمال مرور spilman 2-من-2 متعددة توقيع (OP_CHECKMULTISIG) يمكن تجميع توقيع (OP_CHECKSIG).

    وأريد أن أؤكد: نحن سوف تكون قادرة على بناء فقط دفع قناة P2PKH، الذي لا يمكن تمييزه تماما عن التداول العادي.

    بروتوكول بوابة الدفع-Schnorr Spilman

    عملية محددة كما يلي:

    1. مجموعة:

    (1) أليس وبوب توليد بعض عنوان خاص P2PKH والمفتاح العمومي البلمرة (A + B)؛

    (2) أليس خلق وموقعة من مجموع تمويل المعاملات، إنشاء عملة C على العنوان المذكور أعلاه، أليس الاحتفاظ تم توقيع الصفقة، لكنها المعلمات وبوب المشتركة عملة C (txid والقيمة وscriptpubkey)؛

    (3) أليس الآن بإنشاء صفقة استرداد، وC إلى أنفسهم، ووضع nLockTime تاريخ المستقبل؛

    (4) أليس وبوب معا لتوقيع اتفاقية استرداد. أليس حفظ نسخة احتياطية من هذه الصفقة المبلغ، وسجلت بوب مبلغ معاد وقت لها (nlocktime).

    (5) أليس نشر الآن تمويل المعاملات؛

    (6) أليس وبوب ينتظرون الآن لعمليات التمويل التأكيد في سلسلة.

    2، ودفع

    (1) أليس وبوب أن تنفق ثروة لخلق C المعاملة غير الموقعة، التي يتم إرسالها إلى عنوان جزء من السيطرة بوب، والباقي عاد إلى أليس.

    (2) أليس وبوب التفاعل توليد توقيع، ولكن من الضروري، في الخطوة الأخيرة، وليس التوقيع النهائي من بوب وحصة أليس، والسرية.

    (3) إذا كان المبلغ إرسالها إلى بوب يزيد مفردة النغمة، ويمكن تكرار هذه العملية بشكل لا نهائي.

    3، على مقربة من الصفقة (عادة)

    (1) بوب يختار الأقرب معاملات الدفع (التداول لإرسال المال إليه) ونشرها.

    4، إغلاق الصفقة (استثناءات)

    (1) بمجرد وصول nLockTime الوقت، يمكن أليس نشر المعاملات رد، سيتم إرسال كافة الأموال إلى بلدها.

    لتوضيح الفرق بين قناة الأجر CLTV ودفع قناة Schnorr-Spilman، أنا خلقت الأرقام التالية في هذه الأرقام،

    الخطوط المتقطعة تشير إلى مسار المعاملات وعناوين خارج سلسلة من التحضير، ولكن عادة ما لن يتم نشرها.

    المعرض التجاري خط الصلبة نشر على الطريق الطبيعي لسلسلة المعاملات، بالإضافة إلى تسليط الضوء على P2SH I الانتاج وردي، لأنها واضحة جدا، وهذا هو، هويتهم منخفض جدا.

    للبساطة، أنا فقط إضافة أليس وبوب، و"أ" و "ب"، ينبغي أن يكون مفهوما أنه، لأسباب تتعلق بالأمن والخصوصية، وأنهم استخدموا جمهور جديد في كل خطوة من خطوات العملية.

    في الأجور CLTV طبيعي لهم، والعملة قنوات الدفع (مربع الوردي) في حد ذاته هو واضح.

    الشكل 1: قناة دفع CLTV

    للحصول على قناة الأجر Spilman العادية، فإنه يحصل حتى أفضل، ولكن ل2-من-2 متعددة التوقيع، دفع القناة المال لا تزال تخوض النصي P2SH. أنا لا أقول هذا، ولكن يمكنك أن تتخيل الوضع أعلاه، إلا أن "A & B" في مربع الوردي منهم.

    عندما نقوم بتحويل لقنوات الدفع Schnorr-Spilman، والائتمانات قناة الأجر الآن توقيع الكلي على المفتاح العمومي أليس وبوب، حيث أشار بأنه "A + B". وهي ليست صفقة استرداد التي تم إنشاؤها من قبل أليس وحدها، ولكن من خلال ترتيبات أليس وبوب مقدما.

    FIG 2: قناة دفع Schnorr-Spilman

    مخفي ذرة تبادل (+ الصغرى التبادل عالية التردد)

    في النقطة السابقة، وصفت كيفية اخفاء ليس من الضروري أن نثق في قنوات الدفع عبر ذرات سلسلة قابلة للتبادل. مقارنة مع تبادل العادية، لديهم ميزة إضافية هي أنها بناء أسرع، وتسمح بالمعاملات عالية التردد في الوقت الحقيقي بين الأطراف ذات العلاقة. يمكن أيضا الشيء نفسه أن يتحقق عن طريق قناة سداد Schnorr-Spilman، نهاية الغرفة على الأقل في تبادل غير ذلك. الشكل 3 أدناه، ويظهر أنه يعمل.

    في الجزء العلوي، ويمكنك ان ترى Schnorr-Spilman على قناة الغرفة، والجزء السفلي هو دفع قناة CLTV على سلسلة أخرى (قد تكون 2-من-2 شبكة البرق والصواعق أو شبكة الجذر الرئيسي (Raiden) قناة).

    في حالة إيقاف تشغيل عادي، الكائن لا تقع على سلسلة خط منقط، الغرفة خفية تماما وراء P2PKH صفقة تبادل الذري على سلسلة الغرفة. في حالة اغلاق غير طبيعي، يتوهم عقد الذكية لا الأرض على السلسلة.

    من الناحية المثالية، وسلاسل اثنين مخفية يجب P2PKH استخدام هذه القناة الدفع، ولكن خصوصية ليست ضرورية تماما. حتى لو سلسلة أخرى باستخدام نموذج أكثر وضوحا من قنوات الدفع، فمن الصعب العثور على المعاملة الغرفة المناسبة.

    الشكل (3): قد يكون متبادل ذرة قناة الخفية التي دفع Schnorr-Spilman

    مخفي قناة دفع اتجاهين

    نظريا، يمكنك أن تدفع القناة بون-Dryja (أي البرق الشبكة على أساس) معاقبة المعاملات مبلغ معاد. كريس Pacia على متوسط ألمح BIP62 تنشيط مرة واحدة، يصبح آمنة. علما بأن يجب التمويل من جانب واحد، سيكون هناك بعض القيود في حالة هذه القنوات المدفوعة (انظر أدناه قسم التحذير).

    أيضا، ميزة هي أن التوقيع Schnorr، التوقيع الأول 2-من-2 لإخفاء 2-من-2 من البلمرة Schnorr التوقيع. سنرد عقود ذكية الأرض إلا على سلسلة في حالة غير طبيعية اغلاق.

    أنا سوف تخطي المعرض يتضح هذا الإعداد، لأنه أكثر بكثير من مجمع القناة دفع التقليدي، وهذا ليس محور هذا المقال.

    طبقة 2 (طبقة الشبكة)

    في القسم السابق، ونحن نستخدم فقط طرف ثالث إصلاح التمدد BIP62، وإمكانية الاختباء من خلال تجميع توقيعات متعددة. ومع ذلك، إذا كنت تتذكر، ذكرنا سابقا أيضا النقطة الثالثة: أمام Schnorr لا يمكن العبث بها إلا كل الموقعين بالتعاون مع المعنيين لإنشاء توقيع جديد.

    تجميع توقيع Schnorr لا يمكن أن تشارك في أي مجموعة صارمة من وصفة طبية العبث، وهو ما يعني أن نتمكن من بناء شبكة طبقة 2 (مثل شبكة البرق) في الغرفة.

    حماية سلسلة المعاملة غير مؤكدة

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

    لالبساطة، وقعت أليس وبوب عقد لمرحلتين من الذكاء، كما هو موضح هنا بسيط "A & B"، وهو ما يمثل 2-من-2 OP_CHECKMULTISIG من. وقالت افتراض أن بوب وبناء TX2 ومعا TX3 قبل TX1. بوب لا يمكن أن يكون الهجوم TX1 ليونة (بسبب حماية bip62)، أليس هو أي حافز لتمديد عقده. لذا، TX1 آمنة. لكن TX2 مختلفة: واحدة من التوقيع (من بوب) يتم التلاعب بها، وهو مبلغ سيتم إنشاء معاملة جديدة (TX2 ')، ذ الانتاج "هو مختلف الآن من المتوقع الأصلي الناتج ذ. إذا TX2 مؤكد "بدلا من TX2، ثم خلق أليس وبوب TX3 الآن انها غير مجدية، لأنها أخذت المال ذ لا وجود لها، وأنه لا يمكن اتخاذ ذ '. للأسف، بوب لديها الدافع للقيام بذلك: أنه يمكن أن تعقد لأجل غير مسمى الأموال (ذ ') فدية أليس.

    الشكل (4): تشمل توقيعات متعددة سلسلة طويلة من العمليات التي يمكن أن تبدأ من أي هجوم حزب يونة

    ومع Schnorr توقيع الكلي، بوب لا يمكن أن تتغير وقعت وحدها. أسباب وSchnorr توقيع (ص، ق) من بنية رياضية قوية المتعلقة بما يلي:

     
  • لكل ص، ق وقيمة فريدة، وتنتج توقيع صالح.
  • ولذلك، إنشاء توقيع جديد (ص مختلف أو الصورة) الحاجة إلى التغيير r لص '؛
  • وتقدم القيم r له = H (ص | م) من قيمة التجزئة، فمن الضروري للتحقق من صحة الصورة، وقيمة جديدة من البريد.
  • مع البريد الجديد "، مساهمة أليس الصورة للحساب الجديد الصحيحة" الوقت لا طائل منه.
  • ولذلك، يجب بوب إنشاء مساهمة جديدة من أليس، وهو ما يعادل تزوير توقيع من مفاتيح لها.
  • لذلك، إلا أن إعادة بدء عملية التوقيع بأكملها، بما في ذلك التعاون أليس من أجل إنشاء توقيع فريد من نوعه. أليس بالتأكيد نريد أن نفعل ذلك في المرة الأولى التي حصلت على الوقت لTX3 الجديد ".
  • الشكل 5: يتعلق البلمرة Schnorr توقيع سلسلة طويلة من الصفقات من المستحيل هجوم ليونة

    BIP62 بمجرد تفعيل كاملة، يمكنك كتابة لكتابة العقود ذكية، والتي لن يتم تعديل scriptSig الإدخال. قد يكون هذا بعض الاحتياطات، مثل بند OP_IF، ولكن أريد أن أشير إلى أن القيود الأخرى، مثل SCRIPT_VERIFY_MINIMALIF، لتوليد شرط عدم لمد غير ضرورية. أشك بقوة أنه في جميع الحالات، إلا في bip62 + schnorr توقيع البيئة، فمن السهل أن العقود ذكية معقدة تحويلها إلى شكل غير للمد. ويمكن تحقيق ذلك عن طريق ضبط الإبراء أو الإدخال النصي للاستفادة من NULLFAIL (وصلة انظر).

    تحذير: تسلسل التوقيع وتداول النسخ الاحتياطي الصعب

    Bip62 + مشكلة Schnorr تسلسل التوقيع. Bip62 + schnorr النظر في التسلسل التالي من عمليات إنشاء مجموع المعاملات الجديدة والمعاملات احتياطية من المفتاح العمومي أليس + بوب:

     
  • أليس يخلق TX1 التوقيع ولا للبوب.
  • وقعت أليس وبوب TX1، ولكن في النهاية، اعتقل أليس لها قيمة الصورة. وظلت أسرار TX1، ولكن يحسب ومشتركة txid1.
  • خلق أليس TX2 غير موقعة (المعاملة احتياطية من txid1 أمضى)؛
  • أليس وبوب علامة على TX2.
  • مرة واحدة لديها أليس TX2، وقالت انها يمكن وضع TX1 كشف بوب.
  • والمشكلة هنا هي أنه في نهاية الخطوة 2، أليس لديها قبل TX2 في بوب، لديها TX1 وقعت بالكامل. منذ TX2 يجب أن يحتوي على TX1 txid من وقع تماما، وبالتالي لا يمكن التراجع عنه. لذلك، يجب أن تكون مصممة بعناية وتسلسل توقيع TX1، من أجل عقد الحزب قعت بالكامل TX1 من (في هذا المثال هو أليس) لتحريرها قبل إنشاء TX2، لا يضر بالآخرين. هذه مشكلة بالغة الخطورة تنطوي على اثنين أو أكثر ذكاء العقود الأطراف.

    تعديلات بسيطة مثل هذه SIGHASH_NOINPUT، هو وسيلة جيدة لحل هذه المشكلة، لأنه يسمح كاملة قبل توقيع توقيع جود TX1 من TX2. لديها SIGHASH_NOINPUT أيضا مزايا أخرى، على سبيل المثال، فإنه يسمح أيضا لتبسيط هيكل 2 طبقة (مثل العائمة نظام التداول Eltoo)، هذه الآلية من الإفلات من العقاب، ولا تراكم المعلومات السامة، ولكن هذا موضوع لمقال آخر ...

    الفرق والعزلة شاهد عيان في

    العزلة وبالمقارنة مع الشاهد، BIP62 + Schnorr طريقة التوقيع لديه بعض المزايا والعيوب:

     
  • لدينا Schnorr مخطط توقيع، وتحتاج فقط إلى تغيير رمز المحفظة هو صغير جدا، مما يعني أن المطورين محفظة للانتقال بسرعة إلى Schnorr، وتماما التخلي عن دعم لECDSA.
  • مخطط استخدام bip62 + schnorr التوقيع، يجب عقود ذكية الكتاب تتخذ نهجا أكثر عمقا لمنع يونة، ولكن من السهل تنفيذ.
  • العزلة شاهد مجموعه 66 عناوين مختلفة، بالإضافة إلى اثنين من الأنواع التقليدية عنوان (p2pkh، p2sh)، 16 Segwit كل إصدار عشر، أربعة أنواع من نوع عنوان (p2wpkhv0، p2sh-p2wpkhv0، p2wshv0، p2sh- p2wshv0، p2wpkhv1، p2sh-p2wpkhv1، p2wshv1، p2sh-p2wshv1 ... p2wpkhv15، p2sh-p2wpkhv15، p2wshv15، p2sh-p2wshv15). لدينا طريقة schnorr تعديل فقط نوع عنوان القديمة (p2pkh). لاعتبارات الخصوصية، فمن الأفضل استخدام أقل قدر من نوع العنوان، وذلك لتجنب الأضرار التي لحقت جامع مجهول.
  • استخدام الشاهد العزلة لعمل نسخة احتياطية الصفقة أسهل، وخاصة في حالة تعدد أصحاب المصلحة؛
  • شبكة البرق

    منذ bip62 هيكل + schnorr يسمح 2 طبقة، مما يعني أن على الغرفة يجب أن تكون قادرة على إنشاء شبكة من البرق. على الرغم من المعاملات نقطة سلسلة المباشرة والمباشرة الغرفة قناة الدفع هي حالة استخدام الرئيسية، ولكن دون أن يتمكن من إنشاء قناة مباشرة للدفع مقدما، لإنشاء قيمة منخفضة لشبكة البرق دفع الصغيرة لا تسبب ضررا.

    تعليقات من بيتكوين المطور

    بالطبع، هذا آخر جذبت أيضا معروفة بيتكوين المطور gmaxwell التعليقات، فكتب:

    "وعلى أية حال، العمالقة (يشير إلى جوهر؟) تخلى BIP62، لأنه لا قضاء على جميع أشكال يونة طرف ثالث. الرجاء لا أدعي أنه ليونة حل جميع المشاكل."

    علامة Lundeberg الرد هو:

    "هذا صحيح، حتى مع bip62، هو أيضا من السهل جدا أن نجعل من صفقة طرف ثالث ليونة. ولكن بالنسبة لي، والشيء الأكثر أهمية هو، من خلال BIP62، على الأقل لديك خيار لتمديد كانت صفقة غير متوفر عند الحاجة. I فيقول العزلة الشاهد لا قضاء على جميع أشكال يونة طرف ثالث، إذا غير عادية العلم sighash ... "

    كيف ترى؟

    القصة: هناك فئة من الأولاد في عجلة من أمره أن يأتي إلى البيت من المدرسة، وعلى الفتاة أن الاندفاع المنزل بعد المدرسة

    الفيلم لم تبث قبل البيع! خلف علي صور حرق 1700000000، اختبأوا حرب!

    عندما يلعب مدرب مستقلة الهجين، وفتح فعلا استهلاك الطاقة الجديد "يتمتع" واسطة

    هذا المطعم هو دائما على طبق من الخطأ، ولكن ليس شكوى العملاء!

    القصة: اصابة رجل عاد، وقال انه يفهم أخيرا كان البطل الحقيقي له امرأة

    تاوباو 15 الذكرى، كيف للتسوق الآن أنتقل إلى تجاوز!

    سوبر 500،3.5 ثواني Pobai الحياة، وهذا صغير باناميرا أشد المعارضين لتسلا

    القصة: إنقاذ رجل مسن، مما يشكل أيضا رجل على استعداد للكذب الشياطين، وأصبح كبار السن بطل القديم

    الأسطورية تاريخ الاكتشافات خفة، لوتس للسيارات الرياضية

    القصة: ويمكن علاج جميع الأمراض، ودعا الناس له الطبيب

    تفسير المشاعر حسب التصميم، لخلق صدى مع مربع الشباب والحضري أفضل كوبيه SUV قريبا

    الجميع يتحدث عن التكنولوجيا، لماذا مفتاح منخفضة العلامة التجارية الجديدة QX50 هي التكنولوجيا التي الأقوى؟