সিঙ্গেল স্লট ফাইনালিটি
একটি ইথিরিয়াম ব্লক ফাইনাল হতে প্রায় 15 মিনিট সময় লাগে। তবে, আমরা ইথিরিয়ামের কনসেন্সাস মেকানিজমকে আরও দক্ষতার সাথে ব্লকস ভ্যালিডেট করতে এবং টাইম-টু-ফাইনালিটি নাটকীয়ভাবে হ্রাস করতে পারি। 15 মিনিট অপেক্ষা করার পরিবর্তে, ব্লকস একই স্লটে প্রস্তাবিত এবং ফাইনাল হতে পারে। এই ধারণাটি সিঙ্গেল স্লট ফাইনালিটি (SSF) নামে পরিচিত।
ফাইনালিটি কী?
ইথিরিয়ামের প্রুফ-অফ-স্টেক ভিত্তিক কনসেন্সাস মেকানিজম-এ, ফাইনালিটি বলতে এমন একটি গ্যারান্টি বোঝায় যেখানে মোট স্টেক করা ETH-এর অন্তত 33% বার্ন না করে ব্লকচেইন থেকে কোনো ব্লক পরিবর্তন বা মুছে ফেলা যায় না। এটি হলো 'ক্রিপ্টো-ইকোনমিক' নিরাপত্তা কারণ চেইনের ক্রম বা বিষয়বস্তু পরিবর্তনের সাথে যুক্ত অত্যন্ত উচ্চ ব্যয়ের কারণে এই আত্মবিশ্বাস আসে, যা যেকোনো যুক্তিবাদী অর্থনৈতিক অংশগ্রহণকারীকে এটি চেষ্টা করা থেকে বিরত রাখবে।
কেন দ্রুত ফাইনালিটির লক্ষ্য রাখা হয়?
ফাইনালিটির বর্তমান সময়টি অনেক দীর্ঘ বলে প্রমাণিত হয়েছে। বেশিরভাগ ব্যবহারকারী ফাইনালিটির জন্য 15 মিনিট অপেক্ষা করতে চান না, এবং যেসব অ্যাপ ও এক্সচেঞ্জ উচ্চ লেনদেন থ্রুপুট চায়, তাদের লেনদেন স্থায়ী হওয়ার বিষয়ে নিশ্চিত হতে এত দীর্ঘ সময় অপেক্ষা করা অসুবিধাজনক। একটি ব্লকের প্রস্তাব এবং ফাইনাল হওয়ার মধ্যে বিলম্ব থাকার কারণে ছোট রিঅর্গ (reorgs)-এর সুযোগ তৈরি হয়, যা কোনো আক্রমণকারী নির্দিষ্ট ব্লকস সেন্সর করতে বা MEV বের করতে ব্যবহার করতে পারে। পর্যায়ক্রমে ব্লকস আপগ্রেড করার মেকানিজমটিও বেশ জটিল এবং নিরাপত্তা দুর্বলতাগুলো বন্ধ করার জন্য এটি বেশ কয়েকবার প্যাচ করা হয়েছে, যা এটিকে ইথিরিয়াম কোডবেসের এমন একটি অংশে পরিণত করেছে যেখানে সূক্ষ্ম বাগ দেখা দেওয়ার সম্ভাবনা বেশি। ফাইনালিটির সময় কমিয়ে একটি সিঙ্গেল স্লটে নিয়ে আসার মাধ্যমে এই সমস্ত সমস্যা দূর করা যেতে পারে।
ডিসেন্ট্রালাইজেশন / সময় / ওভারহেড ট্রেডঅফ
ফাইনালিটি গ্যারান্টি কোনো নতুন ব্লকের তাৎক্ষণিক বৈশিষ্ট্য নয়; একটি নতুন ব্লক ফাইনাল হতে সময় লাগে। এর কারণ হলো, নেটওয়ার্ক-এ মোট স্টেক করা ETH-এর অন্তত 2/3 অংশের প্রতিনিধিত্বকারী ভ্যালিডেটরস-কে ব্লকটির জন্য ভোট ("এটেস্ট") দিতে হয় যাতে এটি ফাইনাল হিসেবে বিবেচিত হতে পারে। নেটওয়ার্ক-এর প্রতিটি ভ্যালিডেটিং নোড-কে অন্যান্য নোড থেকে আসা এটেস্টেশন প্রসেস করতে হয় যাতে জানা যায় যে একটি ব্লক সেই 2/3 থ্রেশহোল্ড অর্জন করেছে কি না।
ফাইনাল হওয়ার জন্য যত কম সময় দেওয়া হবে, প্রতিটি নোড-এ তত বেশি কম্পিউটিং পাওয়ার প্রয়োজন হবে কারণ এটেস্টেশন প্রসেসিং দ্রুত করতে হবে। এছাড়াও, নেটওয়ার্ক-এ যত বেশি ভ্যালিডেটিং নোড থাকবে, প্রতিটি ব্লকের জন্য তত বেশি এটেস্টেশন প্রসেস করতে হবে, যা প্রয়োজনীয় প্রসেসিং পাওয়ার আরও বাড়িয়ে দেয়। যত বেশি প্রসেসিং পাওয়ার প্রয়োজন হবে, তত কম মানুষ অংশগ্রহণ করতে পারবে কারণ প্রতিটি ভ্যালিডেটিং নোড চালানোর জন্য আরও ব্যয়বহুল হার্ডওয়্যারের প্রয়োজন হবে। ব্লকস-এর মধ্যে সময় বাড়ালে প্রতিটি নোড-এ প্রয়োজনীয় কম্পিউটিং পাওয়ার কমে যায় কিন্তু ফাইনালিটির সময়ও দীর্ঘ হয়, কারণ এটেস্টেশন আরও ধীরগতিতে প্রসেস করা হয়।
অতএব, ওভারহেড (কম্পিউটিং পাওয়ার), ডিসেন্ট্রালাইজেশন (চেইন ভ্যালিডেট করতে অংশগ্রহণ করতে পারে এমন নোড-এর সংখ্যা) এবং ফাইনালিটির সময়ের মধ্যে একটি ট্রেড-অফ রয়েছে। আদর্শ সিস্টেম ন্যূনতম কম্পিউটিং পাওয়ার, সর্বোচ্চ ডিসেন্ট্রালাইজেশন এবং ন্যূনতম ফাইনালিটির সময়ের মধ্যে ভারসাম্য বজায় রাখে।
ইথিরিয়ামের বর্তমান কনসেন্সাস মেকানিজম এই তিনটি প্যারামিটারের মধ্যে ভারসাম্য বজায় রেখেছে এভাবে:
- ন্যূনতম স্টেক 32 ETH নির্ধারণ করে। এটি ভ্যালিডেটরস-এর এটেস্টেশন সংখ্যার একটি ঊর্ধ্বসীমা নির্ধারণ করে যা পৃথক নোড দ্বারা প্রসেস করতে হয়, এবং এর ফলে প্রতিটি নোড-এর জন্য কম্পিউটেশনাল প্রয়োজনীয়তার একটি ঊর্ধ্বসীমা তৈরি হয়।
- ফাইনালিটির সময় ~15 মিনিট নির্ধারণ করে। এটি সাধারণ হোম কম্পিউটারে চলা ভ্যালিডেটরস-কে প্রতিটি ব্লকের জন্য নিরাপদে এটেস্টেশন প্রসেস করার পর্যাপ্ত সময় দেয়।
বর্তমান মেকানিজম ডিজাইনের সাথে, ফাইনালিটির সময় কমানোর জন্য, নেটওয়ার্ক-এ ভ্যালিডেটরস-এর সংখ্যা কমানো বা প্রতিটি নোড-এর জন্য হার্ডওয়্যারের প্রয়োজনীয়তা বাড়ানো প্রয়োজন। তবে, এটেস্টেশন প্রসেস করার পদ্ধতিতে এমন কিছু উন্নতি করা যেতে পারে যা প্রতিটি নোড-এ ওভারহেড না বাড়িয়েই আরও বেশি এটেস্টেশন গণনা করার সুযোগ দেয়। আরও দক্ষ প্রসেসিং দুটি এপোক-এর পরিবর্তে একটি সিঙ্গেল স্লটের মধ্যেই ফাইনালিটি নির্ধারণ করার সুযোগ দেবে।
SSF-এর পথসমূহ
ইথিরিয়াম কনসেন্সাস মেকানিজম ডিজাইন করার পর থেকে, সিগনেচার অ্যাগ্রিগেশন স্কিম (BLS) প্রাথমিকভাবে যা ভাবা হয়েছিল তার চেয়ে অনেক বেশি স্কেলেবল বলে প্রমাণিত হয়েছে, পাশাপাশি সিগনেচার প্রসেস এবং ভেরিফাই করার জন্য ক্লায়েন্ট-দের ক্ষমতাও উন্নত হয়েছে। দেখা গেছে যে বিপুল সংখ্যক ভ্যালিডেটরস থেকে এটেস্টেশন প্রসেস করা আসলে একটি সিঙ্গেল স্লটের মধ্যেই সম্ভব। উদাহরণস্বরূপ, এক মিলিয়ন ভ্যালিডেটরস প্রত্যেকে প্রতিটি স্লটে দুবার ভোট দিলে এবং স্লটের সময় 16 সেকেন্ডে সামঞ্জস্য করা হলে, স্লটের মধ্যে সমস্ত 1 মিলিয়ন এটেস্টেশন প্রসেস করার জন্য নোড-গুলোকে প্রতি সেকেন্ডে ন্যূনতম 125,000 অ্যাগ্রিগেশন হারে সিগনেচার ভেরিফাই করতে হবে। বাস্তবে, একটি সাধারণ কম্পিউটারে একটি সিগনেচার ভেরিফিকেশন করতে প্রায় 500 ন্যানোসেকেন্ড সময় লাগে, যার মানে 125,000 ভেরিফিকেশন ~62.5 মিলি সেকেন্ডে করা যেতে পারে - যা এক সেকেন্ডের থ্রেশহোল্ডের অনেক নিচে।
প্রতি স্লটে এলোমেলোভাবে নির্বাচিত 125,000 ভ্যালিডেটরস-এর সুপারকমিটি তৈরি করে আরও দক্ষতা অর্জন করা যেতে পারে। শুধুমাত্র এই ভ্যালিডেটরস-রাই একটি ব্লকে ভোট দিতে পারে এবং তাই ভ্যালিডেটরস-এর এই সাবসেটটিই সিদ্ধান্ত নেয় যে একটি ব্লক ফাইনাল হবে কি না। এটি একটি ভালো ধারণা কি না তা নির্ভর করে কমিউনিটি ইথিরিয়াম-এর ওপর একটি সফল আক্রমণকে কতটা ব্যয়বহুল করতে চায় তার ওপর। এর কারণ হলো মোট স্টেক করা ইথারের 2/3 অংশের পরিবর্তে, একজন আক্রমণকারী সেই সুপারকমিটিতে স্টেক করা ইথারের 2/3 অংশ দিয়ে একটি অসৎ ব্লক ফাইনাল করতে পারে। এটি এখনও গবেষণার একটি সক্রিয় ক্ষেত্র, তবে এটি যুক্তিসঙ্গত বলে মনে হয় যে সুপারকমিটি প্রয়োজন হওয়ার মতো যথেষ্ট বড় একটি ভ্যালিডেটর সেটের জন্য, সেই সাবকমিটিগুলোর একটিতে আক্রমণ করার খরচ অত্যন্ত বেশি হবে (যেমন, ETH-এ আক্রমণের খরচ হবে 2/3 * 125,000 * 32 = ~2.6 মিলিয়ন ETH)। ভ্যালিডেটর সেটের আকার বাড়িয়ে আক্রমণের খরচ সামঞ্জস্য করা যেতে পারে (যেমন, ভ্যালিডেটর আকার এমনভাবে টিউন করা যাতে আক্রমণের খরচ 1 মিলিয়ন ইথার, 4 মিলিয়ন ইথার, 10 মিলিয়ন ইথার ইত্যাদির সমান হয়)। কমিউনিটির প্রাথমিক জরিপগুলো (opens in a new tab) থেকে মনে হয় যে 1-2 মিলিয়ন ইথার আক্রমণের একটি গ্রহণযোগ্য খরচ, যার মানে প্রতি সুপারকমিটিতে ~65,536 - 97,152 ভ্যালিডেটরস।
তবে, ভেরিফিকেশন আসল বাধা নয় - সিগনেচার অ্যাগ্রিগেশনই মূলত ভ্যালিডেটর নোড-গুলোকে চ্যালেঞ্জের মুখে ফেলে। সিগনেচার অ্যাগ্রিগেশন স্কেল করার জন্য সম্ভবত প্রতিটি সাবনেটে ভ্যালিডেটরস-এর সংখ্যা বাড়ানো, সাবনেটের সংখ্যা বাড়ানো, বা অ্যাগ্রিগেশনের অতিরিক্ত লেয়ার যোগ করার (অর্থাৎ, কমিটির কমিটি বাস্তবায়ন) প্রয়োজন হবে। সমাধানের একটি অংশ হতে পারে বিশেষায়িত অ্যাগ্রিগেটরদের অনুমতি দেওয়া - ঠিক যেভাবে প্রপোজার-বিল্ডার সেপারেশন (PBS) এবং ডাঙ্কশার্ডিং-এর অধীনে ব্লক তৈরি এবং রোলআপ ডাটার জন্য কমিটমেন্ট জেনারেট করার কাজ বিশেষায়িত ব্লক বিল্ডারদের আউটসোর্স করা হবে।
SSF-এ ফর্ক-চয়েস রুলের ভূমিকা কী?
আজকের কনসেন্সাস মেকানিজম ফাইনালিটি গ্যাজেট (যে এ্যালগরিদম নির্ধারণ করে যে 2/3 ভ্যালিডেটরস একটি নির্দিষ্ট চেইনে এটেস্ট করেছে কি না) এবং ফর্ক চয়েস রুল (যে এ্যালগরিদম সিদ্ধান্ত নেয় একাধিক বিকল্প থাকলে কোন চেইনটি সঠিক)-এর মধ্যে একটি দৃঢ় সংযোগের ওপর নির্ভর করে। ফর্ক চয়েস এ্যালগরিদম শুধুমাত্র সর্বশেষ ফাইনাল হওয়া ব্লকের পরবর্তী ব্লকস বিবেচনা করে। SSF-এর অধীনে ফর্ক চয়েস রুলের বিবেচনা করার মতো কোনো ব্লকস থাকবে না, কারণ ব্লক প্রস্তাবিত হওয়ার একই স্লটে ফাইনালিটি ঘটে। এর মানে হলো SSF-এর অধীনে যেকোনো সময় হয় ফর্ক চয়েস এ্যালগরিদম নয়তো ফাইনালিটি গ্যাজেট সক্রিয় থাকবে। ফাইনালিটি গ্যাজেট সেই ব্লকস ফাইনাল করবে যেখানে 2/3 ভ্যালিডেটরস অনলাইনে ছিল এবং সততার সাথে এটেস্ট করছিল। যদি কোনো ব্লক 2/3 থ্রেশহোল্ড অতিক্রম করতে সক্ষম না হয়, তবে কোন চেইনটি অনুসরণ করতে হবে তা নির্ধারণ করতে ফর্ক চয়েস রুল চালু হবে। এটি ইনঅ্যাক্টিভিটি লিক মেকানিজম বজায় রাখার একটি সুযোগও তৈরি করে যা এমন একটি চেইন পুনরুদ্ধার করে যেখানে >1/3 ভ্যালিডেটরস অফলাইনে চলে যায়, যদিও এতে কিছু অতিরিক্ত সূক্ষ্মতা রয়েছে।
অমীমাংসিত সমস্যাসমূহ
প্রতি সাবনেটে ভ্যালিডেটরস-এর সংখ্যা বাড়িয়ে অ্যাগ্রিগেশন স্কেল করার সমস্যা হলো এটি পিয়ার-টু-পিয়ার নেটওয়ার্ক-এর ওপর বেশি লোড তৈরি করে। অ্যাগ্রিগেশনের লেয়ার যোগ করার সমস্যা হলো এটি ইঞ্জিনিয়ারিং করা বেশ জটিল এবং ল্যাটেন্সি বাড়ায় (অর্থাৎ, সমস্ত সাবনেট অ্যাগ্রিগেটরদের কাছ থেকে শুনতে ব্লক প্রপোজার-এর বেশি সময় লাগতে পারে)। এমনকি BLS সিগনেচার অ্যাগ্রিগেশনের সাথেও, প্রতিটি স্লটে যতটা প্রসেস করা সম্ভব তার চেয়ে বেশি সক্রিয় ভ্যালিডেটরস নেটওয়ার্ক-এ থাকলে সেই পরিস্থিতি কীভাবে সামাল দেওয়া হবে তা স্পষ্ট নয়। একটি সম্ভাব্য সমাধান হলো, যেহেতু সমস্ত ভ্যালিডেটরস প্রতিটি স্লটে এটেস্ট করে এবং SSF-এর অধীনে কোনো কমিটি নেই, তাই কার্যকর ব্যালেন্সের ওপর 32 ETH ক্যাপ সম্পূর্ণভাবে সরিয়ে দেওয়া যেতে পারে, যার মানে একাধিক ভ্যালিডেটরস পরিচালনাকারী অপারেটররা তাদের স্টেক একত্রিত করতে পারে এবং কম চালাতে পারে, যা পুরো ভ্যালিডেটর সেটের হিসাব রাখার জন্য ভ্যালিডেটিং নোড-গুলোকে যে সংখ্যক মেসেজ প্রসেস করতে হয় তা কমিয়ে দেয়। এটি বড় স্টেকার-দের তাদের ভ্যালিডেটরস একত্রিত করতে সম্মত হওয়ার ওপর নির্ভর করে। যেকোনো সময় ভ্যালিডেটরস-এর সংখ্যা বা স্টেক করা ETH-এর পরিমাণের ওপর একটি নির্দিষ্ট ক্যাপ আরোপ করাও সম্ভব। তবে, এর জন্য কোন ভ্যালিডেটরস-কে অংশগ্রহণ করার অনুমতি দেওয়া হবে এবং কাকে দেওয়া হবে না তা সিদ্ধান্ত নেওয়ার জন্য কিছু মেকানিজম প্রয়োজন, যা অনাকাঙ্ক্ষিত গৌণ প্রভাব তৈরি করতে পারে।
বর্তমান অগ্রগতি
SSF গবেষণা পর্যায়ে রয়েছে। এটি কয়েক বছরের জন্য চালু হওয়ার আশা করা হচ্ছে না, সম্ভবত ভার্কেল ট্রি এবং ডাঙ্কশার্ডিং-এর মতো অন্যান্য উল্লেখযোগ্য আপগ্রেডের পরে।
আরও পড়ুন
- EDCON 2022-এ SSF নিয়ে ভিটালিক (opens in a new tab)
- ভিটালিকের নোটস: সিঙ্গেল স্লট ফাইনালিটির পথ (opens in a new tab)
পেজ সর্বশেষ আপডেট: ২৩ ফেব্রুয়ারী, ২০২৬