একটি মানক ছয়-মুখী পাশা (ডাই) প্রতিবার গড়ালে প্রায় ২.৬ বিট অপ্রত্যাশিত তথ্য তৈরি করে। এটা খুব বেশি মনে নাও হতে পারে, কিন্তু যথেষ্ট সংখ্যক বার পুনরাবৃত্তি করলে, সেই গড়ালগুলো সফটওয়্যার বা কোনো ইলেকট্রনিক উপাদানের ওপর নির্ভর না করেই একটি বিটকয়েন ওয়ালেট সুরক্ষিত করতে প্রয়োজনীয় কাঁচা র্যান্ডমনেস তৈরি করতে পারে।
ডাইস রোল বিটকয়েন কী অফলাইনে রাখে, কিন্তু সবাই তা করতে ঝামেলা নেবে না

মূল বিষয়গুলো
- Claude Shannon-এর সূত্র অনুযায়ী, একটি নিরপেক্ষ ছয়-মুখী পাশা গড়ালে প্রায় ২.৫৮৫ বিট এন্ট্রপি মেলে।
- Coinkite-এর ডকুমেন্টেশনে বলা হয়েছে, ৫০ বার পাশা গড়ানো একটি বিটকয়েন ওয়ালেট সিডের ১২৮-বিট মান পূরণ করে।
- Kevin Loaec-এর Wizard Sardine বিশ্লেষণ মূল সিডের বাইরেও Coldcard টুলগুলোর ঝুঁকি চিহ্নিত করেছে।
পাশা গড়ানোর ফল কেন এত কঠিনভাবে পূর্বাভাসযোগ্য
তথ্য তত্ত্ব প্রতিষ্ঠাকারী গণিতবিদ Claude Shannon, কোনো ফলাফল কতটা অনিশ্চিত তা মাপতে এন্ট্রপি ব্যবহার করেছিলেন। একটি নিরপেক্ষ ছয়-মুখী পাশায়, প্রতিটি মুখের আসার সম্ভাবনা সমান—ছয়ের মধ্যে এক। এতে প্রতিটি গড়ালে আনুমানিক ২.৫৮৫ বিট এন্ট্রপি পাওয়া যায়। একটি কয়েন টস ১ বিট দেয়, আর আট-মুখী পাশা ৩ বিট দেয়।

সাম্প্রতিক Coldcard ঘটনার পরিণতি সামাজিক যোগাযোগমাধ্যমজুড়ে পাশা-ভিত্তিক সিড জেনারেশনকে সামনে নিয়ে এসেছে। কিছু ব্যবহারকারী এখন এটিকে অপরিহার্য মনে করছেন, অন্যরা বলছেন এটি তাদের তহবিল রক্ষা করেছে, আর অভিজ্ঞ অপারেটররা উল্লেখ করছেন যে বেশিরভাগ নতুন ব্যবহারকারী ধীরগতির, ভুল-প্রবণ সেটআপ প্রক্রিয়া সহ্য করবেন না।
গুরুত্বপূর্ণ বিষয়টি হলো—একটি গড়ানো পাশা পরমাণু স্তরে এলোমেলোভাবে আচরণ করে, এমন নয়। আসলে তা করে না। ফলাফল পদার্থবিজ্ঞানের দ্বারা নিয়ন্ত্রিত, কিন্তু একই সময়ে এতগুলো ক্ষুদ্র ভেরিয়েবল বদলাতে থাকে যে কেউই নির্ভরযোগ্যভাবে ফলাফল গণনা করতে পারে না। পাশাটি নির্দিষ্ট গতি, কোণ, উচ্চতা এবং স্পিন নিয়ে হাত থেকে বের হয়, তারপর টেবিলে আঘাত করে এবং প্রতিটি বাউন্সে দিক পরিবর্তন করে।
বাস্তবে, ছাড়ার ক্ষেত্রে সামান্য পরিবর্তনও সম্পূর্ণ ভিন্ন ফলাফল দিতে পারে। আঙুলের অবস্থান একটু ভিন্ন হওয়া বা অল্প একটু বেশি জোরে ছোড়া—এগুলো পথকে এতটাই বদলে দেয় যে গতিবিধি দেখে চূড়ান্ত সংখ্যা অনুমান করা যায় না। তত্ত্বগতভাবে ফলাফল নির্ধারিত (deterministic) হতে পারে, কিন্তু ওয়ালেট জেনারেশনের ক্ষেত্রে গুরুত্বপূর্ণ হলো—একজন আক্রমণকারী যেন এটি পুনরুত্পাদন বা গণনা করতে না পারে।
পাশা গড়ানোকে ব্যবহারযোগ্য ডেটায় রূপান্তর
একটি কম্পিউটার সরাসরি পাশার ফলাফলের তালিকা ব্যবহার করতে পারে না। আগে গড়ালগুলোকে বাইনারি ডেটায় রূপান্তর করতে হয়, এবং রূপান্তর পদ্ধতিটি গুরুত্বপূর্ণ।
বেসিক বিজোড়-বা-জোড় পদ্ধতি বোঝা সহজ, কিন্তু এতে উপলব্ধ এন্ট্রপির বড় অংশ নষ্ট হয়। প্রতিটি গড়ালকে একটি বিটে নামিয়ে আনা হয়, যদিও পাশা প্রায় ২.৬ বিট তথ্য তৈরি করেছিল। আরও দক্ষ পদ্ধতিগুলো দীর্ঘ একটি গড়াল-ক্রম সংগ্রহ করে এবং পুরো স্ট্রিংটি প্রক্রিয়াজাত করে—সাধারণত কোনো ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশনের মাধ্যমে। এতে র্যান্ডমনেসের অনেক বেশি অংশ সংরক্ষিত থাকে।
একই নীতি Diceware-এ দেখা যায়, যা নিরাপদ পাসফ্রেজ তৈরির একটি দীর্ঘদিনের পদ্ধতি, এবং ম্যানুয়াল বিটকয়েন ওয়ালেট জেনারেশনেও ব্যবহৃত হয়। একটি সাধারণ ১২-শব্দের ওয়ালেট রিকভারি ফ্রেজ ১২৮ বিট এন্ট্রপি থেকে তৈরি। প্রতি গড়ালে প্রায় ২.৬ বিট ধরলে, প্রায় ৫০টি নিরপেক্ষ গড়াল সেই সীমা অতিক্রম করার মতো কাঁচা তথ্য সরবরাহ করে।
Coldcard হার্ডওয়্যার ওয়ালেট প্রস্তুতকারক Coinkite, ২৫৬ বিটের কাছাকাছি এন্ট্রপি চাইলে ব্যবহারকারীদের ৯৯ বা তার বেশি গড়ালের পরামর্শ দেয়। এতে ওয়ালেট ব্যবহার করা দ্বিগুণ কঠিন হয় না, কিন্তু উৎপন্ন গোপন মানটির জন্য অনেক বড় গাণিতিক নিরাপত্তা মার্জিন তৈরি হয়।
পাশা-উৎপন্ন সিডের বাস্তব দুনিয়ার পরীক্ষা
এই পার্থক্যটি গুরুত্বপূর্ণ হয়ে ওঠে Coinkite ২০২১ সাল পর্যন্ত ফিরে যাওয়া একটি ফার্মওয়্যার সমস্যা প্রকাশ করার পর। কিছু Coldcard ডিভাইসে, সফটওয়্যারটি অভ্যন্তরীণ হার্ডওয়্যার র্যান্ডম-নাম্বার জেনারেটরকে এড়িয়ে যেতে পারত এবং তার বদলে নন-সিক্রেট ডিভাইস তথ্যের সাথে সংযুক্ত একটি দুর্বল প্রক্রিয়া ব্যবহার করতে পারত।
কারণ সেই প্রক্রিয়ার কিছু অংশ পুনর্গঠন করা সম্ভব ছিল, আক্রমণকারীরা পুরো কী স্পেস খোঁজার বদলে সম্ভাব্য ওয়ালেট কী-এর পরিসর সংকুচিত করতে পেরেছিল। ত্রুটিটি আনুমানিক ১,১২৮.৬৬৩৩ BTC চুরির সাথে যুক্ত ছিল—প্রায় ১১০০টি ঠিকানা থেকে—পূর্বাঞ্চলীয় সময় দুপুর ১টা পর্যন্ত।

পর্যাপ্ত সংখ্যক স্বাধীন পাশা গড়াল থেকে সম্পূর্ণভাবে তৈরি করা ওয়ালেট সিডগুলো একই পথ দিয়ে উন্মুক্ত হয়নি। ওই ব্যবহারকারীরা নিজেদের এন্ট্রপি সরবরাহ করেছিলেন, তাই ত্রুটিপূর্ণ হার্ডওয়্যার জেনারেটর প্রাথমিক ওয়ালেট সিক্রেট তৈরির জন্য দায়ী ছিল না।
তবে, সেই সুরক্ষা কেবল পাশা থেকে উৎপন্ন সিডের ক্ষেত্রেই প্রযোজ্য ছিল। এটি ডিভাইস দ্বারা তৈরি অন্য সব গোপন মানকে স্বয়ংক্রিয়ভাবে সুরক্ষিত করেনি।
Wizard Sardine সূক্ষ্ম শর্তগুলো বিশ্লেষণ করেছে
নিরাপত্তা গবেষক Kevin Loaec Wizard Sardine-এর ওয়েবসাইটে ১ অগাস্ট Coldcard এক্সপ্লয়েটের একটি মূল্যায়ন প্রকাশ করেন। তার সবচেয়ে গুরুত্বপূর্ণ পর্যবেক্ষণ ছিল—Coldcard-এর এমন ফিচারগুলো, যেগুলো প্রাথমিক ওয়ালেট সিডের বাইরে আলাদাভাবে নিজেদের সিক্রেট তৈরি করত।
“আমি মনে করি এটা অত্যন্ত গুরুত্বপূর্ণভাবে জোর দিয়ে বলা যে, এমনকি যারা পাশা ব্যবহার করে সিড ইমপোর্ট বা জেনারেট করেছেন তারাও ঝুঁকিপূর্ণ, যদি তারা নিম্নলিখিত ফিচারগুলো ব্যবহার করে থাকেন,” Loaec X-এ লিখেছিলেন, তারপর প্রভাবিত সিস্টেমের একটি ডায়াগ্রাম উপস্থাপন করেন।
ডায়াগ্রামটিতে দেখা যায় ত্রুটিপূর্ণ র্যান্ডম-নাম্বার জেনারেটরটি Coldcard-এর কয়েকটি সেকেন্ডারি ফাংশনে ফিড দিচ্ছে। এর মধ্যে ছিল পেপার ওয়ালেট তৈরি, ডিভাইস ক্লোনিং, USB সেশন এনক্রিপশন, Secret Teleport ট্রান্সফার ফিচার, কো-সাইনিং কী তৈরি, বিল্ট-ইন পাসওয়ার্ড জেনারেটর এবং হার্ডওয়্যার সিকিউরিটি মডিউল অথেন্টিকেশন কোড।

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

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

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

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
















