Mimblewimble چیست؟
Mimblewimble پروتکلی است که توسط شخصی ناشناس با نام کاربری Tom Elvis (شخصیت Voldemort در داستان های ترجمه فرانسوی هری پاتر) ، در یک چتروم توسعه دهندگان بیتکوین، معرفی شد.
خود عبارت Mimblewimble، در داستان های هری پاتر طلسمی بود که برای بستن زبان انسان ها به کار میرفت.
جالب است که کاربر Tom Elvis در سپیدنامه این پروتکل خاطر نشان کرد که با استفاده از Mimblewimble میتوان به موارد مقیاس پذیری و حفظ حریم خصوصی شکبه بیتکوین دست یافت.
Mimblewimble و معاملات محرمانه:
برای درک پروتکل Mimblewimble، ابتدا باید نحوه انجام معاملات توسط این پروتکل درک شود.
تراکنش های محرمانه از نظر Adam Back، یکی از توسعه دهندگان بلاکچین بیتکوین، اینگونه تعریف شده است:
«تراکنش محرمانه در بلاکچین بیتکوین، به شخص فرستنده اجازه میدهد که با استفاده از فاکتوری به نام فاکتور پوشش دهنده، مقدار تراکنش را نیز رمزنگاری کند. فاکتور پوشش دهنده یک ارزش تصادفی است که برای رمزنگاری مجدد تراکنش، توسط شخص فرستنده اعمال میشود.
این فاکتور تنها باید تعداد رمزارز تراکنش شده را رمزنگاری کند. و نباید بر روی خروجی و ورودی های تراکنش تأثیری بگذارد. در یک معامله محرمانه، تنها دو طرف معامله، از مقدار بیتکوین های مبادله شده خبر دارند و سایرین از این مقدار خبر نخواهند یافت. حال آنکه تماشاگران این تراکنش میتوانند با مقایسه ورودی ها و خروجی ها از معتبر بودن معامله اطمینان حاصل فرمایند.
بنابراین معاملات به روش Mimblewimble، همانند سایر تراکنش ها است. با این تفاوت که شخص گیرنده میتواند به صورت تصادفی یکی از فاکتورهای پوشش دهنده که شخص فرستنده برای او ارسال کرده است را انتخاب کند. پس از این مرحله، فاکتور پوشش دهنده انتخاب شده توسط شخص گیرنده، به عنوان مدرک مالکیت وی محسوب شده و به او اجازه خرج کردن بیتکوین را میدهد.
Coinjoin و Mimblewimble:
پروتکل Mimblewimble همچنین نوآوری دیگری به نام Coinjoin را نیز در بر میگیرد.
پروتکل Coinjoin که توسط Gregory Maxwell ارائه شده، مکانیسمی است که طی آن چندین تراکنش به یک تراکنش واحد متصل میشود. فایده این پروتکل نیز این است که شخص خارجی نمیتواند تشخیص دهد که تراکنش ها دقیقاً بین کدام دو نفر انجام شده است.
پس نتیجه گیری میشود که پروتکل Coinjoin براساس مبهم سازی ورودی ها و خروجی ها برای بینندگان تراکنش کار میکند.
اما زمانی که این دو پروتکل (Coinjoin و Mimblewimble) با هم ترکیب میشوند، بلوک تراکنش به سادگی شامل، ورودی، خروجی و امضا میباشد. این امر نیز باعث صرفه جویی در فضای بلوکها شده، چرا که دیگر نیازی به ذخیره سازی کل داده های معامله نمیباشد و تنها ورودی و خروجی کافی میباشند.
ویژگی Cut- through:
Cut- through و یا (ازبین بردن) یکی از ویژگی های پروتکل Mimblewimble میباشد. طی این ویژگی، پروتکل Mimblewimble میتواند با حذف تراکنهای واسط، در حجم داده های بلوک ها صرفه جویی به عمل آورد. به این ترتیب که خروجی های تراکنش قبلی، به عنوان ورودی های تراکنش جدید محسوب میشوند.
بیایید با یک مثال، بهتر متوجه این امر شویم:
آلیس برای باب ۱ بیتکوین میفرستد.
باب برای کریس ۱ بیتکوین میفرستد. در نتیجه: آلیس در ساخت معامله خود با باب، از یک ورودی استفاده میکند که نتیجه آن ۱ خروجی است.باب نیز در ساخت معامله خود با کریس، از یک ورودی استفاده میکند که نتیجه آن یک خروجی است.
حال با قابلیت Cut- through، پروتکل Mimblewimble این اجازه را میدهد که تجمع تراکنشها شامل یک ورودی و یک خروجی باشد. مالکیت این وجوه نیز این گونه تعریف میشود: کلید عمومی، امضا، هزنیه استخراج،… . اعتبار این تراکنش ها توسط اعتبار سنجان بلاکچین بررسی میشود. (کل ورودی ها- کل خروجی ها = صفر)
بنابراین با توجه به ویژگی Cut- through ، بلوکهای Mimblewimble اینگونه تعریف میشوند:
هدر بلوک
فهرست ورودی ها بعد از Cut- through
فهرست خروجی ها بعد از Cut- through
هسته معامله
انحراف از هسته
تعریف هدر بلوک:
هدر بلوک، فاکتوری است که برای شناسایی یک بلوک در بلاکچین بکار میرود. این فاکتور بارها هَش شده تا اثبات کار را برای استخراج کنندگان فراهم سازد.
تعریف انحراف از هسته:
انحراف از هسته (Kernal offset) نوعی از فاکتور پوشش دهنده است که در یک بلوک قرار میگیرد تا مانع از باز شدن بلوک برای کاهبرداران شود.
در نهایت، نکته اینجاست که پیاده سازی قابلیت Cut- through در Mimblewimble بستگی به نود یا گره مورد نظر دارد. چرا که یک گره میتواند انتخاب کند که ویژگی Cut- through را میپذیرد یا خیر.
در مقاله بعد به نکات مثبت پروتکل Mimblewimble خواهیم پرداخت. با ما همراه باشید.
اشتراک