SSD ड्राइव को सुरक्षित रूप से कैसे मिटाएं?


36

मैं SSD तकनीक के लिए बहुत नया हूँ, इसलिए मुझे नहीं पता कि यह हार्ड ड्राइव की तुलना कैसे करता है जब यह ड्राइव को सुरक्षित रूप से मिटा देता है। क्या यह डिस्क उपयोगिता को चलाने और "शून्य के साथ ओवरराइट" के साथ ड्राइव को मिटाने के लिए पर्याप्त है, या क्या यह हार्ड ड्राइव के लिए डिज़ाइन किया गया है? क्या अन्य क्रियाएं हैं जिन्हें लिया जाना चाहिए?

मैं एनएसए-ग्रेड सुरक्षा की तलाश नहीं कर रहा हूं, अगर आप मैक को वापस ला रहे हैं या बेच रहे हैं तो आप जिस तरह का काम करेंगे।


क्या आपको डेटा मिटाने की आवश्यकता है, या क्या आपको अन्य लोगों को यह समझाने की ज़रूरत है कि डेटा मिटा दिया गया है? यदि आपको केवल अपने आप को यह समझाने की आवश्यकता है कि डेटा चला गया है तो आपको एटीए कमांड सिक्योर इरेज़ को आज़माना चाहिए। यदि आपको अन्य लोगों को समझाने की आवश्यकता है तो आपको डिस्क-श्रेडिंग सेवा का उपयोग करने की आवश्यकता हो सकती है।
DanBeale

जवाबों:


45

यह आपके व्यामोह के स्तर पर निर्भर करता है। SSDs डेटा लिखने के तरीके को संभालने के कारण, SSD पर एक बार शून्य करना एक हार्ड ड्राइव पर ऐसा करने के लिए उतना अच्छा नहीं है।

जब आप किसी विशेष डेटा पृष्ठ को HD पर लिखते हैं, तो नया डेटा बस पुराने डेटा पर लिखा जाता है, इसे प्रतिस्थापित कर रहा है। पूरे डिस्क पर शून्य लिखें और सभी पुराने डेटा चले जाएंगे। दूसरी ओर, SSDs, केवल अलग-अलग पृष्ठों को अधिलेखित नहीं कर सकते हैं। किसी पृष्ठ पर डेटा को बदलने के लिए, पुराने डेटा को पहले मिटा दिया जाना चाहिए, और SSDs अलग-अलग पृष्ठों को मिटा नहीं सकते; उन्हें कई पन्नों से मिलकर पूरे ब्लॉक को मिटाना होगा।

ऐसा तब होता है जब आप SSD से पृष्ठ संख्या 5 को अधिलेखित करने के लिए कहते हैं, तो यह है कि SSD पृष्ठ # 5 पर डेटा को अकेले छोड़ देता है, लेकिन इसे अमान्य के रूप में चिह्नित करता है, एक और वर्तमान-रिक्त पृष्ठ आवंटित करता है (जैसे, # 2305), लिखते हैं पेज # 2305 पर नया डेटा, और अगली बार ओएस पेज # 5 के लिए पूछता है कि एक नोट बनाता है यह बजाय # 2305 मिलना चाहिए। मूल पृष्ठ # 5 डेटा कुछ समय बाद तक वहां बैठता है, जब ड्राइव को अधिक स्थान की आवश्यकता होती है, तो ब्लॉक से दूर किसी भी शेष वैध पृष्ठों को स्थानांतरित करता है, और इसे मिटा देता है। SSD के पास कंप्यूटर की तुलना में अधिक भौतिक मेमोरी क्षमता होती है, इसलिए वे कुछ समय के लिए वास्तव में कुछ भी मिटाने से पहले इस तरह से ब्लॉक कर सकते हैं (और जब वे वास्तव में कुछ मिटाते हैं, तो यह भविष्यवाणी करने का कोई अच्छा तरीका नहीं है कि बचे हुए डेटा के कौन से ब्लॉक हैं मिटाने के लिए चुना जाना)। देखिए आनंदटेक की यह समीक्षा अधिक विवरण के लिए (चेतावनी: यह काफी लंबा है, और संबंधित सामग्री चारों ओर फैली हुई है)।

नेट परिणाम: यदि आप "संपूर्ण" ड्राइव पर शून्य लिखते हैं, तो आपने वास्तव में सभी पुराने डेटा को अधिलेखित नहीं किया है। आपने नियंत्रक की अनुवाद तालिका को अपडेट कर दिया है, इसलिए यह कभी भी पुराने डेटा को OS में नहीं लौटाएगा (वे पृष्ठ सभी अमान्य हैं)। लेकिन अगर किसी के कट्टर को नियंत्रक को बायपास करने के लिए पर्याप्त है, तो वे आपके कुछ डेटा को वापस पा सकते हैं।

दो बार ओवरराइटिंग शायद काम करेगी, लेकिन यह नियंत्रक की आवंटन रणनीति पर निर्भर करता है। यादृच्छिक डेटा के साथ दो बार ओवरराइटिंग ( diskutil randomDisk 2 /dev/diskN) काम करने की थोड़ी अधिक संभावना है, लेकिन अभी भी गारंटी नहीं है। इन दोनों के कुछ बुरे दुष्परिणाम भी हैं: वे ड्राइव के कुछ जीवनकाल का उपयोग करते हैं, और एसएसडी पर तार्किक विखंडन को भी बढ़ाते हैं, इसके लेखन प्रदर्शन को कम करते हैं।

ध्यान दें कि ओएस एक्स के ग्राफिकल डिस्क उपयोगिता के हाल के संस्करण SSDs (ऊपर उल्लिखित कारणों के लिए) पर सुरक्षित मिटा विकल्प को अक्षम करते हैं, लेकिन कमांड-लाइन संस्करण अभी भी उन्हें अनुमति देता है। BTW, मैंने SSDs को एन्क्रिप्टेड प्रारूप में परिवर्तित करने के लिए सुरक्षित रूप से मिटाने के लिए कई सिफारिशें देखी हैं, लेकिन यह यादृच्छिक डेटा के साथ ओवरराइटिंग की तुलना में थोड़ा कम सुरक्षित है।

SSD को सुरक्षित-मिटाने का सबसे अच्छा तरीका नियंत्रक की अंतर्निहित सुरक्षित-मिटा सुविधा को लागू करना है। यह (यदि नियंत्रक डिजाइनरों ने अपना काम किया है) सही मायने में सभी ब्लॉकों को मिटा देना चाहिए, और तार्किक पृष्ठ मानचित्र को रीसेट करने, अनिवार्य रूप से इसे डीफ़्रैग्मेंट करने और इसके मूल प्रदर्शन को पुनर्स्थापित करने का दुष्प्रभाव भी है। दुर्भाग्य से, मैंने इसे करने के लिए देखी गई अधिकांश उपयोगिताओं (जैसे सीएमआरआर के एचडीडीईआरएस ) को डॉस के तहत चलाया, जो मैक पर बूट नहीं होगा। मैं एक GParted बूट सीडी से एक सुरक्षित मिटा करने के लिए (बल्कि जटिल) निर्देशों के साथ macrumors पर एक पोस्टिंग मिला । बूट करने योग्य फ्लैश ड्राइव से पार्टीड मैजिक का उपयोग करना भी संभव हो सकता है , लेकिन मैंने यह कोशिश नहीं की है।

यूसीएसडी में गैर-वाष्पशील सिस्टम लैब के शोधकर्ताओं ने ड्राइव को "मिटा" करके एसएसडी को अलग करने के विभिन्न तरीकों का परीक्षण किया है, फिर इसे नियंत्रक को बायपास करने के लिए, और अवशेष डेटा ( सारांश , पूर्ण पेपर ) के लिए जाँच की है । उनके परिणाम ज्यादातर मेरे द्वारा कही गई बातों से सहमत हैं (और यह भी दिखाते हैं कि अंतर्निहित सुरक्षित-मिटा आदेश हमेशा ठीक से लागू नहीं होता है):

हमारे परिणाम तीन निष्कर्षों की ओर ले जाते हैं: सबसे पहले, अंतर्निहित कमांड प्रभावी होते हैं, लेकिन निर्माता कभी-कभी उन्हें गलत तरीके से लागू करते हैं। दूसरा, एसएसडी के पूरे दृश्य पता स्थान को दो बार ओवरराइट करना आमतौर पर है, लेकिन हमेशा नहीं, ड्राइव को साफ करने के लिए पर्याप्त है। तीसरा, व्यक्तिगत फाइल सैनिटाइजेशन के लिए मौजूदा हार्ड ड्राइव-उन्मुख तकनीकों में से कोई भी एसएसडी पर प्रभावी नहीं है।


1
व्यापक उत्तर के लिए धन्यवाद। जैसा कि आप सुझाव देते हैं, मेरे लिए टर्मिनल कमांड चलाना कोई समस्या नहीं है। लेकिन भविष्य के संदर्भ के लिए: नियमित उपयोगकर्ता जो टर्मिनल के साथ इतने सहज नहीं हैं, क्या कर सकते हैं? बस डिस्क यूटिलिटी के 7-पास विकल्प का उपयोग करें?
रिनजविंड

4
मुझे नहीं पता कि मैं वास्तव में इस बिंदु पर किसी भी विकल्प की "सिफारिश" कर सकता हूं - वे सभी थोड़े चूसते हैं। ओवरराइट विकल्पों में से कोई भी ड्राइव के आजीवन लिखने की सीमा का उपयोग करेगा, और विखंडन को बढ़ाने और प्रदर्शन को कम करने के लिए करेगा। डिस्क उपयोगिता में एक विकल्प के रूप में एटीए-सिक्योर-इरेज़ (यानी नियंत्रक-आधारित विकल्प) को जोड़ने के लिए सबसे अच्छी बात Apple होगी, लेकिन कौन जानता है कि कब / क्या होगा।
गॉर्डन डेविसन

2
@ गोर्डन - यह एक महान और जानकारीपूर्ण प्रतिक्रिया थी! +1
डोलन एंटेनुची

हाय @GordonDavisson। यदि आप इस उत्तर को लिखने के बाद से कुछ भी बदल गए हैं तो उत्सुक हैं (तब से कुछ OS अपडेट हुए हैं)।
समथेब्रैंड

@SamtheBrand: बहुत कुछ नहीं बदला है। मैंने एक नोट जोड़ा है कि डिस्क यूटिलिटी (GUI संस्करण) अब SSDs पर सुरक्षित मिटाता है (क्योंकि यह वास्तव में काम नहीं करता है), HDDErase के लिंक को ठीक कर दिया है, और एक नोट जोड़ा है कि Parted Magic काम कर सकता है (हालांकि मैंने इसे आज़माया नहीं है) )।
गॉर्डन डेविसन

8

एक टर्मिनल खोलें और निम्न कमांड टाइप करें:

df -k

एसएसडी के विभाजन के अनुसार पहले कॉलम पर ध्यान दें जिसे आप अपरिवर्तनीय रूप से मिटाना चाहते हैं। मान लीजिए कि यह है /dev/disk1s2

निम्न कमांड टाइप करें:

dd if=/dev/zero of=/dev/rdisk1s2 bs=100k

/dev/rdisk1s2SSD पर आपके विभाजन से जुड़ा कच्चा उपकरण कहां है। यह कमांड इस विभाजन को पूरी तरह से 1 ब्लॉक से अंतिम एक तक उपलब्ध कराएगा। यह कमांड लंबे समय तक चलेगी (~ 100 Gbytes के लिए ~ 1/2 h) प्रगति का कोई अच्छा स्क्रॉल बार नहीं है।

एक बार जब यह कमांड आपको वापस कर देता है तो आपके शेल का संकेत डिस्क पूरी तरह से और अपरिवर्तनीय रूप से मिटा दिया गया है। Disk Utilityइस विभाजन को शुरू करें और जांचें। यह आपको बताएगा कि यह मरम्मत के किसी भी रूप से परे है। और यह सही है।

जैसा आप चाहते हैं बस इस विभाजन को प्रारूपित करें।

यहाँ भौतिक ब्लॉक स्तर पर क्या हो रहा है:SSD मिटाते हुए dd & DU की फिल्म


1
यह शून्य के साथ अधिलेखित करने के लिए डिस्क उपयोगिता के विकल्प के बराबर है, और एसएसडी पर समान कारण से पूरी तरह से सुरक्षित नहीं होगा। विस्तृत विवरण के लिए मेरा उत्तर देखें।
गॉर्डन डेविसन

→ गॉर्डन: मैंने आपका उत्तर पढ़ा, और मुझे लगता है कि मैंने इसे समझ लिया है, और मैंने इसकी गुणवत्ता के लिए इसे उकेरा है। मेरा उत्तर कच्चे डिस्क डिवाइस का उपयोग कर रहा है न कि ब्लॉक एक (डिस्क यूटिलिटी के रूप में)। इसे SSD (भरोसेमंद साधनों के साथ) पर सत्यापित किया जाना चाहिए, लेकिन जहां तक ​​मैं पुराने मानक HD पर कैश के उपयोग से जानता हूं, इस कैश से बचने के लिए कच्चा डिस्क इंटरफ़ेस सबसे आसान तरीका था। एक एसएसडी डिवाइस बस एक एचडी डिस्क है जहां कैश पूरी क्षमता है, और भौतिक डिस्क हटा दी गई है।
डेन

कच्चे डिवाइस (/ dev / rdisk *) का उपयोग करके OS कैश को बायपास करता है, लेकिन फ्लैश ट्रांसलेशन लेयर को बायपास नहीं करता है (जो कि मेरे द्वारा बताई गई समस्या का स्रोत है)। वास्तव में, ओएस से इसे बायपास करने का कोई तरीका नहीं है - डिवाइस कंट्रोलर बस (एसटीए या जो भी) के लिए सच्चे कच्चे फ्लैश स्टोर को कभी उजागर नहीं करता है, और चूंकि ओएस केवल बस पर ड्राइव के साथ बातचीत कर सकता है, इसलिए कोई नहीं है इसे सुरक्षित अधिलेखित करने के लिए कच्चे-पर्याप्त पहुंच प्राप्त करने का तरीका।
गॉर्डन डेविसन

इसका पहला चरण ddयह है कि न केवल कुछ कैश स्तर को बायपास किया जाए (हमारे पास उनकी क्षमता जानने का कोई तरीका नहीं है), बल्कि उन्हें आंशिक रूप से समाप्त करने के लिए (यह आंकड़ा 3 राज्य है)। दूसरे पास को वास्तव में नए ब्लॉक खोजने होंगे और उन्हें सुरक्षित रूप से मिटाना होगा।
डेन

यह अभी भी पर्याप्त नहीं है, दो कारणों से: पहला, जब डिस्क उपयोगिता डिस्क को प्रारूपित करता है, तो यह केवल इसे (विभाजन तालिका, वॉल्यूम हेडर, आदि) का थोड़ा सा ओवरराइट करता है, और इसकी कोई गारंटी नहीं है कि अतिरिक्त क्षमता को समाप्त करने के लिए पर्याप्त है। दूसरा, इस बात की कोई गारंटी नहीं है कि अतिरिक्त लेखन DU अलग-अलग भौतिक ब्लॉकों को हिट करेगा जो पहले dd मिटाए थे - नियंत्रक आवंटन रणनीति के आधार पर, यह पूरी तरह से संभव है कि आप बस एक ही भौतिक ब्लॉक को बार-बार मिटा रहे हों। इसलिए मैंने कहा कि दो बार सभी जगह को ओवरराइट करने के लिए भी पर्याप्त नहीं हो सकता है।
गॉर्डन डेविसन

7

डिस्क उपयोगिता में "सुरक्षा विकल्प ..." बटन वर्तमान में SSDs के लिए धूसर हो गया है। Http://support.apple.com/kb/HT3680 के अनुसार , SSD को सामान्य रूप से मिटाना पर्याप्त सुरक्षित हो सकता है:

नोट: OS X Lion और SSD ड्राइव के साथ, सिक्योर इरेज़ और इरेज़िंग फ्री स्पेस, डिस्क यूटिलिटी में उपलब्ध नहीं हैं। SSD ड्राइव के लिए इन विकल्पों की आवश्यकता नहीं है क्योंकि एक मानक मिटा एक SSD से डेटा को पुनर्प्राप्त करना मुश्किल बनाता है। अधिक सुरक्षा के लिए, SSD ड्राइव का उपयोग शुरू करते समय FileVault 2 एन्क्रिप्शन को चालू करने पर विचार करें।

diskutil secureErase freespace 4 disk0s2रिकवरी विभाजन पर टर्मिनल से कुछ चलाना संभव है ।

बस ड्राइव को मिटाने से पहले FileVault 2 को चालू करना शायद एक बेहतर विकल्प है। इस उत्तर के अनुसार , रिमोट वाइप करने से भी एन्क्रिप्शन कुंजी मिट जाती है यदि FileVault 2 सक्षम है:

हां, जब आप कंप्यूटर को दूरस्थ रूप से पोंछते हैं तो यह एक सुरक्षित वाइप करता है। Apple आपको यह भी चेतावनी देता है कि यह एक दिन के रूप में लंबे समय तक ले सकता है। हालाँकि, यदि आपका ड्राइव FileVault 2 के साथ एन्क्रिप्ट किया गया था, तो डिस्क को मिटाना आवश्यक नहीं है। यह डिस्क पर संग्रहीत एन्क्रिप्शन कुंजी (एस) को सुरक्षित रूप से मिटाने के लिए पर्याप्त है, इसलिए वे यही करते हैं। यह बहुत जल्दी है और अंतर्निहित एन्क्रिप्शन सिस्टम के रूप में सुरक्षित है, जो अभी के लिए बहुत सुरक्षित है।

http://training.apple.com/pdf/wp_osx_security.pdf :

फ़ाइल वॉल्ट 2 आईटी विभाग को किसी भी समय किसी भी मैक से एन्क्रिप्शन कुंजी को मिटाने की क्षमता प्रदान करता है ताकि यह सुनिश्चित किया जा सके कि एन्क्रिप्टेड डेटा को उपयोगकर्ता लॉगिन या डेटा रिकवरी टूल्स द्वारा एक्सेस नहीं किया जा सकता है। इस प्रक्रिया को रिमोट वाइप कहा जाता है।


5
संवेदनशील डेटा संग्रहीत करने से पहले एन्क्रिप्शन (यानी फ़ाइल वॉल्ट) को चालू करना एक उत्कृष्ट विकल्प है, लेकिन मेरे साथ ऐसा होता है कि एन्क्रिप्शन कुंजी को "मिटाने" के लिए इस्तेमाल की जाने वाली प्रक्रिया पूरी तरह से उसी कारण से सुरक्षित नहीं हो सकती है जो एक मानक सुरक्षित मिटा नहीं है - - पुरानी एन्क्रिप्शन कुंजी अभी भी फ्लैश में संग्रहीत की जाएगी, बस एक पृष्ठ में जो मैप किया गया है। तो कोई है जो नियंत्रक को दरकिनार कर सकता है अभी भी "मिटा" कुंजी पर मिल सकता है ...
गॉर्डन डेविसन

@GordonDavisson लेकिन यदि आप ड्राइव को फॉर्मेट करते समय फिर से एन्क्रिप्शन को सक्षम करते हैं, तो पुरानी एन्क्रिप्शन कुंजी को अधिलेखित कर दिया जाना चाहिए ताकि पुराना डेटा सुरक्षित रूप से सुलभ न हो?
supersize

@supersize पुरानी एन्क्रिप्शन कुंजी को अधिलेखित किया जा सकता है, लेकिन यह वास्तव में निर्भर करता है कि सुधार के दौरान कौन से भौतिक पृष्ठ मिट जाते हैं, और यह ऑपरेटिंग सिस्टम नहीं बल्कि कुछ ड्राइव फ़र्मवेयर नियंत्रण है।
गॉर्डन डेविसन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.