বিটকয়েন ডাবল স্পেন্ডিং একটি খুবই কমন সমস্যা। আপনিও হতে পারেন ডাবল স্পেন্ডিংয়ের শিকার। তাই বিটকয়েন ডাবল স্পেনিডংয়ের কবলে পড়ার আগে জেনে রাখুন ডাবল স্পেন্ডিং কি?

ডাবল স্পেন্ডিং কি?

ডাবল স্পেন্ডিংয়ের বাংলা শব্দ দুইবার খরচ করা। তো, ডাবল স্পেন্ডিং কি, তার বাংলা অর্থ জেনেই বুঝা যাচ্ছে যে বিটকয়েন ডাবল স্পেন্ডিং কি হতে পারে।

ডাবল স্পেন্ডিং কি তা যদি আমরা কি ছোট্ট উদাহরন দিয়ে বুঝতে চেষ্টা করে তবে খুবই সহজ হয়ে যাবে।

মনে করুন, আমি একটি গাড়ী কিনতে চাই এবং তার দাম ৫ লক্ষ টাকা। এখন গাড়ী কেনার জন্য আমি অনলাইনে ওডারও করতে পারি আবার “সো” রুমে গিয়েও কিনতে পারি। ধরেই নিলাম আমি “সো” রুমে গিয়ে গাড়ী কিনব।

মূলত আমি “সো” রুমে গাড়ী কিনতে গিয়েছিলাম ১টা। “সো” রুমে গিয়া আমার ২টা গাড়ী পছন্দ হয়ে গেল। আমার কাছে ২য় যে গাড়ী পছন্দ হয়েছে তার দামও ৫ লক্ষ টাকা। অর্থাৎ এখন যদি আমি ২টা গাড়ীই কিনতে চাই, তবে আমার প্রয়োজন ১০ লক্ষ টাকা। কিন্তু আমার কাছে তো আছে মাত্র ৫ লক্ষ টাকা। এখন তো আমি এই ৫ লক্ষ দিয়ে দুইটা গাড়ীর দাম পরিশোধ করতে পারবো না। তাই নিরুপায় হয়ে, যেকোন একটি গাড়ীর দাম পরিশোধ করার জন্য আমি বিক্রেতাকে ৫ লক্ষ টাকা ক্যাশ দিয়ে গাড়ী কিনে নিয়ে আসলাম।

এখন আমি যেই ৫ লক্ষ টাকা গাড়ী কিনার জন্য বিক্রেতাকে দিয়ে আসলাম সেই টাকা কি আমি দ্বিতীয় বার খরচ করতে পারবো? নিশ্চয় না।

অর্থাৎ অফলাইনে বা আমাদের রেগুলার লেনদেন পদ্ধতিতে ডাবল স্পেন্ডিং করার সুযোগ নেই।

তবে বিটকয়েন ট্রানজেকশনের ক্ষেত্রে এই ডাবল স্পেন্ডিং এর সমস্যা দেখা যায়।

চলুন আগের উদাহরনে আরেকবার ফিরে যায়।

বিষয়টি বুঝার জন্য ধরে নিলাম ১ বিটকয়েন সমান ৫ লক্ষ টাকা। ধরুন এখন আমি একটি গাড়ী কিনতে চাচ্ছি। বিভিন্ন অনলাইন ঘাটাঘাটি করে দুইটি “সো” রুমে আমার দুইটি গাড়ী পছন্দ হয়েছে। আর আমার কাছে আছে ১ বিটকয়েন। কিন্তু আমার গাড়ী পছন্দ হয়েছে ২টা। দুইটিরই দাম ৫ লক্ষ টাকা বা ১ বিটকয়েন করে। অর্থাৎ আমি দুইটি গাড়ী কিনতে চাইলে আমার ২ বিটকয়েন প্রয়োজন। কিন্তু আমার পুঞ্জি ১ বিটকয়েন। এখন আমি মনে করলাম আমার এই ১ বিটকয়েনকেই ডাবল স্পেন্ডিং করবো।

ধরুন প্রথম “সো” রুমটির নাম হোন্ডা মটরস্‌

আর দ্বিতীয় “সো” রুমটির নাম টয়োটা মটরস্‌

এখন আমি দুইটি “সো রুমে গাড়ীর পেমেন্ট হিসেবে একই সময়ে দুই “সো” রুমে অর্থাৎ হোন্ডা মটরস্ এবং টয়োটা মটরস কে ১ বিটকয়েন সেন্ড করলাম। অর্থাৎ ১ বিটকয়েনকেই একই সময়ে ডাবল ট্রানজেকশনে (ওয়ালেট এড্রেসে) পাঠালাম।

এখন আমি বিটকয়েন সেন্ড করার পরে সেই ট্রানজেকশনটি একটি পুলে জমা হবে। যেখানে হাজার হাজার আন-কনফার্মেড ট্রানজেকশন গুলো পড়ে আছে। অর্থাৎ যেই ট্রানজেকশন গুলো এখনো কোন মাইনার গ্রহন করে মাইনিং করা শুরু করেনি।

বিটকয়েন ডাবল স্পেন্ডিং কি? double-spending-one-miner

ধরে নিলাম একজন মাইনার হোন্ডা মটরস্ কে পাঠানো ট্র্যনজেকশনটি গ্রহন করে ব্লক তৈরির জন্য মাইনিং শুরু করে দিলো। তাহলে পুলে পড়ে থাকা আমার টয়োটা মটরস্‌কে পাঠানো ট্রানজেকশনটি ইনভ্যালিড হয়ে যাবে এবং পুল থেকে বাদ দিয়ে দেওয়া হবে। আর এইদিকে হোন্ডা মটরস্‌কে পাঠানো ট্রানজেকশনটি ভ্যলিড হয়ে যাবে।

আবার মনে করেন, আমার পাঠানো ট্রানজকশন দুইটি একই সাথে দুইজন মাইনার দুইটি ট্রানজেকশনই গ্রহন করে মাইনিং শুরু করে দিলো।

ধরুন, A মাইনার হোন্ডা মটরটস্‌ এর ট্রানজেকশনটি পিক-আপ করেছে।

আর B মাইনার টয়োটা মরটস্‌কে পাঠানো ট্রানজেকশনটি পিক-আপ করেছে।

এখন এই দুই মাইনারের মধ্যে যার ট্রানজেকশনটি ১ম কনফার্মেশন তৈরি করতে পারবে তার ট্রানজেকশনটি ভ্যলিড হবে এবং অপরটি ইনভ্যলিড হয়ে নেটওয়ার্ক থেকে বাদ চলে যাবে। যদি A মাইনার হোন্ডা মটরটস্‌কে পাঠানো ট্রানজেকশনটিতে ১ম কনফার্মেশন পেয়ে যায় তবে B মাইনারের ট্রানজেকশনটি বাতিল হয়ে যাবে।

এইটাই হচ্ছে ডাবল স্পেন্ডিং।

আরো পড়ুন: ক্রিপ্টোকারেন্সি এক্সচেন্জ বিষয়ক গুরুত্বপূর্ন বিষয়

ব্লকচেইন কিভাবে ডাবল স্পেন্ডিংয়ের সমাধান করে?

বিটকয়েন ডাবল স্পেন্ডিং কি? double-spending-solve-2-miner

আবার ধরুন, দুইটি ট্র্যনজেকশন পিক-আপ করার পরে A মাইনার এবং B মাইনার দুইজন-ই একই সাথে ১ম কনফার্মেশন পেয়ে গেল। এই ক্ষেত্রে দুইটি ট্রানজেকশনের মধ্যে একটা প্রতিযোগীতা শুরু হয়ে যাবে। এই প্রতিযোগীতায় এর পরবর্তী কনফার্মেশন কোন ট্রানজেকশনে (মাইনারে) প্রথম আনতে পারে সেটা দেখা হবে।

ধরুন, A মাইনারের ট্রানজেকশনটি দ্বিতীয় কনফার্মেশন পাবার আগেই B মাইনার টয়োটাকে পাঠানো ট্রানজেকশনটিতে দ্বিতীয় কনফার্মেন আগে পেয়ে গেল। তাহলে এই ক্ষেত্রে হোন্ডা মটরস্‌কে পাঠানো ট্রানজেকশনটি যা A মাইনার মাইনিং করছিলো তা বাতিল হয়ে যাবে। অর্থাৎ ইনভ্যলিড হয়ে যাবার কারনে ব্লকচেইন সেই ট্রানজেশনটি মুছে ফেলে দিবে।

এই ভাবেই ব্লকচেইন ডাবল স্পেন্ডিংয়ের সমাধান করে থাকে।

কিভাবে ডাবল স্পেন্ডিংয়ের বিপদ থেকে বাঁচবেন?

আপনি যদি কারো কাছ থেকে বিটকয়েন কিনে থাকেন বা পেমেন্ট হিসেবে গ্রহন করতে চান তবে আপনিও হতে পারেন ডাবল স্পেন্ডিংয়ের শিকার। তাই ডাবল স্পেন্ডিং থেকে বাঁচতে হলে সর্বনিম্ন ৬ কনফার্মেশন পর্যন্ত অপেক্ষা করা দরকার। এখন আপনি যদি ১ বা ২ টা কনফার্মেশন পাবার পরেই আপনি বিটকয়েনের দাম দিয়ে দেন বা বিটকয়েন পেমেন্ট হিসেবে পেয়ে গেছেন মনে করে, যে জিনিষ কাষ্টমারকে দেওয়ার কথা তা দিয়ে দেন, তবে পড়তে পারেন বিপদে। তাই নিরাপত্তার জন্য ৬ কনফার্মেশন পর্যন্ত অপেক্ষা করা দরকার ট্রানজেকশনটির ভ্যলিডেটির জন্য।

ক্রিপ্টোকারেন্সি নিয়ে অন্য যেকোন ধরনের আলোচনা করার জন্য বাংলাদেশ ক্রিপ্টো কমিউনিটিতে যোগ হয়ে থাকতে পারেন: https://t.me/Bangla_Cryptocurrency

সতর্কতাঃ- ফরেক্স ও ক্রিপ্টোকারেন্সি মার্কেট অধিক ভলটালিটির কারনে ট্রেডিং করা অনেক বেশি বিপদজনক। তাই এই পোষ্টে কাউকে এই মার্কেটে ট্রেড করার জন্য উৎসাহিত করা হচ্ছে না। যদি কেউ ট্রেড করতে চাই, তবে তা সে নিজের দায়িত্বে করবে, এর জন্য এই ব্লগের কর্তৃপক্ষ দায়বদ্ধ থাকবে না।