بیتکوین در نهایت توسط کاربرانش تعریف میشود، یعنی افرادی که نودها (گرهها) را اجرا میکنند و با اعمال قوانین پروتکل در راستای تائید پرداختهایی، از طریق شبکه پاداش دریافت میکنند.
این یکی از ویژگیهای اساسی و اجتنابناپذیر شبکه بیتکوین است، البته تا زمانی که کاربران به مشارکت خود در شبکه ادامه دهند.
با این حال، این بدان معنا نیست که کاربران نحوه عملکرد پروتکل بیتکوین، اثرات متفاوتی که تغییرات پیشنهادی در شبکه ایجاد میکنند یا بهترین روش از نظر فنی برای رسیدگی به یک مشکل یا بهبود را به صورت دقیق درک میکنند.
عناوین مطلب:
البته اگر کاربران وقت کافی را صرف انجام تحقیق در مورد پیچیدگیهای شبکه کنند و در مورد پروتکل بیتکوین اطلاعات فنی لازم را یاد بگیرند بدون شک میتوانند این موارد را درک کنند، اما این تصور که شما به عنوان یک کاربر، امکان تصمیمگیری در مورد چگونگی عملکرد پروتکل را دارید بیهوده و مضحک به نظر میرسد.
بیشتر بخوانید: چه انتقادهایی علیه بیتکوین و اکوسیستم آن وجود دارد؟
آیا همه کاربران از تمام جزئیات فنی پشت پرده بیتکوین خبر دارند؟
صرفاً به این دلیل که شما خودرویی را میرانید به این معنی نیست که میتوانید مکانیسمهای مهندسی عمیق و ظریف و همچنین مهندس طراح ماشین را بشناسید.
یا فقط به این دلیل که شما هر روز از تلفن همراه استفاده میکنید به این معنی نیست که میدانید چطور میزان مصرف برق همه فرستندههای مختلف رادیویی، وای فای، بلوتوث، تلفن همراه و غیره را بهینهسازی کنید.
به زبان ساده، استفاده از چیزی به معنای درک نحوه عملکرد پیشفرض آن نیست. این نکته باید برای هر کسی که با خودش صادق است بسیار واضح و بدیهی باشد.
پس چرا بسیاری از کاربران بدون داشتن تخصص فنی یا آشنایی با نحوه کار وسایل در پشت صحنه، چنان با اطمینان در مورد نحوه کار این وسایل اظهار نظر میکنند، در حالی که در مورد تمام جزئیات و حقایق مربوط به آن وسایل در اشتباه هستند؟
بیشتر بخوانید: بلاکچین چگونه توسعه پیدا میکند؟ 8 گام برای توسعه بلاکچین
مخاطب این مقاله چه کسانی هستند؟
قبل از ادامه بحث لازم است چند نکته را متذکر شویم.
مخاطب این مقاله توسعهدهندگان نرم افزار که برنامهها را میسازند نیست، یا کسانی که در زمینههای فناوری نرمافزار کار میکنند اما وقت لازم برای مشارکت در بیتکوین را ندارند ولی به هر حال به طور منظم آن را دنبال میکنند.
روی سخن این مقاله حتی با کاربری نیست که برای درک نحوه کار پدیدههای مختلف در پشت صحنه وقت (به خیال خودش کافی) صرف کرده است. بلکه، مخاطب این مقاله کاربران معمولی که گاه و بیگاه به پادکستها گوش میدهند و میانگینگیری هزینه دلاری (DCA) را اجرا میکنند اما به صورت جدی توسعه موارد فنی دنیای بیتکوین را دنبال نمیکنند، هستند.
روی سخن این مقاله با کاربری است که هنوز پول خود را از صرافی که در آن بیتکوین خریده، برداشت نکرده است؛ با صاحب کسب و کاری که دوستش یک کیف پول بیتکوین روی موبایل او راهاندازی کرد تا بتواند در یک مورد از هر 100 مورد مشتریان خود، بیتکوین را به عنوان روش پرداخت بپذیرید.
چرا در مورد نحوه عملکرد بیتکوین تا این حد مطمئن نظر میدهید؟
چقدر با سیاست ممپول (mempool) در مورد نحوه انتقال تراکنشها آشنا هستید؟
آیا میدانستید که بین قوانین سیاستگذاری و قوانین اجماع تفاوت زیادی وجود دارد؟
آیا میدانستید تراکنشهایی وجود دارند که بر اساس قوانین اجماع برای گنجانده شدن در یک بلوک کاملاً معتبر هستند، اما طبق سیاست ممپول نمیتوانند توسط هیچ نودی منتقل شوند، در نتیجه باید این تراکنشها به صورت مستقیم به ماینرها داده شوند تا آنها با استفاده از کد سفارشی آنها را به بلوکها اضافه کنند؟
بیشتر بخوانید: راهنمای جامع انواع الگوریتمهای اجماع در بلاکچین
راستی اینکه شبکه لایتنینگ در واقع از قراردادهای هشگذاری دارای محدودیت زمانی (HTLC) برای پرداختهای با ارزش بسیار کم استفاده نمیکند، چطور؟ آیا میدانستید که شبکه لایتنینگ برای یک پرداخت به ارزش مثلاً 10 ساتوشی از HTLC استفاده نمیکند یا موفقیت یا شکست پرداخت را با اسکریپت بیتکوین شناسایی نمیکند؟
این پرداختهای بسیار کوچک در «دوره میانی» وقتی که هنوز نهایی نشده و توسط کانالها تایید نشده است، به کارمزد ماینرها تبدیل میشوند. این بدان معناست که اگر یک جهش در مسیر پرداخت، یک طرف همکاری را متوقف کند، آن نود به هیچ وجه نمیتواند، بسته به اینکه از کدام طرف برای آن پرداخت خاص صحبت میشود، به صورت درون زنجیرهای پاداش تراکنش را دریافت کند.
این پرداخت تبدیل به کارمزد ماینر برای تأیید یک تراکنش میشود، و در تراکنش تعهد کانال هیچ خروجی واقعی HTLC برای مسیریابی آن پرداخت ایجاد نمیشود. این فرایند صرفاً یک سیستم برای نشان دادن صداقت است که هیچ قابلیت اجرائی ندارد. آیا اینها را میدانستید؟
مورد جالب زیر هم یکی دیگر از جزئیات فنی پیچیده بیتکوین است که بعید است کاربران عادی با آن آشنا باشند.
آپکُدهای بیتکوین
بیتکوین دارای دو آپکد (کد عملیاتی) برای قفل کردن زمان است: check lock time verify یا تائید بررسی زمان قفل (CLTV) و check sequence verify یا تائید بررسی توالی (CSV).
آپکد CLTV از خرج شدن کوین قبل از یک تایم استمپ یونیکس از پیش تعریف شده یا سپری شدن یک ارتفاع بلوک از پیش تعریف شده جلوگیری میکند.
آپکد CSV از خرج شدن یک کوین تا سپری شدن مدت زمانی مشخص یا پیدا شدن تعداد مشخصی بلوک از زمان بلوک یا زمانی که کوین ایجاد شده است، جلوگیری میکند.
وقتی یک کوین را با استفاده از CLTV یا CSV در اسکریپت خرج میکنید، فیلدی در تراکنش هزینه واقعی به نام nLocktime وجود دارد که باید روی مقداری که اسکریپت CLTV یا CSV استفاده کرده تنظیم شود.
هدف اصلی از ایجاد این فیلد، داشتن تراکنشهای از پیش امضا شدهای بود که تا سپری نشدن آن زمان یا بلوک مشخص قابل استخراج نیستند.
اما خود ساتوشی ناکاموتو کاربرد دیگری هم برای این فیلد در نظر داشت و آن یک شکل بسیار ابتدایی کانال پرداخت بود. هدف ساتوشی این بود که بتوان فیلد nLocktime را هر بار را یک مرتبه افزایش داد تا یک پرداخت خالص جدید ایجاد شود و از ماینرها خواست تا آخرین پرداخت را با شمارش تسویه کنند.
بیشتر بخوانید: بیتکوین، میراث ارزشمند ساتوشی ناکاموتو!
مشکل کار کجاست؟
مشکل این است که هیچ قانون یا روشی اجماع وجود ندارد که ماینرها را مجبور به تسویه آخرین تراکنش کند.
بنابراین خود ناکاموتو قصد داشت از این فیلد در تراکنش استفاده کند تا ماینرها را ملزم کند که فقط آخرین تراکنش – یا تراکنش دارای بالاترین شماره – را تسویه کنند.
اما همانطور که گفته شد هیچ قانون اجماعی برای اجرای این تصمیم وجود نداشت! نه تنها برای این کار قانون اجماع وجود نداشت، بلکه وضع کردن چنین قانونی غیرممکن بود، چرا که ماینرها میتوانند هر تراکنش معتبری را در بلوک وارد کنند.
پس از آنکه تراکنشی را امضا میکنید، آن تراکنش اعتبار پیدا میکند و برای همیشه معتبر خواهد بود. بنابراین هیچ راه منطقی برای اجرای ایده اولیه ناکاموتو در وهله اول وجود نداشت.
یک لحظه به این قضیه فکر کنید. خالق بیتکوین در نظر داشت قابلیتی در شبکه بیتکوین اضافه کند که ساختن آن به روشی که او تصور میکرد به معنای واقعی کلمه غیرممکن بود. کافی است کمی بیشتر به جالب بودن این داستان فکر کنید. خالق کل پروتکل بیتکوین قابلیتی را برای انجام یک کار خاص طراحی کرده است که انجام آن کار خاص به آن روش به معنای واقعی کلمه امکانپذیر نیست.
واقعاً چرا عدهای از افراد چنان به درک خود از نحوه عملکرد بیتکوین از نظر فنی اطمینان دارند؟ چرا اینقدر مطمئن هستند که فهمشان از چگونگی تأثیرگذاری بعضی از تغییرات واقعاً درست است؟ حتی خود سازنده پروتکل بیتکوین سوءتفاهم چنان وحشتناکی در مورد نحوه کار محصول خود داشت (همانطور که در پاراگراف قبل توضیح داده شد).
پیام این مقاله
اما پیام این مقاله چه بود؟ اینکه کارشناسان این حوزه هنوز وجود دارند. اینکه حتی اگر کاربران در نهایت کنترل پروتکل بیتکوین را در دست دارند و در مورد اینکه چه نرم افزاری را اجرا کنند و چه قوانینی را پیاده کنند تصمیمگیرنده نهایی باشند، این واقعیت را تغییر نمیدهد که افرادی وجود دارند که نحوه عملکرد این پروتکل را بهتر از آنها درک میکنند.
میزان درک افراد از جزئیات پروتکل بیتکوین به طور مستقیم با مدت زمانی که آنها صرف تلاش برای یادگیری و درک این موضوعها کردهاند، مرتبط است.
شما نمیتوانید فقط به این دلیل که بیتکوین میخرید، یا از آن استفاده میکنید یا با آن چیزهایی میخرید به طور جادویی بفهمید که این پروتکل چگونه کار میکند. دانش به این صورت به دست نمیآید.
پس وقتی دارندگان بیتکوین در بحثهای مربوط به نحوه عملکرد جوانب مختلف بیتکوین از نظر فنی شرکت میکنند، یا وقتی در حضور دیگران در مورد تصمیمهایی که مربوط به اجرای نرم افزار و ایجاد قوانین است صحبت میکنند، باید از چیزهایی در مورد بیتکوین که میدانند و نمیدانند آگاه باشند چرا که صرفاً داشتن بیتکوین به تنهایی به معنای آشنایی کامل با پروتکل آن و انتقال این دانش به دیگران نیست.
یکی از شعارهای جالب دنیای بیتکوین «اعتماد نکن، تائید کن» است. حالا از شما میپرسیم، چند نفر از شما قبل از اینکه جوانب مختلف پروتکل بیتکوین را تکرار کنید، شخصاً آنها را تائید میکنید؟
شما در بورس، علاوه بر خرید و فروش سهام:
- میتوانید در داراییهایی مانند طلا و مسکن سرمایهگذاری کنید
- در صندوقهای سرمایه گذاری بدون ریسک، سود ثابت بگیرید
برای شروع سرمایهگذاری، افتتاح حساب رایگان را در یکی از کارگزاریها انجام دهید:
نام شرکت | ویژگیها | امتیاز | لینک ثبتنام |
---|---|---|---|
کارگزاری آگاه |
|
برای سرمایهگذاری و معامله موفق، نیاز به آموزش دارید. خدمات آموزشی زیر از طریق کارگزاری آگاه ارائه میشود: