স্মার্ট কন্ট্র্যাক্ট যাচাই করা
পৃষ্ঠাটি সর্বশেষ আপডেট করা হয়েছে: ২২ অক্টোবর, ২০২৫
স্মার্ট কন্ট্র্যাক্টগুলি “ট্রাস্টলেস” হওয়ার জন্য ডিজাইন করা হয়েছে, যার অর্থ ব্যবহারকারীদের একটি কন্ট্র্যাক্টের সাথে ইন্টারঅ্যাক্ট করার আগে তৃতীয় পক্ষের (যেমন, ডেভেলপার এবং কোম্পানি) উপর বিশ্বাস করার প্রয়োজন নেই। ট্রাস্টলেসনেসের জন্য একটি পূর্বশর্ত হিসাবে, ব্যবহারকারী এবং অন্যান্য ডেভেলপারদের অবশ্যই একটি স্মার্ট কন্ট্র্যাক্টের সোর্স কোড যাচাই করতে সক্ষম হতে হবে। সোর্স কোড যাচাইকরণ ব্যবহারকারী এবং ডেভেলপারদের নিশ্চিত করে যে প্রকাশিত কন্ট্র্যাক্ট কোডটি ইথেরিয়াম ব্লকচেইনে কন্ট্র্যাক্ট অ্যাড্রেসে চলমান একই কোড।
"সোর্স কোড যাচাইকরণ" এবং "প্রথাগত যাচাইকরণ"-এর মধ্যে পার্থক্য করা গুরুত্বপূর্ণ। সোর্স কোড যাচাইকরণ, যা নীচে বিস্তারিতভাবে ব্যাখ্যা করা হবে, এটি একটি উচ্চ-স্তরের ভাষায় (যেমন, সলিডিটি) একটি স্মার্ট কন্ট্র্যাক্টের প্রদত্ত সোর্স কোডটি কন্ট্র্যাক্ট অ্যাড্রেসে কার্যকর করার জন্য একই বাইটকোডে কম্পাইল করা হয়েছে কিনা তা যাচাই করাকে বোঝায়। তবে, প্রথাগত যাচাইকরণ একটি স্মার্ট কন্ট্র্যাক্টের সঠিকতা যাচাই করার বর্ণনা দেয়, যার অর্থ কন্ট্র্যাক্টটি প্রত্যাশা অনুযায়ী আচরণ করে। যদিও প্রসঙ্গ-নির্ভর, কন্ট্র্যাক্ট যাচাইকরণ সাধারণত সোর্স কোড যাচাইকরণকে বোঝায়।
সোর্স কোড যাচাইকরণ কী?
Ethereum Virtual Machine (EVM)-এ একটি স্মার্ট কন্ট্র্যাক্ট ডিপ্লয় করার আগে, ডেভেলপাররা কন্ট্র্যাক্টের সোর্স কোড—Solidity-তে লেখা নির্দেশাবলী বা অন্য কোনো উচ্চ-স্তরের প্রোগ্রামিং ভাষা—কম্পাইল করে বাইটকোডে রূপান্তর করে। যেহেতু EVM উচ্চ-স্তরের নির্দেশাবলী বুঝতে পারে না, তাই EVM-এ কন্ট্র্যাক্টের যুক্তি কার্যকর করার জন্য সোর্স কোডকে বাইটকোডে (অর্থাৎ, নিম্ন-স্তরের, মেশিনের নির্দেশাবলী) কম্পাইল করা প্রয়োজন।
সোর্স কোড যাচাইকরণ হলো একটি স্মার্ট কন্ট্র্যাক্টের সোর্স কোড এবং কন্ট্র্যাক্ট তৈরির সময় ব্যবহৃত কম্পাইল করা বাইটকোডের তুলনা করে কোনো পার্থক্য শনাক্ত করা। স্মার্ট কন্ট্র্যাক্ট যাচাই করা গুরুত্বপূর্ণ কারণ বিজ্ঞাপিত কন্ট্র্যাক্ট কোডটি ব্লকচেইনে যা চলে তার থেকে ভিন্ন হতে পারে।
স্মার্ট কন্ট্র্যাক্ট যাচাইকরণ মেশিন কোড না পড়েই, এটি যে উচ্চ-স্তরের ভাষায় লেখা হয়েছে তার মাধ্যমে একটি কন্ট্র্যাক্ট কী করে তা তদন্ত করতে সক্ষম করে। ফাংশন, মান, এবং সাধারণত ভেরিয়েবলের নাম এবং মন্তব্যগুলি মূল সোর্স কোডের সাথে একই থাকে যা কম্পাইল এবং ডিপ্লয় করা হয়। এটি কোড পড়া অনেক সহজ করে তোলে। সোর্স যাচাইকরণ কোড ডকুমেন্টেশনের জন্যও বিধান করে, যাতে শেষ-ব্যবহারকারীরা জানতে পারে যে একটি স্মার্ট কন্ট্র্যাক্ট কী করার জন্য ডিজাইন করা হয়েছে।
সম্পূর্ণ যাচাইকরণ কী?
সোর্স কোডের কিছু অংশ রয়েছে যা কম্পাইল করা বাইটকোডকে প্রভাবিত করে না যেমন মন্তব্য বা ভেরিয়েবলের নাম। তার মানে ভিন্ন ভেরিয়েবলের নাম এবং ভিন্ন মন্তব্য সহ দুটি সোর্স কোড উভয়ই একই কন্ট্র্যাক্ট যাচাই করতে সক্ষম হবে। এর ফলে, একজন দূষিত অভিনেতা সোর্স কোডের ভিতরে প্রতারণামূলক মন্তব্য যোগ করতে পারে বা বিভ্রান্তিকর ভেরিয়েবলের নাম দিতে পারে এবং মূল সোর্স কোড থেকে ভিন্ন একটি সোর্স কোড দিয়ে কন্ট্র্যাক্টটি যাচাই করাতে পারে।
সোর্স কোডের নির্ভুলতার জন্য একটি ক্রিপ্টোগ্রাফিক গ্যারান্টি এবং কম্পাইলেশন তথ্যের একটি ফিঙ্গারপ্রিন্ট হিসাবে কাজ করার জন্য বাইটকোডে অতিরিক্ত ডেটা যুক্ত করে এটি এড়ানো সম্ভব। প্রয়োজনীয় তথ্য [Solidity-র কন্ট্র্যাক্ট মেটাডেটা]-তে (https://docs.soliditylang.org/en/v0.8.15/metadata.html (opens in a new tab)) পাওয়া যায় এবং এই ফাইলের হ্যাস একটি কন্ট্র্যাক্টের বাইটকোডের সাথে যুক্ত করা হয়। আপনি এটি মেটাডেটা প্লেগ্রাউন্ডে (opens in a new tab) কার্যকর অবস্থায় দেখতে পারেন
মেটাডেটা ফাইলে সোর্স ফাইল এবং তাদের হ্যাস সহ কন্ট্র্যাক্টের কম্পাইলেশন সম্পর্কে তথ্য থাকে। মানে, যদি কোনো কম্পাইলেশন সেটিংস বা এমনকি সোর্স ফাইলগুলির মধ্যে একটিতে একটি বাইটও পরিবর্তন হয়, তবে মেটাডেটা ফাইলটি পরিবর্তিত হয়। ফলস্বরূপ মেটাডেটা ফাইলের হ্যাস, যা বাইটকোডের সাথে যুক্ত করা হয়, তাও পরিবর্তিত হয়। এর মানে হল যদি একটি কন্ট্র্যাক্টের বাইটকোড + সংযুক্ত মেটাডেটা হ্যাস প্রদত্ত সোর্স কোড এবং কম্পাইলেশন সেটিংসের সাথে মিলে যায়, আমরা নিশ্চিত হতে পারি যে এটি মূল কম্পাইলেশনে ব্যবহৃত ঠিক একই সোর্স কোড, এমনকি একটি বাইটও ভিন্ন নয়।
এই ধরনের যাচাইকরণ যা মেটাডেটা হ্যাসকে লিভারেজ করে তাকে "সম্পূর্ণ যাচাইকরণ (opens in a new tab)" (এছাড়াও "নিখুঁত যাচাইকরণ") হিসাবে উল্লেখ করা হয়। যদি মেটাডেটা হ্যাসগুলি মেলে না বা যাচাইকরণে বিবেচনা করা না হয় তবে এটি একটি "আংশিক মিল" হবে, যা বর্তমানে কন্ট্র্যাক্ট যাচাই করার আরও সাধারণ উপায়। সম্পূর্ণ যাচাইকরণ ছাড়া যাচাইকৃত সোর্স কোডে প্রতিফলিত হবে না এমন দূষিত কোড প্রবেশ করানো (opens in a new tab) সম্ভব। বেশিরভাগ ডেভেলপার সম্পূর্ণ যাচাইকরণ সম্পর্কে সচেতন নন এবং তাদের কম্পাইলেশনের মেটাডেটা ফাইল রাখেন না, তাই আংশিক যাচাইকরণ এখন পর্যন্ত কন্ট্র্যাক্ট যাচাই করার ডি ফ্যাক্টো পদ্ধতি হয়ে দাঁড়িয়েছে।
সোর্স কোড যাচাইকরণ কেন গুরুত্বপূর্ণ?
ট্রাস্টলেসনেস
ট্রাস্টলেসনেস তর্কযোগ্যভাবে স্মার্ট কন্ট্র্যাক্ট এবং ডিসেন্ট্রালাইজড এপ্লিকেশন (ডিএ্যাপস)-এর জন্য সবচেয়ে বড় ভিত্তি। স্মার্ট কন্ট্র্যাক্টগুলি “অপরিবর্তনীয়” এবং পরিবর্তন করা যায় না; একটি কন্ট্র্যাক্ট শুধুমাত্র ডিপ্লয়মেন্টের সময় কোডে সংজ্ঞায়িত ব্যবসায়িক যুক্তি কার্যকর করবে। এর মানে হল ডেভেলপার এবং এন্টারপ্রাইজগুলি Ethereum-এ ডিপ্লয় করার পরে একটি কন্ট্র্যাক্টের কোড পরিবর্তন করতে পারে না।
একটি স্মার্ট কন্ট্র্যাক্টকে ট্রাস্টলেস হতে হলে, কন্ট্র্যাক্ট কোডটি স্বাধীন যাচাইকরণের জন্য উপলব্ধ থাকা উচিত। যদিও প্রতিটি স্মার্ট কন্ট্র্যাক্টের জন্য কম্পাইল করা বাইটকোড ব্লকচেইনে সর্বজনীনভাবে উপলব্ধ, নিম্ন-স্তরের ভাষা বোঝা কঠিন—ডেভেলপার এবং ব্যবহারকারী উভয়ের জন্যই।
প্রকল্পগুলি তাদের কন্ট্র্যাক্টের সোর্স কোড প্রকাশ করে বিশ্বাসের অনুমান হ্রাস করে। কিন্তু এটি আরেকটি সমস্যার দিকে নিয়ে যায়: প্রকাশিত সোর্স কোডটি কন্ট্র্যাক্ট বাইটকোডের সাথে মেলে কিনা তা যাচাই করা কঠিন। এই পরিস্থিতিতে, ট্রাস্টলেসনেসের মূল্য হারিয়ে যায় কারণ ব্যবহারকারীদের ব্লকচেইনে এটি ডিপ্লয় করার আগে ডেভেলপারদের উপর বিশ্বাস করতে হয় যে তারা কন্ট্র্যাক্টের ব্যবসায়িক যুক্তি পরিবর্তন করবে না (অর্থাৎ, বাইটকোড পরিবর্তন করে)।
সোর্স কোড যাচাইকরণ টুলগুলি গ্যারান্টি দেয় যে একটি স্মার্ট কন্ট্র্যাক্টের সোর্স কোড ফাইলগুলি অ্যাসেম্বলি কোডের সাথে মেলে। ফলাফল হল একটি ট্রাস্টলেস ইকোসিস্টেম, যেখানে ব্যবহারকারীরা তৃতীয় পক্ষকে অন্ধভাবে বিশ্বাস করে না এবং পরিবর্তে একটি কন্ট্র্যাক্টে অর্থ জমা করার আগে কোড যাচাই করে।
ব্যবহারকারীর নিরাপত্তা
স্মার্ট কন্ট্র্যাক্টের সাথে, সাধারণত অনেক টাকা ঝুঁকির মধ্যে থাকে। এটি ব্যবহার করার আগে উচ্চতর নিরাপত্তা গ্যারান্টি এবং একটি স্মার্ট কন্ট্র্যাক্টের যুক্তি যাচাই করার আহ্বান জানায়। সমস্যা হল যে অসাধু ডেভেলপাররা একটি স্মার্ট কন্ট্র্যাক্টে দূষিত কোড প্রবেশ করিয়ে ব্যবহারকারীদের প্রতারিত করতে পারে। যাচাইকরণ ছাড়া, দূষিত স্মার্ট কন্ট্র্যাক্টগুলিতে ব্যাকডোর (opens in a new tab), বিতর্কিত অ্যাক্সেস কন্ট্রোল মেকানিজম, শোষণযোগ্য দুর্বলতা এবং অন্যান্য জিনিস থাকতে পারে যা ব্যবহারকারীর নিরাপত্তাকে বিপন্ন করে এবং যা অলক্ষিত থেকে যাবে।
একটি স্মার্ট কন্ট্র্যাক্টের সোর্স কোড ফাইল প্রকাশ করা আগ্রহী পক্ষগুলির জন্য, যেমন অডিটরদের, সম্ভাব্য অ্যাটাক ভেক্টরের জন্য কন্ট্র্যাক্টটি মূল্যায়ন করা সহজ করে তোলে। একাধিক পক্ষ স্বাধীনভাবে একটি স্মার্ট কন্ট্র্যাক্ট যাচাই করার ফলে, ব্যবহারকারীরা এর নিরাপত্তার শক্তিশালী গ্যারান্টি পায়।
ইথেরিয়াম স্মার্ট কন্ট্র্যাক্টের জন্য সোর্স কোড কীভাবে যাচাই করবেন
Ethereum-এ একটি স্মার্ট কন্ট্র্যাক্ট ডিপ্লয় করার জন্য একটি ডেটা পেলোড (কম্পাইল করা বাইটকোড) সহ একটি বিশেষ অ্যাড্রেসে একটি ট্রানজ্যাকশন পাঠাতে হয়। ডেটা পেলোডটি সোর্স কোড কম্পাইল করে তৈরি করা হয়, এর সাথে ট্রানজ্যাকশনের ডেটা পেলোডে কন্ট্র্যাক্ট ইনস্ট্যান্সের কনস্ট্রাক্টর আর্গুমেন্টস (opens in a new tab) যুক্ত করা হয়। কম্পাইলেশন ডিটারমিনিস্টিক, যার অর্থ এটি সর্বদা একই আউটপুট (অর্থাৎ, কন্ট্র্যাক্ট বাইটকোড) তৈরি করে যদি একই সোর্স ফাইল এবং কম্পাইলেশন সেটিংস (যেমন, কম্পাইলার সংস্করণ, অপটিমাইজার) ব্যবহার করা হয়।
একটি স্মার্ট কন্ট্র্যাক্ট যাচাই করার ক্ষেত্রে মূলত নিম্নলিখিত পদক্ষেপগুলি জড়িত:
-
একটি কম্পাইলারে সোর্স ফাইল এবং কম্পাইলেশন সেটিংস ইনপুট করুন।
-
কম্পাইলার কন্ট্র্যাক্টের বাইটকোড আউটপুট করে
-
একটি নির্দিষ্ট অ্যাড্রেসে ডিপ্লয় করা কন্ট্র্যাক্টের বাইটকোড পান
-
ডিপ্লয় করা বাইটকোডের সাথে পুনরায় কম্পাইল করা বাইটকোডের তুলনা করুন। যদি কোডগুলি মিলে যায়, তাহলে কন্ট্র্যাক্টটি প্রদত্ত সোর্স কোড এবং কম্পাইলেশন সেটিংস দিয়ে যাচাই করা হয়।
-
অতিরিক্তভাবে, যদি বাইটকোডের শেষে থাকা মেটাডেটা হ্যাসগুলি মিলে যায়, তবে এটি একটি সম্পূর্ণ মিল হবে।
মনে রাখবেন যে এটি যাচাইকরণের একটি সরল বর্ণনা এবং অনেক ব্যতিক্রম রয়েছে যা এর সাথে কাজ করবে না, যেমন অপরিবর্তনীয় ভেরিয়েবল (opens in a new tab) থাকা।
সোর্স কোড যাচাইকরণ টুল
কন্ট্র্যাক্ট যাচাই করার প্রথাগত প্রক্রিয়াটি জটিল হতে পারে। এই কারণেই আমাদের কাছে Ethereum-এ ডিপ্লয় করা স্মার্ট কন্ট্র্যাক্টের জন্য সোর্স কোড যাচাই করার টুল রয়েছে। এই টুলগুলি সোর্স কোড যাচাইকরণের বড় অংশ স্বয়ংক্রিয় করে এবং ব্যবহারকারীদের সুবিধার জন্য যাচাইকৃত কন্ট্র্যাক্টগুলি কিউরেটও করে।
Etherscan
যদিও বেশিরভাগ ক্ষেত্রে একটি Ethereum ব্লকচেইন এক্সপ্লোরার হিসাবে পরিচিত, Etherscan স্মার্ট কন্ট্র্যাক্ট ডেভেলপার এবং ব্যবহারকারীদের জন্য একটি সোর্স কোড যাচাইকরণ পরিষেবা (opens in a new tab)ও অফার করে।
Etherscan আপনাকে মূল ডেটা পেলোড (সোর্স কোড, লাইব্রেরি অ্যাড্রেস, কম্পাইলার সেটিংস, কন্ট্র্যাক্ট অ্যাড্রেস, ইত্যাদি) থেকে কন্ট্র্যাক্ট বাইটকোড পুনরায় কম্পাইল করার অনুমতি দেয়। যদি পুনরায় কম্পাইল করা বাইটকোড অনচেইন কন্ট্র্যাক্টের বাইটকোডের (এবং কনস্ট্রাক্টর প্যারামিটারের) সাথে যুক্ত হয়, তবে কন্ট্র্যাক্টটি যাচাই করা হয় (opens in a new tab)।
একবার যাচাই করা হয়ে গেলে, আপনার কন্ট্র্যাক্টের সোর্স কোড একটি "যাচাইকৃত" লেবেল পায় এবং অন্যদের অডিট করার জন্য Etherscan-এ প্রকাশিত হয়। এটি যাচাইকৃত কন্ট্র্যাক্ট (opens in a new tab) বিভাগেও যুক্ত হয়—যা যাচাইকৃত সোর্স কোড সহ স্মার্ট কন্ট্র্যাক্টের একটি রিপোজিটরি।
Etherscan কন্ট্র্যাক্ট যাচাই করার জন্য সবচেয়ে বেশি ব্যবহৃত টুল। তবে, Etherscan-এর কন্ট্র্যাক্ট যাচাইকরণের একটি অসুবিধা রয়েছে: এটি অনচেইন বাইটকোড এবং পুনরায় কম্পাইল করা বাইটকোডের মেটাডেটা হ্যাস তুলনা করতে ব্যর্থ হয়। তাই Etherscan-এ মিলগুলি আংশিক মিল।
Etherscan-এ কন্ট্র্যাক্ট যাচাই করার বিষয়ে আরও জানুন (opens in a new tab)।
Blockscout
Blockscout (opens in a new tab) একটি ওপেন-সোর্স ব্লকচেইন এক্সপ্লোরার যা স্মার্ট কন্ট্র্যাক্ট ডেভেলপার এবং ব্যবহারকারীদের জন্য একটি কন্ট্র্যাক্ট যাচাইকরণ পরিষেবা (opens in a new tab)ও প্রদান করে। একটি ওপেন-সোর্স বিকল্প হিসাবে, Blockscout যাচাইকরণ কীভাবে সঞ্চালিত হয় তাতে স্বচ্ছতা অফার করে এবং যাচাইকরণ প্রক্রিয়া উন্নত করতে কমিউনিটির অবদানকে সক্ষম করে।
অন্যান্য যাচাইকরণ পরিষেবার মতো, Blockscout আপনাকে বাইটকোড পুনরায় কম্পাইল করে এবং ডিপ্লয় করা কন্ট্র্যাক্টের সাথে তুলনা করে আপনার কন্ট্র্যাক্টের সোর্স কোড যাচাই করার অনুমতি দেয়। একবার যাচাই করা হয়ে গেলে, আপনার কন্ট্র্যাক্ট যাচাইকরণ স্ট্যাটাস পায় এবং সোর্স কোডটি অডিটিং এবং ইন্টারঅ্যাকশনের জন্য সর্বজনীনভাবে উপলব্ধ হয়। সহজ ব্রাউজিং এবং আবিষ্কারের জন্য যাচাইকৃত কন্ট্র্যাক্টগুলিও Blockscout-এর যাচাইকৃত কন্ট্র্যাক্ট রিপোজিটরিতে (opens in a new tab) তালিকাভুক্ত করা হয়।
Sourcify
Sourcify (opens in a new tab) হল কন্ট্র্যাক্ট যাচাই করার জন্য আরেকটি টুল যা ওপেন-সোর্স এবং ডিসেন্ট্রালাইজড। এটি একটি ব্লক এক্সপ্লোরার নয় এবং শুধুমাত্র বিভিন্ন EVM ভিত্তিক নেটওয়ার্কে (opens in a new tab) কন্ট্র্যাক্ট যাচাই করে। এটি অন্যান্য টুলের জন্য একটি পাবলিক পরিকাঠামো হিসাবে কাজ করে যার উপর তারা নির্মাণ করতে পারে, এবং মেটাডেটা ফাইলে পাওয়া ABI এবং NatSpec (opens in a new tab) মন্তব্য ব্যবহার করে আরও বেশি মানব-বান্ধব কন্ট্র্যাক্ট ইন্টারঅ্যাকশন সক্ষম করার লক্ষ্য রাখে।
Etherscan-এর মতো নয়, Sourcify মেটাডেটা হ্যাসের সাথে সম্পূর্ণ মিল সমর্থন করে। যাচাইকৃত কন্ট্র্যাক্টগুলি তার পাবলিক রিপোজিটরিতে (opens in a new tab) HTTP এবং IPFS (opens in a new tab)-এ পরিবেশন করা হয়, যা একটি ডিসেন্ট্রালাইজড, কন্টেন্ট-অ্যাড্রেসড (opens in a new tab) স্টোরেজ। এটি IPFS-এর মাধ্যমে একটি কন্ট্র্যাক্টের মেটাডেটা ফাইল আনয়ন করার অনুমতি দেয় কারণ সংযুক্ত মেটাডেটা হ্যাসটি একটি IPFS হ্যাস।
অতিরিক্তভাবে, কেউ IPFS-এর মাধ্যমে সোর্স কোড ফাইলগুলিও পুনরুদ্ধার করতে পারে, কারণ এই ফাইলগুলির IPFS হ্যাসগুলিও মেটাডেটাতে পাওয়া যায়। একটি কন্ট্র্যাক্ট তার API বা UI (opens in a new tab)-এর মাধ্যমে মেটাডেটা ফাইল এবং সোর্স ফাইল সরবরাহ করে, অথবা প্লাগইন ব্যবহার করে যাচাই করা যেতে পারে। Sourcify মনিটরিং টুল নতুন ব্লকে কন্ট্র্যাক্ট তৈরি হওয়ার বিষয় শোনে এবং যদি তাদের মেটাডেটা এবং সোর্স ফাইলগুলি IPFS-এ প্রকাশিত হয় তবে কন্ট্র্যাক্টগুলি যাচাই করার চেষ্টা করে।
Sourcify-তে কন্ট্র্যাক্ট যাচাই করার বিষয়ে আরও জানুন (opens in a new tab)।
Tenderly
Tenderly প্ল্যাটফর্ম (opens in a new tab) Web3 ডেভেলপারদের স্মার্ট কন্ট্র্যাক্ট তৈরি, পরীক্ষা, নিরীক্ষণ এবং পরিচালনা করতে সক্ষম করে। অবজারভেবিলিটি এবং ইনফ্রাস্ট্রাকচার বিল্ডিং ব্লকের সাথে ডিবাগিং টুল একত্রিত করে, Tenderly ডেভেলপারদের স্মার্ট কন্ট্র্যাক্ট ডেভেলপমেন্ট ত্বরান্বিত করতে সাহায্য করে। Tenderly ফিচারগুলি সম্পূর্ণরূপে সক্ষম করতে, ডেভেলপারদের বিভিন্ন পদ্ধতি ব্যবহার করে সোর্স কোড যাচাইকরণ করতে হবে (opens in a new tab)।
একটি কন্ট্র্যাক্ট ব্যক্তিগতভাবে বা সর্বজনীনভাবে যাচাই করা সম্ভব। যদি ব্যক্তিগতভাবে যাচাই করা হয়, স্মার্ট কন্ট্র্যাক্টটি শুধুমাত্র আপনার (এবং আপনার প্রকল্পের অন্যান্য সদস্যদের) কাছে দৃশ্যমান হয়। একটি কন্ট্র্যাক্ট সর্বজনীনভাবে যাচাই করা হলে এটি Tenderly প্ল্যাটফর্ম ব্যবহারকারী প্রত্যেকের কাছে দৃশ্যমান হয়।
আপনি ড্যাশবোর্ড (opens in a new tab), Tenderly Hardhat প্লাগইন (opens in a new tab), অথবা CLI (opens in a new tab) ব্যবহার করে আপনার কন্ট্র্যাক্ট যাচাই করতে পারেন।
ড্যাশবোর্ডের মাধ্যমে কন্ট্র্যাক্ট যাচাই করার সময়, আপনাকে Solidity কম্পাইলার দ্বারা তৈরি করা সোর্স ফাইল বা মেটাডেটা ফাইল, অ্যাড্রেস/নেটওয়ার্ক এবং কম্পাইলার সেটিংস আমদানি করতে হবে।
Tenderly Hardhat প্লাগইন ব্যবহার করলে কম পরিশ্রমে যাচাইকরণ প্রক্রিয়ার উপর আরও বেশি নিয়ন্ত্রণ পাওয়া যায়, যা আপনাকে স্বয়ংক্রিয় (নো-কোড) এবং ম্যানুয়াল (কোড-ভিত্তিক) যাচাইকরণের মধ্যে বেছে নিতে সক্ষম করে।
