প্র্যাকটিস হিসাবে, এটি যতক্ষণ না আপনি যতক্ষণ এনক্রিপশন সঙ্গে স্থিতিস্থাপক হিসাবে প্রায় ব্যাকআপ মাস্টার কী এবং মেটাডেটা সঠিকভাবে।
মেটাডেটা ব্যতীত, দুর্নীতি কেবল দূষিত বিটের ব্লকটিকেই প্রভাবিত করবে, বেশিরভাগ ক্ষেত্রে এটি কেবলমাত্র 16 বাইট।
কী এবং সরঞ্জামগুলির সাথে (যেমন আপনার পাসওয়ার্ড এবং ভেরাক্রিপ্ট / LUKS) ডেটা দুর্নীতির বেশিরভাগ ক্ষেত্রে, আপনার কাছে এনক্রিপ্ট হওয়া ডিস্কের দৈনন্দিন ব্যবহারের সাথে সাথে সাধারণভাবে যেমন একটি অ এনক্রিপ্ট করা ডিস্ক হিসাবে একই অ্যাক্সেস থাকে। এনক্রিপশন শুধুমাত্র সাধারণ চেয়ে একটি অতিরিক্ত পদক্ষেপ (একটি এনক্রিপ্ট করা পার্টিশন খুলুন) যোগ হবে। তাই এই ক্ষেত্রে, এটি অ এনক্রিপ্ট করা ডেটা ঠিক মত আচরণ।
ভেরাক্রিপ্ট বা লুক্স দিয়ে, আপনাকে ডিস্কের মাস্টার কী সঞ্চয় করতে হবে, যা আপনার পাসওয়ার্ড দিয়ে এনক্রিপ্ট করা আছে। এই সেক্টরের ক্ষতিসাধন স্থায়ী ডেটা হারিয়ে যাবে। এটি মাস্টার কী ব্যাকআপ (আকারে কয়েক কিলোবাইট), সহজেই উভয় সফটওয়্যারের সাথে কিছু সহজে সমাধান করা যেতে পারে এবং এটি অত্যন্ত সবার জন্য সুপারিশ করা যায়।
অ মেটা তথ্য সম্পর্কে বিস্তারিত
Veracrypt এবং Luks উভয় আজ XTS ব্যবহার করে। এই মোডে, এটি প্রতিটি ব্লকের জন্য একটি কী গণনা করা হয়। একটি সরলীকরণ, ব্লক এনক্রিপ্ট করতে i
আপনি মাস্টার কী এবং ব্লক নম্বর দিয়ে তৈরি কী ব্যবহার করেন। সুতরাং, অন্য ব্লক এক ব্লক এনক্রিপশন। আপনি কিছু তথ্য দূষিত হলে, এটি যে ব্লক সীমিত করা হবে।
এক্সটিএস-এ, এটি উপ-ব্লকগুলিতে ব্লকটিকে বিরতি দেয় (সাধারণত 16 বাইটের) এবং একটি কী তৈরি করে এবং এটির সাথে সাব-ব্লক এনক্রিপ্ট করে। এর মানে হল যে আমরা যদি এটির উপর কিছুটা পরিবর্তন করি তবে শুধুমাত্র এই 16 বাইট প্রভাবিত হবে।
পরীক্ষা হিসাবে, একটি Luks ভলিউম মধ্যে একটি বিট পরিবর্তন, এটি মূল ফাইল 16 বাইট পরিবর্তন অকার্যকর, কিন্তু অন্যান্য 496 এখনও অপরিবর্তিত। একটি 7 জিপ ফাইলের মধ্যে, এটি একটি স্ট্রিম পদ্ধতি ব্যবহার করে, যা সমস্ত বাইট শৃঙ্খলাবদ্ধ হয়, তাই এক বাইট পরিবর্তন বাকি সকলকে প্রভাবিত করবে - এটি এখানেই নয়।
কেউ কেউ এই সমস্যাটিকে বিবেচনা করে, যেমন আপনি 16 বাইটের নির্ভুলতার সাথে কখন এবং কোথায় আপনি একটি সাধারণ পাঠ্য পরিবর্তন করতে পারেন, কেবল এনক্রিপ্ট হওয়া ডেটা তুলনা করে।
এই সম্পর্কে আরো আকর্ষণীয় তথ্য এই লিঙ্ক পাওয়া যাবে:
https://crypto.stackexchange.com/questions/6185/what-is-a-tweakable-block-cipher
https://security.stackexchange.com/questions/39306/how-secure-is-ubuntus-default-full-disk-encryption
https://en.wikipedia.org/wiki/Disk_encryption_theory
মাস্টার কী সম্পর্কে বিস্তারিত
LUKS সম্পর্কিত
LUKS পার্টিশন (অথবা ডিস্ক) শুরুতে মেটাডেটা, এনক্রিপশন পদ্ধতি সংরক্ষণ, অন্যান্য পরামিতি এবং 8 কী স্লটগুলির সাথে কয়েকটি সেক্টর রয়েছে। ডিস্ক এনক্রিপ্ট এবং ডিক্রিপ্ট করার জন্য, এটি একটি ব্যবহার করে প্রধান চাবি , একটি LUKS ধারক তৈরি করার সময় উত্পন্ন একটি বড় র্যান্ডম সংখ্যা। এটি সংরক্ষণ করার জন্য, এটি পাসওয়ার্ডের উপর অনেকবার একটি ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশন পুনরাবৃত্তি করে এবং সেই স্লটটির জন্য একটি নির্দিষ্ট কী তৈরি করে আপনার পাসওয়ার্ড দিয়ে মাস্টার কী এনক্রিপ্ট করে। একই ডিস্কের জন্য আপনার 8 টি ভিন্ন পাসওয়ার্ড থাকতে পারে, প্রতিটি স্লটে একটি পৃথক পাসওয়ার্ড দিয়ে মাস্টার কী এনক্রিপ্ট করে। যখন আপনি পাসওয়ার্ডটি পরিবর্তন করেন, তখন এটি মাস্টার কী এনক্রিপ্ট করার মতো সহজ এবং সমস্ত বিভাজন পরিবর্তন করে না।
সুতরাং, যখন এই স্লট এবং মেটাডেটা দূষিত হয়, আপনি মাস্টার কীটি পুনরুদ্ধার করতে পারবেন না যা প্রকৃতপক্ষে ডিক্রিপ্ট করতে ব্যবহৃত হয়, ডিস্কের সমস্ত ডেটা হারিয়ে ফেলে। এটি আপনার সমস্ত ডেটা দ্রুত ধ্বংস করার একটি সহজ উপায়। তবে আপনার কাছে ভলিউম হেডারের ব্যাকআপ থাকলে এটি পুনরুদ্ধার করা খুব সহজ।
নীচের থেকে ব্যাকআপ সম্পর্কে LUKS প্রায়শই জিজ্ঞাসিত প্রশ্নাবলীর একটি কপি https://gitlab.com/cryptsetup/cryptsetup/wikis/FrequentlyAskedQuestions#6-backup-and-data-recovery
6.2 কিভাবে আমি একটি LUKS হেডার ব্যাকআপ করব?
LUKS পার্টিশনের শুরু থেকে আপনি যথাযথ সংখ্যক বাইটগুলি অনুলিপি করতে পারেন তবে ক্রিপ্টসেটআপের "luksHeaderBackup" কমান্ড বিকল্পটি ব্যবহার করার সেরা উপায়। এটি ত্রুটিগুলির বিরুদ্ধেও সুরক্ষা দেয় যখন LUKS পার্টিশন নির্মাণে অ-মানক পরামিতি ব্যবহার করা হয়। উদাহরণ:
cryptsetup luksHeaderBackup --header-backup-file <file> <device>
পুনরুদ্ধার করতে, বিপরীত কমান্ড ব্যবহার করুন, যেমন।
cryptsetup luksHeaderRestore --header-backup-file <file> <device>
আপনি পুনঃস্থাপিত শিরোনাম সম্পর্কে অনিশ্চিত থাকলে, বর্তমানের একটি ব্যাকআপ তৈরি করুন! আপনি হাইডার-ফাইলে এটির মতো বিচ্ছিন্ন হেডারের জন্য --header বিকল্পটি ব্যবহার করে এটি পুনরুদ্ধার না করেও পরীক্ষা করতে পারেন:
cryptsetup --header <file> luksOpen <device> </dev/mapper/ -name>
যদি এটি আপনার কী-লোগুলিকে অলস করে তবে আপনি ভাল। আবার ডিভাইস বন্ধ করতে ভুলবেন না।
কিছু পরিস্থিতিতে (ক্ষতিগ্রস্ত হেডার), এই ব্যর্থ হয়। তারপর নিম্নলিখিত ধাপগুলি ব্যবহার করুন:
প্রথমে মাস্টার কী আকার নির্ধারণ করুন:
cryptsetup luksDump <device>
ফর্ম একটি লাইন দেয়
MK bits: <bits>
পুরানো ডিফল্টের জন্য 256 এবং বিট 512 এর সমান বিট সহ
অক্ষমতা। 256 বিট মোট শিরোনামের আকার সমান 1'052'672 বাইট এবং 512 বিট 2 এমআইবি এক। (এছাড়াও আইটেম 6.12 দেখুন) যদি luksdump ব্যর্থ হয়, তবে 2MiB ধরুন, তবে সচেতন থাকুন যে আপনি যদি এটি পুনরুদ্ধার করেন তবে আপনি ফাইল সিস্টেমটির প্রথম 1 ম অথবা তারপরেও পুনরুদ্ধার করতে পারেন। ফাইলের সিস্টেম পরিবর্তন করবেন না যদি আপনি শিরোনামের আকার নির্ধারণ করতে অক্ষম হন! তার সাথে, একটি খুব বড় শিরোনাম ব্যাকআপ পুনরুদ্ধার এখনও নিরাপদ।
দ্বিতীয়, শিরোনাম ফাইল ডাম্প। এটি করার অনেক উপায় আছে, আমি নিম্নোক্ত পছন্দগুলি পছন্দ করি:
head -c 1052672 <device> > header_backup.dmp
অথবা
head -c 2M <device> > header_backup.dmp
একটি 2MiB হেডার জন্য। নিশ্চিত হতে ডাম্প ফাইলের আকার যাচাই করুন।
যেমন ব্যাকআপ পুনরুদ্ধার করতে, আপনি luksHeaderRestore চেষ্টা করতে পারেন বা আরো মৌলিক কাজ করতে পারেন
cat header_backup.dmp > <device>
Veracrypt
Veracrypt LUKS অনুরূপ। আমি ট্রুক্র্রিপ্টের সাথে এটি ব্যবহার করি না, তবে সাধারণ ধারণাটি ধরে রাখে।
Veracrypt শুধু একটি কী স্লট আছে, তাই একই সময়ে আপনার একাধিক পাসওয়ার্ড থাকতে পারে না। কিন্তু আপনার একটি লুকানো ভলিউম থাকতে পারে: এটি পার্টিশনের (অথবা ডিস্ক বা ফাইল) শেষে মেটাডেটা সঞ্চয় করে। লুকানো ভলিউমটির একটি ভিন্ন মাস্টার কী রয়েছে এবং পার্টিশনের শেষে ওভারলেপড স্পেস হিসাবে ব্যবহার করা হবে। আপনি ব্যাকআপ করা উচিত যে ধারণা একই। এই সঙ্গে সম্পন্ন করা যেতে পারে Tools -> Backup Volume Header
এবং Tools -> Restore Volume Header
। সিস্টেম এনক্রিপশন দিয়ে, এটি মূল ব্যাকআপ সহ একটি বুটযোগ্য ডিস্ক তৈরি করতে ব্যবহৃত হয়েছিল যা কোনও ক্ষতি হলে Truecrypt লোডার এবং কীগুলি পুনরুদ্ধার করে। এটা এনক্রিপ্ট করার আগে এটি সম্পন্ন করা হয়, এবং যতক্ষণ আমি Veracrypt একই ভাবে কাজ চালিয়ে যেতে জানি।
আরো বিস্তারিত জানার জন্য এই লিঙ্কটি দেখুন https://veracrypt.codeplex.com/wikipage?title=Program%20Menu
ব্যাকআপ কী সম্পর্কে নিরাপত্তা বিবেচনা
উদাহরণস্বরূপ, যদি আপনার কাছে কোনও লিঙ্কে থাকা পাসওয়ার্ড থাকে এবং ভলিউম পাসওয়ার্ডটি নতুন, শক্তিশালী এবং সুরক্ষিত একটিতে পরিবর্তন করে তবে ব্যাকআপ অ্যাক্সেসের জন্য যে কেউ পুরানো পাসওয়ার্ড দিয়ে ফাইলগুলি ডিক্রিপ্ট করতে সক্ষম হবেন। ব্যাকআপটি মূলত (পুরানো) পাসওয়ার্ড দিয়ে এনক্রিপ্টকৃত মাস্টার কী। সুতরাং, পাসওয়ার্ড পরিবর্তন করার সময়, এটি একটি নতুন ব্যাকআপ তৈরি করতে এবং পুরোনোদের ধ্বংস করতেও প্রয়োজন। এবং স্থায়ীভাবে তথ্য ধ্বংস খুব কৌতুক হতে পারে।
আপনার কাছে যে পাসওয়ার্ডটি আছে সেটির জন্য, সেই পাসওয়ার্ড দিয়ে ডেটা ডিক্রিপ্ট করার সম্ভাব্য উপায়। উদাহরণস্বরূপ, ভেরাক্রিপ্টে এটি ব্যবহার করা যেতে পারে, "ইউনিভার্সাল পাসওয়ার্ড" (যেমন একটি কর্পোরেশনে), এটি ব্যাক আপ এবং অন্য পাসওয়ার্ডের জন্য পরিবর্তন করা হচ্ছে। সুতরাং আইটি ডিপ। যদি কেউ পাসওয়ার্ড হারিয়ে ফেলে তবেও সেই ভলিউমের অ্যাক্সেস পুনরুদ্ধার করতে পারে (মাস্টার পাসওয়ার্ড হিসাবে মনে করুন, তবে আগে থেকে মাস্টার কী নিয়ে বিভ্রান্ত করবেন না)।
চূড়ান্ত চিন্তা (টিএল; ডিআর)
মাস্টার কী দিয়ে নির্দিষ্ট সেক্টর ক্ষতিকারক হওয়ার সম্ভাবনা আপনার সম্পূর্ণ ডিস্ক ব্যর্থতার চেয়ে কম সম্ভাবনা। সুতরাং যদি এই তথ্যটি গুরুত্বপূর্ণ হয়, তবে এর পরিবর্তে আপনার এটির একটি ব্যাকআপ থাকা উচিত শুধুমাত্র ভলিউম হেডার (মাস্টার কী)।
এবং তথ্য দুর্নীতি সামান্য (16 বাইট) ছড়িয়ে পড়ে, যা বেশিরভাগ ব্যবহারের জন্য গ্রহণযোগ্য।
সুতরাং পার্টিশন বা ডিস্কের মাঝখানে একটি খারাপ ব্লক শুধুমাত্র সেই ব্লকটিকে প্রভাবিত করবে। এবং একটি সেক্টরের কয়েকটি বিট ত্রুটি সেক্টরের জন্য সীমাবদ্ধ, এবং এমনকি একটি সম্পূর্ণ 512 বাইট সেক্টর প্রভাবিত করবে না।
আপডেট (23/01/2017): OP মন্তব্যগুলির উপর ভিত্তি করে আরও তথ্য যুক্ত করুন।