বিষয়টি মোটেও এমন নাহ। যেকোনো ব্লকচেইনে মাইনাররা নিজের ইচ্ছায় কোনো কিছু করে নাহ, বরং কম্পিউটিং পাওয়ার দিয়ে ব্লক কনফার্মের সময় যেকসল ট্রান্সজেকশনে মাইনার টিপ দেয়া থাকে কিংবা বেশি ফি দেওয়া থাকে। সেগুলো মাইনারদের মাইনিং মেশিনগুলো অটো নিয়ে নেয়। আপনি যদি যেকোনো বিটকয়েনের ট্রান্সজেকশন দেখেন, তাহলে দেখবেন তারা ব্লক কনফার্মের পাশাপাশি মাইনটিং টিপ পেয়ে থাকে। আর সকল বিটকয়েনের মাইনিং শেষ হলে, মাইনাররা মাইনিং করবে কি নাহ, সেটি উত্তরও এটি।
ধন্যবাদ আপনার রিপ্লাই এর জন্য। আমি নিজে একটু কনফিউজড ছিলাম। কিন্তু আপনার এই পোস্টের পর একটু পড়াশোনা করলাম। আমার মনে হচ্ছে আপনি কিছু মিস করছেন। আমি নিচে এর বিস্তারিত দিলাম।
এইটার জন্য আগে আমাদের বুঝতে হবে মিমপুল কি, ক্যান্ডিডেট ব্লক কি এবং কিভাবে একটা ক্যান্ডিডেট ব্লক তৈরী হয়।
মিমপুলআমরা জানি যে বিটকয়েন এর লেনদেনগুলো যখন আমরা পাঠিয়ে থাকি, মানে আপনি/আমি যখন কাউকে বিটকয়েন পাঠাই। সেটা কিন্তু সাথে সাথে কনফার্ম হয় না। যতক্ষণ ওই ট্রাঞ্জেকশন কোন ব্লকে এড হয় না, ততক্ষণ ওইটা যেখানে থাকে সেটাই মিমপুল। অর্থাৎ, কনফার্মেশন পেন্ডিং অবস্থায় যতগুলো ট্রাঞ্জেকশন আছে সেগুলো মিমপুল এ থাকে। সব নোডের মিমপুল আলাদা থাকে। তবে, যেহেতু নোড একটির সাথে অন্য নোড কম্যুনিকেশন করে, অর্থাৎ ট্রাঞ্জেকশন এর তথ্য আদানপ্রদান করে, তারা তাদের মিমপুল এর তথ্য অন্য নোডকে পাঠায়।
আশা করি বুঝতে পেরেছেন মিমপুল কি। এখন আসি ক্যান্ডিডেট ব্লক কি।
ক্যান্ডিডেট ব্লকআমরা সবসময় শুনে এসেছি মাইনাররা ব্লক খুজে পায় এবং সে ব্লকে তারা যতগুলো সম্ভব ট্রাঞ্জেকশন যোগ করে। মুলত, ব্যাপারটা আসলে এইরকম না। ব্যাপারটা হচ্ছে, একজন মাইনার প্রথমে কোন লেনদেনগুলি ব্লকে যোগ করবে সেটা ঠিক করে। ধরুন, সর্বমোট ১০০ জন আলাদা মাইনার আছে। তাহলে, ১০০ জন মাইনার আলাদা আলাদা করে ঠিক করল তারা কোন লেনদেনগুলি ব্লকে যোগ করবে। এই যে ব্লক খুজে পাওয়ার আগেই তারা ব্লকে কোন লেনদেন যোগ করবে সেটা নির্ধারণ করেছে, এইটাই ক্যান্ডিডেট ব্লক। সব মাইনার তাদের ক্যান্ডিডেট ব্লক ঠিক করে ব্লক হ্যাশ ক্যালকুলেট করে ওই ব্লকটি মাইনিং করার করে।
এখন আমরা মুল আলোচনায় যাই।
একজন মাইনার কি চাইলে আমার ট্রাঞ্জেকশন কম ফি দেয়া সত্ত্বেও ব্লকে যোগ করতে পারবে?হ্যা পারবে। আমরা উপরে পড়ে এসেছি যে আমাদের ট্রাঞ্জেকশনগুলো প্রথমে মিমপুল এ থাকে। পরবর্তীতে মাইনাররা যখন ক্যান্ডিডেট ব্লক তৈরী করে তখন মিমপুল থাকে যে কোন ট্রাঞ্জেকশন নিতে পারবে। সাধারনত, মাইনাররা যেসব ট্রাঞ্জেকশন এ ফি বেশি দেয় সেগুলোই নিয়ে থাকে। আর এইটা অটোমেটিক প্রসেস। মানে ম্যানুয়ালি কিছুই করতে হয় না। কিন্তু কোন মাইনার যদি চায় যে সে বেশি ফি দেয়া ট্রাঞ্জেকশন না নিয়ে অন্য ট্রাঞ্জেকশন নিবে সেটাও সম্ভব, শুধু তার সফটওয়্যার এর কোড পরিবর্তন করতে হবে।
আমি কিছু রেফারেন্স দিয়ে দিচ্ছি।
https://link.medium.com/iUWN1bbTRybChapter 8. Mining and Consensus-
https://www.oreilly.com/library/view/mastering-bitcoin/9781491902639/ch08.htmlThat mean if I am a miner can I add my transaction to candidate block?
Yes. If you are a miner, you can preferentially choose your own transactions to be added to your candidate block.
can they pick any valid transactions with significantly low fee?
Sure. But they will earn less bitcoin if they do. Since miners need to pay for the mining equipment, internet connectivity, electricity and possibly employees that they use, and mining pools need to pay for their servers, network connectivity, electricity, and mining participants, they need to earn as much bitcoin as they can. If they fail to earn enough bitcoin to pay for all the costs, then they will run out of money and have to stop.
আশা করি কারো কোন কনফিউশন থাকলে সেটা আর থাকবে না।
এখন আসি বিকটয়েন এক্সিলেরশনের বিষয়টি, যেমনটা বললাম মাইনটিং টিপ অনুযায়ী মাইনাররা ট্রান্সজেকশনকে নিয়ে থাকে, নিজের ইচ্ছায় কখনো নেয় নাহ। এটি স্ক্রিপ্টের মতো বলতে পারবেন, কিংবা প্রোগ্রামিং এর লজিকের মতো। যখন আমরা এক্সিলেরশনের সাইটগুলো ব্যবহার করি, তখন ওয়েবসাইটগুলো তাদেরক পার্টনার মাইনিং ফার্মগুলোকে ট্রান্সজেকশনটি পাঠায় এবং আপনি নিজের অজান্তেই অল্প হলেও কিছু মাইনিং টিপ দিয়ে দেন। আপনি যেমন এক্সিলেরশন করতেছেন, তেমন অন্যান্য ব্যবহারকারীও করতেছে। তার মানে যদি ঘন্টায় ১০ টা এক্সিলেরশন রিকুয়েস্ট হইলে মাইনারগুলো একটি ভালো মানের মাইটিং টিপ পেয়ে যায়, যদিও মাইনিং টিপগুলো কম হয়েও থাকে। সর্বমোটে কিন্তু ভালো একটি এমাউন্ট হয়ে থাকে। তখন মাইনার সেই এক্সিলেরশনের ট্রান্সজেকশনগুলো কনফার্ম করায়। এই হলো আসলো কাহিনী। আশা করি বিষয়টি আপনি এবং অন্যান্য ব্যবহারকারীরা বুঝতে পেরেছেন।
এইখানেও আপনি ভুল বলছেন। ট্রাঞ্জেকশন এক্সিলারেশন খুব কম সাইট করে থাকে ফ্রি তে। উদাহরন হিসেবে আমি viabtc নিয়ে বলি। ওরা প্রতি ঘন্টায় একটা ট্রাঞ্জেকশন ফ্রিতে এক্সিলারেশন করে।
আচ্ছা, আপনি বলছেন অনেকগুলো ট্রাঞ্জেকশন একসাথে নিলে তারা মোটামুটি মাইনিং ফি পায়। কিন্তু তারা কেন সেসব ট্রাঞ্জেকশন নিবে যেখানে মিমপুল থেকে ট্রাঞ্জেকশন নিলে তারা আরো বেশি ফি পাবে?