System Design শেখো
শেখো / ব্লকচেইন ও ডিসেন্ট্রালাইজড

Consensus: PoW vs PoS

13 মিনিট Module 12 · Blockchain & Decentralized 🔥
এক নজরে
  • Leader ছাড়া বহু অপরিচিত node-এর মধ্যে একমত হওয়া কঠিন — এটাই decentralized consensus-এর মূল চ্যালেঞ্জ।
  • Proof of Work-এ computing power খরচ করে block বানাতে হয়; Proof of Stake-এ coin জামানত (stake) রেখে validator হতে হয়।
  • দুটোতেই লক্ষ্য একই — সৎ থাকা লাভজনক, আক্রমণ ব্যয়বহুল করা; কিন্তু energy, finality ও নিরাপত্তার ট্রেড-অফ আলাদা।

সমস্যাটা কী?

Blockchain-এ অনেক node থাকে, প্রত্যেকের কাছে ledger-এর কপি। কিন্তু পরবর্তী block-এ ঠিক কোন transaction গুলো ঢুকবে, এবং কোন version-টা "সত্য" — সেটা কে ঠিক করবে? একটা কেন্দ্রীয় boss থাকলে সহজ হতো। কিন্তু blockchain-এর পুরো পয়েন্টই হলো কোনো boss নেই

এখন কল্পনা করো — হাজার হাজার অপরিচিত node, যাদের কেউ কেউ হয়তো প্রতারক, ইন্টারনেটে message দেরিতে বা ভুল ক্রমে পৌঁছাতে পারে। এই বিশৃঙ্খল পরিবেশে সবাইকে একটি একক, সঙ্গতিপূর্ণ ইতিহাসে একমত করানো — এটাই distributed consensus-এর সমস্যা। কম্পিউটার সায়েন্সে একে Byzantine Generals Problem বলে: কিছু "জেনারেল" বিশ্বাসঘাতক হতে পারে, তবু বাকিদের একমত হতে হবে।

মূল ধারণা

Consensus mechanism হলো সেই নিয়মতন্ত্র, যার মাধ্যমে কোনো কেন্দ্রীয় কর্তৃপক্ষ ছাড়াই network-এর node-রা পরবর্তী block ও ledger-এর বৈধ অবস্থা নিয়ে একমত হয় — এবং অসৎ আচরণকে অর্থনৈতিকভাবে অলাভজনক করে তোলে।

মূল কৌশলটা সরল কিন্তু চমৎকার: block বানানোর অধিকার পাওয়াকে ব্যয়বহুল করো, এবং সৎভাবে কাজ করাকে পুরস্কৃত করো। তাহলে যুক্তিবাদী (rational) অংশগ্রহণকারীর জন্য সৎ থাকাই সবচেয়ে লাভজনক হয়ে দাঁড়ায়। Proof of WorkProof of Stake — দুটোই এই নীতির দুই ভিন্ন বাস্তবায়ন।

কীভাবে কাজ করে

Proof of Work (PoW)

PoW-তে block বানাতে হলে একটি কঠিন গাণিতিক ধাঁধার সমাধান করতে হয় — যাকে mining বলে। Miner-রা বারবার hash গণনা করে এমন একটি সংখ্যা (nonce) খোঁজে, যাতে block-এর hash একটি নির্দিষ্ট target-এর চেয়ে ছোট হয়। এটা trial-and-error, খুব বেশি computing power লাগে, কিন্তু সমাধান পেলে বাকি সবাই তা মুহূর্তেই যাচাই করতে পারে।

যে miner আগে সমাধান পায়, সে নতুন block প্রস্তাব করে এবং পুরস্কার (block reward + fee) পায়। আক্রমণকারীকে ইতিহাস বদলাতে হলে সমস্ত সৎ miner-এর সম্মিলিত শক্তির চেয়ে বেশি শক্তি (51%) লাগবে — যা ভয়াবহ ব্যয়বহুল। এর মূল্য চোকাতে হয় বিদ্যুৎ ও হার্ডওয়্যারে

Proof of Stake (PoS)

PoS-এ ব্যয়বহুল গণনার বদলে অর্থনৈতিক জামানত ব্যবহৃত হয়। একজন validator নির্দিষ্ট পরিমাণ coin "stake" (লক) করে। প্রোটোকল (আংশিক এলোমেলোভাবে, stake-এর অনুপাতে) একজন validator বেছে নেয় পরবর্তী block প্রস্তাব করতে, আর অন্যরা তা attest (সমর্থন) করে।

যদি কোনো validator প্রতারণা করে (যেমন দুটো পরস্পরবিরোধী block-এ ভোট দেয়), তার staked coin-এর অংশ slash (কেটে নেওয়া) হয়। অর্থাৎ অসততার শাস্তি সরাসরি আর্থিক ক্ষতি। এখানে নিরাপত্তার মূল্য চোকাতে হয় লক করা মূলধনে, বিদ্যুতে নয় — তাই PoS অনেক বেশি energy-efficient।

Finality

Finality মানে একটি block কতটা "চূড়ান্ত" — অর্থাৎ আর কখনো উল্টানো (reverse) হবে না, এই নিশ্চয়তা।

  • PoW (probabilistic finality) — কোনো block-এর ওপর যত বেশি block যোগ হয়, তা উল্টানো তত কঠিন। তাই সাধারণত কয়েকটি confirmation-এর জন্য অপেক্ষা করা হয়; পুরোপুরি "চূড়ান্ত" কখনোই নয়, শুধু সম্ভাবনা শূন্যের কাছাকাছি যায়।
  • PoS (অনেক ক্ষেত্রে economic / fast finality) — অনেক আধুনিক PoS ডিজাইনে নির্দিষ্ট ধাপের পর block আনুষ্ঠানিকভাবে final হয়; তা উল্টাতে হলে বিপুল stake slash হবে।

51% Attack

দিকProof of WorkProof of Stake
Block তৈরির ভিত্তিHash power (mining)Staked coin
Energy খরচঅনেক বেশিঅনেক কম
51% আক্রমণের ব্যয়অর্ধেকের বেশি hash power কেনা/ভাড়াঅর্ধেকের বেশি coin কেনা ও lock
অসততার শাস্তিপরোক্ষ (নষ্ট হওয়া বিদ্যুৎ/পুরস্কার)প্রত্যক্ষ (slashing)
FinalityProbabilisticপ্রায়ই দ্রুত/economic
উদাহরণBitcoinEthereum (2022-পরবর্তী)

দুটো ক্ষেত্রেই, এক পক্ষ যদি সংখ্যাগরিষ্ঠ resource নিয়ন্ত্রণ করে, তবে সে double-spend বা সাম্প্রতিক ইতিহাস reorg করতে পারে। তবে এত resource জোগাড় করা এবং আক্রমণে coin-এর দাম পড়ে নিজের সম্পদই ধ্বংস করা — দুটোই আক্রমণকে অযৌক্তিক করে তোলে।

সহজ উদাহরণ

ভাবো, একটা এলাকায় লটারির মাধ্যমে প্রতি সপ্তাহে একজনকে "সমিতির হিসাব লেখার" দায়িত্ব দেওয়া হয়। PoW যেন এমন — যত বেশি টিকিট (computing power) কিনবে, জেতার সম্ভাবনা তত বেশি, কিন্তু টিকিট কিনতে আসল টাকা (বিদ্যুৎ) পুড়বে। PoS যেন এমন — দায়িত্ব পেতে হলে সমিতিতে বড় অঙ্কের জামানত রাখতে হবে; দায়িত্ব পেয়ে যদি হিসাবে কারচুপি করো, তোমার জামানত বাজেয়াপ্ত হবে। দুই ক্ষেত্রেই বদমাশি করা আর্থিকভাবে লোকসানের।

কৌশল

বাস্তবে protocol ডিজাইনাররা কিছু সাধারণ কৌশল ব্যবহার করেন:

  • Longest/heaviest chain rule — দ্বন্দ্ব হলে যে chain-এ সবচেয়ে বেশি কাজ (PoW) বা সমর্থন আছে, সেটাকে বৈধ ধরা হয়।
  • Incentive alignment — block reward ও transaction fee দিয়ে সৎ অংশগ্রহণ লাভজনক রাখা।
  • Slashing ও penalty (PoS) — অসততা ও offline থাকার শাস্তি।
  • Difficulty adjustment (PoW) — block-time স্থির রাখতে ধাঁধার কঠিনতা স্বয়ংক্রিয়ভাবে বদলানো।

কখন ব্যবহার করবে / করবে না

  • PoW বেছে নাও যখন সর্বোচ্চ "battle-tested" নিরাপত্তা ও সরল আক্রমণ-মডেল চাও, এবং energy খরচ মেনে নিতে পারো।
  • PoS বেছে নাও যখন energy-efficiency, দ্রুত finality ও কম হার্ডওয়্যার নির্ভরতা চাও।
  • কোনো consensus-ই দরকার নেই যদি একটি বিশ্বস্ত কেন্দ্রীয় পক্ষ থাকে — তখন সাধারণ database যথেষ্ট।
সাবধান

PoS-এ "rich get richer" ও stake কেন্দ্রীভবনের ঝুঁকি থাকে; PoW-এ mining pool-এ hash power কেন্দ্রীভূত হয়ে কার্যত একই ঝুঁকি তৈরি হতে পারে। অর্থাৎ "decentralized" লেবেল থাকলেই বাস্তবে শক্তি ছড়িয়ে আছে — এমন ধরে নিও না; কে কতটা hash power বা stake নিয়ন্ত্রণ করছে, সেটা পরীক্ষা করো।

বাস্তব উদাহরণ

Bitcoin শুরু থেকেই Proof of Work ব্যবহার করে। বিশ্বজুড়ে miner-রা SHA-256 ধাঁধা সমাধান করে, প্রায় প্রতি ১০ মিনিটে একটি block তৈরি হয়। এর নিরাপত্তা বিপুল hash power-এর ওপর দাঁড়িয়ে।

Ethereum আগে PoW ছিল, কিন্তু 2022 সালে "The Merge"-এর মাধ্যমে Proof of Stake-এ রূপান্তরিত হয়, যাতে শক্তি খরচ প্রায় ৯৯%-এর বেশি কমে যায়। এখন Ethereum-এ validator-রা ETH stake করে এবং slashing-এর ভয়ে সৎ থাকে।

টিপস

ইন্টারভিউতে "PoW নাকি PoS ভালো?" — এমন প্রশ্নে কোনো একটিকে অন্ধভাবে জিতিয়ে দিও না। বলো এটি একটি ট্রেড-অফ: PoW দেয় সরল, সময়-পরীক্ষিত নিরাপত্তা কিন্তু বিপুল energy খরচ; PoS দেয় energy-efficiency ও দ্রুত finality কিন্তু আনে stake কেন্দ্রীভবন ও জটিল slashing-এর মতো নতুন চ্যালেঞ্জ। দুটোরই লক্ষ্য একই — আক্রমণকে ব্যয়বহুল করা।

মিনি কুইজ

1. Decentralized consensus কঠিন হওয়ার মূল কারণ কী?

2. Proof of Stake-এ একজন validator-কে দুর্ব্যবহার থেকে বিরত রাখে কী?

3. 51% attack বলতে কী বোঝায়?