এড়িয়ে গিয়ে মূল কন্টেন্টে যান
Change page

লাইট ক্লায়েন্ট

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

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

একটি লাইট ক্লায়েন্ট কি

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

লাইট ক্লায়েন্ট কিভাবে কাজ করে?

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

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

লাইট ক্লায়েন্ট কেন গুরুত্বপূর্ণ?

লাইট ক্লায়েন্টগুলি গুরুত্বপূর্ণ কারণ তারা ব্যবহারকারীদের ইনকামিং ডেটা যাচাই করার অনুমতি দেয়, তাদের ডেটা প্রদানকারী সঠিক এবং সৎ বলে অন্ধভাবে বিশ্বাস করার পরিবর্তে, যখন একটি সম্পূর্ণ নোডের কম্পিউটেশনাল রিসোর্সের একটি ক্ষুদ্র অংশ ব্যবহার করে। লাইট ক্লায়েন্টরা যে ডেটা পায় তা ব্লক হেডারের সাথে মিলিয়ে পরীক্ষা করা যেতে পারে, যা তারা জানে যে 512 জন ইথেরিয়াম ভ্যালিডেটরের একটি র‍্যান্ডম সেটের অন্তত 2/3 দ্বারা স্বাক্ষরিত হয়েছে। এটি একটি খুব শক্তিশালী প্রমাণ যে ডেটা সঠিক।

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

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

একটি লাইট ক্লায়েন্ট এই সমস্যার সমাধান করে। আপনি এখনও কিছু বাহ্যিক প্রদানকারীর কাছ থেকে ডেটা অনুরোধ করেন, কিন্তু যখন আপনি ডেটা ফিরে পান তখন এটি একটি প্রুফের সাথে আসে যা আপনার লাইট নোড ব্লক হেডারে প্রাপ্ত তথ্যের সাথে পরীক্ষা করতে পারে। এর মানে হল ইথেরিয়াম কোনো বিশ্বস্ত অপারেটরের পরিবর্তে আপনার ডেটার সঠিকতা যাচাই করছে।

লাইট ক্লায়েন্টরা কী কী উদ্ভাবনকে সক্ষম করে?

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

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

এর একটি সম্প্রসারণ হলো ইন্টারনেট অফ থিংস (IoT) ডিভাইসগুলিকে সক্ষম করা। একটি লাইট ক্লায়েন্ট কিছু টোকেন ব্যালেন্স বা NFT-এর মালিকানা দ্রুত প্রমাণ করতে ব্যবহার করা যেতে পারে, সিঙ্ক কমিটি দ্বারা প্রদত্ত সমস্ত নিরাপত্তা গ্যারান্টি সহ, যা একটি IoT নেটওয়ার্কে কিছু পদক্ষেপ ট্রিগার করে। ভাবুন একটি বাইসাইকেল ভাড়ার পরিষেবা (opens in a new tab) যা একটি এমবেডেড লাইট ক্লায়েন্ট সহ একটি অ্যাপ ব্যবহার করে দ্রুত যাচাই করে যে আপনি ভাড়া পরিষেবার NFT-এর মালিক এবং যদি তাই হয়, তবে আপনার জন্য একটি বাইসাইকেল আনলক করে দেয়!

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

লাইট ক্লায়েন্টগুলি ইথেরিয়াম ওয়ালেট আপগ্রেড করতেও ব্যবহার করা যেতে পারে। একটি RPC প্রদানকারীর দেওয়া ডেটার উপর বিশ্বাস করার পরিবর্তে, আপনার ওয়ালেট একটি এমবেডেড লাইট ক্লায়েন্ট ব্যবহার করে আপনাকে উপস্থাপিত ডেটা সরাসরি যাচাই করতে পারে। এটি আপনার ওয়ালেটে নিরাপত্তা যোগ করবে। যদি আপনার RPC প্রদানকারী অসৎ হয় এবং আপনাকে ভুল ডেটা সরবরাহ করে, এমবেডেড লাইট ক্লায়েন্ট আপনাকে তা বলে দিতে পারে!

লাইট ক্লায়েন্ট ডেভেলপমেন্টের বর্তমান অবস্থা কী?

এক্সিকিউশন, কনসেন্সাস এবং সম্মিলিত এক্সিকিউশন/কনসেন্সাস লাইট ক্লায়েন্ট সহ বেশ কয়েকটি লাইট ক্লায়েন্ট ডেভেলপমেন্টের অধীনে রয়েছে। এই পৃষ্ঠাটি লেখার সময় আমরা যে লাইট ক্লায়েন্ট ইমপ্লিমেন্টেশনগুলি সম্পর্কে জানি সেগুলি হলো:

  • Lodestar (opens in a new tab): TypeScript-এ কনসেন্সাস লাইট ক্লায়েন্ট
  • Helios (opens in a new tab): Rust-এ সম্মিলিত এক্সিকিউশন এবং কনসেন্সাস লাইট ক্লায়েন্ট
  • Geth (opens in a new tab): Go-তে এক্সিকিউশন ক্লায়েন্টের জন্য লাইট মোড (ডেভেলপমেন্ট চলছে)
  • Nimbus (opens in a new tab): Nim-এ কনসেন্সাস লাইট ক্লায়েন্ট

আমাদের জানামতে, এগুলির কোনোটিই এখনও প্রোডাকশন-রেডি বলে বিবেচিত নয়।

লাইট ক্লায়েন্টরা যেভাবে ইথেরিয়াম ডেটা অ্যাক্সেস করতে পারে তা উন্নত করার জন্য অনেক কাজ করা হচ্ছে। বর্তমানে, লাইট ক্লায়েন্টরা একটি ক্লায়েন্ট/সার্ভার মডেল ব্যবহার করে সম্পূর্ণ নোডগুলিতে RPC অনুরোধের উপর নির্ভর করে, কিন্তু ভবিষ্যতে ডেটা আরও বিকেন্দ্রীভূত উপায়ে অনুরোধ করা যেতে পারে, যেমন পোর্টাল নেটওয়ার্ক (opens in a new tab) এর মতো একটি ডেডিকেটেড নেটওয়ার্ক ব্যবহার করে, যা পিয়ার-টু-পিয়ার গসিপ প্রোটোকল ব্যবহার করে লাইট ক্লায়েন্টদের ডেটা পরিবেশন করতে পারে।

অন্যান্য রোডম্যাপ আইটেম যেমন Verkle trees এবং statelessness অবশেষে লাইট ক্লায়েন্টদের নিরাপত্তা গ্যারান্টিকে সম্পূর্ণ ক্লায়েন্টদের সমান করে তুলবে।

আরও পড়ুন

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