پیمان بیت کوین به مقرراتی اشاره دارد که نحوه استفاده از این رمز ارز را برای دارندگان آن مشخص میکند و حد مرزهایی برایشان در نظر میگیرد. در واقع پیمانها در مورد قوانین مالکیت خصوصی برای ایجاد محدودیت در شیوه استفاده از داراییها و وسایل کاربرد دارند. اگر تا به حال زمین خریده باشید میدانید که هر زمین کاربری خاصی دارد، به عنوان مثال شما نمیتوانید در زمینی که کاربری مسکونی دارد، یک ساختمان تجاری ایجاد کنید. یا نمیتوانید در یک زمین مسکونی، پمپ بنزین احداث کنید. پیمان بیت کوین هم به موضوعی مشابه اشاره میکند. این مفهوم برای ایجاد حد و مرزهای مشخص در استفاده از بیت کوین ایجاد دشه است.
در این مقاله از داموندمگ قصد داریم به بررسی مفهوم پیمان بیت کوین بپردازیم، مزایا و معایب آن را بررسی کنیم و بدانیم آیا پادشاه رمز ارزها قابلیت تغییر و بهبود دارد یا خیر؟ با داموندمگ همراه باشید.
مفهوم پیمان بیت کوین چیست؟
پیمان بیت کوین شبیه به پیمانها و قراردادهایی است که در دنیای فیزیکی استفاده میشود با این تفاوت که این پیمانها در بیت کوین برنامههای اسکریپتی هستند که محدودیتهایی را درباره نحوه خرج کردن بیت کوین توسط کاربران ایجاد میکنند.. اگر بخواهیم از یک زاویه دیگر هم به این موضوع بپردازیم پیمان بیت کوین را میتوان به عنوان تغییراتی در الگوریتم اجماع این رمز ارز دانست. از آنجایی که بیت کوین در حوزه مالکیت خصوصی قرار دارد، با استفاده از این پیمانها میتوان محدودیتهایی در معاملات برای کاربران این ارز دیجیتال استفاده کرد.
به این ترتیب شما به عنوان صاحب بیت کوین میتوانید آن را در کیف پولهای خود نگهداری کنید، اما برای کارهایی که میتوانید با آن انجام دهید، با محدودیتهایی مواجه خواهید شد و باید طبق مقررات عمل کنید. در ادامه قصد داریم پیمانهایی که تاکنون وجود داشته را بررسی کنیم و همینطور به کاربردهای پیمان بیت کوین و مزایا و معایب آن بپردازیم. پیمانهای بیت کوین باعث ایجاد بحثهای زیادی در بین موافقان و مخالفان آن شدهاند. اجرای Bitcoin Covenants میتواند پیامدهای بلندمدتی برای ویژگی ضدسانسوری اولین ارز دیجیتال جهان به وجود بیاورد.
بهبود BIP بیت کوین چیست؟
BIP مخفف Bitcoin Improvement Proposals به معنی پروپوزال هایی برای ارائه ی طرحهای بهبودی برای بیت کوین است. در واقع BIP ها پروپوزال هایی برای فرآیند ایجاد بهبود در بیت کوین هستند و پیمانها (Bitcoin Covenants) بخشی از این فرآیند هستند. یکی از اولین موارد اشاره به پیمانهای بیت کوین در سال 2013 بود که بسیاری از فعالان این حوزه آن را “ایده ای بسیار بد” دانستند. اما پس از آن توسعه دهندگان و برنامه نویسان فعال در بلاک چین بیت کوین به این پیمانها به شکل جدی تری نگاه کردند. در بحثهایی که بین توسعه دهندگان در سال 2014 وجود داشته است، صحبت از امکان پذیری پیمانها مشاهده میشود. بعدها در سال 2016، مقالهای با عنوان پیمانهای بیت کوین در افزایش مقیاس پذیری بیت کوین ارائه شد. چنین تلاشهایی باعث شد تا توسعهدهندگان به طور جدیتر به چگونگی بهبود بیت کوین فکر کنند.
اخیراً، یکی از توسعه دهندگان بیت کوین به نام جرمی روبین برخی موارد استفاده از پیمان بیت کوین را در پروپوزال بحث برانگیزی به نام BIP119 شرح داده است. جرمین بیان میکند که این پیمان به سبک CTV ایجاد شده است و دارای مجموعه محدودی از بهبودها در بلاک چین بیت کوین است و برای استفاده از آن، شبکه نیاز به تحمل ریسک بالایی نخواهد داشت.
در شبکه های بلاک چین زمانی که ترافیک تراکنشها زیاد است، کارمزدها افزایش پیدا میکنند و سرعت شبکه نیز افت میکند. CTV میتواند با اجرای تراکنشهای کنترل شده به مقیاس پذیری بیت کوین در زمانهای ازدحام شبکه کمک کند. با استفاده از CTV پردازشگرهای پرداخت بزرگ میتوانند پرداختها را در یک تراکنش ثبت کنند. این کار باعث صرفه جویی در فضای بلاکهای شبکه شده و باعث اجرای سریعتر و کم هزینه تر در بلاک چین بیت کوین میشود.
کاربردهای پیمانهای بیت کوین
بدون شک میتوان بیت کوین را بهبود داد و پیمانهای بیت کوین میتوانند باعث بهبود شبکه بیت کوین شوند. این بهبودها میتواند شامل افزایش ظرفیت تراکنشهای بیت کوین، توسعه وامها با کاهش نیاز به اعتماد و کنترل ازدحام شبکه باشد. توسعه دهندگان بیت کوین با استفاده از کدهایی که تحت شرایط خاصی اجرا میشوند این گونه بهبودها را در شبکه بیت کوین ایجاد میکنند. هدف اصلی از ایجاد این پیمانها افزایش امنیت، مقیاس پذیری و قابلیت استفاده آسانتر از بیت کوین است.
یکی از موارد استفاده از پیمانهای بیت کوین محدود کردن تراکنشها به مجموعه ای از آدرسها معروف به whitelisted است. به این ترتیب پس از خرید بیت کوین توسط کاربر، پیمانهای بیت کوین میتوانند نحوه استفاده از بیت کوین و محل انتقال آن را محدود کنند. این نوع عملکرد در پیمانها بسیار شبیه به محدودیتهایی است که توسط بانکها برای تاجرانی که مشکوک به فعالیت تجاری هستند، اعمال میشود.
ضرورت وجود پیمانهای بیت کوین
1- تراکنشهای استاندارد در بیت کوین
در تراکنشهای استاندارد بیت کوین که در حال حاضر رایج است برای محافظت از بیت کوینهای کاربر، توسعه دهندگان یک اسکریپت قفل شده برای تراکنشها در نظر میگیرند. با استفاده از این اسکریپتها کاربر برای انجام دادن تراکنش با استفاده بیت کوین نیاز به رعایت شرایط خاصی خواهد داشت. برای مثال یکی از این شرایط میتواند امضا کردن تراکنش با استفاده از کلید خصوصی باشد که باید با کلید عمومی مطابقت داشته باشد.
یکی دیگر از شرایطی که ممکن است توسط اسکریپت برای کاربر تعریف شده باشد روش قفل زمانی است. قفل زمانی یا Timelock مانند یک آلارم عمل میکند، به این ترتیب که کاربر نمیتواند دارایی خود را تا قبل از تشکیل شدن تعداد مشخصی از بلاک در بلاک چین بیت کوین، خرج کند. بنابراین در تراکنشهای معمولی بیت کوین، برای انجام تراکنشها نیاز به شرایط خاصی داریم اما در بحث پیمانها علاوه بر شرایط اولیه تعیین شده در اسکریپت تراکنشهای معمولی، شرایط دیگری هم اعمال میشود.
2- زبان برنامه نویسی بیت کوین
بیت کوین برای قفل کردن و باز کردن تراکنشها از سیستمی به نام اسکریپت استفاده میکند. اسکریپت یک زبان برنامه نویسی با دامنه محدود است که مانند زبان سالیدیتی که در اتریوم استفاده میشود، Turing Complete نیست. تورینگ کامل بودن به این معناست که یک بلاک چین میتواند از کدهای خود برای هرکاری که دستورالعمل صحیح داشته باشد، استفاده کند.
در حال حاضر برنامههای اسکریپت قادر هستند به شکلی هستند که کاربران برای خرج کردن بیت کوین باید اطلاعاتی را به کیف پول بدهند. برای انجام یک تراکنش استاندارد نیاز به امضای دیجیتال برای کلید عمومی وجود دارد. اسکریپتها میتوانند تراکنشها را محدود کنند، به این شکل که میتوانند تشخیص دهند چه تراکنشهایی را تایید کنند یا اجازه انجام به آنها ندهند. اما مشکلی که وجود دارد این است که اسکریپتها در حال حاضر قادر به این نیستند که آدرسهای دریافت بیت کوین را محدود کنند. پیمانها راه حلی برای کسانی است که علاقهمند به محدود کردن آدرسهای تراکنش هستند.
نحوه کار پیمان بیت کوین
اگر بخواهیم به زبانی ساده نحوه کار پیمانهای بیت کوین را بیان کنیم، میتوان آنها را به عنوان ابزارهایی در نظر گرفت که باعث محدودیت کاربران در استفاده از بیت کوین میشود. به این ترتیب یک کاربر میتواند برای استفاده از بیت کوینهای موجود در کیف پول خود محدودیتهای ایجاد کند. به عنوان مثال میتواند فقط چند آدرس را در وایت لیست خود تعریف کند، با استفاده از این پیمان فقط تراکنشهایی تایید خواهند شد که شامل آدرسهای از پیش تعیین شده هستند.
با تمام این تفاسیر برخی از افراد فعال در جامعه کریپتو بر این باورند که استفاده از پیمانها در بیت کوین با استفاده از اسکریپتها غیرممکن است. در این میان برخی از توسعه دهندگان پیشنهاد میکنند که زبان اسکریپت را برای پشتیبانی از پیمانهایی که مستقیماً با دادههای تراکنش در تعامل هستند، توسعه دهند. به این ترتیب استفاده از پیمانها ممکن است باعث توسعه زبان اسکریپت نیز شود.
مزایای پیمانهای بیت کوین
توسعه دهندگان دائماً در تلاش هستند تا امنیت و مقیاس پذیری بیت کوین را بهبود ببخشند و پیمانها میتوانند ابزاری برای رسیدن به این اهداف باشند. علاوه بر آن پیمانها میتوانند به بهبود امنیت شبکه بلاک چین نیز کمک کنند. به عنوان مثال پیمانها میتوانند کاربران را در مقابل حملههای $5 wrench ایمن کنند. این نوع حمله افرادی را مورد حمله قرار میدهند که ارزهای دیجیتال زیادی دارند. در این نوع حمله، کلید خصوصی کاربران مورد سرقت قرار میگیرد و برای بازگرداندن کلید به خصوصی به صاحبان، از آنها اخاذی میشود. این نوع حمله به مراتب آسانتر از هک کردن کیف پول اشخاص است.
یکی از مزایای امنیتی پیمانهای بیت کوین این است که امکان سرقت بیت کوین توسط مهاجمان سختتر میشود. حتی اگر کلیدهای خصوصی شما توسط این افراد مورد سرقت قرار بگیرد، به دلیل اینکه شما از قبل برای آدرسهایی که مجاز به دریافت بیت کوین شما هستند، محدودیت تعریف کرده و وایت لیست ایجاد کردهاید، مجرمان نمیتوانند رمز ارز شما را به کیف پول خود انتقال دهند. جالب است بدانید با وجود پیمانهای بیت کوین شما حتی پس از سرقت کلیدهای خصوصی نیز میتوانید برای کیف پول خود وایت لیست ایجاد کنید و از انتقال رمز ارزهای خود توسط مجرمان پیشگیری کنید. به علاوه استفاده از این پیمانها باعث پیشگیری از دوباره خرج شدن دارایی بیت کوین کیف پول کاربران نیز میشود که یکی از مباحث بسیار مهم در فضای رمزنگاری است.
یکی دیگر از مزایای Covenants مدیریت و محافظت از کلیدهای خصوصی کیف پول هاست. همانطور که احتمالا میدانید این موضوع در حال حاضر یکی از چالشهای امنیتی در فضای کریپتو است. با استفاده از پیمانها میتوان همه کلیدهای خصوصی را در یک صندوق امن نگهداری کرد. با استفاده از این روش با فعال کردن یک نوع مکانیزم، سارق حتی با داشتن کلید خصوصی هم نمیتواند کنترل تمام دارایی فرد را در دست بگیرد. این مکانیزم شامل استفاده از تراکنشهای از پیش امضا شده با کلید اختصاصی است که یک قفل زمانی روی داراییها لحاظ میکند.
معایب پیمانهای بیت کوین
همانطور که گفته شد استفاده از پیمانهای بیت کوین با اینکه مزایایی دارد، از آنجایی که پیاده سازی این پیمانها ممکن است پیچیده باشد، اختلاف نظرهایی در این زمینه وجود دارد. یکی از مواردی که مخالفان پیمانها به آن اشاره میکنند، بحث سانسور و قابلیت تعویض است. برخی از توسعه دهندگان و کارشناسان بیت کوین مخالفت خود را برای استفاده از این پیمانها ابراز کردند، یکی از این افراد برجسته Andreas Antonopoulos است که نگرانیهای خود را درباره اجرای پیمانهای بیت کوین مخصوصا BIP119 ابراز کرده است.
1- خطر پیمانهای بازگشتی
آندریاس نگران این است که به روز رسانی های جدید و ایجاد پیمان بازگشتی در بلاک چین بیت کوین ممکن است باعث خرابی در شبکه شود. یک پیمان باعث محدودیت در یک تراکنش میشود و به دنبال آن پیمانهای بازگشتی باعث ایجاد محدودیت در تراکنشهای دیگر میشوند. این موضوع باعث یک اثر دومینو وار محدودیت در شبکه میشود.
منظور از پیمان بازگشتی این است که برنامه نویسان و توسعه دهندگان یک تراکنش را به شکلی محدود کنند آن تراکنش باعث محدودیت دیگر تراکنشها شود.
2- ساخت لیست سیاه، خطر سانسور و مصادره
همانطور که گفته شد با استفاده از پیمان شما میتوانید برای کیف پول خود یک وایت لیست ایجاد کنید که شامل آدرسهایی است که میتوانند از کیف پول شما بیت کوین دریافت کنند. همچنین قادر خواهید بود یک بلک لیست ایجاد کنید که شامل آدرسهایی است که هرگز نمیتوانند از کیف پول شما کوین دریافت کنند. با این که استفاده از این روش دارای مزایای امنیتی است راه را برای سانسور و کنترل بیت کوین توسط دولت ها هموار میکند و این موضوع با غیرمتمرکز بودن بیت کوین کاملا در تضاد است. فلسفه وجودی بیت کوین از بین بردن تمرکز و ایجاد یک سیستم مالی غیرمتمرکز بود، اما با افزودن این نوع محدودیتها عملا امکان کنترل توسط دولت ها فراهم میشود، به این شکل که میتوانند صرافیها را ملزم به برداشت از آدرسهایی کنند که توسط خودشان تعیین میشود.
یکی از معایب پیمانها در بیت کوین این است که دولت ها میتوانند افراد را مجبور کنند که فقط کوینهایی را بپذیرند که دولت بعدا میتواند آنها را تصرف کند. هر چند این ریسک در حال حاضر هم به شکلی دیگر وجود دارد چرا که دولت ها میتوانند صرافیها را به ارسال و دریافت از آدرسهایی که توسط آنها کنترل میشود مجبور کنند. اما نگرانی مهم در رابطه با پیمانها این است که اجرای آنها باعث میشود اجرای نوعی الزامات زنجیرهای احراز هویت قبل از انتقال بیت کوین توسط افراد، به وسیله دولت ها آسانتر شود. به عبارت دیگر میتوان گفت با استفاده از این شیوه باید با غیرمتمرکز بودن بیت کوین خداحافظی کرد.
3- محاسبات اضافی
محاسبات اضافی یکی دیگر از مشکلاتی هستند که با استفاده از پیمانهای بیت کوین ایجاد میشوند. با استفاده از این شیوه بیت کوین به کاربران اجازه میدهد تا اسکریپتهای پیچیده ایجاد کنند که ممکن است قابلیت سواستفاده را در شبکه فعال کند.
4- تهدید Fungibility
Fungibility به معنای منحصربه فرد بودن یک دارایی است. پیمانهای بیت کوین ممکن است در عین حال که باعث افزایش امنیت و مقیاس پذیری بلاک چین بیت کوین میشوند، باعث تغییر در قابلیت مثلی بیت کوین شوند. منظور از این تغییر این است که استفاده از پیمانها ممکن است باعث شود هر یک بیت کوین دارای خاصیت منحصر به فردی شود و قابلیت تعویض با واحدهای دیگر بیت کوین را از دست بدهد. در حال حاضر کوینهای بیت کوین را میتوان با یکدیگر تعویض کرد. مخالفان این طرح معتقدند محدود کردن مقدار بیت کوینهایی که میتوان خرج کرد باعث محدود شدن بیت کوین به عنوان یک ارز دیجیتال میشود. این تغییر ممکن است تغییرات غیرقابل بازگشتی چه از نظر ذاتی و چه قیمتی داشته باشد.
نتیجه گیری
با توجه به آنچه گفته شد پیمان بیت کوین به اسکریپتهایی گفته میشود که تراکنشهای کاربران را با محدودیتهایی مواجه میکند. در حال حاضر موافقان و مخالفان پیمانها هرکدام با دلایل بسیار قوی بر سر مزایا و معایب احتمالا غیرقابل بازگشت این طرح بحث میکنند.
با اینکه پیمانهای بیت کوین میتوانند مزایای خوبی برای شبکه داشته باشند، در صورت اجرای نادرست و عجولانه ممکن است خطرات جبران ناپذیری را برای شبکه بیت کوین به وجود بیاورند. در نهایت به دلیل غیرمتمرکز بودن شبکه بلاک چین بیت کوین، کاربران شبکه تصمیم خواهند گرفت که چه اتفاقی برای آینده این رمز ارز میتواند گزینه مناسبتری باشد. چرا که در سیستم غیرمتمرکز نودهای اصلی تصمیم گیرندگان نهایی هستند و با اعلام رای موافق یا مخالف برای ادامه راه بیت کوین تصمیم خواهند گرفت.
سوال های متداول
1- آیا بیت کوین قابل تغییر است؟
بله شبکه بلاک چین بیت کوین قابلیت تغییر و بهبود دارد.
2- آیا با استفاده از پیمان بیت کوین، دولت ها میتواند بر تراکنشهای بیت کوین نظارت کنند؟
بله با استفاده از پیمانهای بیت کوین بسته به نوع پیمانی که ثبت میشود، ممکن است دولت ها بتوانند بر تراکنشهای بیت کوین نظارت داشته باشند و کاربران در استفاده از آن محدود کنند.
3- پیمانهای بیت کوین چه مزایایی دارند؟
این پیمانها باعث افزایش امینت، افزایش مقیاس پذیری شبکه و افزایش سرعت آن میشوند.