کد: 139910094838815694

وایت پیپر اتریوم - قسمت دوم

کد: 139910094838815694

https://bit.ly/35IE3yn

، اصفهان , (اخبار رسمی): در این مقاله به قسمت دوم وایت پیپر اتریوم می پردازیم

وایت پیپر اتریوم- قسمت دوم
وایت پیپر اتریوم - قسمت دوم

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

استخراج (Mining )

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

فرآیند اجماع غیرمتمرکز به نودهایی درشبکه نیاز دارد تا به صورت مداوم درصدد تولید بسته هایی از تراکنش ها باشند، که بلاک نامیده می شوند. شبکه باید در هر 10 دقیقه یک بلاک را حل کند. هر بلاک حاوی یک برچسب زمان، عدد نانس، هش بلاک قبلی و لیستی از تراکنش های همان بلاک است.

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

در شرایطی که بلاکی معتبر باشد الگوریتم وارسی طبق الگوی زیر تعریف می شود:

1. Check if the previous block referenced by the block exists and is valid
2. Check that the timestamp of the block is greater than that of the previous block [2] and less than 2 hours into the future.
3. Check that the proof of work on the block is valid.
4. Let S[0] be the state at the end of the previous block.
5. Suppose TX is the block’s transaction list with n transactions. For all i in 0…n-1, set S[i+1] =APPLY(S[i],TX[i]) If any application returns an error, exit and return false.
6. Return true, and register S[n] as the state at the end of this block

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

البته توجه داشته باشید، ترتیب تراکنش هایی که استخراج کننده به بلاک می فرستد بسیار مهم است. اگر دو تراکنش A  و B  در یک بلاک داشته باشیم به طوری که B یک UTXO (خروجی خرج نشده) ایجاد شده توسط A را خرج کند، اگر A  قبل از B باشد، بلاک معتبر خواهد بود در غیر این صورت نامعتبر است.

قسمت جالب الگوریتم اعتبار بلاک، مفهوم «گواه اثبات کار» است. شرایط باید به گونه ای باشد که هش SHA256 هر بلاک به عنوان یک عدد 256 بیتی، کمتر از سختی شبکه باشد. در زمان نوشتن این مقاله این عدد تقریبا 2 به توان 190 است.

هدف از این کار این است که ایجاد یک بلاک آن قدر سخت باشد که از حملات sybil جلوگیری شود.

SHA256

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

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

ضمنا این تنها مکانیزمی است که بیتکوین از طریق آن منتشر می شود. در اصل بلاک genesis  اصلاً هیچ کوینی ندارد.

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

درخت درهم سازی (مرکل)   Merkle Trees

ویژگی مهم مقیاس پذیری بیتکوین این است که بلاک در یک ساختار داده ای چند سطحی ذخیره می شود. هش یک بلاک درحقیقت هش هدر بلاک است. قسمتی از داده ی تقریباً 200 بیتی است که حاوی برچسب زمان، نانس، هش بلاک قبلی و روت هشی است که داده های همه تراکنش ها در آنجا موجود است.

Send 100 BTC to a merchant in exchange for some product (preferably a rapid-delivery digital go

Wait for the delivery of the product

Produce another transaction sending the same 100 BTC to himself

Try to convince the network that his transaction to himself was the one that came firs

 درخت دودویی

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

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

اگر یک کاربر مخرب بخواهد یک تراکنش را به پایین درخت مرکل بفرستد، این عمل منجر به تغییری در نود بالایی می شود وپله پله این تغییر به نودهای بالاتر هم اعمال می شود و در آخر ریشه درخت را عوض می کند پس هش بلاک هم عوض می شود و نهایتاً پروتکل، یک بلاک کاملاً متفاوتی ثبت خواهد کرد. (که حتماً الگوریتم اثبات کار آن نامعتبر خواهد شد)

نود کامل

وجود پروتکل درخت مرکل برای دستیابی به تداوم طولانی مدت ضروری است. در شبکه بیتکوین یک «نود کامل»، نودی که پردازش و ذخیره همه بلاک ها را به عهده دارد، از آوریل 2014 تقریبا  15 گیگا بایت از فضای کل شبکه را اشغال کرده است که این حجم ماهانه بیشتر از 1 گیگا بایت افزایش می یابد.

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

simplified payment verification

پروتکل معروف به «تأییدیه پرداخت ساده» (simplified payment verification (SPV شرایط را برای وجود دسته دیگری از نودها به  اسم نودهای «لایت» (light nodes)،  فراهم می کند. این نودها هدرهای بلاک را دانلود و الگوریتم اثبات کار را روی آنها چک می کند و در آخر تنها «شاخه های» مربوط به تراکنش های مرتبط را دانلود می کنند.

این فرآیند به نودهای لایت اجازه می دهد تنها با دانلود بخش کمی از کل بلاکچین وضعیت هر تراکنش بیتکوین و مانده حساب ها را تعیین کنند.

### پایان خبر رسمی

اخبار رسمی هویت منتشر کننده را تایید می‌کند ولی مسئولیت صحت مطلب منتشر شده بر عهده ناشر است.

پروفایل ناشر گزارش تخلف
درباره منتشر کننده:

فکت کوینز

''فکت کوینز'' حاصل تلاش یک تیم متخصص وعلاقمند درزمینه بلاک چین وارزهای دیجیتال است که سعی می کند مقالات آموزش های مرتبط را با کیفیت بالا به علم اندوزان ارائه نماید وب سایت www.factcoins.com