تراکنش در بلاکچین چیست و چگونه صورت میگیرد؟
پس از این که کلمه بلاکچین را میشنوید، اولین چیزی که به نظر شما میرسد چیست؟ بدون شک بسیاری از افراد در پاسخ خود به ارزهای دیجیتال یا رمزارزها اشاره میکنند. پول مجازی یا ارز دیجیتال در سالهای اخیر در سطح دنیا رواج زیادی پیدا کرده است و در طول این سالها شاهد این موضوع هستیم که برخی ارزهای دیجیتال مانند بیت کوین، توانسته است که بازار این ارزها را به شدت تحت تأثیر قرار داده و نقش تعیین کنندهای ایفا کند. فناوری پایه در ارزهای دیجیتال، Blockchain است و کاربران از طریق تراکنش در بلاکچین در این بازار فعالیت میکنند. هر چند از فناوری Blockchain در حوزههای دیگر نیز استفاده میشود اما در این مقاله قصد داریم به مفهوم بلاکچین و چگونگی انجام شدن تراکنش در بلاکچین بپردازیم.
برای درک بهتر این مطلب، پیشنهاد میکنیم مقاله بلاک چین چیست؟ را مطالعه کنید.
فناوری بلاکچین چیست؟
بلاکچین در واقع یک پایگاه داده توزیع شده به حساب میآید که میتواند دادهها را به صورت دیجیتالی ذخیره کند. بر خلاف پایگاههای داده قدیمی که در آن دادهها به شکل جدول ذخیره میشدند، در Blockchain کلیه دادهها در بلوکهایی ذخیره میشوند که این بلوکها در یک زنجیره به هم متصل شده و ساختار بلاکچین را شکل میدهند.
در Blockchain، هر بلوک ظرفیت ذخیرهسازی ثابتی دارد و زمانی که این ظرفیت تکمیل شود، به بلوک قبلی در زنجیره متصل میشود. در این شرایط اطلاعات جدید که پس از آخرین بلوک اضافه شده میآیند، در یک بلوک جدید گردآوری میشوند و پس از رسیدن به حداکثر ظرفیت ذخیرهسازی، به زنجیره اضافه میشوند. شبکه بلاکچین بین نودهای شبکه کامپیوتری به اشتراک گذاشته میشود و به این ترتیب هر نود دارای یک کپی از Blockchain یا تراکنشهای انجام شده در آن است.
منظور از تراکنش در بلاکچین چیست؟
معامله در واقع یک قرارداد، توافق، انتقال یا مبادله دارایی بین دو یا چند طرف است. این دارایی میتواند پول نقد، ارز دیجیتال یا هر چیز دیگری باشد. بنابراین تراکنش در بلاکچین، انتقال داده و اطلاعات در سراسر شبکه کامپیوترها در شبکه بلاکچین است. شبکههای کامپیوتری موجود در شبکه، دادههای مربوط به تراکنشها را به عنوان کپی با فضای ذخیرهسازی که معمولا به عنوان دفتر دیجیتال شناخته میشود، ذخیره میکنند.
این فرایند برای تشکیل یک دفتر دیجیتال مشترک و در عین حال ایمن، از شبکههای همتا به همتا (P2P) استفاده میکند. این دفتر دیجیتال، یک دفتر غیر متمرکز از تراکنشها بدون دخالت شخص ثالث است که فقط کاربران در شبکه میتوانند تراکنشهای موجود در آن را تأیید کنند. در حالی که شبکه بلاکچین میتواند انواع مختلفی از اطلاعات را ثبت و ذخیره کند، معمولا به شکل گستردهای به عنوان یک دفتر دیجیتال برای تراکنشها مورد استفاده قرار میگیرد.
مثال تراکنش در بلاکچین
در زمینه ارزهای دیجیتال، تصور کنید که شخص A میخواهد تعداد ده BTC (بیت کوین) را به شخص B منتقل کند. تراکنش در Blockchain معمولا شامل اطلاعات زیر میشود که در هر بلاک در بلاک چین ذخیره میشوند:
- اطلاعات مربوط به تراکنش: مانند تاریخ، زمان، مقدار پول پرداختی، مکان و غیره.
- دادهها و اطلاعات مربوط به شرکت کنندگان در تراکنش بلاکچین یا نام کاربری.
- دادههای خاصی از بلاک یا هش، یک کد منحصر به فرد که یک بلوک را از بلوک دیگر متمایز میکند.
شبکه دارای سه عنصر اصلی و کلیدی است. این عناصر شامل کلیدهای رمزنگاری، شبکه P2P و شبکه کامپیوتری (نودها) برای ذخیره و ثبت تراکنشها است. کلید رمزنگاری، یک مرجع تشخیص هویت دیجیتال منحصر به فرد و امن است که برای مدیریت و مجوز تراکنشها مورد استفاده قرار میگیرد. پس از ادغام با شبکه P2P امضای دیجیتال توسط کاربران در شبکه برای رسیدن به اجماع در مورد تراکنشها استفاده میشود.
زمانی که یک معامله یا تراکنش در Blockchain مجاز شد یک مجوز تأیید ریاضی آن را تأیید کرده و باعث میشود که یک تراکنش بین دو طرف متصل در شبکه به شکل موفقیت آمیز انجام شود. علاوه بر تراکنشهای مالی، بلاکچینها قابلیت نگهداری از قراردادهای قانونی، موجودیهای محصول، جزئیات معاملاتی سایر داراییها مانند وسایل نقلیه، اموال و غیره را نیز دارند.
مراحل تراکنش در بلاکچین
قبل از این که تراکنش در بلاکچین به بخشی از شبکه تبدیل شود باید چند مرحله را پشت سر بگذارد. یکی از جنبههای مهم در این فناوری نحوه ارائه مجوز و تأیید تراکنشها است. فرایند تراکنشها در Blockchain شامل مراحلی است که در زیر به آن اشاره میکنیم:
۱. ایجاد یک تراکنش جدید
۲. انتقال یک تراکنش به شبکه جهانی از کامپیوترهای همتا به همتا
۳. شبکهای همتا از کامپیوترها برای تأیید اعتبار تراکنشها
۴. دستهبندی شدن تراکنشهای قانونی تأیید شده در بلوکها
۵. اتصال بلوکها به یکدیگر به منظور ایجاد تاریخچهای طولانی از تمام تراکنشها
۶. تکمیل تراکنش
مبانی یک تراکنش در بلاکچین
در مبحث بررسی تراکنشها در بلاکچین یکی از مهمترین اصول و ویژگیها، امنیت تراکنش است. جنبههای مختلفی در این فناوری و شبکه وجود دارد که میتواند به امنیت بیشتر هر تراکنش در بلاکچین کمک کند. در ادامه با هر یک از این جنبههای مهم و اصلی آشنا میشویم.
رمزگذاری هش
هش ریت و رمزگذاری هش که عمدتا شامل الگوریتم SHA256 میشود، در شبکه به منظور اطمینان از امنیت دادهها و اطلاعات مورد استفاده قرار میگیرد. این الگوریتم جزئیات و اطلاعات مربوط به هر تراکنش را به عنوان اطلاعات رمزگذاری شده (رمزگذاری هش) منتقل میکند که به پست تأیید بلاکچین اضافه میشود. به لطف استفاده از این الگوریتم، هک رمزگذاری هش عملا غیر ممکن میشود و امنیت آن به بهترین شکل تأمین میشود.
احراز هویت و مجوز
تراکنش در بلاکچین با استفاده از کلیدهای رمزنگاری احراز هویت میشوند. این کلیدها اساسا رشتهای از دادهها و اطلاعات هستند که کاربر Blockchain را شناسایی کرده و به حساب آنها در سیستم دسترسی دارند. کلیدهای خصوصی و کلیدهای عمومی دو کلید رمزنگاری اصلی در بلاکچین هستند که انجام تراکنش موفق و ایمن بین دو طرف را تضمین میکنند. با استفاده از این دو کلید، یک کاربر در Blockchain میتواند یک هویت دیجیتال امن به منظور کنترل و مجور تراکنشها ایجاد کند.
ماینینگ (استخراج)
در این فناوری، ماینینگ یا استخراج به فرایندی گفته میشود که در آن تراکنشها به دفتر دیجیتال توزیع شده تراکنشهای موجود (یا بلاکچین) اضافه میشود. اگر چه نام ماینینگ با بیت کوین گره خورده است اما در سایر ارزهای دیجیتال که از Blockchain استفاده میکنند نیز کاربرد دارد. در ماینینگ یک هش از یک بلوک تراکنش ایجاد میشود و میتواند بدون نیاز به یک سیستم یا سازمان مرکزی مانند بانک یا نهادهای نظارتی، از یکپارچگی کل بلاکچین محافظت کند.
اثبات کار (Proof of Work)
تصمیمگیری در خصوص افزودن یا ایجاد یک تراکنش در بلاکچین عمومی از طریق اجماع انجام میشود که در این فرایند باید اکثر کاربران (نودها) در شبکه، اعتبار یک تراکنش را تأیید کرده و با انجام آن موافقت کنند. برای این کار، نودها یا کامپیوترهای متصل به شبکه باید یک معما و معادله پیچیده ریاضی را که به عنوان مسئله اثبات کار شناخته میشود، حل کنند تا به این ترتیب یک بلوک به زنجیره در بلاکچین اضافه شود. به فرایند حل مسئله ریاضی، اثبات کار گفته میشود و افراد و نودهایی که این کار را انجام میدهند به عنوان ماینر شناخته میشوند که در قبال تأیید تراکنشها در شبکه پاداش دریافت میکنند.
اثبات سهام (Proof of Stack)
اثبات سهام یک پروتکل اجماع برای اعتبار سنجی و ایجاد بلوک جدید در بلاکچین است. این فرایند زمانی انجام میشود که کاربران در Blockchain سهم داشته باشند. در واقع صاحبان ارزهای دیجیتال، دارایی و سهام خود را به عنوان وثیقه ارائه میکنند تا فرصتی برای تأیید تراکنشها در شبکه داشته باشند. مکانسیم اثبات سهام قدرت محاسباتی بالایی دارد و منابع قابل توجهی را ذخیره میکند.
فرایند تراکنش در بلاکچین چگونه است؟
انجام یک تراکنش در بلاکچین با توجه به مبانی که به آن اشاره شده به شرح زیر انجام میشود:
ساخت آدرس
اولین کار برای ارتباط با شبکه بلاکچین ساخت آدرس است. آدرس هر کاربر از دو قسمت آدرس عمومی و آدرس خصوصی تشکیل میشود. آدرس خصوص به آدرسی گفته میشود که حتما باید در اختیار خود کاربر باشد و به نوعی امضای آنها محسوب میشود. در صورتی که یک نفر بتواند به آدرس خصوصی یک کاربر دسترسی داشته باشد، میتواند به راحتی هر کاری با حساب کاربرد بکند که شامل به سرقت بردن داراییهای دیجیتال نیز میشود.
رمزنگاری
درخواست یک کاربر برای تراکنش در بلاکچین به همراه امضای آن (آدرس یا کلید خصوصی) در شبکه ثبت و ارسال میشود و صحت این درخواست، خواه درخواست انتقال ارز دیجیتال باشد یا فرستادن یک متن ساده، از طریق آدرس یا کلید عمومی تأیید میشود. تمام کارها و درخواستها در Blockchain رمزگذاری شده و تبدیل به عبارتی از یک سری حروف و اعداد بیمعنی میشوند که تنها توسط شبکه قابل تشخیص است.
تأیید درخواست، رمزگشایی و پاداش
با توجه به این که هر درخواستی در شبکه بلاکچین رمزنگاری میشود، رمزگشایی این درخواستها کار آسانی نیست و به محاسبات پیچیده نیاز دارد. این محاسبات توسط ماینرها انجام میشود که آنها در قبال انجام این محاسبات و رمزگشایی که انجام میدهند، پاداش دریافت میکنند. البته این سیستم پاداشدهی به نوع کارکرد بلاکچین بستگی دارد که به صورت اثبات کار (POW) یا به صورت اثبات سهام (POS) انجام میشود.
جلوگیری از هش تکراری
در صورتی که دادههای یک تراکنش در بلاکچین یکسان باشد برای جلوگیری از ایجاد هش تکراری از نانس استفاده میشود. نانس یک مقدار تصادفی است که به دادههای تراکنش اضافه میشود. پس از اضافه شدن نانس، یک هش جدید ایجاد میشود که از ایجاد هش یکسان جلوگیری میکند.
تشکیل زنجیره بلوک
در شبکه هر بلوک به بلوک قبلی خود وابسته است. در صورتی که کسی بخواهد تغییری در بلوکها ایجاد کند باعث بهم خوردگی پیوستگی بین بلوکها میشود که اعضای شبکه متوجه آن شده و در صورتی که بیش از ۵۱ درصد نودها آن را تأیید نکنند، تغییرات اعمال نخواهد شد.
کارآمدی، دقت و امنیت از ویژگیهای تراکنش در بلاکچین
فناوری نوین و انقلابی بلاکچین با کاربردهای عملی که در بخشهای مختلف دارد، خبرساز شده است. یکی از رایجترین و شناخته شدهترین حوزههای استفاده از بلاک چین، بازار ارزهای دیجیتال است. استفاده از بلاکچین به منظور انجام تراکنشهای مالی مقرون به صرفه و سریع است و به سرمایهگذاران و صاحبان دارایی این اجازه را میدهد که بدون دخالت شخص یا نهاد ثالت بتوانند کنترل بیشتری بر داراییهای خود داشته باشند. از مهمترین ویژگیهای یک سیستم بلاکچینی میتوان به کارآمدی، دقت و امنیت اشاره کرد.
گام قبلی (۱۵/۲۷) گام بعدی