ভার্জ হ্যাক: এটা কেমন ছিল (পর্ব 1)

টাইম ওয়ার্পস, মাইনিং দুর্বলতা, ডস অ্যাটাক এবং আরও অনেক কিছু।

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

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

এই ধরনের ক্ষেত্রে, যদি অন্য কিছু অবশিষ্ট না থাকে, সম্ভবত আপনার অন্তত নিজেকে ব্যাখ্যা করা উচিত।

গত মাসে, একজন এখনো-অজ্ঞাতপরিচয় হ্যাকার ভার্জে হ্যাক করেছে, একটি অপেক্ষাকৃত ছোট ক্রিপ্টোকারেন্সি যেখানে ব্যবহারকারীর পরিচয় গোপন রাখা হয়েছে। এপ্রিল 4 থেকে 6 এর মধ্যে, একজন অজানা হ্যাকার কয়েক ঘন্টার জন্য তিনবার ভার্জ নেটওয়ার্কের নিয়ন্ত্রণ নিতে সক্ষম হয়েছিল, এই সময়ে অন্যান্য ব্যবহারকারীরা অর্থপ্রদান করতে পারেনি। বিষয়টি আরও খারাপ করার জন্য, এই সময়ের ব্যবধানে হ্যাকার প্রতি সেকেন্ডে 1 কয়েন (প্রায় $560) হারে জাল ভার্জ কয়েন জারি করছিল। ফলস্বরূপ, হ্যাকার $80 মিলিয়নেরও বেশি মূল্যের ক্রিপ্টোকারেন্সি তৈরি করেছে।

এই পরিস্থিতিকে অত্যুক্তি ছাড়াই সর্বনাশা বলা যেতে পারে। ভার্জ একটি বড় উপায়ে হ্যাক হয়েছে.

কিন্তু দোষটা কার? এটি কি ভার্জ ডেভেলপারদের ভুল, ক্রিপ্টো প্রোটোকলের একটি মৌলিক দুর্বলতা, নাকি অন্য কিছু? এটি কি বড় ক্রিপ্টোকারেন্সিতে ঘটতে পারে এবং যদি তাই হয় তবে কীভাবে এটি এড়ানো যায়?

এই ধরনের হ্যাকের সাথে, অনেক বিবরণ সবসময় অস্পষ্ট থাকে। যাইহোক, এই ক্ষেত্রে, প্রধান দুর্বলতা চিহ্নিত করা যেতে পারে:

টাইমস্ট্যাম্প স্পুফিং: অনিচ্ছাকৃত ভুল বা বিপজ্জনক মিথ্যা?

প্রথম নজরে, এই দুর্বলতাটিকে একটি বাগ বলে মনে হতে পারে, কিন্তু আসলে এটি "অসঠিক" টাইমস্ট্যাম্প তৈরি করার জন্য একটি বিশেষ ফাংশন। ব্লকচেইন প্রোটোকলগুলিতে, পৃথক লেনদেনগুলি (সাধারণত নেটওয়ার্ক সদস্যদের মধ্যে স্থানান্তর) একটি একক ব্লকে গোষ্ঠীভুক্ত করা হয়, যা পরে যাচাই করা হয়। প্রতিটি ব্লকের গঠনের তারিখে একটি টাইমস্ট্যাম্প রয়েছে। ব্লকচেইন প্রোটোকল সঠিকভাবে কাজ করলেও, এই টাইমস্ট্যাম্পগুলির ক্রম ভেঙে যেতে পারে - উদাহরণস্বরূপ, ব্লক 100-এ একটি টাইমস্ট্যাম্প থাকতে পারে после ব্লক 101। এটি এই কারণে যে বিকেন্দ্রীভূত নেটওয়ার্কগুলি যেগুলি তৃতীয় পক্ষকে অধিকার দিতে অস্বীকার করে, সঠিক সময় সমন্বয় স্থাপন করা মোটেও সহজ নয়।

একটি পিয়ার-টু-পিয়ার নেটওয়ার্কের মাধ্যমে ডেটা প্রচারের জন্য যে অপ্রত্যাশিত সময় লাগে তার পরিপ্রেক্ষিতে, সমস্ত পক্ষ সরল বিশ্বাসে কাজ করলেও ব্লকগুলি ভালভাবে প্রদর্শিত হতে পারে। অন্য কথায়, এই ক্ষেত্রে অন্তত একটু নমনীয়তা থাকতে হবে; ভার্জের ক্ষেত্রে (অন্তত হ্যাক করার আগে), প্রোটোকল নোডকে ব্লকে নির্দেশিত বর্তমান সময় সম্পর্কে "অসম্মতি" করার অনুমতি দেয় এবং ডিসিঙ্ক্রোনাইজেশন দুই ঘন্টা পর্যন্ত হতে পারে।

হ্যাকার টাইমস্ট্যাম্প জাল করে তার আক্রমণ শুরু করে। তিনি অতীতের মতো ব্লকগুলি পাঠিয়েছিলেন, কিন্তু অনুমোদিত 2 ঘন্টা অতিক্রম করেনি, যার মানে এই ব্লকগুলি বাকি নেটওয়ার্ক নোডগুলিতে গ্রহণযোগ্য ছিল৷

যে কারণে এটি শেষ পর্যন্ত নেটওয়ার্কের নিরাপত্তাকে প্রভাবিত করতে পারে তার কারণ হল প্রুফ-অফ-ওয়ার্ক নেটওয়ার্কের জন্য খনির প্রকৃতি।

খনির অসুবিধা: দেয়াল শুধুমাত্র উঁচু হলেই রক্ষা করে

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

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

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

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

যেহেতু টাইমস্ট্যাম্পগুলি ক্রমাগত জাল করা হচ্ছিল, তাই খনন হাস্যকরভাবে সহজ না হওয়া পর্যন্ত প্রোটোকল কাজগুলির জটিলতা হ্রাস করতে থাকে। একটি সাধারণ বোঝার জন্য: ঘন্টায় টাস্কের গড় অসুবিধা ছিল 1393093,39131 ঘন্টা, এবং আক্রমণের সময় এটি 0,00024414 এ নেমে এসেছে, অর্থাৎ খনির অসুবিধা 99.999999% কমেছে। কাজের জটিলতা যত কম হবে, তত বেশি ব্লক তৈরি করা যাবে এবং ব্লকচেইনে পাঠানো যাবে; আক্রমণের ফলস্বরূপ, মাত্র 1 সেকেন্ডে একটি ব্লক পাঠানো হয়েছিল।

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

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

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

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

চলবে…

নিবন্ধটি রেট করুন
ব্লকচেইন মিডিয়া
একটি মন্তব্য জুড়ুন