وایت پیپر مونرو – قسمت اول

مقدمه

بیتکوین نمونه ای موفق از پول الکترونیکی همتا به همتا است. متخصصین و عوام هردو از مدل ترکیبی و قابل اعتماد تراکنش های عمومی و گواه اثبات کار بهره میبرند.

امروزه تعداد کاربران پول الکترونیکی روز به روز بیشتر میشود. قابلیت های خوبی مثل کارمزد کم، ناشناس بودن ،انتشار غیرمتمرکز و از قبل پیشبینی شده این سیستم باعث شده تا کاربران مجذوبش شوند.

بیتکوین به طرز قابل توجهی ثابت کرده که پول نقد الکترونیکی میتواند به سادگی پول کاغذی و به معتبری کارت اعتباری باشد. متأسفانه بیتکوین عیب و نقص های زیادی دارد ، برای مثال ماهیت توزیع شده سیستم، انعطاف‌ ناپذیر است. به طوری که کاربران شبکه تا تمام مشتری های خود را به روز رسانی نکنند نمی تواند از امکانات جدید بهرمند شوند. برخی از این نقص های اساسی که به سرعت هم برطرف نمی شوند، میتوانند مانع از انتشار گسترده بیتکوین شوند.

در چنین مدل های غیرقابل انعطافی بهتر است. کلاً پروژه را از اول برنامه ریزی کنید تا اینکه همان پروژه قبلی را تغییر بدهید.

در این مقاله ما به بررسی و پیشنهاد راه حل هایی برای برطرف کردن کمبود های اساسی بیتکوین می پردازیم. به عقیده ما سیستمی که راه حل های ما را عملی کند منجر به رقابت سالم میان سیستم های نقدی الکترونیکی مختلف خواهد شد.

هم اکنون ما پول نقد الکترونیکی خود را با نام “CryptoNote” ارائه میدهیم ،  و همانطور که از اسمش پیداست انقلابی عظیم در سیستم پول الکترونیکی خواهد بود.

مشکلات بیتکوین و راه حل های ممکن

قابلیت ردیابی معاملات  در بیتکوین Traceability of transactions

حفظ حریم خصوصی و ناشناس ماندن از مهم ترین جنبه های پول نقد الکترونیکی است.  سیستم های پرداختی همتا به همتا یا شخص به شخص به دنبال این است، تا  تراکنش ها از دید هر شخص سومی پنهان بماند. این خصوصیت آنها را از سیستم های بانکداری سنتی متمایز میکند. اوکاماتو و اوتا( T.Okamoto وK.Ohta )، شش شاخص برای پول نقد الکترونیکی ایده آل معرفی میکنند. که حریم خصوصی هم جز آنها است (رابطه بین کاربر و خریدهایش باید به طور کامل غیرقابل ردیابی باشد.)  با توجه به توصیف آنها،  یک پول الکترونیکی ناشناس باید دو خصوصیت مهم داشته باشد. تا بتواند مطابق با الزامات مشخص شده توسط اوکاموتو و اوتا باشد:

  • غیرقابل ردیابی: برای هر تراکنش ورودی تمام فرستنده ها با احتمالی برابر رو برو هستند.
  • پیوند ناپذیر: اثبات این امر که دو تراکنش خروجی برای یک نفر ارسال شده است ،غیر ممکن میباشد.

متأسفانه تراکنش ها در شبکه بیتکوین قابل رد یابی است. از آنجایی که تمام معامله هایی که بین افراد صورت میگیرد کاملاً قابل مشاهده است، هر تراکنش قابل ردیابی است. و فرستنده و گیرنده آن مشخص هستند. حتی اگر کاربران به صورت غیر مستقیم هم باهم معامله کنند، از طریق یک روش ردیابی کاملاً تخصصی می توان فرستنده و گیرنده را پیدا  کرد.

آیا بیتکوین از ویژگی دوم برخوردار است؟

حتی این مسئله هم که آیا بیتکوین از ویژگی دوم برخوردار است یا نه نیز در حاله ای از ابهام قرار دارد.

برخی از پژوهشگران معتقدند که یک آنالیزگر بلاکچین حرفه ای می تواند رابطه ی بین معاملات و کاربر شبکه را افشا کند . احتمالاً بسیاری از اطلاعات خصوصی افراد می تواند از طریق پایگاه داده عمومی قابل دسترس باشد.

این مسئله که بیتکوین از ویژگی هایی که در بالا گفتیم برخوردار نیست.این مسئله باعث میشود نتیجه بگیریم که این شبکه کاملاً ناشناس نیست. و به نوعی نیمه ناشناس میباشد. کاربران سریعاً راه حل هایی برای دور زدن این نقص پیدا کرده اند که عبارتند از:

  • پولشویی
  • توسعه روش های موجود

هر دو راه حل مبتنی بر ایده ترکیب کردن چندین معامله عمومی و ارسال آنها از طریق آدرس واسطه است. که به نوبه خود مشکل نیاز به شخص ثالث قابل اعتماد را به وجود می آورد.

zerocoin

اخیراً، یک طرح خلاقانه دیگری توسط میرز ( I.Miers ) و همکارانش معرفی شده که زیروکوین(Zerocoin) نام دارد.  این طرح از انباره های یک طرفه رمزنگاری شده و اثبات دانش صفر استفاده می کند. که به کاربران اجازه میدهد بیتکوین را به زیروکوین تبدیل کنند. و برای خرج کردن آنها به جای اینکه از کلیدهای عمومی که مبتنی بر امضاهای دیجیتال هستند از اثبات مالکیت ناشناس استفاده کند. اگرچه این گونه اطلاعات حجم ثابتی دارند اما سایزشان مناسب نیست.( حدود 30KB)

این مسئله طرح اخیر را غیر عملی میکند . به گفته نویسندگان بعید است این پروتکل مورد قبول اکثر کاربران بیتکوین قرار بگیرد.

عملکرد گواه اثبات کار بیتکوین The proof-of-work function

سازنده بیتکوین ساکوشی ناکاموتو  الگوریتم اجماع را  one-cpu-one-vote توصیف و از تابع قیمت گذاری محدود به CPU برای طرح گواه اثبات کار خود استفاده میکند.(SHA-256). از آنجایی که کاربران به تاریخ سفارش تراکنش ها رأی می دهند ، منطقی بودن و سازگاری این فرآیند برای کل سیستم شرایط مهمی به حساب می آید.

امنیت این مدل با دو مشکل روبرو است.  اولاً ، این مدل به ۵۱ درصد از قدرت ماینینگ شبکه نیاز دارد تا تحت کنترل کامل کاربران وفادار قرار گیرد.

دوماً، پیشرفت سیستم (رفع اشکالات، رفع مشکلات امنیتی و …) در گرو موافقت و پشتیبانی تعداد زیادی از کاربران است .(این موضوع زمانی اتفاق می افتد که کاربران کیف پول خود را بروز رسانی کنند). همین مکانیزم رأی گیری میتواند برای نظرسنجی های جمعی در مورد اجرای برخی از ویژگی ها هم استفاده شود.

بیشتر بخوانید : وایت پیپر اتریوم - قسمت آخر

این مکانیزم به ما اجازه میدهد تا بتوانیم خصوصیاتی که باید توسط تابع قیمت گذاری اثبات کار برآورده میشد را حدس بزنیم.

چنین عملیاتی نباید باعث برتری یک کاربر بر کاربر دیگر شود. برای برآورده کردن این مسئله سخت افزارهای کاربران باید در سطح برابری باشند. بر اساس مثال های اخیر متوجه میشویم که تابع  SHA-256 که در طراحی بیتکوین استفاده شده از این موضوع پیروی نمی کند. چرا  که ماینینگ با دستگاه های GPU و ASIC کارآمد تر از دستگاه هایی با CPU های گران قیمت است.

از این رو، بیتکوین بخاطر اختلاف بزرگی که بین کاربران پیش آمده ،شرایط مطلوبی را می سازد. زیرا کاربرانی که از GPU و ASIC استفاده میکنند قدرت رأی دهندگی بیشتری نسبت به کاربران CPU دارند. و این امر با اصل one-cpu-one-vote  در تناقض است.

اصل پارتو Pareto

این یک مثال کلاسیک از اصل Pareto است که طبق آن بیشتر از ۸۰ درصد آرا در دست ۲۰ درصد از کاربران میباشد.

از آنجایی که این امر، که کنترل اکثریت آرا در دست تعداد کمی از کاربران است مهم نیست و مهم صداقت کاربران است. می توان ادعا کرد که چنین نابرابری به امنیت شبکه ارتباطی ندارد.

با این حال چنین استدلالی تا حدودی ناقص است، چرا که سخت افزار تخصصی ارزان قیمت بیشتر از صداقت شرکت کنندگان که میتواند برای شبکه تهدید به حساب بیاید ، برای ما مهم شده است.

برای درک بهتر این موضوع به مثال زیر دقت کنید. بر فرض یک فرد سودجو با راه اندازی فارم خود با سخت افزار های ارزان قیمت قدرت ماینینگ بالایی بدست می آورد، حال اگر هش ریت جهانی برای لحظه ای فرو بریزد، حتی برای یک لحظه او میتواند از قدرت ماینینگ خود استفاده کرده تا زنجیره را فورک کند و آن را دوبار خرج کند. با توجه به توضیحات بعدی متوجه میشویم وقوع این اتفاق اصلاً بعید نیست.

انتشار غیر عادی Irregular emission

بیتکوین میزان انتشار از پیش تعیین شده ای دارد. هر بلاک حل شده مقدار مشخصی سکه تولید میکند. تقریباً هر چهار سال یک بار این پاداش نصف میشود که هدف از این کار محدود کردن تعداد کل این کوین است. اما ما در شبکه کریپتونت یک انتشار خطی چند ضابطه ای داریم که نقاط شکست آن ممکن است زیر ساخت های بیتکوین را با مشکل روبرو کند.

وقتی نقاط شکست اتفاق می افتد، ماینرها فقط نیمی از ارزش قبلی پاداش خود را دریافت میکنند. تفاوت مطلق بین 12.5 و 6.25 بیتکوین ممکن است قابل تحمل به نظر برسد.

مودار هش ریت بیتکوین
مودار هش ریت بیتکوین

با بررسی افت 50 به 25 بیتکوین که در ۲۸ نوامبر سال ۲۰۱۲ اتفاق افتاد، برای تعداد قابل توجهی از اعضای ماینینگ احساس ناخوشایندی به وجود آورد. نمودار شماره 1 کاهش چشمگیر هش ریت شبکه را در اواخر ماه نوامبر نشان می دهد ، دقیقاً زمانی که نصف شدن مقادیر (هاوینگ) اتفاق افتاد.

این اتفاق میتواند بهترین لحظه برای شخص سودجویی که در بخش عملکرد اثبات کار توضیح دادیم باشد. تا یک حمله ی دو بار خرج کردن (double spending attack ) را صورت دهد.

فاکتور های ثابت کد گذاری شده Hardcoded constants

بیتکوین محدودیت های کد گذاری شده ی بسیاری دارد که برخی از آنها جز عناصر طبیعی طراحی اصلی هستند.(فرکانس بلاک ها، حداکثر مقدار منبع مالی و تعداد تاییدیه ها) .درحالی که به نظر می رسد بقیه عنصر ها محدودیت های ساختگی هستند. این محدودیت ها نیستند که باعث بروز مشکلات میشوند .بلکه عدم توانایی تغییر سریع آنها در صورت لزوم است که مشکل آفرین میشود. متأسفانه،  پیش بینی زمانی که فاکتور های ثابت نیاز به تغییر دارند دشوار است. و جایگزینی آنها ممکن است عواقب وحشتناکی را به دنبال داشته باشد.

یک مثال خوب برای تغییر محدودیت های کد گذاری شده که منجر به عواقب فاجعه بار می شود ، حد مجاز بلاکی است که روی 250 کیلوبایت تنظیم شده است. این حد برای نگه داشتن حدود 10000 تراکنش استاندارد کافی بود. در اوایل سال 2013 کاربران به این توافق رسیدند که این حد را افزایش دهند.

این تغییر در ورژن 0.8 کیف پول اجرا شد .و با تقسیم ۲۴ ساعته بلاکچین و یک حمله دو بار خرج کردن( double-spend)موفق پایان یافت. این باگ در پروتکل بیتکوین نبوده، با این حال اگر اندازه حدهای مصنوعی وجود نداشتند این باگ به راحتی توسط تست استرس که در موتور پایگاه داده انجام میشود، شناسایی میشد. فاکتور های ثابت نیز به عنوان فرمی از نقطه تمرکز عمل میکنند. علیرغم ماهیت نظیر به نظیر بیتکوین اکثر نودها از مرجع رسمی مشتری ها استفاده میکنند. که توسط گروه کوچکی از افراد ساخته شده است. این گروه در مورد تغییر در پروتکل ها تصمیم گیری میکنند و اکثریت کاربران بدون توجه به صحت آنها، این تغییرات را می پذیرند.

برخی از این تصمیمات منجر به تحریم و بحث های داغی شد .که نشان میدهد احتمالاً توسعه دهندگان و جامعه بر سر برخی موضوعات اختلاف نظر دارند. بنابراین داشتن پروتکل هایی با متغیر های خود تنظیم و البته قابل تنظیم توسط کاربر،  برای دوری از بروز مشکلات ،عقلانی به نظر می رسد.

منبع: factcoins.com