بخشی از مقاله
فرمت :NTFS
2- مقدمه
شرکت مايکروسافت سيستم عامل جديد رده ويندوز خود را به نام Windows XP (eXPerience) در سال 2001 و پس از Windows Me (Millennium) به بازار معرفي کرد. مايکروسافت معتقد است اين سيستم عامل مهمترين محصول اين شرکت پس از Windows 95 است. در کنار خصوصيات جديد رابط کاربر ، اين سيستم عامل جديد محيط پايدارتر و قابل اعتماد تري را نسبت به نگارش هاي پيشين ويندوز ارائه مي دهد. ويندوز XP در دو نسخه خانگي (Home edition) و حرفه اي (Professional edition) موجود مي باشد. در حالي که نسخه خانگي شامل امکانات گسترده صوتي و تصويري ديجيتال، شبکه خانگي و برقراري ارتباط است، نسخه حرفه اي تمرکز بيشتري بر امنيت و قابليت اطمينان دارد [1].
ويندوز XP بسياري از خصوصيات ويندوزهاي 2000 و NT را در فراهم کردن محيطي پايدار (مثلا اگر برنامه اي از کار بيفتد، در بيشتر حالات، مي توانيد به کار با ساير برنامه ها ادامه دهيد) و امن از دستبرد افراد خاطي يا اشتباهات ناشي از سهل انگاري با امکانات لازم براي کاربران خانگي نظير ظاهر جذاب، بکار گيري ساده و امکانات صوتي تصويري بيشتر در هم آميخته است. استفاده درست و آگاهانه از اين قابليت ها، کاربر را بي نياز از بکارگيري چند سيستم عامل براي اهداف مختلف مي کند. ولي پيامدهاي استفاده نادرست و نا آگاهانه از XP، براي کاربران معمولي، بيشتر از ويندوز 98 يا Me است. بنابراين بهترين کار پيش از بکارگيري قابليت هاي جديد اين سيستم عامل، بررسي جوانب مختلف استفاده و راهکارهاي مقابله با مشکلات احتمالي است.
از ويژگي هاي بهبود يافته در ويندوز XP نسبت به 2000 و NT و جديد براي کاربران 98 و Me، پشتيباني از NTFS پيشرفته مي باشد. NTFS مختصر شده عبارت NT File System به معني سيستم فايل NT است. در اين مقاله سعي مي کنيم به جوانب مختلف اين سيستم فايل بپردازيم و ويژگي هاي پيشرفته آن را تا حد ممکن به دور از پرداختن به جزئيات غيرقابل استفاده، زير ذره بين بگذاريم.
3- سيستم فايل (File System)
NTFS مختصر شده عبارت NT File System به معني سيستم فايل NT است و NT هم زماني به معني New Technology (فناوري جديد) بود آنگاه که ويندوز NT واقعا يک فناوري جديد به شمار مي رفت.
سيستم فايل تعريف مي کند که سيستم عامل چگونه اطلاعات را روي ديسک بگذارد و سپس آن را بخواند، پاک کند يا جابجا نمايد. از ميان سيستم فايل هاي موجود و آن هايي که در ويندوز XP پشتيباني مي شوند (قابل استفاده اند)، اغلب سيستم فايل هاي FAT/FAT32 (File Allocation Table) و NTFS براي مديريت فضاي ديسک سخت بکار مي روند.
براي ذخيره اطلاعات و نصب سيستم عامل، پيش از هر چيز بايد ديسک سخت را پارتيشن بندي کرد[1]. سپس، هر پارتيشن يا Volume را با سيستم فايل دلخواه، فرمت کرد[2] . فهرست درايوهاي مختلف در پنجره My Computer اين تقسيم بندي را به ما نشان مي دهد. (براي فهميدن سيستم فايل موجود بر روي هر درايو، گزينه Properties را از منوي File انتخاب کنيد - شکل 1)
شکل 1- فايل سيستم درايوهاي مختلف در پنجره ي Properties
تذکر: در اين متن منظور از «درايو»، volume يا drive است.
عمليات [3] I/O، صرف نظر از سيستم فايل، امکان دسترسي برنامه ها و کاربران به فايل ها را فراهم مي کند. با اين حال، قابليت هاي موجود، به سيستم فايل و سيستم عامل مورد استفاده بستگي دارد.
3-1- FAT32
نگارش هاي سيستم فايل FAT32 شامل سيستم فايل هاي FAT12، FAT16 و FAT32 مي شود. در اين مقاله منظور، همان FAT32 که است که قابليت هاي بيشتري دارد.
در اين مقاله به اين سيستم فايل نمي پردازيم. اگرچه در جاي جاي مقاله، مقايسه هايي بين NTFS و FAT32 انجام مي دهيم.
3-2- NTFS
به همراه ويندوز NT، مايکروسافت سيستم فايل جديدي به نام NTFS را معرفي کرد. از مهمترين ويژگي هاي اين سيستم فايل مي توان به موارد زير اشاره کرد:
1. قابليت بازيابي (Data Recoverability)
2. انعطاف پذيري در برابر اشکال در ذخيره اطلاعات (Storage Fault Tolerance)
3. امنيت اطلاعات (Data Security)
4. فشرده سازي (Compression)
5. نمايه سازي (Indexing Service)
6. ردگيري توزيع شده ي پيوندها (Distributed Link Tracking)
7. قابليت تطابق بهتر NTFS با درايوهاي بزرگ (Better scalability to large drives) (شرح در بخش FAT32 يا NTFS)
در بخش بعدي اين مقاله، علاوه بر شرح تفصيلي درمورد هر کدام از اين ويژگي ها که در سيستم فايل FAT32 وجود نداشت، به ساير ويژگي هاي منحصر به فرد اين سيستم فايل اشاره مي کنيم.
3-3- FAT32 يا NTFS
3-3-1- سازگاري و رفع اشکال
پيش از تصميم گيري درباره سيستم فايل، بايد مسئله سازگاري را مد نظر قرار داد. در کامپيوتر هايي با چند سيستم عامل مختلف (مثلا XP و 98) راه اندازي مي شوند، بايد سيستم فايل پشتيباني شده در همه سيستم عامل ها، يعني FAT32 را انتخاب کرد. چون اين سيستم فايل امروزه در بيشتر سيستم عامل ها پشتيباني مي شود (جدول 1). براي اطلاعات بيشتر به بخش نسخه هاي NTFS مراجعه کنيد.
جدول 1- پشتيباني خانواده ي سيستم عامل هاي ويندوز از سيستم فايل ها به نقل از [2.a]
NTFS (Windows XP version) FAT32
Windows XP
Windows 2000 -> Most of the features
Windows NT 4.0 (SP4 or later) -> Can access some files
Other Operating Systems -> not supported Windows 98/Me/2000/XP
Windows 95 (OSR 2)
Other Operating Systems
-> not supported
• NTFS براي فرمت کردن رسانه هاي برداشتني (Removable media - نظير ديسک فلاپي و CD) قابل استفاده نيست.
• در مواقع اضطراري که به هر دليل راه اندازي سيستم عامل بطور معمول ممکن نيست، در صورت استفاده از ديسک فلاپي راه انداز ، درايوهاي NTFS قابل دسترسي نيستند. در اين موارد بايد از CD راه انداز نصب ويندوز و ابزارهاي همراه آن استفاده کرد.
• در مورد مشکلات درايوهاي NTFS که با ابزارهاي ويندوز قابل رفع کردن نباشند، بطور کلي برنامه هاي کمتري نسبت به FAT32 يافت مي شود که بتوانند NTFS ، آن هم جديدترين نسخه ي آن را ترميم کنند.
• با توجه به تذکرات بالا، در صورت خرابي NTFS که منجر به از کار افتادن سيستم عامل شود، رفع اشکال با مشکلاتي روبرو مي شود. بعضي افراد، سيستم عامل خود را بر روي يک درايو FAT32 نصب مي کنند. با رفع اشکال درايو FAT32 و راه اندازي سيستم عامل، مي توان درايوهاي NTFS را رفع اشکال کرد. در اين صورت، مي توان ويژگي هاي منحصر بفرد NTFS را براي ذخيره اطلاعات با ارزش بکار گرفت.
3-3-2- قابليت تطابق بهتر NTFS با درايوهاي بزرگ
به جز امکانات منحصر به فردي که تنها با استفاده از NTFS قابل دستيابي است، نکات زير پيرامون کارايي NTFS قابل توجه است.
• FAT32 جدول تخصيص فايل هاي خود را هميشه در ابتداي فضاي درايو قرار مي دهد. بنابراين به دليل نياز مداوم به روز رساني اين جدول، هميشه يک جريمه ي مسافت وجود دارد. اکنون که درايوهاي سخت بسيار بزرگ شده اند، اين رفت و برگشت واقعا موجب کاهش کارايي مي شود. NTFS با استفاده از روش خاصي براي ذخيره فايل ها سعي کرده است کارايي را در اين موارد بالا ببرد.
جدول 2- اندازه درايو در سيستم فايل ها به نقل از [2.a]
NTFS FAT32
Min. Volume Size Recommended: 200 MB *
512 MB **
Max. Volume Size 16 EB ***
2 TB
(Windows XP formats up to 32 GB)
* البته حتي درايوهايي با حجم 10 مگابايت را هم مي توان با NTFS فرمت کرد ولي بدليل فضاي سربار بيشتري که NTFS نسبت به FAT32 از درايو اشغال مي کند، از فرمت کردن پارتيشن هاي کوچکتر از 200 مگابايت با NTFS بايد پرهيز کرد.
** درايوهاي کوچکتر از 512 مگابايت بايد با FAT16 يا FAT12 فرمت شوند.
*** 1 Exabyte = 1024 Terabytes = 1024*1024 Gigabytes
• نقطه ضعف ديگر FAT32 ذخيره ي ناهوشمندانه فايل بر روي ديسک است به اين معني که به دنبال جاي خالي مي گردد و فايل را در اولين جايي که پيدا مي کند مي نويسد و برايش مهم نيست که اين فضا براي نگهداري همه ي فايل کوچک باشد و مجبور شود فايل را به چند تکه بشکند و اينجا و آنجاي ديسک قرار دهد. به عبارت ديگر، تنها کارايي نوشتن مد نظر است و اصلا مهم نيست که اين فايل بعدا قرار است با چه سرعتي خوانده شود. پيامد اين امر، بروز مشکلات جدي در زمينه ي چند تکه شدن فايل ها (fragmentation) است که منجر به کاهش بيش از پيش کارايي مي شود.
• از نقاط ضعفي که در FAT16 وجود داشت و در FAT32 (تقريبا) و NTFS (بطور کامل) رفع شده است، استفاده از کلاسترهاي بسيار بزرگ بر روي ديسک هاي حجيم بود که موجب هدر رفتن زياد فضاي ديسک مي شد.
4- بررسي عميقتر NTFS
در اين قسمت جدولي از شرح مختصر ويژگي هاي NTFS ارائه مي شود. براي مطالعه ي شرح تفصيلي، مثال ها، نکات و نحوهي بکارگيري هر ويژگي، مي توانيد به بخشي که در ادامهي مقاله به آن اختصاص داده شده است مراجعه کنيد.
خصوصيت
شرح مختصر
قابليت اعتماد
1 قابليت بازيابي (Data Recoverability)
NTFS، انسجام ديسک را حتي پس از از خرابي CPU، توقف سيستم يا خطاي خواندن و نوشتن تضمين مي کند. منظور از حفظ انسجام ديسک، بازگشتن ساختار سيستم فايل به وضعيت پيش از خرابي و قابل دستيابي بودن تمام فايل ها است. اطلاعات درون فايل هاي کاربر ممکن است حين خرابي، صدمه ديده باشد.
2 انعطاف پذيري در برابر اشکال در ذخيره اطلاعات (Storage Fault Tolerance)
NTFS بطور مؤثر از روش هاي مضاعف سازي اطلاعات براي حفظ اطلاعات حياتي سيستم فايل و همينطور نگاشت کلاسترهاي معيوب استفاده مي کند.
امنيت اطلاعات
3 امنيت اطلاعات (Data Security)
NTFS امکان اِعمال محدوديت هاي دسترسي به فايل ها و پوشه ها مطابق با معماري امنيت اشيا در ويندوز را فراهم مي کند.
4 رمزنگاري فايل ها (Encryption)
NTFS سيستم فايلِ رمز شده (EFS) را براي حفاظت از اطلاعات با روش هاي رمزنگاري در اختيار قرار مي دهد. وقتي داده اي رمز مي شود از لحاظ فيزيکي به صورتي در مي آيد که بدون رمز گشايي، بي معني و غير قابل استفاده است.
ذخيره سازي اطلاعات
5 Unicode Names
NTFS از Unicode به عنوان مجموعه کاراکترهاي استاندارد خود استفاده مي کند که در آن حروف و علائم همه زبان ها وجود دارد.
6 فايل هاي چند جرياني (Multiple File Streams)
يک جريان داده، دنباله اي از بايت ها است. در NTFS، هر فايل مي تواند از چند جريان (بخش مجزاي) نامگذاري شده ي داده تشکيل شده باشد. با اين قابليت مي توان اطلاعات مفيدي درباره هر فايل را با آن همراه کرد بدون آنکه به اطلاعات درون فايل دست زده شود.
7 فشرده سازي (Compression)
فايل ها در درايوهاي NTFS مي توانند براي صرفه جويي در فضاي ديسک، به صورت فشرده ذخيره شوند.
8 فايل هاي تُنُک (Sparse files)
NTFS سازوکاري را براي برنامه ها تدارک ديده تا بتوانند تنها پاره هاي معنادار فايل را بر روي ديسک ذخيره کنند و فضايي به پاره هاي بي معني (صفر) اختصاص داده نشود.
9 سهميه هاي ديسک (Disk Quotas) با اين ويژگي مي توانيد علاوه بر کنترل فضاي ديسک که هر کاربر استفاده مي کند، بيشينه ي فضاي در اختيار او را مشخص کنيد. براي اطلاعات بيشتر به راهنماي ويندوز مراجعه کنيد.
دستيابي به اطلاعات
10 دفترچه ثبت تغييرات (Change Journals)
هر درايو NTFS، يک بانک اطلاعاتي دارد که فهرست تغييرات فايل ها و پوشه هاي درايو را در خود نگه مي دارد.
11 نمايه سازي (Indexing Service)
اين سرويس، امکان جستجوي سريع درون فايل ها بدنبال کلمات کليدي و عبارات بعلاوه مرتب سازي و جستجوي فايل ها با توجه به نام يا ساير خصوصيات نظير زمان ايجاد شدن را سهولت و سرعت مي بخشد.
12 ردگيري توزيع شده ي پيوندها (Distributed Link Tracking)
سرويسِ ردگيري پيوندها امکان تصحيح پيوندهايي را که فايل مقصد آن ها تغيير نام يافته يا جابجا شده فراهم مي کند.
13 Reparse Points
يک Reparse Point مجموعه اي از اطلاعات تعريف شده توسط کاربر است که به يک فايل يا پوشه منتسب مي شود. معني اين اطلاعات توسط برنامه اي که آن را توليد کرده و صافي سيستم فايل نصب شده مربوطه فهميده مي شود که وظيفه تفسير آن و پردازش فايل يا پوشه را بر عهده دارد.
14 پيوندهاي سخت و نقاط انشعاب (Hard Links and Junctions)
با استفاده از پيوندهاي سخت و نقاط انشعاب، مي توانيد به طور مؤثري، به يک فايل يا پوشه يکسان از طريق چند مسير مختلف و با نام هاي متفاوت دسترسي پيدا کنيد.
15 پوشه ها دروازه هايي براي ساير درايوها (Directories as Volume Mount Points)
دروازه يک پوشه ي خالي بر روي يک درايو NTFS است که در آن يک درايو ديگر “mount” مي شود. با تعريف يک پوشه به عنوان دروازه، کاربران از آن پس مي توانند يا مثل قبل، با استفاده از حرفي که به درايو منتسب شده بود يا با استفاده از مسير اين دروازه به محتواي آن دست يابند.
4-1- قابليت بازيابي (Data Recoverability)
اگر به هر دليل (قطع برق، توقف ناگهاني سيستم ، الغاي دستور و...) نوشتن اطلاعات دچار مشکل شود، NTFS حفظ انسجام (consistency) ديسک را تضمين مي کند. بدين منظور، با راه اندازي دوباره سيستم، عملياتي که بصورت نيمه کاره رها شده است به تشخيصِ سيستم فايل، بصورت خودکار پس گرد (roll back) و بعضي عمليات هم دوباره انجام مي شود[1]. بنابراين ويندوز مي تواند بدون نياز به شما براي اجراي برنامه خاصي، مشکلات احتمالي پيش آمده را رفع کند. بعلاوه NTFS برنامه هاي کمکي را براي موارد شکست عمليات بازيابي يا بروز اشکال در حوزه خارج از عهده سيستم در اختيار شما قرار مي دهد.
• منظور از تضمين انسجام ديسک توسط NTFS، مصون نگهداشتن ساختارهاي ذخيره سازي فايل ها و پوشه ها از خرابي است. بنابراين تمام فايلها و پوشه ها همچنان قابل دسترسي خواهند بود. NTFS، صحت اطلاعات کاربر (اطلاعات درون فايل ها و ...) را تنها در صورتي تضمين مي کند که برنامه کاربردي تصريح کرده باشد. در غير اين صورت هم، پس از توقف سيستم و انجام عمليات بازيابي، وضع اطلاعات کاربر از سه حالت خارج نيست: اطلاعات جديد/اطلاعات قديمي/صفر، کاربران پس از توقف سيستم، با اطلاعات تصادفي روبرو نمي شوند[4.o].
• با اين وجود در صورت خراب شدن MBR (Master Boot Record) و يا Boot Sector، ممکن است اطلاعات ديسک ديگر قابل دستيابي نباشد و بايد از روش هاي ديگري براي بازيابي ديسک استفاده کرد[4.k].
4-2- انعطاف پذيري در برابر اشکال در ذخيره اطلاعات
(Storage Fault Tolerance)
اين خصوصيت در دو مقياس به کار گرفته مي شود:
براي کامپيوترهاي محلي: NTFS بصورت توکار در برابر مشکلاتِ ذخيره اطلاعات انعطاف (تاب) بسيار بيشتري (نسبت به FAT32) نشان مي دهد. علاوه بر قابليت بازيابي (Data Recoverability) که پيش از اين به آن اشاره شد، همواره از روش هاي مضاعف سازي (data-redundancy) براي حفظ اطلاعات حياتي سيستم فايل استفاده مي کند.
در شبکه ها و سيستم هاي اطلاعاتي: علاوه بر مورد فوق، در اين سيستم ها در صورتي که از حداقل دو يا سه ديسک سخت مجزا استفاده کنند، مي توان از مضاعف سازي اطلاعات بهره برد. مثلا يکي از ديسک ها به عنوان آينه تمام نماي ديگري (mirror) استفاده شود و در صورت بروز اشکال، اطلاعات از ديسک سالم بازيابي شوند. بيشتر اين امکانات تنها بر روي درايوهاي NTFS قابل استفاده است. براي اطلاعات بيشتر، به[2.h] مراجعه کنيد.
علاوه بر روش هاي ذکر شده، بعضي سخت افزارها، قابليت هاي Fault-Tolerance را براي شما فراهم مي کنند (بصورت سخت افزاري توانايي احياي اطلاعات موجود در بدسکتورها را دارند)
4-2-1- نگاشت کلاسترهاي معيوب (Bad-Cluster Remapping)
قتي NTFS با يک بدسکتور[1] مواجه مي شود، اين سکتور را علامت مي زند و ديگر از آن استفاده نمي کند.
• اگر حين نوشتن به يک بدسکتور برخورده باشد، اطلاعات را در يک سکتور سالم از ديسک مي نويسد.
• اگر حين خواندن از ديسک هايي که Fault-tolerant نيستند ، به بدسکتور بر خورده باشد، تمام سکتورهاي موجود در آن کلاستر به عنوان معيوب علامت مي خورند و داده درون آن ها از بين مي رود. تلاش براي خواندن از يا نوشتن در اين سکتورها، منجر به يک پيام خطا مي شود.
• حين خواندن از ديسک هاي Fault-tolerant به محض شناسايي بدسکتور، داده ي اين بدسکتور از محل ثانويه ذخيره اطلاعات بازيابي مي شود و در يک سکتور سالم ديسک نوشته مي شود. سکتور معيوب، به سکتور سالم نگاشت مي شود و عمليات خواندن و نوشتن (يا هر عمل ديگري بر روي آن سکتور) از سکتور معيوب به سکتور سالم هدايت مي شود.
در سيستم فايل FAT32 قابليت مضاعف سازي اطلاعات موجود نيست و فقط از جدول تخصيص فايل ها دو کپي نگهداري مي شود. همچنين در برخورد با يک بدسکتور، تنها يک خطا صادر مي کند و آن را به صورت خودکار علامت نمي زند که ديگر استفاده نشود. همينطور در صورت خرابي يکي از کپي هاي جدول تخصيص فايل ها يا بروز بدسکتور، از رفع آن بصورت خودکار عاجز است و بايد از برنامه هاي جانبي نظير Scandisk يا Checkdisk (دستور chkdsk.exe) استفاده کرد که در صورت بزرگ بودن درايو، کار اين برنامه ها زمان زيادي مي برد.
به همين دليل است که وقتي کامپيوتر ناخواسته خاموش مي شود، ويندوز پيش از آغاز به کار، درايوهايي که در حال استفاده بودند را Scandisk مي کند ولي اين کار براي درايوهاي NTFS لازم نيست چون اگر مشکلي پيش آيد، معلوم است که در کجا بوده و خود سيستم فايل، خود را ترميم مي کند.
هر چند ترفند نگاشت کلاسترهاي معيوب، نگراني در موردِ از بين رفتنِ اطلاعات را تا حدي کاهش مي دهد ولي جاي تهيه نسخه پشتيبان از اطلاعات را نمي گيرد. بُروز چنين اشکالاتي را در ديسک بايد زير نظر گرفت و در صورت گسترش خرابي، ديسک را جايگزين کرد.
4-3- امنيت اطلاعات (Data Security)
NTFS از يک سيستم امنيت اطلاعات بصورت توکار بهره مند است. NTFS امکان اِعمال محدوديت هاي دسترسي به فايل ها و پوشه ها مطابق با معماري امنيت اشيا در ويندوز [1] را فراهم مي کند. مي توان به فايل ها و پوشه ها، اجازه هاي دسترسي (permissions - براي کاربران خاص يا گروه ها) اعطا کرد. در اين صورت، ويندوز از اين اطلاعات در برابر دسترسي افراد غير مجاز جلوگيري مي کند. اين محدوديت ها، هم براي کاربراني که از شبکه به اطلاعات دسترسي پيدا مي کنند و هم براي آن هايي که پشت کامپيوتر از اکانت (account - حساب کاربري) خودشان استفاده مي کنند اعمال مي شود.
• با استفاده از سيستم فايل FAT32، فقط مي توان از دسترسي ناخواسته کاربران شبکه به اطلاعات کامپيوتر و آنهم از طريق Share Permissions جلوگيري کرد و هيچ راهي براي محدود کردن دسترسي کاربران ديگر وجود ندارد. بنابراين سيستم فايل FAT32 امن است تا وقتي که فردي ناخواسته پشت کامپيوتر ننشيند[4.a].
اجازه دسترسي به فايل ها و پوشه ها توسط ويندوز و با استفاده از ACL (Access Control List) ها که در توصيف گر هاي امنيت (security descriptors) به فايل ها و پوشه ها متصل شده انجام مي شود. بنابراين با پشت سر گذاشتن موانع امنيتي ويندوز (مثلا استفاده از سيستم عامل هاي ديگر براي دسترسي به درايوهاي NTFS و يا استفاده از برنامه هايي که در محيط داس (MS-DOS Mode) و در حالتي که ويندوز اجرا نشده به اين درايوها دسترسي مي يابند) فايل ها و پوشه ها، در معرض دستبرد قرار مي گيرد.
• بنابراين حتي با اعمال محدوديت هاي دسترسي NTFS، کساني که دسترسي فيزيکي به ديسک سخت داشته باشند، ممکن است بتوانند با کمي صرف وقت، موانع امنيتي را پشت سر بگذارند. براي حداکثر امنيت، به بخش رمزنگاري فايل ها (Encryption) مراجعه کنيد.[3.g]
• با استفاده از برنامه Backup ، مي توانيد از فايل هاي موجود بر روي درايوهاي NTFS و تنظيمات امنيتي آن ها نسخه پشتيبان (backup) تهيه کنيد. با اين وجود، اگر اطلاعات خود را روي درايوهاي FAT32 بازيابي (recover) کنيد، تمام تنظيمات امنيتي و ساير خصوصيات مختص به NTFS را بر روي آن فايل ها از دست خواهيد داد
4-4- رمزنگاري فايل ها (Encryption) - بخش سوم
4-4-1- پيش از هر کاري بايد بدانيد...
EFS ترکيبي از الگوريتم کليدهاي متقارن[1] و فناوري کليد عمومي[2] را براي رمزنگاري فايل ها بکار مي گيرد. براي هر کاربري که EFS را بکار مي گيرد، پيش از هر چيز، در صورت لزوم يک گواهينامه ي ديجيتالي[3] حاوي کليدهاي عمومي و خصوصي (مختص به او) صادر مي شود. EFS براي رمزنگاري و رمزگشايي فايل ها از گواهينامه کاربر مورد نظر استفاده مي کند (شکل 5). فقط کليد خصوصي کاربرانِ مجاز مي تواند فايل را رمزگشايي کند .
توجه: تصور نشود کليد خصوصي بين کاربران يک فايل به اشتراک گذارده مي شود بلکه هر کاربري (حتي مأمور بازيابي) با استفاده از کليد خصوصي خودش فايل را رمزگشايي مي کند. (براي اطلاعات بيشتر ادامه ي همين بخش را مطالعه کنيد.)
در صورتي که براي گواهينامه ي ديجيتالي يکي از کاربران اشکالي پيش آيد و نتواند فايلهاي رمز شده اش را رمزگشايي کند، از مأمور(ان) بازيابي کمک مي گيرد. مورد کاربرد ديگر اين مأمور، دستيابي به فايل هاي کارمندي است که ديگر در شرکت کار نمي کند.
مأمور بازيابي، بصورت خودکار جزو کساني قرار دارد که با کليد خصوصي خود مي تواند فايلهاي رمز شده را رمزگشايي کند. در شبکه، اين کاربر به صورت خودکار تعريف مي شود (معمولا مدير (administrator) شبکه مأمور بازيابي هم هست) ولي در کامپيوترهاي شخصي، اختياري است و بايد به صورت دستي تعريف شود. (در شبکه هاي ويندوز 2000 وجود يک مأمور بازيابي لازمه ي استفاده از EFS است ولي در شبکه هاي ويندوز XP اجباري نيست) براي آگاهي از نحوه ي تعريف يک کاربر به عنوان مأمور بازيابي، به [2.g] (بخش Recovery Agents) و [6.a] مراجعه کنيد.
شکل 5- نمونه اي از يک گواهينامه ي ديجيتالي که به منظور
استفاده از EFS بصورت خودکار صادر شده است.
• بنابر توضيحاتي که پيش از اين داده شد، لازم است هر کاربر (به خصوص مأمور بازيابي) بلافاصله پس از فعال کردن EFS ، از گواهينامه ديجيتالي خود يک پشتيبان تهيه کند (آن را export کند) و بر روي يک رسانه برداشتني (نظير فلاپي ديسک) در جاي مطمئني براي مواقع ضروري نگهدارد. از دست دادن کليد خصوصي، پيامدهاي فاجعه باري دارد و اطلاعات رمز شده کاملا غير قابل استفاده خواهد شد. ضمنا اگر تمايل داريد از فايل هاي رمز شده خود بر روي کامپيوتر ديگري استفاده کنيد، به اين نسخه پشتيبان (کپي) نياز داريد. براي آگاهي از چگونگي تهيه پشتيبان به [6.a] مراجعه کنيد.
به خاطر مسائل امنيتي، بخشِ کليد خصوصي گواهينامه ي مأمور بازيابي (که براي رمزگشايي فايل ها لازم است) بايد پس از پشتيبان گيري گواهينامه، از سيستم پاک شود. با اين کار، کاربر غيرمجازي که کلمه عبور اکانتِ مأمور را به دست آورد، نمي تواند فايل هاي رمز شده ي کاربران ديگر را رمزگشايي کند. براي اطلاعات بيشتر به [6.a] و [2.g] (بخش Recovery Agents) مراجعه کنيد. توجه: چون کليد خصوصي مأمور بازيابي از سيستم حذف مي شود، او نمي تواند از EFS استفاده کند (هيچ فايلي را رمزگشايي کند). بنابراين بهتر است يک اکانت کاربري تک منظوره به مأمورِ بازيابي اختصاص دهيد.
حذف يا اضافه کردن مأموران بازيابي بلافاصله روي تمام فايل هايي که قبل از آن رمز شدهاند اعمال نمي شود بلکه اين اطلاعات با اولين دستيابي به فايل، به روز مي شوند. با اين حال، فايل هاي جديد هميشه مطابق با آخرين تغييرات، رمزنگاري مي شوند.
اگر گواهينامه ديجيتالي کاربري به هر دليل از بين رفته است؛ يا مي خواهد بر روي کامپيوتر ديگري از فايل هاي رمز شده اش استفاده کند؛ يا اينکه مي خواهد به عنوان مأمور بازيابي (با توجه به توضيح بالا) فايل هاي رمز شده کاربران را بازيابي کند، لازم است گواهينامه خود را از نسخه پشتيبان بازيابي کند (به اکانت خود import کند) براي آگاهي از چگونگي اين کار به [6.a] مراجعه کنيد.
• اگر يکي از مديران سيستم، کلمه عبور کاربري را حذف کند و يا تغيير دهد، آن کاربر «گواهينامه هاي ديجيتالي» (و بالطبع دسترسي به فايل هاي رمز شده) و «کلمات عبور ذخيره شده» (براي استفاده از سايت هاي اينترنتي و يا ديگر منابع شبکه) را از دست خواهد داد [4].
براي پيشگيري از چنين اتفاقي، بهتر است هر کاربر يک ديسکت بازنشاني کلمه عبور (Password Reset Disk) براي اکانت خود بسازد (ويندوز XP) تا اگر کلمه عبور خود را فراموش کرد با استفاده از آن، کلمه عبور خود را عوض کند. براي کسب اطلاعات بيشتر به [2.j] (بخش My Computer is not on a domain) و [2.k] مراجعه کنيد.
وقتي کلمه عبور اشتباهي را وارد مي کنيد، ويندوز پيامي مبني بر اشتباه بودن اين کلمه عبور نمايش مي دهد. در صورتي که قبلا ديسکت بازنشاني کلمه عبور را ساخته باشيد، يک امکان “use your password reset disk” نيز در اختيار شما قرار مي گيرد که با گذاشتن ديسکت مزبور، مي توانيد کلمه عبور خود را تغيير دهيد. براي اطلاعات بيشتر به [2.m] مراجعه کنيد.
توجه: پس از تغيير دادن کلمه عبور، نيازي به ساختن مجدد ديسکت بازنشاني کلمه عبور نيست.
براي مشاهده برخي نکات مرتبط با شبکه ها، به [4.q] مراجعه کنيد.
• مراحلي که براي تعريف مأمور بازيابي و تهيه نسخه هاي پشتيبان از گواهينامه ي ديجيتالي کاربرEFS بررسي شد، به بيش از چند دقيقه وقت نياز ندارد با اين حال، سيستم را براي استفاده مطمئن از EFS آماده مي کند. نتيجه آن، جلوگيري از دست يازيدن افراد ناخواسته (حتي بيشترِ آن هايي که بسيار آگاه و مصمم هستند) به اطلاعات مهم کاربران است در عين آنکه از بي استفاده شدن اين اطلاعات در صورت بروز اشکال پيشگيري مي کند.
4-4-2- بد نيست از جزئيات هم بدانيد
EFS چگونه الگوريتم «کليدهاي متقارن» را در ترکيب با «کليد خصوصي» بکار مي برد؟
هر فايل ابتدا با يک کليد رمزنگاري فايل (File Encryption Key - FEK) و توسط يک الگوريتم رمزنگاري متقارن، رمز مي شود. اين کليدِ رمزنگاري بصورت تصادفي[1] توليد شده، سپس خود FEK با استفاده از کليد عمومي هر کاربري که بايد فايل را رمزگشايي کند (از جمله مأمور بازيابي) جدا جدا، پنهان سازي (wrap) و به رمز مي شود و همراه با کليد عمومي کاربر مربوطه در فايل رمز شده نگهداري مي شود. (در اين مرحله به کليد خصوصي کاربران نيازي نيست.)
اگر کاربري بخواهد فايل را رمزگشايي کند، کليد خصوصي وي بايد متناظر باشد با يکي از کليدهاي عمومي که براي پنهان سازي FEK استفاده شده است. در اين صورت ابتدا FEK با کليد خصوصي اين کاربر رمزگشايي و بازيابي مي شود سپس با الگوريتم کليدهاي متقارن و FEK ، محتواي فايل رمزگشايي مي شود. FEK از اين پس ثابت باقي خواهد ماند و براي نوشتن اطلاعات جديد در فايل استفاده مي شود.
• اگر تغييري در مأموران بازيابي و گواهينامه ي ديجيتالي آن ها يا کاربران رخ داده باشد، پس از رمزگشايي FEK، کارهاي لازم براي إعمال اين تغييرات انجام مي شود.
عمليات خواندن و نوشتن فايل ها در حالت رمزشده
هنگام خواندن از يک فايل رمزشده، EFS هر قسمت را که بايد خوانده شود درجا (on the fly) رمزگشايي مي کند و درست پيش از نوشتن، درجا رمز مي کند. بنابراين هيچ اثري از اطلاعات رمز نشده بر روي ديسک باقي نمي ماند.
عمليات تبديل يک فايل رمز شده به رمز نشده و بالعکس
از نکات برجسته در مورد فرايند تبديل[2] ، از بين نرفتن داده ها حتي در صورت قطعي برق و... است. به اين منظور EFS تا وقتي عمليات تبديل تمام نشده است يک کپي پشتيبان از فايل نگه مي دارد و در صورت بروز اشکال، فايل به حالت اوليه بر مي گردد. اين نسخه پشتيبان پس از اتمام تبديل، از ديسک پاک مي شود.
• از پيامدهاي جنبي اين رويه، احتمال باقي ماندن بقاياي داده هاي رمز نشده در فضاي خالي ديسک است. به همين دليل توصيه مي شود از ابتدا، پوشه اي که قرار است اطلاعات رمز شده در آن قرار گيرد رمز شود که از آن پس داده هاي هر فايلي که در آن پوشه ساخته مي شود پيش از ثبت بر روي ديسک، رمز شود که نيازي به تبديل و ايجادِ فايل پشتيبان موقتي هم نباشد. بديهي است اين توصيه براي کاربراني که پيش از اين، فايل هاي خود را بصورت رمزنشده ساخته اند کارگشا نيست. رويه اي که به اين کاربران توصيه مي شود به اين قرار است: ابتدا تمام فايل هايي که بايد رمز شوند را رمزنگاري کنند؛ سپس فضاي خالي ديسک را از هر چيز به درد نخوري بزُدايند (براي اين کار به راهنماي ويندوز - دستور cipher.exe پارامتر /W مراجعه کنيد). از اين پس مي توانند توصيه اول را به کار گيرند.
4-5- Unicode Names
NTFS از Unicode [1]به عنوان مجموعه کاراکترهاي استاندارد (standard character set) خود استفاده مي کند (برخلاف FAT32 که با کدهاي اسکي[2] کار مي کرد). در اين روش، دو بايت براي کد کردن کاراکترهاي تقريبا تمام زبان هاي مکتوب جهان اختصاص مي يابد (65536 کاراکتر).
4-5-1- بد نيست بدانيد
سيستم فايل FAT32 در سيستم عامل MS-DOS از قالب 8.3 يا نام هاي کوتاه (يک نامِ پايهي حداکثر 8 کاراکتري و يک پسوندِ (extension) اختياري حداکثر 3 کاراکتري که با نقطه از هم جدا مي شود) براي نامگذاري فايل ها و پوشه ها پيروي مي کند. در حالي که در سيستم فايل FAT32 ويندوز، نام هاي بلند پشتيباني مي شود [3]. بدين منظور ويندوز به هر فايلي که در درايوهاي FAT32 ساخته مي شود، يک نام در قالب 8.3 با کاراکترهاي اسکي و يک نام بلند با کاراکترهاي Unicode منتسب مي کند. (شکل 6)
شکل 6- نام هاي کوتاه و بلند
در NTFS، فايل ها و پوشه ها مي توانند نام هاي بلند داشته باشند. منتها به خاطر مسائل سازگاري با برنامه هاي قديمي، ويندوز بطور پيش فرض نام هاي کوتاه را نيز همچنان مي سازد. ولي مي توان براي بالا بردن کارايي، جلوي اين کار را گرفت. براي اطلاعات بيشتر به [4.h] مراجعه کنيد.
• جابجا کردن فايل ها بين درايوهاي FAT32 و NTFS موجب خراب شدن نام فايل هاي بلند نمي شود.
• با اينکه در نام هاي بلند، هم حروف کوچک و هم بزرگ استفاده مي شوند، سيستم فايل بين اين حروف فرقي نمي گذارد يعني نام هاي teXtFile.txt و TEXTFile.txt هر دو مي توانند براي اشاره به فايلي با نام TextFile.TXT بکار روند [4].
• در NTFS نام فايل ها مي تواند حداکثر 255 کاراکتر طول داشته باشد.
4-6- فايل هاي چند جرياني (Multiple File Streams)
يک جريان داده، دنباله اي از بايت ها است. در NTFS، هر فايل مي تواند شامل چند جريان باشد. هنگام کار کردن با فايل ها بر روي يک درايو غير NTFS، تنها يک جريان از داده قابل دسترسي است و تنها محتوي فايل تلقي مي شود. اين جريان اصلي، بدون نام (main, unnamed stream) و تنها جرياني است که درايوهاي غير NTFS پشتيباني مي کنند. در NTFS هر فايل علاوه بر اين جريان اصلي بدون نام، مي تواند در برگيرنده تعدادي ديگر جريان نامدار (named stream) نيز باشد (شکل 7)
شکل 7 - فايل چند جرياني
يک فايل چند جرياني، همانند چند فايل تک جرياني است که همگي تحت يک نام کلي در سيستم فايل ذخيره شده اند و هر کدام همانند يک بخش يکتا، قابل ايجاد کردن، تغيير دادن يا حذف کردن هستند.
مثلاً يک برنامه ويرايشگر فايل هاي گرافيکي، مي تواند هنگام ذخيره فايل گرافيکي، يک تصوير سر انگشتي (thumbnail) از آن را در جرياني ديگر، با فايل همراه کند. همچنين ويندوز مي تواند از جريان ها براي الصاق اطلاعاتِ مختصرِ محتويات (document summary information) به فايل ها استفاده کند. (شکل 8- البته اين کار با ايجاد يک فايل ثانويه هم در درايوهاي غير NTFS ممکن مي شود ولي مديريت اين فايل هاي مرتبط به هم، دردسر ساز است.)
شکل 8- پنجره ي اطلاعاتِ مختصرِ محتويات مربوط به يک فايل متني (Hello.txt). با پر کردنِ محتويات اين فرم، يک جريان ثانويه براي نگهداري اين اطلاعات به فايل اضافه مي شود.
شکل 8- پنجره ي اطلاعاتِ مختصرِ محتويات مربوط به يک فايل متني (Hello.txt).
• حواستان باشد وقتي فايل هاي چند جرياني بر روي درايوهاي غير NTFS (مثلا CD، فلاپي و درايوهاي FAT32) کپي مي شوند، جريان هاي ثانويه منتقل نمي شوند و اگر فايل اصلي از بين برود، اين جريان ها قابل بازيابي نخواهند بود. البته پيش از انجام عمل کپي، ويندوز پيام هشداري مبني بر از بين رفتن جريان هاي ثانويه به شما نمايش مي دهد (شکل9).
• کاوشگر ويندوز (Windows Explorer)، وجود جريان هاي ثانويه را در نظر نمي گيرد و راهي از اين طريق براي فهميدن اينکه يک فايل چند جرياني است وجود ندارد. (شکل 10)
• هرچند امکاناتي که پوسته (shell) يا رابط کاربر ويندوز در رابطه با جريان ها در اختيار شما قرار مي دهد بسيار محدود و ناکافي است، جريان ها کاملا در لايه هاي زيرين سيستم عامل ويندوز و در سطح توابع API ويندوز پشتيباني شده اند. اين پشتيباني حتي در نگارش هاي پيشين ويندوز نظير 98 هم وجود دارد و مي توانند از طرق ديگر مثلا درايوهاي شبکه، به جريان هاي ثانويه فايل هاي NTFS دست يابند. بنابراين تنها عاملي که براي بکار گرفتن جريان ها محدوديت ايجاد مي کند، سيستم فايل مورد استفاده است.