اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت

اسان هڪ ڊگهي وقت تائين cryptocurrencies ۾ گمنام جي موضوع ۾ دلچسپي ورتي آهي ۽ هن علائقي ۾ ٽيڪنالاجي جي ترقي جي پيروي ڪرڻ جي ڪوشش ڪئي آهي. اسان جي مضمونن ۾ اسان اڳ ۾ ئي تفصيل سان آپريشن جي اصولن تي بحث ڪيو آهي رازداري ٽرانزيڪشن Monero ۾، ۽ پڻ ڪيو ويو تقابلي جائزو هن فيلڊ ۾ موجود ٽيڪنالاجيون. جڏهن ته، اڄ سڀ گمنام cryptocurrencies Bitcoin پاران تجويز ڪيل ڊيٽا ماڊل تي ٺهيل آهن - اڻ خرچ ٿيل ٽرانزيڪشن آئوٽ (هتان کان پوء UTXO). اڪائونٽ تي ٻڌل بلاڪچين لاءِ Ethereum، موجوده حل لاڳو ڪرڻ لاءِ گمنام ۽ رازداري (مثال طور، موئنس يا آزمائش) سمارٽ معاهدي ۾ UTXO ماڊل کي نقل ڪرڻ جي ڪوشش ڪئي.

فيبروري 2019 ۾، اسٽنفورڊ يونيورسٽي ۽ ويزا ريسرچ جي محققن جو هڪ گروپ آزاد ڪيو ويو پري پرنٽ "زيتر: سمارٽ معاهدي جي دنيا ۾ رازداري ڏانهن." ليکڪ سڀ کان پهريان هئا جيڪي اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنامي کي يقيني بڻائڻ لاءِ هڪ طريقه ڪار پيش ڪن ٿا ۽ هڪ سمارٽ معاهدي جا ٻه نسخا پيش ڪيا: رازداري لاءِ (لڪائي بيلنس ۽ منتقلي جي رقم) ۽ گمنام (وصول ڪندڙ ۽ موڪليندڙ کي لڪائڻ) ٽرانزيڪشن. اسان کي تجويز ڪيل ٽيڪنالاجي دلچسپ لڳي ٿي ۽ ان جي ڊيزائن کي حصيداري ڪرڻ چاهيون ٿا، انهي سان گڏ انهي بابت ڳالهائينداسين ڇو ته اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام جو مسئلو تمام ڏکيو سمجهيو ويندو آهي ۽ ڇا ليکڪ ان کي مڪمل طور تي حل ڪرڻ ۾ منظم ڪيو.

انهن ڊيٽا ماڊلز جي جوڙجڪ جي باري ۾

UTXO ماڊل ۾، هڪ ٽرانزيڪشن تي مشتمل آهي "ان پٽ" ۽ "آئوٽ پُٽ". ”آئوٽ پُٽ“ جو سڌو اينالاگ توهان جي والٽ ۾ بل آهي: هر ”آئوٽ پُٽ“ ۾ ڪجهه فرق آهي. جڏهن توهان ڪنهن کي ادا ڪندا آهيو (هڪ ٽرانزيڪشن فارم) توهان هڪ يا وڌيڪ "آئوٽ پٽس" خرچ ڪندا آهيو، انهي صورت ۾ اهي ٽرانزيڪشن جا "ان پٽ" بڻجي ويندا آهن، ۽ بلاڪچين انهن کي خرچ ڪيو ويو آهي. انهي صورت ۾، توهان جي ادائيگي جي وصول ڪندڙ (يا توهان پاڻ، جيڪڏهن توهان کي تبديلي جي ضرورت آهي) نئين ٺاهيل "آئوٽ پٽس" حاصل ڪري ٿي. اهو schematically هن طرح نمائندگي ڪري سگهجي ٿو:

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت

اڪائونٽ تي ٻڌل بلاڪچين گهڻو ڪري توهان جي بئنڪ اڪائونٽ وانگر ٺهيل آهن. اهي صرف توهان جي اڪائونٽ ۾ رقم ۽ منتقلي جي رقم سان معاملو ڪندا آهن. جڏهن توهان پنهنجي اڪائونٽ مان ڪجهه رقم منتقل ڪندا آهيو، توهان ڪنهن به ”آئوٽ پُٽ“ کي نه ساڙيندا آهيو، نيٽ ورڪ کي ياد رکڻ جي ضرورت ناهي ته ڪهڙن سکن کي خرچ ڪيو ويو آهي ۽ ڪهڙو نه. آسان ترين صورت ۾، ٽرانزيڪشن جي تصديق موڪليندڙ جي دستخط ۽ سندس بيلنس تي رقم جي جانچ ڪرڻ لاء هيٺ اچي ٿو:

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت

ٽيڪنالاجي جو تجزيو

اڳيون، اسان بابت ڳالهائينداسين ته ڪيئن Zether ٽرانزيڪشن جي رقم، وصول ڪندڙ، ۽ موڪليندڙ کي لڪائي ٿو. جيئن اسان ان جي آپريشن جي اصولن کي بيان ڪريون ٿا، اسان رازداري ۽ گمنام نسخن ۾ اختلافن کي نوٽ ڪنداسين. جيئن ته اڪائونٽ تي ٻڌل بلاڪچين ۾ رازداري کي يقيني بڻائڻ تمام آسان آهي، ڪجهه پابنديون گمنام ذريعي لاڳو ڪيل ٽيڪنالاجي جي رازداري ورزن لاءِ لاڳاپيل نه هونديون.

لڪايو بيلنس ۽ رقم جي منتقلي

هڪ انڪرپشن اسڪيم استعمال ڪيو ويندو آهي انڪرپٽ بيلنس ۽ رقم جي منتقلي Zether ۾ ايل جمال. اهو هن ريت ڪم ڪري ٿو. جڏهن ايلس باب کي موڪلڻ چاهي ٿي b ائڊريس ذريعي سڪا (ان جي عوامي چيڪ) Y، هوءَ بي ترتيب نمبر چونڊي ٿي r ۽ رقم encrypts:

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت
جتي C - انڪوڊ ٿيل رقم، D - معاون قدر ضروري آھي ھن رقم کي سمجھڻ لاء، G - بيضوي وکر تي هڪ مقرر نقطو، جڏهن ڳجهي چيڪ سان ضرب ڪيو وڃي، عوامي ڪنجي حاصل ڪئي ويندي آهي.

جڏهن باب انهن قدرن کي حاصل ڪري ٿو، هو صرف انهن کي ساڳئي طريقي سان پنهنجي انڪوڊ ٿيل بيلنس ۾ شامل ڪري ٿو، ڇو ته هي اسڪيم آسان آهي.

اهڙي طرح، ايلس ساڳئي قدرن کي پنهنجي بيلنس مان ڪڍي ٿو، صرف جيئن Y توهان جي عوامي ڪنجي استعمال ڪري ٿو.

وصول ڪندڙ ۽ موڪليندڙ کي لڪايو

UTXO ۾ ”آئوٽ پُٽ“ کي ڦيرائڻ cryptocurrencies جي شروعاتي ڏينهن تائين واپس اچي ٿو ۽ موڪليندڙ کي لڪائڻ ۾ مدد ڪري ٿو. هن کي ڪرڻ لاء، موڪليندڙ پاڻ، جڏهن منتقلي ڪري ٿو، بلاڪچين ۾ بي ترتيب "آئوٽ پٽس" گڏ ڪري ٿو ۽ انهن کي پنهنجي پاڻ سان گڏ ڪري ٿو. اڳيون، هو ”آئوٽ پُٽ“ کي انگوزي جي دستخط سان دستخط ڪري ٿو- هڪ ڪرپٽوگرافڪ ميڪانيزم جيڪو هن کي تصديق ڪندڙ کي قائل ڪرڻ جي اجازت ڏئي ٿو ته موڪليندڙ جا سڪا موجود آهن ”آئوٽ پُٽ“ شامل آهن. مخلوط سڪا پاڻ، يقينا، خرچ نه ڪيا ويا آهن.

بهرحال، اسان وصول ڪندڙ کي لڪائڻ لاء جعلي آئوٽ پيدا ڪرڻ جي قابل نه هوندا. تنهن ڪري، UTXO ۾، هر ”آئوٽ پُٽ“ جو پنهنجو منفرد پتو هوندو آهي، ۽ اهو انهن سڪن جي وصول ڪندڙ جي ايڊريس سان جڙيل هوندو آهي. هن وقت، منفرد آئوٽ پتي ۽ وصول ڪندڙ پتي جي وچ ۾ تعلق کي سڃاڻڻ جو ڪو به طريقو ناهي، ان جي ڳجهي چيڪن کي ڄاڻڻ کان سواء.

اڪائونٽ تي ٻڌل ماڊل ۾، اسان هڪ وقت جي ايڊريس استعمال نٿا ڪري سگهون (ٻي صورت ۾ اهو اڳ ۾ ئي "exits" ماڊل هوندو). تنهن ڪري، وصول ڪندڙ ۽ موڪليندڙ کي ملايو وڃي بلاڪ ۾ ٻين اڪائونٽن ۾. انهي صورت ۾، هڪ انڪرپٽ ٿيل 0 سڪا مخلوط اڪائونٽن مان ڊيبٽ ڪيا ويندا آهن (يا 0 شامل ڪيا ويندا آهن جيڪڏهن وصول ڪندڙ مليل هجي)، اصل ۾ انهن جي حقيقي بيلنس کي تبديل ڪرڻ کان سواء.

جيئن ته موڪليندڙ ۽ وصول ڪندڙ ٻنهي وٽ هميشه هڪ مستقل پتو هوندو آهي، اهو ضروري آهي ته ساڳين ايڊريس تي منتقل ڪرڻ وقت ملائڻ لاء ساڳيو گروپ استعمال ڪيو وڃي. ان کي هڪ مثال سان ڏسڻ لاء آسان آهي.

اچو ته چون ٿا ته ايلس باب جي خيرات ۾ حصو ڏيڻ جو فيصلو ڪري ٿو، پر ترجيح ڏي ٿو ته منتقلي هڪ ٻاهرئين مبصر ڏانهن گمنام رهي. ان کان پوء، موڪليندڙ جي ميدان ۾ پاڻ کي لڪائڻ لاء، هوء آدم ۽ عادل جي اڪائونٽن ۾ پڻ داخل ٿئي ٿي. ۽ باب کي لڪائڻ لاء، وصول ڪندڙ فيلڊ ۾ بين ۽ بل جا اڪائونٽ شامل ڪريو. ايندڙ تعاون ڪندي، ايلس فيصلو ڪيو ته ايلڪس ۽ امنڊا هن جي اڳيان، ۽ بروس ۽ بينجن باب جي اڳيان. انهي صورت ۾، جڏهن بلاڪچين جو تجزيو ڪيو وڃي، انهن ٻن ٽرانزيڪشن ۾ شرڪت ڪندڙن جو صرف هڪ ٽڪرا ٽڪرا جوڙو آهي - ايلس ۽ باب، جيڪو انهن ٽرانزيڪشن کي گمنام ڪري ٿو.

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت

ٽرانزيڪشن ريس

جيئن اسان اڳ ۾ ئي ذڪر ڪيو آهي، اڪائونٽ تي ٻڌل سسٽم ۾ توهان جي بيلنس کي لڪائڻ لاء، صارف پنهنجي بيلنس ۽ منتقلي جي رقم کي انڪرپٽ ڪري ٿو. ساڳئي وقت، هن کي ثابت ڪرڻ گهرجي ته هن جي اڪائونٽ تي بيلنس غير منفي رهي ٿو. مسئلو اهو آهي ته جڏهن هڪ ٽرانزيڪشن ٺاهي، صارف پنهنجي موجوده اڪائونٽ جي حيثيت جي حوالي سان ثبوت ٺاهي ٿو. ڇا ٿيندو جيڪڏهن باب ايلس ڏانهن ٽرانزيڪشن موڪلي ٿو، ۽ اهو قبول ڪيو وڃي ٿو جيڪو ايلس طرفان موڪليو ويو آهي؟ پوءِ ايلس جي ٽرانزيڪشن کي غلط سمجهيو ويندو، ڇاڪاڻ ته بيلنس جو ثبوت باب جي ٽرانزيڪشن کي قبول ڪرڻ کان اڳ ٺاهيو ويو هو.

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت

پهريون فيصلو جيڪو اهڙي صورتحال ۾ اچي ٿو اهو اڪائونٽ منجمد ڪرڻ آهي جيستائين ٽرانزيڪشن نه ٿي وڃي. پر اهو طريقو مناسب نه آهي، ڇاڪاڻ ته هڪ ورهايل نظام ۾ اهڙي مسئلي کي حل ڪرڻ جي پيچيدگي کان علاوه، هڪ گمنام اسڪيم ۾، اهو واضح ناهي ته ڪنهن جي اڪائونٽ کي بلاڪ ڪرڻ لاء.

هن مسئلي کي حل ڪرڻ لاء، ٽيڪنالاجي ايندڙ ۽ ٻاهرئين ٽرانزيڪشن کي الڳ ڪري ٿو: خرچ بيلنس شيٽ تي فوري اثر آهي، جڏهن ته رسيدن تي دير سان اثر آهي. هن کي ڪرڻ لاء، "epoch" جو تصور متعارف ڪرايو ويو آهي - هڪ مقرر ڪيل سائيز جي بلاڪ جو هڪ گروپ. موجوده "ايپوچ" جو اندازو لڳايو ويو آهي بلاڪ جي اوچائي کي گروپ جي ماپ طرفان ورهائڻ سان. جڏهن هڪ ٽرانزيڪشن کي پروسيس ڪندي، نيٽورڪ فوري طور تي موڪليندڙ جي بيلنس کي اپڊيٽ ڪري ٿو ۽ وصول ڪندڙ جي فنڊ کي اسٽوريج ٽينڪ ۾ محفوظ ڪري ٿو. جمع ٿيل فنڊ صرف ادا ڪندڙ کي دستياب ڪيو ويندو آهي جڏهن هڪ نئون "دور" شروع ٿئي ٿو.

نتيجي طور، صارف ٽرانزيڪشن موڪلي سگھي ٿو، ان کان سواءِ ته ڪيترا ڀيرا فنڊ وصول ڪيا وڃن (جيستائين سندس بيلنس اجازت ڏئي، يقينا). epoch سائيز جي بنياد تي طئي ڪيو ويو آهي ته ڪيئن جلدي بلاڪ نيٽ ورڪ ذريعي پروپيگنڊا ڪن ٿا ۽ ڪئين جلدي هڪ ٽرانزيڪشن هڪ بلاڪ ۾ داخل ٿئي ٿي.

اهو حل رازداري منتقلي لاء سٺو ڪم ڪري ٿو، پر گمنام ٽرانزيڪشن سان، جيئن اسان بعد ۾ ڏسنداسين، اهو سنجيده مسئلا پيدا ڪري ٿو.

ريپلي حملن جي خلاف تحفظ

اڪائونٽ تي ٻڌل بلاڪچين ۾، هر ٽرانزيڪشن کي موڪليندڙ جي خانگي ڪنجي طرفان دستخط ڪيو ويندو آهي، جيڪو تصديق ڪندڙ کي يقين ڏياريندو آهي ته ٽرانزيڪشن تبديل نه ڪئي وئي آهي ۽ هن ڪيئي جي مالڪ طرفان ٺاهي وئي آهي. پر ڇا ٿيندو جيڪڏهن هڪ حملو ڪندڙ جيڪو ٽرانسميشن چينل ٻڌي رهيو هو هن پيغام کي روڪي ٿو ۽ بلڪل ساڳيو سيڪنڊ موڪلي ٿو؟ تصديق ڪندڙ ٽرانزيڪشن جي دستخط جي تصديق ڪندو ۽ ان جي تصنيف جو قائل ٿيندو، ۽ نيٽ ورڪ ٻيهر موڪليندڙ جي بيلنس مان ساڳي رقم لکي ڇڏيندو.

هن حملي کي ريپلي حملو سڏيو ويندو آهي. UTXO ماڊل ۾، اهڙا حملا لاڳاپا نه هوندا آهن، ڇاڪاڻ ته حملو ڪندڙ خرچ ٿيل آئوٽ استعمال ڪرڻ جي ڪوشش ڪندو، جيڪو پاڻ ۾ صحيح ناهي ۽ نيٽ ورڪ طرفان رد ڪيو ويو آهي.

ائين ٿيڻ کان روڪڻ لاءِ، ٽرانزيڪشن ۾ بي ترتيب ڊيٽا سان گڏ هڪ فيلڊ ٺاهيو ويو آهي، جنهن کي ڪونس يا صرف ”نمڪ“ چئبو آهي. جڏهن لوڻ سان ٽرانزيڪشن کي ٻيهر جمع ڪرايو وڃي، تصديق ڪندڙ اهو ڏسي ٿو ته ڇا نونس اڳ استعمال ڪيو ويو آهي ۽، جيڪڏهن نه، ٽرانزيڪشن کي صحيح سمجهي ٿو. بلاڪچين ۾ صارف جي نانسن جي پوري تاريخ کي ذخيرو نه ڪرڻ لاء، عام طور تي پهرين ٽرانزيڪشن ۾ اهو صفر جي برابر هوندو آهي، ۽ پوء هڪ کان وڌايو ويندو آهي. نيٽ ورڪ صرف چيڪ ڪري سگهي ٿو ته نئين ٽرانزيڪشن جي غير موجودگي پوئين هڪ کان مختلف آهي.

گمنام منتقلي اسڪيم ۾، ٽرانزيڪشن نانس کي صحيح ڪرڻ جو مسئلو پيدا ٿئي ٿو. اسان واضع طور تي موڪليندڙ جي ايڊريس تي نانس کي پابند نٿا ڪري سگھون، ڇو ته، ظاهر آهي، هي منتقلي کي گمنام ڪري ٿو. اسان سڀني حصو وٺندڙ اڪائونٽن جي نانسز ۾ هڪ به شامل نه ٿا ڪري سگهون، ڇاڪاڻ ته اهو عمل ٿيڻ واري ٻين منتقلي سان تڪرار ٿي سگهي ٿو.

Zether جي ليکڪن تجويز ڪيو ته غير رسم الخط پيدا ڪرڻ لاء، "Epoch" تي منحصر ڪري ٿو. مثال طور:

اڪائونٽ تي ٻڌل بلاڪچين ۾ گمنام بابت
اهو آهي x موڪليندڙ جي ڳجهي ڪنجي آهي، ۽ گيپوچ - epoch لاءِ هڪ اضافي جنريٽر، فارم جي هڪ تار کي هٽائڻ سان حاصل ڪيو ويو 'Zether +'. ھاڻي مسئلو حل ٿيڻ لڳي ٿو - اسان موڪليندڙ جي غيرت کي ظاھر نٿا ڪريون ۽ غير ملوث شرڪت ڪندڙن جي نانس سان مداخلت نٿا ڪريون. پر اهو طريقو هڪ سنگين حد لاڳو ڪري ٿو: هڪ اڪائونٽ نه موڪلي سگهي ٿو هڪ کان وڌيڪ ٽرانزيڪشن في “ايپو”. اهو مسئلو، بدقسمتي سان، حل نه ڪيو ويو آهي، ۽ هن وقت اسان جي راء ۾، زيتر جو گمنام نسخو ٺاهيندو آهي، استعمال لاء مشڪل سان مناسب.

صفر علم جي ثبوتن جي پيچيدگي

UTXO ۾، موڪليندڙ کي نيٽ ورڪ کي ثابت ڪرڻ گهرجي ته هو هڪ منفي رقم خرچ نه ڪري رهيو آهي، ٻي صورت ۾ اهو ممڪن آهي ته ٿلهي هوا مان نوان سڪا پيدا ڪرڻ (ڇو اهو ممڪن آهي، اسان اڳئين مان هڪ ۾ لکيو آهي. مضمون). ۽ پڻ ”انپٽس“ کي انگوزي جي دستخط سان سائن ڪيو ته اهو ثابت ڪرڻ لاءِ ته ملندڙ سڪن ۾ اهڙا فنڊ موجود آهن جيڪي هن جا آهن.

اڪائونٽ تي ٻڌل بلاڪچين جي گمنام ورزن ۾، ثبوت لاءِ بيان تمام گهڻو پيچيده آهن. موڪليندڙ ثابت ڪري ٿو ته:

  1. موڪليل رقم مثبت آهي؛
  2. توازن غير منفي رهي ٿو؛
  3. موڪليندڙ صحيح طور تي منتقلي جي مقدار کي انڪوڊ ڪيو (صفر سميت)؛
  4. بيلنس تي بيلنس صرف موڪليندڙ ۽ وصول ڪندڙ لاءِ بدلجي ٿو.
  5. موڪليندڙ پنهنجي کاتي جي خانگي ڪنجي جو مالڪ آهي ۽ هو اصل ۾ موڪليندڙن جي لسٽ تي آهي (شامل آهن)؛
  6. ٽرانزيڪشن ۾ استعمال ٿيل Nonce صحيح ٺهيل آهي.

اهڙي پيچيده ثبوت لاء، ليکڪ هڪ مرکب استعمال ڪندا آهن بلٽروڪ (هڪ ليکڪ، رستي ۾، ان جي تخليق ۾ حصو ورتو) ۽ سگما پروٽوڪول، جن کي Sigma-bullets سڏيو ويندو آهي. اهڙي بيان جو رسمي ثبوت هڪ تمام ڏکيو ڪم آهي، ۽ اهو ٽيڪنالاجي کي لاڳو ڪرڻ لاء تيار ماڻهن جي تعداد کي تمام گهڻو محدود ڪري ٿو.

آخر ۾ ڇا ٿيو؟

اسان جي راء ۾، Zether جو حصو جيڪو رازداري آڻيندو اڪائونٽ تي ٻڌل بلاڪچين کي استعمال ڪري سگهجي ٿو. پر هن وقت، ٽيڪنالاجي جو گمنام نسخو ان جي استعمال تي سنگين پابنديون لاڳو ڪري ٿو، ۽ ان جي عمل ۾ پيچيدگي. بهرحال، اهو نه ڇڏڻ گهرجي ته ليکڪ صرف ڪجهه مهينا اڳ جاري ڪيو، ۽ شايد ڪو ٻيو ماڻهو اڄ موجود مسئلن جو حل ڳولي. آخرڪار، اهو ڪيئن سائنس ڪيو ويو آهي.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو