بدافزار SpyAgent از روی اسکرینشات، رمز کیفپول را سرقت میکند
شرکت مکآفی یک بدافزار (SpyAgent) جدید اندرویدی را کشف کرده که میتواند با استفاده از…
۱۷ شهریور ۱۴۰۳
۲۲ آبان ۱۴۰۰
زمان مطالعه : ۱۰ دقیقه
تاریخ بهروزرسانی: ۱۳ آذر ۱۴۰۰
در این مطلب میخوانید
بیتکوین امروز (۱۳ نوامبر) با یک ارتقای بزرگ به اسم تپروت، مواجه میشود. تپروت( Taproot) اولین ارتقای بیتکوین بعد از سال ۲۰۱۷ است. قرار است این ارتقا موجب ارزانتر، کارآمدتر و خصوصیتر کردن تراکنشهای شبکه بیتکوین شود. اما چرا تپروت پیادهسازی میشود و با این ارتقا شبکه بیتکوین چه تغییراتی را تجربه خواهد؟ این مقاله با توجه به تصورات غلط و درک نامشخصی که کاربران معمولی در مورد Taproot دارند، سعی میکند با اتکا به موضوعات فنی شما را به مفاهیم گستردهتری از آنچه که مسلما مهمترین ارتقای بیتکوین تاکنون است، آشنا کند.
به طور خلاصه و در بالاترین سطح انتزاعی ممکن، ارتقای Taproot، مقیاس پذیری، حریمخصوصی و عملکرد قرارداد هوشمند بیتکوین را بهینه خواهد کرد.
تپروت یک نوع آدرس جدید ایجاد میکند و به تراکنشهای بیتکوینی اجازه میدهد صرف نظر از اینکه فرستنده یک تراکنش پرداخت ساده انجام دهد یا تراکنش چند امضایی پیچیده یا حتی از شبکه لایتنینگ استفاده کند، همه آنها مشابه به نظر خواهند رسید. علاوه بر این، آدرسهای Taproot به کاربران این امکان را میدهند که در هزینههای تراکنش صرفهجویی کنند. در مقایسه با انواع آدرسهای گذشته تپروت با کاهش اندازه تراکنش و نشاندادن هر تراکنش مانند یک معامله ساده و تک امضایی میتواند هزینه کارمزد را کاهش دهد. Taproot همچنین امکان اجرای عملیات بزرگتر و پیچیدهتر را در بیتکوین که قبلا غیرممکن بود را فراهم میکند.
اگر فقط از بیتکوین برای نگهداری طولانی مدت سکهها یا جابهجایی آنها بین کیف پولها استفاده میکنید، ممکن است فکر کنید Taproot تاثیر کمی روی شما خواهد داشت؛ اما در واقع، امکاناتی که این سافتفورک (ارتقا) برای آینده بیتکوین ایجاد میکند، بسیار گسترده است. زیرا Taproot زمینه را برای پیشرفتهای برجسته و مهمتر در شبکه فراهم میکند.
برای مثال، Taproot در نهایت به شبکه لایتنینگ قدرت میدهد تا پتانسیل کامل خود را به عنوان یک فناوری مقیاسپذیری مناسب برای بیتکوین آزاد کند. در حال حاضر، پروتکل لایه دوم را میتوان در بلاکچین بیتکوین مشاهده کرد. تپروت قابلیت تعویضپذیری به سکهها میدهد. تعویضپذیری یک کالای پولی برای به فعلیت رساندن نقش واسطه مبادله، حیاتی است زیرا به سکهها اجازه میدهد تا با عنوان یکسان دیده شوند. اگر خروجی تراکنشها متفاوت دیده شود، ممکن است گیرنده مورد تبعیض قرارگیرد و کاربران را از استفاده از بیتکوین خود برای پرداخت در شرایط خاص باز دارد.
علاوه بر این با تپروت، شبکه لایتنینگ و سایر کیف پولها و قراردادهای پیچیده از کارایی بیشتر و کارمزد تراکنش پایینتری برخوردار خواهند بود و استفاده از بیتکوین را بهعنوان وسیله مبادله قدرتمندتر میکنند. با امضای Schnorr ، حتی پیچیدهترین تراکنشهایی که بین کیف پولهای پشتیبانی کننده Taproot انجام میشود، هزینههای مشابهی را متحمل میشوند.امضای Schnorr یک امضای دیجیتالی است که توسط الگوریتم امضای Schnorr تولید میشود. امضای Schnorr یک طرح امضای دیجیتالی است که به دلیل سادگی آن شناخته میشود، یکی از اولین طرحهایی که امنیت آن مبتنی بر حل نشدن مشکلات لگاریتمی گسسته است. امضای Schnorr علاوهبر کارآمدی، امضاهای کوتاهی ایجاد میکند.
این کاهش هزینهها، افزایش انعطافپذیری و قابلیتهای قراردادهای هوشمند در نهایت تنظیمات بسیار پیچیدهای را امکانپذیر میکند که قبلا در بیتکوین امکانپذیر نبودند.
اما برای درک اینکه چرا Taproot در بیتکوین پیادهسازی میشود، ابتدا باید نحوه عملکرد تراکنشهای بیتکوین و بهروزرسانیهای زیادی که تا این لحظه انجام شدهاند، که طبیعتا به Taproot منجر میشود را درک کنیم.
تراکنشهای بیتکوین بر اساس ورودیها و خروجیها کار میکنند، از آنجایی که سکهها از بین نمیروند، میزان ورودی و خروجی همواره برابراست. به عنوان مثال، اگر می خواهید ۵ بیتکوین ارسال کنید، باید دقیقا ۵ بیتکوین را انتخاب کنید، در غیر این صورت تراکنش ناقص یا اشتباه خواهد بود. شما نمیتوانید وجوهی را که ندارید ارسال کنید.
به طور مثال اگر موجودی کیفپول شما ۷/۳۸ بیتکوین باشد و شما در خواست ارسال ۵ بیتکوین را داده باشید ابتدا کل موجودی کیفپول از حساب شما خارج میشود و پس از ارسال ۵ بیتکوین مابقی پول یعنی ۲/۳۸ بیتکوین با کسر کارمزد انجام تراکنش به حساب کیفپول شما بازگردانده میشود.
وقتی در مورد تراکنش زدن صحبت میکنیم، در حقیقت درحال اشاره به یک خروجی هستیم. حالا گیرنده ۵ بیتکوین، تراکنش شما را دریافت کرده است. به عنوان مثال گیرنده میتواند ۳ بیتکوین برای X و ۲ بیتکوین برای Y بفرستد یا اینکه کل ۵ بیتکوین خود را برای Z ارسال کند یا میتواند آن را نگه دارد. شخص گیرنده ۵ بیتکوین به عنوان ورودی دریافت کرده است و هنگامی که قصد داشته باشد تراکنشی انجام دهد بهصورت خروجی آنرا ثبت میکند. توجه داشته باشید از آنجاییکه این شخص ۵ بیتکوین را به طور کامل دریافت کرده است، حتی اگر بخواهد فقط ۳ بیتکوین ارسال کند، باید تمام 5 بیتکوین را وارد تراکنش کرده و مابهالتفاوت توسط شبکه به حساب او بازگردد. به این مدل در نحوه انجام یک تراکنش UTXO یا خروجی خرج نشده تراکنش گفته میشود.
درمورد تراکنشهای بیتکوین درک نحوه تعامل سکهها به عنوان ورودی و خروجی ضروری است. کیفپولها با جمعبندی تمام خروجی تراکنشها درک و فهم امور را آسانتر میکنند و بعد از انجام تراکنش صرفا موجودی نهایی را نمایش میدهند.
پرداخت با بیتکوین نسبت به روزهای اولیه این شبکه، بسیار تغییر کرده است. به طور کلی، مدل UTXO که در بالا توضیح داده شد متکی به اسکریپتها یا قراردادهایی است که با استفاده از زبان برنامه نویسی اسکریپت بیتکوین ایجاد شدهاند. زبان برنامهنویسی بیتکوین را میتوان بیشتر یک زبان تایید تلقی کرد تا زبانی که دستورالعملهای محاسباتی را ارائه میکند. در اصل، اسکریپت نویسی بیتکوین راهی برای مشخص کردن شرایط برای صرف UTXO است.
هنگام در نظر گرفتن اسکریپت بیتکوین و نحوه بهبود آن، سه محدودیت عمده وجود دارد:
به عنوان مثال، تلاش برای افشای اطلاعات کمتر در مورد یک تراکنش و در نتیجه بهبود حریم خصوصی مستلزم ارسال مقدار کمتری از دادهها، کاهش نیاز به فضا برای تراکنش و آسانتر کردن تایید آن (محاسبات کمتر) است.
جامعه توسعه دهنده بیتکوین با معرفی تدریجی انواع اسکریپت یا آدرس جدید، نحوه عملکرد تراکنشهای بیتکوین را بهبود بخشیده است. این تغییرات در نهایت به دنبال افزایش حریم خصوصی، کم کردن سایز و سرعت بخشیدن به فرآیند اعتبارسنجی تراکنشها بوده است. در نتیجه، این تغییرات به انعطاف پذیری در نحوه پسانداز کاربران منجر میشود. در این روش وجوه به طور موثرتر و خصوصی تر جابهجا میشود که به آزادسازی حاکمیت مالی کمک میکند. این موارد اگرچه برای کاربر نهایی پیچیده است، اما ابزارهای فنی برای استفاده از این شیوهها بهصورت انتزاعی پدیدار شدهاند که پذیرش بیشتر شیوههای فعلی را به بهترین روش تضمین میکند.
یکی از مثالهای بارز این بهبودها آدرسهای چند امضایی است که زمانی باید بهصورت دستی با اسکریپت انجام میشد، اما اکنون میتوان بدون زحمت با تلفن هوشمند یا لپتاپ این تراکنشها را ایجاد کرد. همین امر در مورد لایتنینگ، راه حل لایه دوم مقیاسپذیری بیتکوین برای پرداخت های کوچک و مکرر نیز صادق است. لایتنینگ اکنون در اپلیکیشنهای موبایل در دسترس است و به افراد اجازه میدهد تا مقادیری از بیتکوین را که زمانی غیرقابل جابجایی بودند، فورا با یکدیگر مبادله کنند.
Taproot، آخرین ارتقا پروتکل بیتکوین و مسلما مهمترین آن تا به امروز، یک تحول طبیعی در نحوه کار تراکنشهای بیتکوین و در نتیجه اسکریپتها است. Taproot که توسط امضاهای Schnorr، MAST و Tapscript فعال شده است، به دنبال افزایش انعطاف پذیری و حفظ حریم خصوصی بدون به خطر انداختن امنیت است.
در روزهای اولیه بیتکوین، با آدرسهای قدیمی، فرستنده تراکنش باید خط مشی کیف پول گیرنده (قرارداد یا اسکریپت آن) را در نظر میگرفت، که نه تنها عملی نبود بلکه یک نقص مهم در حفظ حریم خصوصی بشمار میرفت. قرارداد باید زمانی فاش میشد که معامله فرستاده شده بود تا همه ببینند. از این رو، حریم خصوصی گیرنده پایین بود.
با ظهور هش پرداخت به اسکریپت (P2SH)، بیتکوین این روند را تغییر داد و تراکنشها به جای خود قرارداد به هش قرارداد ارسال شدند. این بدان معناست تا زمانی که خروجی تراکنش خرج نشود، قرارداد فاش نشده و خروجیها یکسان میشوند.
هش خروجی یک تابع هش است. تابع هش یک ورودی با طول متغیر میگیرد و یک نتیجه رمزگذاری شده با طول ثابت را برمیگرداند. افزودن این قابلیت به تراکنشهای بیتکوین نه تنها حریم خصوصی را با شبیهسازی همه خروجیها بهبود بخشید، بلکه اندازه خروجی را کاهش و در نتیجه کارایی را افزایش داد است.
با این حال، قرارداد باید هنگام هزینه کردن نمایان و همه شرایط هزینه باید آشکار میشد. دو جنبه منفی این رویکرد حریم خصوصی و کارایی است، زیرا هر ناظر خارجی میتواند این شرایط را ببیند. ارتقای Taproot این منطق را بهبود میبخشد، ساختاری که در نهایت به بیتکوین اجازه میدهد تا به هدف دست یابد که فقط شرایط مخارج خاص قرارداد را آشکار کند.
حتی اگر از عملکردهای پیچیده کیف پول مانند تراکنش چند امضایی یا لایتنینگ استفاده نمیکنید، این تغییرات با دشوارتر کردن نظارت روی شبکه و ناشناستر کردن تراکنشها میتواند باعث بهبود حریم خصوصی شما میشود.
بعد از ارتقا به تپروت همانطور که گرهها ارتقا مییابند و مردم شروع به استفاده از آدرسهای آن میکنند، تشخیص و تمایز قائل شدن بین فرستنده و گیرنده برای ناظران بلاکچین دشوارتر میشود. UTXOها به طور یکسان عمل خواهند کرد و بیتکوین به یک شبکه گستردهتر که انجام تراکنشهای پیچیده تر را قادر می سازد، تبدیل خواهد شد.
پروتکلهای لایه ۲ و زنجیرههای جانبی این قدرت را خواهند داشت تا قراردادهای هوشمند پیچیدهتری را برای هماهنگ کردن وجوه در لایه پایه افزایش دهند و از آنها استفاده کنند. ممکن است کاربر نهایی خودش این تراکنشها را نسازد، اما از پیشنهادات ویژه بیشتری در اکوسیستم گستردهتر بیتکوین با تضمینهای قویتر بهره خواهد برد. اگرچه برخی از برنامههای مالی غیرمتمرکز و موارد استفاده در حال حاضر روی بیتکوین پیادهسازی شدهاند، انعطافپذیری و قابلیتهای قرارداد هوشمند بیشتر بهوسیله ارتقا Taproot میتواند در نهایت امکان اجرای موارد استفاده بیشتر و اجرای عملکردهای پیچیدهتر را فراهم و در عین حال از تضمینهای امنیتی قوی استفاده کند.
از آنجایی که بیتکوین را میتوان مدلی از پول واقعی در نظر گرفت، برنامههای بلندمدت مالی غیرمتمرکز به طور طبیعی تنها روی آن ساخته میشوند. شبکههای جدیدی مانند اتریوم فاقد ویژگیهای پولی لایه پایه بیتکوین و امنیت و استحکام آن هستند. بیتکوین در طول عمر خود با ایجاد پایههای یک شبکه پولی توزیع شده، غیرقابل سانسور و مستقل، قرار است از عملکرد و رشد طولانی مدت واقعی بهصورت یک رویکرد لایهای بهره بَرد.
ارتقا Taproot که شامل Schnorr، MAST و Tapscript نیز میشود، با افزایش امنیت و حفظ حریم خصوصی لایه پایه و امکان ساخت برنامههای پیچیدهتر در بالای آن، بر این پایه بنا شده است. انعطافپذیری بیشتر عملکردهای قرارداد هوشمند بیتکوین، عصر جدیدی از امکانات غیرقابل تصور را بهوجود میآورد و درها را برای موارد استفاده گستردهتر برای پیادهسازی در بهترین شبکه پولی که بشر تا کنون شناخته است، باز میکند.
در دراز مدت، ارتقاهایی مانند Taproot و Lightning ممکن است به طور موثر آلتکوینها (رمزارزهایی به غیر از بیتکوین) را زائد و غیر ضروری کند. هر چند آلتکوینها نوآوری را تقویت و در نهایت موارد استفاده هیجان انگیز را به نمایش میگذارند، اما با یک نگاه عمیقتر میتوان آنها را بیشتر به عنوان زمین بازی آزمایشی در نظر گرفت. آزمایشاتی که اگر موارد استفاده واقعی از آنها کشف شود احتمالا به بیتکوین منتقل میشوند.