এই বিকল্পগুলির মধ্যে কোনওটিই অন্যদের চেয়ে বিশেষ ভাল বা খারাপ নয়, কারণ এগুলি সমস্তই খুব নিরাপদ। আমি বিকল্প 4 দিয়ে যাচ্ছি।
এসআরএএম হ'ল কীগুলি সংরক্ষণের সবচেয়ে সুরক্ষিত জায়গা, তবে আপনাকে এগুলি কখনই বাইরের বিশ্ব থেকে ইনজেকশন করতে হবে না। বুট চলাকালীন তাদের অবশ্যই প্রসেসরের মধ্যে তৈরি করা উচিত। অন্য কিছু করা তাত্ক্ষণিকভাবে বাকিগুলিকে অকার্যকর করে দেয় - এটি স্বয়ংক্রিয়ভাবে নিরাপত্তাহীন।
অবিচ্ছিন্ন মেমরিতে কীগুলি সংরক্ষণ করবেন না, আপনি এই বিষয়ে সঠিক। আপনি EEPROM বা ফ্ল্যাশ মেমরিটি পড়া থেকে রক্ষা করছেন তা বিবেচ্য নয়। এই কোড রিড প্রোটেকশন ফিউজ সহজেই বিপরীত হয়। একজন আক্রমণকারীকে কেবল ডিক্যাপের প্রয়োজন হয় (সিলিকন ডাইর ভিতরে প্রকাশের জন্য কালো ইপোক্সি প্যাকেজিং সরিয়ে ফেলুন বা রাসায়নিকভাবে ছোঁড়া)। এই মুহুর্তে, তারা ডাইয়ের অংশটি অবিভক্ত মেমরি কোষগুলি কভার করতে পারে (এই বিভাগগুলি খুব নিয়মিত এবং পৃথক মেমরি কোষগুলি দেখতে অনেক ছোট, বৃহত্তর কাঠামোটি হতে পারে) এবং কোনও কিছুর একটি ছোট টুকরা ইউভি থেকে অস্বচ্ছ এই অংশটি মুখোশযুক্ত। তারপরে আক্রমণকারী কেবল 5-10 মিনিটের জন্য চিপের উপরে একটি ইউভি আলো জ্বলতে পারে এবং সিআরপি ফিউজ সহ সমস্ত ফিউজ পুনরায় সেট করতে পারে। ওটিপি মেমরিটি এখন কোনও স্ট্যান্ডার্ড প্রোগ্রামার দ্বারা পড়তে পারে।
অথবা, যদি সেগুলি ভাল অর্থায়ন করা হয় (তবে বলুন যে, এই কীগুলি কারও কাছে $ 1000 এরও বেশি মূল্যবান), তারা কেবলমাত্র বিভিন্ন ধরণের ইলেক্ট্রন মাইক্রোস্কোপগুলি সহ সরাসরি মেমরি সেলগুলি পড়তে পারেন।
সুরক্ষিত হওয়ার জন্য, কীগুলি অবশ্যই গোপন করা উচিত নয়।
- না, উপরের একই কারণে।
এখন, বিকল্প 4 এ:
- শুধু এনক্রিপশন ব্যবহার করুন। কী বিতরণ একটি সমাধান সমস্যা। সুতরাং সহজেই উপলব্ধ সমাধান ব্যবহার করুন। চিপটিকে তার আরএনজি ব্যবহার করা উচিত এবং এটির জন্য এনট্রপি সরবরাহের পর্যাপ্ত সরবরাহ রয়েছে কিনা তা নিশ্চিত করার জন্য বুট লোডারকে প্রয়োজনীয় গোপন কী (গুলি) তৈরি করতে সরাসরি প্রোগ্রামে বুট করা উচিত, যা সাধারণ উদ্দেশ্যে হওয়া উচিত should নিবন্ধভুক্ত করে সরাসরি এসআরএমে সরানো হয়, যেখানে তারা মুছে না যাওয়া পর্যন্ত থাকবে।
তবে একটি সমস্যা আছে, যা হ'ল সিপিইউ ব্যতীত আর কোনও কিছুই গোপন কী কী তা সম্পর্কে কোনও ধারণা নেই। সমস্যা নেই: পাবলিক কী ক্রিপ্টোগ্রাফি ব্যবহার করুন। আপনি ওটিপি মেমরিতে যা সঞ্চয় করেছেন তা আপনার সর্বজনীন কী। এই কীটি যে কেউ পড়তে পারবেন, আপনি এটি স্ট্যাক এক্সচেঞ্জে পোস্ট করতে পারেন, এটি একটি তেল ট্যাংকারের পাশে 5 ফুট উঁচু অক্ষরে আঁকতে পারেন, এটি কোনও ব্যাপার নয়। সার্বজনীন কী ক্রিপ্টোগ্রাফি সম্পর্কে দুর্দান্ত জিনিসটি এটি অসম্পূর্ণ। কোনও কিছুর এনক্রিপ্ট করার কীটি এটি ডিক্রিপ্ট করতে পারে না, তার জন্য ব্যক্তিগত কী প্রয়োজন। এবং বিপরীতে, পাবলিক কী দ্বারা এনক্রিপ্ট করা কিছু ডিক্রিপ্ট করার কীটি কোনও কিছুর এনক্রিপ্ট করতে ব্যবহৃত হতে পারে। সুতরাং, সিপিইউ গোপন কী তৈরি করে, আপনার সঞ্চিত পাবলিক কীটি গোপন কীগুলি এনক্রিপিট করতে ব্যবহার করে এবং কেবল এটি ইউএসবি বা আরএস 232 বা আপনি যা চান তা প্রেরণ করে। গোপন কীটি পড়ার জন্য আপনার ব্যক্তিগত কী প্রয়োজন, যা সংরক্ষণের, প্রেরণ করা বা চিপের সাথে কখনও জড়িত হওয়া দরকার না। আপনার গোপন কীটি একবার আপনার ব্যক্তিগত কী (অন্য কোথাও, চিপের বাইরে) দিয়ে ডিক্রিপ্ট হয়ে গেলে আপনি সেট হয়ে যান। আপনার কাছে একটি সুরক্ষিতভাবে সঞ্চারিত গোপন কী আছে যা পুরোপুরি চিপের মধ্যে জেনারেটেড ছিল, পাবলিক কী ব্যতীত অন্য কোনও কিছু সংরক্ষণ না করে - যা আগেই বলা হয়েছে, পড়া থেকে মোটেও সুরক্ষিত হওয়া দরকার না।
এই প্রক্রিয়াটিকে আনুষ্ঠানিকভাবে মূল আলোচনার বলা হয় এবং প্রতিটি জিনিস এটি ব্যবহার করে। আপনি আজ এটি বেশ কয়েকবার ব্যবহার করেছেন। এটি পরিচালনা করার জন্য প্রচুর সংস্থান এবং গ্রন্থাগার রয়েছে। দয়া করে, কোনও কিতে কখনই 'ইনজেকশন' কী করবেন না।
একটি শেষ কথা উল্লেখ করতে হবে: এগুলি সবই হ'ল কারণ এইএস কী সহজেই সাইড চ্যানেল আক্রমণগুলি ব্যবহার করে পুনরুদ্ধার করা যায় যা বিদ্যুৎ সরবরাহে বসে এবং বর্তমান ড্রয়ের মিনিটের পরিবর্তনগুলি এবং সিপিইউতে বিটস ফ্লিপ হওয়ার ফলে ঘটে যাওয়া পরিবর্তনের মধ্যে সময় নির্ধারণ করে নিবন্ধ হিসাবে। এটি, কীভাবে এইএস (বা সম্ভাব্য এনক্রিপশন অ্যালগরিদমের যে কোনও ছোট সেট যা ব্যবহার করতে পারে) কীভাবে কাজ করে তার জ্ঞানের সাথে মিলিয়ে কীটি পুনরুদ্ধার করা তুলনামূলকভাবে সহজ এবং সাশ্রয়ী করে তোলে। এটি কীটি পড়ার অনুমতি দিবে না, তবে এটি 255 টি সম্ভাব্য কীগুলির মতো কী স্থানটিকে হাস্যকর আকারে ছোট করে তুলবে। চিপ এটি সনাক্ত করতে পারে না, যেহেতু এটি প্রবাহিত।
এটি 'নিরাপদ' ক্রিপ্টো প্রসেসরের AES-256 এনক্রিপ্ট হওয়া বুট লোডারকে পরাজিত করেছে এবং এটি এতটা কঠিনও নয়। আমি যতদূর জানি, এই আক্রমণটির কোনও সঠিক হার্ডওয়্যার কাউন্টার ব্যবস্থা নেই। তবে এটি নিজেরাই এনক্রিপশন অ্যালগরিদম এবং কীভাবে তাদের বিপিগুলি ফ্লিপ করতে সিপিইউ প্রয়োজন, যা এই দুর্বলতার কারণ হয়ে উঠছে causing আমি সন্দেহ করি যে সাইড-চ্যানেল প্রতিরোধী বা সাইড-চ্যানেল প্রুফ অ্যালগরিদমগুলি বিকাশ করা হবে (এবং আশা করি) হওয়া দরকার।
এখনই যেমন দাঁড়িয়ে আছে, এম্বেড থাকা ডিভাইসে কী কী (বা এমনকি কেবল একটি অস্থায়ী কী ব্যবহার করা যায়) কীভাবে সংরক্ষণ করা যায় তার আসল উত্তর: আপনি পারবেন না।
তবে অন্তত যদি আপনি বিকল্প 4-তে মূল আলোচনার সাহায্যে প্রতিবার একটি নতুন কী তৈরি করেন তবে সাইড চ্যানেল আক্রমণ কেবলমাত্র ব্যবহার-করা চ্যানেলের চাবিতে আপস করতে পারে এবং কেবলমাত্র ডেটা এনক্রিপ্ট করার সময় তাদের যদি বিদ্যুৎ নিরীক্ষণ করতে কিছু সময় থাকে । যদি আপনি প্রায়শই অভ্যন্তরীণভাবে উত্পন্ন নতুন কীগুলি নিয়ে আলোচনা করেন তবে এটি কার্যকর পরিমাণে সুরক্ষা বহন করতে পারে।
কী তৈরি করুন এবং এগুলি যথাসম্ভব স্বল্প সময়ের জন্য সঞ্চয় করুন।