تصور کنید علی میخواهد برای مریم مقدار ۰٫۰۲ بیتکوین ارسال کند.
او اپلیکیشن کیفپولش را باز میکند، آدرس مریم را وارد میکند، عدد را مینویسد و روی «ارسال» کلیک میکند.
برای علی همهچیز در همینجا تمام میشود؛ اما واقعیت پشتصحنه بسیار پیچیدهتر و جذابتر است.
در حقیقت، وقتی علی دکمه ارسال را میزند:
یک تراکنش رمزنگاریشده ساخته میشود که شامل ورودیها، خروجیها و امضای دیجیتال اوست.
این پیام تراکنش به شبکهای جهانی از گرهها (Nodes) پخش میشود.
گرهها امضا را بررسی میکنند و تراکنش را در صفی به نام Mempool قرار میدهند.
ماینر یا ولیدیتور، از میان هزاران تراکنش در Mempool، این تراکنش را انتخاب کرده و در بلاکی جدید میگذارد.
این بلاک با الگوریتم اجماع (مثل PoW یا PoS) به زنجیره اضافه میشود و در نهایت مریم بیتکوین را دریافت میکند.
📌 مثال عملی
علی قبلاً از یک تراکنش دیگر ۰٫۰۲۵ BTC در اختیار دارد (UTXO).
وقتی او ۰٫۰۲ BTC برای مریم میفرستد:
۰٫۰۲۰ BTC ← برای مریم
۰٫۰۰۴ BTC ← کارمزد شبکه (ماینرها)
۰٫۰۰۱ BTC ← «Change» یا باقیمانده به کیف پول علی بازمیگردد
به این ترتیب تراکنش بالانس میماند و همه ورودیها مصرف میشوند.
۲) ساختار یک تراکنش (Transaction Anatomy)
هر تراکنش در بلاکچین مثل یک سند مالی رمزنگاریشده است. این سند نشان میدهد که چه کسی مقدار مشخصی رمزارز را از کجا گرفته و به کجا میفرستد.
تراکنش بیتکوین (و اغلب بلاکچینها) شامل اجزای زیر است:
ورودیها (Inputs): اشاره به خروجیهای خرجنشده قبلی (UTXOها) که قرار است مصرف شوند.
خروجیها (Outputs): آدرسهای مقصد و مقدار رمزارزی که برای هرکدام ارسال میشود.
امضای دیجیتال: با کلید خصوصی فرستنده تولید میشود و با کلید عمومی او قابل اعتبارسنجی است.
کارمزد (Fee): اختلاف بین مجموع ورودیها و مجموع خروجیها که به ماینرها/ولیدیتورها تعلق میگیرد.
علی میخواهد ۰٫۰۲ BTC برای مریم بفرستد. ورودی او ۰٫۰۲۵ BTC است. بنابراین:
۰٫۰۲۰ BTC ← برای مریم
۰٫۰۰۴ BTC ← کارمزد ماینر
۰٫۰۰۱ BTC ← بازگشت به آدرس علی (Change)
این مثال نشان میدهد که خروجیها میتوانند چندتایی باشند و همیشه مجموعشان بهعلاوه کارمزد با ورودی برابر است.
۳) از تراکنش تا بلاک (Mempool و Mining/Validation)
پس از ارسال تراکنش، اولین ایستگاه آن Mempool است؛ صفی توزیعشده از تراکنشهای معتبر که هنوز وارد بلاک نشدهاند.
گرهها (Nodes) امضاها و قوانین اجماع را بررسی میکنند و در صورت صحت، تراکنش را در ممپول خود نگه میدارند تا ماینر/ولیدیتور آن را بردارد.
Mempool دقیقاً چه میکند؟
اعتبارسنجی اولیه: امضا، موجودی، فرمت، و تضاد نداشتن با تراکنشهای دیگر.
اولویتبندی بر اساس کارمزد: در بیتکوین معمولاً با معیار sat/vB (ساتوشی بر بایت)؛ هرچه بالاتر، شانس انتخاب بیشتر.
پخش همتابههمتا: تراکنش معتبر میان گرهها منتشر میشود تا به دید همه برسد.
چگونه تراکنشها وارد بلاک میشوند؟
انتخاب تراکنشها: ماینر/ولیدیتور تراکنشهای با کارمزد بهینه را برمیدارد تا اندازه بلاک و درآمد کارمزد را بهینه کند.
ماینر با تغییر nonce و گاهی ترتیب تراکنشها یا extranonce در کوینبیس، سعی میکند هش هدر بلاک از هدف دشواری کمتر شود.
اگر موفق شود، بلاک «یافت» شده و به شبکه پخش میشود؛ گرهها آن را تأیید و به زنجیره اضافه میکنند.
پاداش: subsidy (پاداش ثابتِ هر دوره) + مجموع کارمزد تراکنشها.
🗳️ Proof of Stake (PoS) — ولیدیشن
ولیدیتورها با قفلکردن مقدار مشخصی توکن، حقِ پیشنهاد بلاک را بر اساس وزن سهام/تصادف شبهتصادفی بهدست میآورند.
بلاک پیشنهادی توسط دیگر ولیدیتورها attest میشود؛ در صورت رسیدن به آستانه اجماع، بلاک نهاییسازی (finalize) میشود.
پاداش: تورمی/کارمزدی؛ رفتار بد جریمهی slashing دارد.
تأییدها (Confirmations) و فورکهای موقت
Confirmation: هر بلاک جدید روی بلاک شما = یک تأیید. صرافیها معمولاً برای بیتکوین ۳ تا ۶ تأیید میخواهند.
فورک موقت (Temporary Fork): ممکن است دو بلاک همزمان منتشر شوند؛ زنجیره عمیقتر (طولانیتر/سنگینتر) برنده میشود.
Orphan/Uncle: بلاکهای کنارگذاشتهشده؛ در اتریوم قدیم، uncleها پاداش جزئی داشتند.
🧪 تمرین کوتاه در اکسپلورر
در یک بلاکاکسپلورر (BTC/ETH) آخرین بلاک را باز کنید.
prev_block_hash، merkle_root، تعداد تراکنشها، و زمان بلاک را پیدا کنید.
یکی از تراکنشها را باز و کارمزد مؤثر آن را محاسبه کنید (برای BTC: fee = sum(inputs) - sum(outputs) و نرخ sat/vB را بررسی کنید).
ببینید چند تأیید دارد و اگر بلاک بعدی اضافه شود، این عدد چگونه تغییر میکند.
۴) اجماع (Consensus)؛ چرا PoW و PoS؟
در شبکههای همتابههمتا، هیچ «رئیس» واحدی وجود ندارد تا بگوید کدام بلاک معتبر است.
الگوریتم اجماع همان سازوکاری است که به گرهها اجازه میدهد
درباره ترتیب و اعتبار تراکنشها به توافق برسند و جلوی
دوبار خرجکردن (Double Spending) را بگیرند؛ آن هم در برابر
حملات سیبیل، تأخیر شبکه، و انگیزههای اقتصادی مهاجمان.
مسائل کلیدی که اجماع حل میکند
ترتیبدهی تراکنشها: کدام تراکنشها اول قطعی شوند؟
نهاییسازی (Finality): چه زمانی «تقریباً قطعی» یا «قطعی اقتصادی» میشویم؟
مقاومت در برابر حمله: ۵۱٪، سیبیل، سانسور، و بازسازماندهی زنجیره (Reorg).
انگیزهها: چگونه با پاداش/جریمه رفتار درست را تشویق کنیم؟
Proof of Work (PoW) — «کار محاسباتی»
در PoW، ماینرها با انجام محاسبات سنگین سعی میکنند هش هدر بلاک را
به مقداری کمتر از «هدف دشواری» برسانند. هر که زودتر به جواب برسد، بلاکش را
منتشر میکند و شبکه در صورت اعتبار، آن را میپذیرد.
این فرآیند پایه اجماع ناکاموتویی در بیتکوین است.
امنیت: حملهکننده باید قدرت محاسباتی عظیمی بخرد/اجاره کند تا زنجیره طولانیتری بسازد (هزینه بیرونی واقعی).
نهاییسازی احتمالاتی: با هر بلاک بعدی، احتمال برگشت کمتر میشود (مثلاً ۶ تأیید ~ بسیار امن).
هزینه و انرژی: مصرف انرژی بالاست اما یک سپر اقتصادی در برابر حمله ایجاد میکند.
ریسکها: ۵۱٪، سانسور توسط استخرهای بزرگ، و حملات موقتی با اجاره هشریت.
📌 مثال پویا
اگر مهاجم 40٪ هشریت دارد، احتمال سبقت گرفتن دائمی از زنجیره صادق بسیار پایین است،
اما اگر به 51٪ برسد، میتواند در بازهای محدود تراکنشها را بازنویسی کند (دو بار خرجکردن).
ماینر با تغییر nonce/extranonce و چینش تراکنشها، فضایی برای جستوجوی هش مناسب ایجاد میکند.
Proof of Stake (PoS) — «سهم اقتصادی قفلشده»
در PoS، ولیدیتورها توکنهای خود را قفل میکنند (Stake) و
به نسبت سهم و یک منبع تصادفی (RANDAO/VRF) برای پیشنهاد بلاک انتخاب میشوند.
بلاکهای پیشنهادی با رأی/گواهی (Attestation) سایر ولیدیتورها تأیید میشود و پس از رسیدن به آستانه، نهایی میگردد.
امنیت: مهاجم باید اکثریت سهام را بخرد (هزینه درونسیستمی). رفتار بد با Slashing جریمه میشود.
نهاییسازی سریعتر: در طراحیهای مدرن (مانند BFT-Style Finality) قطعی اقتصادی سریعتری حاصل میشود.
بهرهوری انرژی: بسیار کممصرفتر از PoW.
ریسکها: تمرکز سهام در صرافیها/استخرها، سانسور، پیچیدگی اجرای پروتکل، و سناریوهای Long-Range Attack بدون چکپوینت.
📌 مثال تصمیمگیری
شبکهای با میلیونها کاربر و نیاز به قطعی سریع پرداختهای خرد، ممکن است PoS با
finality قطعی را ترجیح دهد. شبکهای با تأکید بر سادگی مدل امنیتی و مقاومت در برابر دولت-ملتها،
ممکن است PoW با هزینه بیرونی بالا را ترجیح بدهد.
مقایسه سریع PoW و PoS
معیار
PoW
PoS
منبع امنیت
هزینه بیرونی (برق/سختافزار)
هزینه درونسیستمی (سهام قفلشده)
نهاییسازی
احتمالاتی (تأییدهای بیشتر → اطمینان بیشتر)
غالباً قطعی/اقتصادی سریعتر (BFT-style)
مصرف انرژی
بالا
بسیار کم
ریسک غالب
۵۱٪ هشریت، سانسور استخرها
تمرکز سهام، سانسور، حملات طولانیبرد
پیچیدگی پروتکل
سادهتر
پیچیدهتر (اسلشینگ، رأیگیری، تصادفیسازی)
پیوند به مباحث حقوقی/تنظیمگری
مسئولیتپذیری گرهها/استخرها: در سانسور یا همدستی با حمله چه مسئولیتهایی متصور است؟
استانداردهای افشا: برای پلتفرمهای مالی غیرمتمرکز، شفافسازی درباره نهاییسازی و ریسک بازسازماندهی.
حاکمیت: تمرکز سهام یا هشریت میتواند پیامدهای ضدانحصار/تنظیمی داشته باشد.
🧪 تمرین کوتاه
در یک زنجیره PoW (مثل بیتکوین)، برای یک تراکنش بزرگ، حداقل چند تأیید را «سیاست داخلی» خود قرار میدهید؟ چرا؟
در یک زنجیره PoS، شرایطی را توضیح دهید که slashing رخ میدهد و پیامد اقتصادی آن چیست.
فرض کنید یک متولی پرداخت (PSP) روی PoS تسویه میکند: چه بندهای قراردادی درباره نهاییسازی و ریسک Reorg پیشنهاد میدهید؟
۵) مدلهای حسابداری: UTXO vs Account‑based
بلاکچینها برای نگهداری «وضعیت» دارایی از دو الگوی اصلی استفاده میکنند:
UTXO (خروجیهای خرجنشدهٔ تراکنشها؛ مانند بیتکوین) و
Account‑based (حسابمحور؛ مانند اتریوم).
درک تفاوتشان برای تحلیل تراکنش، حریم خصوصی، قراردادها و حتی دعاوی حقوقی ضروری است.
🔹 UTXO (مانند بیتکوین)
هر تراکنش ورودیهایی را میسوزاند (مصرف میکند) و خروجیهای جدید میسازد.
هر خروجی تا زمانی که خرج نشده باشد، یک UTXO مستقل است.
مفهوم «باقیمانده» (Change) معمولاً به آدرس فرستنده برمیگردد.
حریم خصوصی نسبی بیشتر: میتوان با آدرسهای متعدد کار کرد (هرچند تحلیل خوشهای ممکن است هویت را حدس بزند).
موازیسازی آسانتر: ورودی/خروجیها مستقلاند و قابل اجرای موازی هستند.
📌 مثال UTXO
# Alice wants to pay Mary 0.020 BTC
# Alice has one UTXO worth 0.025 BTC
inputs:
- utxo(txid=...a1, vout=0, value=0.025)
outputs:
- to Mary: 0.020
- to Alice (change): 0.0048
fee:
- ~0.0002 (example)
مجموع ورودیها = مجموع خروجیها + کارمزد
🔹 Account‑based (مانند اتریوم)
هر آدرس یک موجودی دارد؛ تراکنشها موجودیها را کموزیاد میکنند.
گس (Gas) برای اجرای محاسبات/ذخیرهسازی پرداخت میشود؛ کارمزد از موجودی فرستنده کسر میشود.
قراردادهای هوشمند: حسابهای «قرارداد» با کد اجرایی و storage خاص خود.
سادگی در مدل ذهنی پرداختها، اما حریم خصوصی کمتر (یک حساب ثابت اغلب استفاده میشود).
تعاملات پیچیده (DeFi/NFT/DAO) با یک تراکنش ترکیبی امکانپذیر است.
📌 مثال Account‑based
# Before:
# Alice.balance = 2.5 ETH
# Mary.balance = 0.1 ETH
tx:
from: Alice
to: Mary
value: 0.2 ETH
gas: 21,000
gasPrice: 30 gwei
# After (assuming usedGas=21k):
# Alice.balance = 2.5 - 0.2 - (21000 * 30 gwei)
# Mary.balance = 0.1 + 0.2
کارمزد (= gasUsed × gasPrice) از موجودی علی کم میشود، نه از مبلغ واریزی به مریم.
مقایسه خلاصه
معیار
UTXO (BTC)
Account‑based (ETH)
مفهوم پایه
خروجیهای خرجنشدهٔ تراکنشها
موجودی حسابها
حریم خصوصی
بالاتر (آدرسهای متعدد)
پایینتر (حساب ثابت)
قابلیت برنامهپذیری
محدود (Script ساده)
بالا (EVM/Contracts)
موازیسازی تراکنش
آسانتر (استقلال UTXO)
چالشبرانگیزتر (بهخاطر اشتراک حالت)
مدل کارمزد
Fee = ΣInputs − ΣOutputs
GasUsed × GasPrice (یا BaseFee+Tip)
🧪 تمرین روی اکسپلورر
در یک اکسپلورر بیتکوین، یک تراکنش را باز کنید و UTXOهای ورودی/خروجی را لیست کنید. کارمزد را محاسبه کنید.
در یک اکسپلورر اتریوم، تراکنشی را باز کنید و gasUsed، effectiveGasPrice و تغییر موجودیها را بررسی کنید.
برای یک پرونده فرضی رگولاتوری، توضیح دهید کدام مدل برای «ردیابی منشأ وجوه» سادهتر است و چرا.
۶) کاربردهای حقوقی–فنی واژهها
درک درست واژههای فنی بلاکچین برای وکلا و تنظیمگران حیاتی است.
بسیاری از دعاوی یا مقررات درک مفاهیمی مثل تراکنش یا کارمزد را پیشفرض میگیرند.
اینجا یک واژهنامهٔ فنی–حقوقی جمعآوری میکنیم که هم به کار متخصص فناوری بیاید و هم به کار وکیل یا DPO.
🔹 Transaction (تراکنش)
سند دیجیتالی که نشان میدهد چه کسی، چه مقدار رمزارز را به کجا منتقل میکند.
فنی: شامل Inputs، Outputs، امضا و کارمزد.
حقوقی: میتواند نقش «دلیل الکترونیکی» را در دعاوی ایفا کند؛ بحث درباره اعتبار امضا و مالکیت مهم است.
🔹 Block (بلاک)
دستهای از تراکنشها که همراه با متادیتا (هدر، مرکل روت، هش قبلی) در زنجیره ذخیره میشوند.
فنی: ساختار دادهای برای تضمین پیوستگی و امنیت.
حقوقی: معادل «دفتر ثبت» دیجیتال؛ تغییرناپذیری آن در استدلالهای قضایی مورد استفاده است.
🔹 Consensus (اجماع)
مکانیسم توافق بین گرهها درباره ترتیب و اعتبار بلاکها.
فنی: شامل PoW، PoS و الگوریتمهای BFT.
حقوقی: نقش در «اطمینان معقول» از نهاییشدن تراکنشها؛ اثر مستقیم در قراردادهای هوشمند و تسویه مالی.
🔹 Fee (کارمزد)
مبلغی که فرستنده میپردازد تا تراکنش در بلاک درج شود.
فنی: در BTC = مجموع ورودیها − مجموع خروجیها. در ETH = GasUsed × GasPrice.
حقوقی: بحث درباره شفافیت کارمزدها در قراردادهای صرافی یا کیفپول و حتی دعاوی مصرفکننده.
🔹 Mempool (ممپول)
صف تراکنشهای معتبر در انتظار ورود به بلاک.
فنی: تراکنشها بهصورت موقت نگهداری میشوند تا ماینرها انتخاب کنند.
حقوقی: در تحلیل تأخیر یا سانسور تراکنشها میتواند اهمیت پیدا کند (مثلاً دعوای «عدم پردازش به موقع»).
🧪 تمرین حقوقی–فنی
یک تراکنش بیتکوین در اکسپلورر پیدا کنید و آن را به زبان ساده حقوقی بازنویسی کنید (چه کسی → چه مقدار → برای چه کسی).
در قرارداد خدمات کیفپول، چگونه باید کارمزد تراکنش توضیح داده شود تا دعوای مصرفکننده شکل نگیرد؟
بهعنوان وکیل، تفاوت «نهاییسازی تراکنش» در PoW و PoS را برای یک قاضی یا رگولاتور سادهسازی کنید.
A) پوستر «آناتومی تراکنش» (نسخه تمرینی و چاپی A4/A3)
تم پیشنهادی: آبی تیره (#0B1020) برای پسزمینهی نمودار + تیترهای فیروزهای
هدف پوستر: نمایش مسیر یک تراکنش از لحظه ساخت تا قرارگیری در بلاک و دریافت تأییدها، با اجزای کلیدی: Inputs/Outputs، امضا، Fee، Mempool، Block Header، Confirmations.
این جدول را پس از کار عملی روی اکسپلورر تکمیل کنید. ستون «کاربرد حقوقی» بهطور مستقیم برای گزارش تخصصی/نظر کارشناسی استفاده میشود.
واژه
تعریف فنی کوتاه
کاربرد حقوقی/تنظیمگری
منبع/یادداشت
Transaction
پیام امضاشده شامل Inputs/Outputs/امضا/کارمزد
دلیل الکترونیکی؛ بررسی اصالت امضا و مالکیت
اکسپلورر/TxID
UTXO
خروجی خرجنشدهٔ تراکنشهای قبلی
ردیابی منشأ وجوه/تحلیل AML
BTC
Account-based
مدل مبتنی بر موجودی حساب و گس
تطبیق کارمزد/نهاییسازی در قراردادها
ETH
Mempool
صف تراکنشهای معتبرِ در انتظار بلاک
تحلیل تأخیر/سانسور احتمالی
Node/Policy
Fee
BTC: ΣIn−ΣOut | ETH: GasUsed×Price
شفافیت هزینهها/حقوق مصرفکننده
Tx receipt
Consensus
PoW/PoS برای توافق بر ترتیب/اعتبار
نهاییسازی/ریسک Reorg در قراردادها
Policy/Docs
🔎 معیار ارزیابی (۱۰ امتیاز):
درستی فنی (۳) — تعاریف دقیق، مثال معتبر
کاربرد حقوقی (۳) — پیوند روشن به دعاوی/سیاست
شفافیت نگارشی (۲) — اختصار و خوانایی
ارجاع و یادداشت (۲) — لینک/منبع قابل ردیابی
۸) تمرین و کارگاه: کار با بلاکاکسپلورر و استخراج اجزای کلیدی
در این کارگاه، یک تراکنش واقعی روی بلاکاکسپلورر انتخاب میکنید، اجزای آن را گامبهگام تحلیل میکنید
و خروجیتان را در قالب یک جدول و یک جمعبندی حقوقی کوتاه تحویل میدهید.
A) ابزارها و پیشنیازها (یکی را انتخاب کنید)
BTC: هر اکسپلورر عمومی بیتکوین (نمایش TxID، Inputs/Outputs، Fee، Block height، Confirmations)
ETH: هر اکسپلورر عمومی اتریوم (نمایش Tx hash، From/To، Value، GasUsed، EffectiveGasPrice، Logs/Events)
کیفپول تستی یا فقط مرورگر وب کافی است.
B) دستورالعمل گامبهگام
یک تراکنش انتخاب کنید: TxID/Hash را کپی کنید و زمان ثبت، وضعیت (Pending/Success) و تعداد تأییدها را یادداشت کنید.
شناسهها و متاداده: شبکه، بلاک شماره چندم، ارتفاع بلاک (Block height)، زمان بلاک (Timestamp).
ارسالکننده/گیرنده: برای BTC: آدرسهای ورودی/خروجی؛ برای ETH: from و to (در صورت قرارداد، نوع contract call را نیز ثبت کنید).
مبالغ: BTC: مجموع ورودیها و خروجیها؛ ETH: مقدار انتقال (Value) بهعلاوه کارمزد مستقل.
کارمزد:
BTC:fee = ΣInputs − ΣOutputs و نرخ تقریبی sat/vB (اگر نمایش داده میشود).
ETH:fee = gasUsed × effectiveGasPrice (در صورت EIP‑1559، BaseFee و Tip را هم بررسی کنید).
ساختار بلاک: Merkle Root، Prev Block Hash (اگر نمایش داده میشود) و جایگاه تراکنش در لیست.
جمعبندی حقوقی کوتاه: تراکنش را به زبان حقوقی ساده توصیف کنید (چه کسی ← چه مقدار ← برای چه کسی ← در چه تاریخی/بلاک/با چه کارمزدی) و ریسکهای محتمل (تأخیر تأیید، برگشتپذیری احتمالاتی، خطای مقصد).
# Given:
# value = 0.20 ETH
# gasUsed = 21,000
# effectiveGasPrice = 30 gwei = 30 × 10^-9 ETH
# Fee = 21,000 × 30 gwei = 0.00063 ETH
# Sender pays: total_outflow = value + fee = 0.20063 ETH
E) جمعبندی حقوقی (یک پاراگراف)
الگوی پیشنهادی:
«در تاریخ [زمان بلاک] تراکنشی با شناسه [TxID/Hash] از نشانی [فرستنده]
به [گیرنده] به مبلغ [Value] ثبت شده است. کارمزد پرداختی [Fee] بوده و تراکنش
در بلاک شماره [Height] قرار گرفته و تاکنون [N] تأیید دریافت کرده است.
با توجه به [PoW/PoS] و سیاست داخلی، سطح اطمینان/نهاییسازی کافی احراز میشود/نمیشود (توضیح کوتاه).»
F) اشتباهات رایج و ترفندها
اشتباه گرفتن value با fee (در ETH کارمزد از مبلغ جداست).
نادیده گرفتن Confirmations و ریسک فورک موقت در PoW.
تحلیل ناقص در تراکنشهای قرارداد هوشمند (Logs/Events را حتماً بخوانید).
برای BTC: فراموشی «Change output» و اشتباه در محاسبه مقصد نهایی.
G) تحویل تمرین + معیار ارزیابی
یک فایل PDF یا HTML با جدول تکمیلشده + اسکرینشات صفحه تراکنش (شناسهها واضح اما آدرسها تا حد لازم ماسک شوند).
پیوست: محاسبات کارمزد و یک پاراگراف جمعبندی حقوقی.