মূল কন্টেন্টে যান

পৃষ্ঠাটি সর্বশেষ আপডেট করা হয়েছে: 16 ফেব্রুয়ারী, 2026

ড্যাংকশার্ডিং

ড্যাংকশার্ডিং হলো যেভাবে Ethereum একটি সত্যিকারের স্কেলেবল ব্লকচেইন হয়ে ওঠে, তবে সেখানে পৌঁছানোর জন্য বেশ কয়েকটি প্রটোকল আপগ্রেড প্রয়োজন। প্রোটো-ড্যাংকশার্ডিং হলো এই পথের একটি মধ্যবর্তী ধাপ। উভয়েরই লক্ষ্য হলো লেয়ার ২-এ লেনদেন ব্যবহারকারীদের জন্য যতটা সম্ভব সস্তা করা এবং ইথিরিয়ামকে প্রতি সেকেন্ডে >100,000 লেনদেন-এ স্কেলিং করা।

প্রোটো-ড্যাংকশার্ডিং কী?

প্রোটো-ড্যাংকশার্ডিং, যা EIP-4844 (opens in a new tab) নামেও পরিচিত, হলো রোলআপস-এর জন্য ব্লকস-এ সস্তা ডাটা যোগ করার একটি উপায়। নামটি এসেছে এই ধারণাটি প্রস্তাবকারী দুই গবেষকের নাম থেকে: Protolambda এবং Dankrad Feist। ঐতিহাসিকভাবে, রোলআপস ব্যবহারকারীদের লেনদেন কতটা সস্তা করতে পারে তার একটি সীমাবদ্ধতা ছিল, কারণ তারা তাদের লেনদেন CALLDATA-তে পোস্ট করত।

এটি ব্যয়বহুল কারণ এটি সমস্ত ইথিরিয়াম নোড দ্বারা প্রসেস করা হয় এবং চিরকাল অনচেইন থাকে, যদিও রোলআপস-এর ডাটা শুধুমাত্র অল্প সময়ের জন্য প্রয়োজন হয়। প্রোটো-ড্যাংকশার্ডিং ডাটা ব্লব চালু করে যা পাঠানো যায় এবং ব্লকস-এর সাথে যুক্ত করা যায়। এই ব্লবগুলোর ডাটা EVM-এর কাছে অ্যাক্সেসযোগ্য নয় এবং একটি নির্দিষ্ট সময় পর স্বয়ংক্রিয়ভাবে মুছে যায় (লেখার সময় 4096 এপোক বা প্রায় 18 দিন নির্ধারণ করা হয়েছে)। এর মানে হলো রোলআপস তাদের ডাটা অনেক সস্তায় পাঠাতে পারে এবং সস্তা লেনদেন হিসেবে শেষ ব্যবহারকারীদের কাছে এই সঞ্চয় পৌঁছে দিতে পারে।

রোলআপস হলো অফচেইন লেনদেন ব্যাচ করে এবং তারপর ইথিরিয়ামে ফলাফল পোস্ট করে ইথিরিয়াম স্কেলিং করার একটি উপায়। একটি রোলআপ মূলত দুটি অংশ নিয়ে গঠিত: ডাটা এবং এক্সিকিউশন চেক। ডাটা হলো লেনদেন-এর সম্পূর্ণ ক্রম যা ইথিরিয়ামে পোস্ট করা স্টেট পরিবর্তন তৈরি করতে একটি রোলআপ দ্বারা প্রসেস করা হচ্ছে। এক্সিকিউশন চেক হলো প্রস্তাবিত স্টেট পরিবর্তন সঠিক কিনা তা নিশ্চিত করার জন্য কোনো সৎ ব্যক্তি (একজন "প্রুভার") দ্বারা সেই লেনদেন-গুলোর পুনরায় এক্সিকিউশন। এক্সিকিউশন চেক করার জন্য, লেনদেন ডাটা যথেষ্ট সময় ধরে উপলব্ধ থাকতে হবে যাতে যে কেউ ডাউনলোড করে চেক করতে পারে। এর মানে হলো রোলআপ সিকোয়েন্সার-এর যেকোনো অসৎ আচরণ প্রুভার দ্বারা চিহ্নিত এবং চ্যালেঞ্জ করা যেতে পারে। তবে, এটি চিরকাল উপলব্ধ থাকার প্রয়োজন নেই।

রোলআপস তাদের লেনদেন ডাটার প্রতিশ্রুতি অনচেইন পোস্ট করে এবং ডাটা ব্লবগুলোতে আসল ডাটাও উপলব্ধ করে। এর মানে হলো প্রুভাররা চেক করতে পারে যে প্রতিশ্রুতিগুলো বৈধ কিনা বা তাদের ভুল মনে হওয়া ডাটাকে চ্যালেঞ্জ করতে পারে। নোড-স্তরে, ডাটার ব্লবগুলো কনসেন্সাস ক্লায়েন্ট-এ রাখা হয়। কনসেন্সাস ক্লায়েন্ট-গুলো এটেস্টেশন দেয় যে তারা ডাটা দেখেছে এবং এটি নেটওয়ার্ক-এর চারপাশে ছড়িয়ে দেওয়া হয়েছে। যদি ডাটা চিরকাল রাখা হতো, তবে এই ক্লায়েন্টগুলো ফুলে উঠত এবং নোড চালানোর জন্য বড় হার্ডওয়্যারের প্রয়োজন হতো। এর পরিবর্তে, প্রতি 18 দিন পর পর নোড থেকে ডাটা স্বয়ংক্রিয়ভাবে মুছে ফেলা হয়। কনসেন্সাস ক্লায়েন্ট এটেস্টেশন-গুলো প্রমাণ করে যে প্রুভারদের ডাটা যাচাই করার জন্য পর্যাপ্ত সুযোগ ছিল। আসল ডাটা রোলআপ অপারেটর, ব্যবহারকারী বা অন্যদের দ্বারা অফচেইন সংরক্ষণ করা যেতে পারে।

ব্লব ডাটা কীভাবে যাচাই করা হয়?

রোলআপস তাদের এক্সিকিউট করা লেনদেন ডাটা ব্লবগুলোতে পোস্ট করে। তারা ডাটার প্রতি একটি "প্রতিশ্রুতি"ও পোস্ট করে। তারা ডাটাতে একটি পলিনোমিয়াল ফাংশন ফিট করে এটি করে। এই ফাংশনটি তারপর বিভিন্ন পয়েন্টে মূল্যায়ন করা যেতে পারে। উদাহরণস্বরূপ, যদি আমরা একটি অত্যন্ত সাধারণ ফাংশন f(x) = 2x-1 সংজ্ঞায়িত করি তবে আমরা x = 1, x = 2, x = 3-এর জন্য এই ফাংশনটি মূল্যায়ন করতে পারি যা 1, 3, 5 ফলাফল দেয়। একজন প্রুভার ডাটাতে একই ফাংশন প্রয়োগ করে এবং একই পয়েন্টে এটি মূল্যায়ন করে। যদি আসল ডাটা পরিবর্তন করা হয়, তবে ফাংশনটি অভিন্ন হবে না, এবং তাই প্রতিটি পয়েন্টে মূল্যায়ন করা মানগুলোও এক হবে না। বাস্তবে, প্রতিশ্রুতি এবং প্রমাণ আরও জটিল কারণ এগুলো ক্রিপ্টোগ্রাফিক ফাংশনে মোড়ানো থাকে।

KZG কী?

KZG মানে হলো Kate-Zaverucha-Goldberg - একটি স্কিমের তিন মূল লেখকের (opens in a new tab) নাম যা ডাটার একটি ব্লবকে একটি ছোট ক্রিপ্টোগ্রাফিক "প্রতিশ্রুতিতে" (opens in a new tab) কমিয়ে দেয়। একটি রোলআপ দ্বারা জমা দেওয়া ডাটার ব্লবটি যাচাই করতে হবে যাতে নিশ্চিত হওয়া যায় যে রোলআপটি খারাপ আচরণ করছে না। এর মধ্যে একজন প্রুভার ব্লবের লেনদেন-গুলো পুনরায় এক্সিকিউট করে চেক করে যে প্রতিশ্রুতিটি বৈধ ছিল কিনা। এটি ধারণাগতভাবে এক্সিকিউশন ক্লায়েন্ট-গুলো যেভাবে মার্কেল প্রুফ ব্যবহার করে লেয়ার ১-এ ইথিরিয়াম লেনদেন-এর বৈধতা চেক করে তার মতোই। KZG হলো একটি বিকল্প প্রমাণ যা ডাটাতে একটি পলিনোমিয়াল সমীকরণ ফিট করে। প্রতিশ্রুতিটি কিছু গোপন ডাটা পয়েন্টে পলিনোমিয়াল মূল্যায়ন করে। একজন প্রুভার ডাটার উপর একই পলিনোমিয়াল ফিট করবে এবং একই মানগুলোতে এটি মূল্যায়ন করবে, চেক করবে যে ফলাফল একই কিনা। এটি ডাটা যাচাই করার একটি উপায় যা কিছু রোলআপস এবং শেষ পর্যন্ত ইথিরিয়াম প্রটোকল-এর অন্যান্য অংশ দ্বারা ব্যবহৃত জিরো-নলেজ কৌশলগুলোর সাথে সামঞ্জস্যপূর্ণ।

KZG সিরিমনি কী ছিল?

KZG সিরিমনি ছিল ইথিরিয়াম সম্প্রদায়ের অনেক মানুষের জন্য সম্মিলিতভাবে সংখ্যার একটি গোপন র‍্যান্ডম স্ট্রিং তৈরি করার একটি উপায় যা কিছু ডাটা যাচাই করতে ব্যবহার করা যেতে পারে। এটি খুবই গুরুত্বপূর্ণ যে এই সংখ্যার স্ট্রিংটি কারও জানা নেই এবং কেউ এটি পুনরায় তৈরি করতে পারবে না। এটি নিশ্চিত করার জন্য, সিরিমনিতে অংশগ্রহণকারী প্রত্যেক ব্যক্তি পূর্ববর্তী অংশগ্রহণকারীর কাছ থেকে একটি স্ট্রিং পেয়েছিলেন। তারপর তারা কিছু নতুন র‍্যান্ডম মান তৈরি করে (যেমন, তাদের ব্রাউজারকে তাদের মাউসের নড়াচড়া পরিমাপ করার অনুমতি দিয়ে) এবং পূর্ববর্তী মানের সাথে এটি মিশ্রিত করে। তারপর তারা মানটি পরবর্তী অংশগ্রহণকারীর কাছে পাঠায় এবং তাদের লোকাল মেশিন থেকে এটি ধ্বংস করে দেয়। যতক্ষণ পর্যন্ত সিরিমনিতে একজন ব্যক্তি সততার সাথে এটি করেছেন, চূড়ান্ত মানটি একজন আক্রমণকারীর কাছে অজানা থাকবে।

EIP-4844 KZG সিরিমনি জনসাধারণের জন্য উন্মুক্ত ছিল এবং হাজার হাজার মানুষ তাদের নিজস্ব এন্ট্রপি (র‍্যান্ডমনেস) যোগ করতে অংশগ্রহণ করেছিল। মোট 140,000-এর বেশি অবদান ছিল, যা এটিকে বিশ্বের সবচেয়ে বড় এই ধরনের সিরিমনিতে পরিণত করেছে। সিরিমনিটিকে দুর্বল করার জন্য, সেই অংশগ্রহণকারীদের 100% কে সক্রিয়ভাবে অসৎ হতে হবে। অংশগ্রহণকারীদের দৃষ্টিকোণ থেকে, যদি তারা জানে যে তারা সৎ ছিল, তবে অন্য কাউকে বিশ্বাস করার দরকার নেই কারণ তারা জানে যে তারা সিরিমনিটি সুরক্ষিত করেছে (তারা ব্যক্তিগতভাবে 1-out-of-N সৎ অংশগ্রহণকারীর প্রয়োজনীয়তা পূরণ করেছে)।

যখন একটি রোলআপ একটি ব্লবে ডাটা পোস্ট করে, তখন তারা একটি "প্রতিশ্রুতি" প্রদান করে যা তারা অনচেইন পোস্ট করে। এই প্রতিশ্রুতিটি নির্দিষ্ট পয়েন্টে ডাটার সাথে মানানসই একটি পলিনোমিয়াল মূল্যায়নের ফলাফল। এই পয়েন্টগুলো KZG সিরিমনিতে তৈরি করা র‍্যান্ডম নম্বর দ্বারা সংজ্ঞায়িত করা হয়। প্রুভাররা তারপর ডাটা যাচাই করার জন্য একই পয়েন্টে পলিনোমিয়াল মূল্যায়ন করতে পারে - যদি তারা একই মানে পৌঁছায় তবে ডাটা সঠিক।

যদি কেউ প্রতিশ্রুতির জন্য ব্যবহৃত র‍্যান্ডম অবস্থানগুলো জানে, তবে তাদের জন্য একটি নতুন পলিনোমিয়াল তৈরি করা সহজ যা সেই নির্দিষ্ট পয়েন্টগুলোতে ফিট করে (অর্থাৎ, একটি "কলিশন")। এর মানে হলো তারা ব্লব থেকে ডাটা যোগ বা সরাতে পারে এবং তারপরও একটি বৈধ প্রমাণ প্রদান করতে পারে। এটি প্রতিরোধ করার জন্য, প্রুভারদের আসল গোপন অবস্থানগুলো দেওয়ার পরিবর্তে, তারা আসলে উপবৃত্তাকার বক্ররেখা (elliptic curves) ব্যবহার করে একটি ক্রিপ্টোগ্রাফিক "ব্ল্যাক বক্স"-এ মোড়ানো অবস্থানগুলো পায়। এগুলো কার্যকরভাবে মানগুলোকে এমনভাবে এলোমেলো করে দেয় যাতে আসল মানগুলোকে রিভার্স-ইঞ্জিনিয়ার করা যায় না, তবে কিছু চতুর বীজগণিতের সাহায্যে প্রুভার এবং ভেরিফায়াররা এখনও তাদের প্রতিনিধিত্ব করা পয়েন্টগুলোতে পলিনোমিয়াল মূল্যায়ন করতে পারে।
ড্যাংকশার্ডিং বা প্রোটো-ড্যাংকশার্ডিং কোনোটিই ঐতিহ্যবাহী "শার্ডিং" মডেল অনুসরণ করে না যার লক্ষ্য ব্লকচেইন-কে একাধিক অংশে বিভক্ত করা। শার্ড চেইনগুলো আর রোডম্যাপ-এর অংশ নয়। এর পরিবর্তে, ড্যাংকশার্ডিং ইথিরিয়াম স্কেলিং করার জন্য ব্লবগুলোর মধ্যে ডিস্ট্রিবিউটেড ডাটা স্যাম্পলিং ব্যবহার করে। এটি বাস্তবায়ন করা অনেক সহজ। এই মডেলটিকে কখনও কখনও "ডাটা-শার্ডিং" হিসেবে উল্লেখ করা হয়েছে।

ড্যাংকশার্ডিং কী?

ড্যাংকশার্ডিং হলো রোলআপ স্কেলিং-এর সম্পূর্ণ বাস্তবায়ন যা প্রোটো-ড্যাংকশার্ডিং দিয়ে শুরু হয়েছিল। ড্যাংকশার্ডিং রোলআপস-এর জন্য তাদের সংকুচিত লেনদেন ডাটা ডাম্প করার জন্য ইথিরিয়ামে প্রচুর পরিমাণে জায়গা নিয়ে আসবে। এর মানে হলো ইথিরিয়াম অনায়াসে শত শত পৃথক রোলআপস সমর্থন করতে সক্ষম হবে এবং প্রতি সেকেন্ডে লক্ষ লক্ষ লেনদেন বাস্তবে পরিণত করবে।

এটি যেভাবে কাজ করে তা হলো প্রোটো-ড্যাংকশার্ডিং-এ ব্লকস-এর সাথে যুক্ত ব্লবগুলোকে ছয় (6) থেকে বাড়িয়ে সম্পূর্ণ ড্যাংকশার্ডিং-এ 64-এ উন্নীত করা। প্রয়োজনীয় বাকি পরিবর্তনগুলো হলো কনসেন্সাস ক্লায়েন্ট-গুলো যেভাবে কাজ করে তার আপডেট যাতে তারা নতুন বড় ব্লবগুলো পরিচালনা করতে সক্ষম হয়। এই পরিবর্তনগুলোর মধ্যে বেশ কয়েকটি ইতিমধ্যেই ড্যাংকশার্ডিং থেকে স্বাধীন অন্যান্য উদ্দেশ্যে রোডম্যাপ-এ রয়েছে। উদাহরণস্বরূপ, ড্যাংকশার্ডিং-এর জন্য প্রপোজার-বিল্ডার সেপারেশন বাস্তবায়ন করা প্রয়োজন। এটি এমন একটি আপগ্রেড যা ব্লকস তৈরি করা এবং বিভিন্ন ভ্যালিডেটরস-এর মধ্যে ব্লকস প্রস্তাব করার কাজগুলোকে আলাদা করে। একইভাবে, ড্যাংকশার্ডিং-এর জন্য ডাটা এভেইলএবিলিটি স্যাম্পলিং প্রয়োজন, তবে এটি খুব হালকা ক্লায়েন্ট-গুলোর বিকাশের জন্যও প্রয়োজন যা খুব বেশি ঐতিহাসিক ডাটা সংরক্ষণ করে না ("স্টেটলেস ক্লায়েন্ট")।

প্রপোজার-বিল্ডার সেপারেশন প্রয়োজন যাতে পৃথক ভ্যালিডেটরস-কে 32MB ব্লব ডাটার জন্য ব্যয়বহুল প্রতিশ্রুতি এবং প্রমাণ তৈরি করতে না হয়। এটি হোম স্টেকার-দের উপর খুব বেশি চাপ ফেলবে এবং তাদের আরও শক্তিশালী হার্ডওয়্যারে বিনিয়োগ করতে হবে, যা ডিসেন্ট্রালাইজড ব্যবস্থাকে ক্ষতিগ্রস্ত করে। এর পরিবর্তে, বিশেষায়িত ব্লক বিল্ডাররা এই ব্যয়বহুল গণনামূলক কাজের দায়িত্ব নেয়। তারপর, তারা তাদের ব্লকস-গুলোকে সম্প্রচারের জন্য ব্লক প্রপোজার-দের কাছে উপলব্ধ করে। ব্লক প্রপোজার কেবল সেই ব্লকটি বেছে নেয় যা সবচেয়ে লাভজনক। যে কেউ সস্তায় এবং দ্রুত ব্লবগুলো যাচাই করতে পারে, যার মানে যেকোনো সাধারণ ভ্যালিডেটর চেক করতে পারে যে ব্লক বিল্ডাররা সততার সাথে আচরণ করছে কিনা। এটি ডিসেন্ট্রালাইজড ব্যবস্থাকে বিসর্জন না দিয়ে বড় ব্লবগুলোকে প্রসেস করার অনুমতি দেয়। খারাপ আচরণকারী ব্লক বিল্ডারদের কেবল নেটওয়ার্ক থেকে বের করে দেওয়া যেতে পারে এবং স্ল্যাশিং করা যেতে পারে - অন্যরা তাদের জায়গায় পা রাখবে কারণ ব্লক তৈরি করা একটি লাভজনক কাজ।

ভ্যালিডেটরস-দের দ্রুত এবং দক্ষতার সাথে ব্লব ডাটা যাচাই করার জন্য ডাটা এভেইলএবিলিটি স্যাম্পলিং প্রয়োজন। ডাটা এভেইলএবিলিটি স্যাম্পলিং ব্যবহার করে, ভ্যালিডেটরস-রা খুব নিশ্চিত হতে পারে যে ব্লব ডাটা উপলব্ধ ছিল এবং সঠিকভাবে প্রতিশ্রুতিবদ্ধ ছিল। প্রতিটি ভ্যালিডেটর এলোমেলোভাবে মাত্র কয়েকটি ডাটা পয়েন্ট স্যাম্পল করতে পারে এবং একটি প্রমাণ তৈরি করতে পারে, যার মানে কোনো ভ্যালিডেটর-কে পুরো ব্লব চেক করতে হবে না। যদি কোনো ডাটা অনুপস্থিত থাকে, তবে এটি দ্রুত চিহ্নিত করা হবে এবং ব্লবটি প্রত্যাখ্যান করা হবে।

বর্তমান অগ্রগতি

সম্পূর্ণ ড্যাংকশার্ডিং এখনও কয়েক বছর দূরে। ইতিমধ্যে, KZG সিরিমনি 140,000-এর বেশি অবদানের সাথে শেষ হয়েছে, এবং প্রোটো-ড্যাংকশার্ডিং-এর জন্য EIP (opens in a new tab) পরিপক্ক হয়েছে। এই প্রস্তাবটি সমস্ত টেস্টনেট-এ সম্পূর্ণরূপে বাস্তবায়িত হয়েছে, এবং 2024 সালের মার্চ মাসে Cancun-Deneb ("Dencun") নেটওয়ার্ক আপগ্রেডের সাথে মেইননেট-এ লাইভ হয়েছে।

আরও পড়ুন

পেজ সর্বশেষ আপডেট করা হয়েছে: 16 ফেব্রুয়ারী, 2026

এই নিবন্ধটি কি সহায়ক ছিল?