اهمیت استفاده از کارکترهای خاص
آشنایی با پسورد و چگونگی تولید پیچیده آن در دنیای امروز از اهمیت بسیار بالایی برخوردار است. من سالها پیش برای یک شرکت بزرگ تولید کننده کامپیوتر، کار پشتیبانی فنی انجام میدادم. یکی از روزهای پر مشغله کاریف یکی از مشتریان تماس گرفت و از اینکه فلاپی درایو کامپیوترش، فلاپی او نمیپذیرفت، شکایت میکرد.
در گذشته بارها چنین تماسهایی را دریافت کرده بودم و مطمئن بودم که او هم فلاپی را مثل دیگر مشتریان از جهت صحیح وارد درایو نمیکند. بعد از چند دقیقه صحبت و به نتیجه نرسیدن، تصمیم گرفتم یک استراتژی جدید را امتحان کنم.
از او خواستم که فلاپی را نگه داشته و سعی کند آن را وارد درایو کند. اگر فلاپی در درایو جا نشد، آن را یک دور در جهت حرکت عقربههای ساعت بچرخاند و دوباره امتحان کند. بعد از امتحان کردن هر چهار طرف از او خواستم که فلاپی را بچرخاند و چهار طرف بعدی را امتحان کند. فکر میکردم با توجه به این که تنها هشت روش برای این کار وجود دارد، بالاخره او باید سمت درست را پیدا کند. او بالاخره موفق شد اما با 9 بار تلاش!
این در واقع یک روش جستجوی فراگیر برای پیدا کردن راه درست قرار دادن فلاپی داخل درایو بود. اگر تمام جهتهای ممکن برای وارد کردن دیسک را امتحان کنید، در نهایت جهت درست را پیدا خواهید کرد. در این مثال، پیدا کردن جهت درست برای این مشتری با هشت بار امتحان (برای برخی افراد نه بار) به نتیجه رسید.
پسرم دیروز تصمیم گرفته بود که با دوچرخه به مدرسه برود اما ترکیب درست قفل دوچرخه را فراموش کرده بود. من به دوچرخه نگاه کردم و متوجه شدم که سه ردیف شماره روی آن قرار داشت و هر کدام متشکل از اعداد 0 تا 9 بودند. بلافاصله به این فکر کردم که شاید بتوان با روش جستجوی فراگیر، کد را پیدا کرد. برای انجام این کار، در ابتدا تمام رقمها را روی صفر قرار داده و قفل را کشیدم. قفل باز نشد 001 را امتحان کردم، بعد 002، بعد 003 و به همین ترتیب. میدانستم که ترکیب رمز عددی بین 000 تا 999 است – هزار ترکیب ممکن.
قفل دوچرخه سه ردیف شماره دارد که هر کدام 10 رقم دارند و در نتیجه 1000 ترکیب مختلف برای رمز وجود دارد.
مسلماً همیشه نیازی نیست که هر هزار ترکیب امتحان شود. احتمال درست بودن اولین ترکیب به اندازه آخرین ترکیب است. از نظر آماری احتمال پیدا کردن ترکیب درست در نیمه ابتدایی راه وجود داشت بنابراین ممکن بود فقط نیاز به امتحان کردن 500 ترکیب داشته باشم. هر چند این روش کار زیادی میبرد اما مسلماً قابل انجام است. میتوانستم ترکیبهای مختلف را هنگام تماشای تلویزیون، وقتی در تختم خوابیدم، وقتی در توالت نشستم (!) یا هر زمان که دستانم آزاد بودند، امتحان کنم.
این یک مثال دیگر از حمله جستجوی فراگیر بود. اگر تمام ترکیبهای ممکن را امتحان کنید، در نهایت ترکیب درست را پیدا میکنید. در واقع، این تضمین وجود دارد که اگر به اندازه کافی تلاش کنید، در نهایت ترکیب درست را پیدا کنید.
مشخص شد که باز کردن قفل دوچرخه پسر من اصلاً نیازی به هزار تلاش ندارد. من متوجه وجود یک نقص در طراحی قفل شدم و فهمیدم وقتی شماره سمت چپ درست تنظیم شود، میتوانم شمارهگیر بعدی را کمی پایین بکشم. همینطور وقتی عدد دوم را درست تنظیم کنم میتوانم ردیف بعدی را کمی پایین بکشم. یعنی میتوانستم هر بار جستجوی فراگیر را روی یک شماره انجام دهم – از صفر شروع کنم تا اولین رقم را پیدا کنم و بعد همین روش را برای هر ردیف از شمارهها انجام دهم. به این ترتیب برای هر ردیف 10 تلاش لازم بود و این یعنی حداکثر 30 تلاش. در نهایت قفل را با 15 تلاش باز کردم.
هزار ترکیب مختلف بسیار زیاد است، اما حالا فرض کنید که قفل یک دوچرخه علاوه بر اعداد 0 تا 10 در هر ردیف حروف A تا Z را هم داشت. این یعنی برای هر ردیف حدود 36 انتخاب مختلف وجود دارد. اگر 3 ردیف عدد و رقم داشتیم که هر کدام 36 مقدار مختلف داشتند این یعنی در مجموع 36 به توان 3 یا به عبارتی 46656 حالت مختلف وجود داشت. ما فقط با بزرگتر کردن هر ردیف از قفل باعث شدیم کرک کردن آن بسیار سختتر شود. هر چقدر بتوانیم رقمهای بیشتری روی هر ردیف قرار دهیم، امتحان کردن تمام ترکیبات مختلف بیشتر طول میکشد.
اگر میتوانستیم تمام کاراکترهای یک صفحه کلید انگلیسی استاندارد را روی هر ردیف از قفل قرار دهیم، در این صورت تعداد ترکیبات ممکن فقط با سه ردیف شمارهگیر (شمارهگیرهای خیلی بزرگ) 850 هزار عدد بود. هر چند ممکن است یک نفر به امتحان کردن هزار ترکیب مختلف تمایل داشته باشد، اما تعداد دوچرخههایی که ارزش امتحان کردن 850 هزار ترکیب مختلف را داشته باشند، چندان زیاد نیست.
کرک کردن پسورد با استفاده از روش جستجوی فراگیر
کرک کردن پسورد با استفاده از روش جستجوی فراگیر یعنی باید تمام ترکیبات ممکن برای هر خانه از پسورد را بررسی کنید تا در نهایت به رمز درست دست پیدا کنید. برای یک پسورد 5 کاراکتری، کرکر باید از aaaaa شروع کرده و تمام ترکیبات را امتحان کند تا به zzzzz برسد. مسلماً تعداد ترکیبات مختلف بسیار زیاد هستند اما نرمافزارهای مخصوصی برای کرک کردن پسورد وجود دارند که میتوانند به سرعت و در عرض چند ثانیه تمام ترکیبات ممکن از aaaaa تا zzzzz را امتحان و بررسی کنند.
بسیاری از ابزارهای کرک پسورد تمام حروف الفبا را بررسی نمیکنند بلکه کار را با یکسری از حروف پرکاربرد آغاز میکنند. برخی ابزارها به اندازهای هوشمند هستند که میتوانند بر اساس پسوردهایی که تاکنون کرک کردهاند، تنظیمات مربوط به فراوانی کاراکتر را تغییر دهند.
ما برای سختتر کردن کار کرکرها از همان استراتژی افزایش تعداد مقادیر روی هر ردیف از قفل دوچرخه استفاده میکنیم. به عبارت دیگر به جای اینکه برای پسوردتان فقط از حروف کوچک استفاده کنید، باید از اعداد، حروف بزرگ، نمادهای مختلف و غیره استفاده کنید. بار بعدی که قصد تعیین پسورد را داشتید و سیستم از شما خواست که در پسوردتان از اعداد و نمادهای مختلف استفاده کنید، در واقع شما در حال استفاده از قفلی با ارقام و اعداد بیشتر و بزرگتر هستید. طولانیتر شدن ردیفهای قفل باعث میشود که جستجوی فراگیر پسوردتان سختتر شود.
در بیشتر سیستمها، پسوردها به کوچک یا بزرگ بودن حروف حساس هستند. یعنی سیستم میتواند بین حروف بزرگ و کوچک تمایز قائل شود در نتیجه در این سیستم Apple با apple یکسان نیست. این یک ویژگی مفید تلقی میشود زیرا برای انتخاب هر کدام از کاراکترهای پسورد، گزینههای بیشتری در اختیار خواهید داشت.
این مفهوم تقریباً برای هر چیزی که امکان جستجوی فراگیر در آن وجود داشته باشد، صدق میکند. به عنوان مثال فرض کنید که شما دسته کلید فردی را قرض گرفتید اما نمیدانید کدام کلید روی یک قفل خاص کار میکند. مسلماً هر چه تعداد کلیدهای روی دسته کلید بیشتر باشد، زمان لازم برای پیدا کردن کلید درست بیشتر خواهد بود.
جایگشتهای پسورد
اکثر افراد قدرت عددی جایگشتها را نادیده میگیرند. شاید به این دلیل که جایگشت را مثل ترکیب در نظر میگیرند؛ در حالیکه این دو مفهوم از نظر ریاضی با هم متفاوت هستند. ترکیب، به تمام حالات ممکن انتخاب از بین یک مجموعه آیتم گفته میشود به صورتی که ترتیب انتخاب آنها مهم نباشد. تعریف جایگشت هم به همین صورت است با این تفاوت که در جایگشت ترتیب مهم است و در نتیجه تعداد حالات ممکن بیشتر است.
برای مثال یک بازی بخت آزمایی ساده را تصور کنید که در آن میتوانید سه رقم از صفر تا نه را انتخاب کنید. شما در صورتی برنده میشوید که اعداد انتخابی شما صرف نظر از ترتیب آنها با اعداد برنده منطبق باشد. فرض کنید که شما اعداد 1، 2 و 3 را انتخاب میکنید بنابراین اگر در قرعه کشی اعداد 2، بعد 1 و بعد 3 انتخاب شوند، شما برنده خواهید بود.
اگر اعداد 3، بعد 2 و بعد 1 انتخاب شوند، باز هم شما برنده خواهید بود. در واقع برای انتخاب 3 عدد از بین اعداد 0 تا 9، 220 ترکیب مختلف وجود دارد بنابراین شانس برنده شدن شما همیشه 1 به 220 خواهد بود. به این شرایط ترکیب گفته میشود. برای کسب اطلاعات بیشتر درباره این موضوع میتوانید به سایت ویکی پدیا (به این آدرس) مراجعه کنید، اما فرمول ترکیب به صورت زیر است:
در این فرمول، n تعداد کل اعدادی است که میتوانید از بین آنها انتخاب کنید و r تعداد اعداد انتخابی است. در مثالی که پیش از این توضیح دادیم، با این فرمول به عدد 220 خواهید رسید.
اگر ترتیب انتخاب اعداد در قرعه کشی را در نظر بگیرید، احتمال برنده شدن به میزان قابل توجهی کاهش پیدا خواهد کرد. فرض کنید در یک بخت آزمایی شما تنها در صورتی پیروز میشوید که هر سه عدد انتخابی دقیقاً با ترتیب قرعه کشی یکسان باشند. از آنجایی که ما این شرایط را با پسورد مقایسه میکنیم، فرض کنید که هر عدد را میتوان بیش از یک بار انتخاب کرد. این یعنی تمام جایگشتهای ممکن 10 ضربدر 10 ضربدر 10 یا به عبارتی 10 به توان 3 یا هزار عدد هستند.
اگر در یک بخت آزمایی در صورت تطبیق اعداد انتخابی خودتان با اعدادی که در قرعه کشی انتخاب میشوند، صرف نظر از ترتیب آنها پیروز شوید، 220 حالت ترکیب مختلف وجود خواهد داشت. اگر ترتیب مهم باشد، هزار جایگشت مختلف وجود خواهد داشت.
تفاوت بین 220 و 1000 چندان زیاد نیست اما برای اینکه تفاوت شرایط را بهتر درک کنید، اجازه بدهید با رجوع به جدول زیر بررسی کنیم که افزایش تعداد اعداد قابل انتخاب چقدر به تعداد انتخابهای شما ارتباط دارد. اگر تعداد اعدادی که میتوانید از بین آنها انتخاب انجام دهید افزایش پیدا کند، تعداد جایگشتها به صورت چشمگیری بیشتر میشود.
جدول زیر افزایش تعداد اعداد قابل انتخاب، باعث میشود که تعداد جایگشتها به میزان قابل توجهی افزایش پیدا کند.
تعداد اعداد قابل انتخاب | تعداد ترکیبها | تعداد جایگشتها |
3 | 220 | 1000 |
6 | 5005 | 1000000 |
7 | 11440 | 10000000 |
8 | 24310 | 100000000 |
9 | 48620 | 1000000000 |
10 | 92378 | 10000000000 |
11 | 167960 | 100000000000 |
12 | 293930 | 1000000000000 |
13 | 497420 | 10000000000000 |
14 | 817190 | 100000000000000 |
15 | 1307504 | 1000000000000000 |
اگر قرار باشد به جای اعداد 0 تا 9 عددی بین 0 تا 15 را انتخاب کنید، تعداد جایگشتهای ممکن 4096 عدد خواهد بود. تعداد جایگشتها بسیار سریعتر از تعداد ترکیبهای ممکن رشد میکند.
مثل بخت آزمایی و قرعه کشی، هر چه تعداد کاراکترهایی که در پسوردتان استفاده میکنید، بیشتر باشد تعداد جایگشتهای ممکن برای آن بیشتر میشود. این موضوع نقش مهمی برای مقاومت در برابر یک حمله جستجوی فراگیر دارد.
مجموعه کاراکترها
بسیاری از خط مشیهایی که برای پسورد تعیین میشوند، تصادفی به نظر میرسند و بدون هیچ دلیل خاصی یک پسورد خاص را رد کرده و پسوردی مشابه را قبول میکنند. اخیراً یکی از همکارانم درباره سیستم جدیدی که در محل کارش پیاده سازی شده بود، با من صحبت کرد. این سیستم همزمان با تایپ پسورد توسط کاربر به آن رتبههایی مثل ضعیف، متوسط، بهتر و قوی تخصیص میدهد. او به من توضیح داد که وقتی پسورد خودش که همیشه از آن استفاده میکند را در این سیستم تایپ کرده، سیستم رتبه متوسط را به آن تخصیص داده است. اما همین که یک کاراکتر ‘*’ به انتهای آن اضافه کرده، سیستم به آن رتبه قوی داده است. درسی که او از این تجربه آموخته این بود که کاراکتر ‘*’ باعث قویتر شدن پسورد میشود.
اما چنین سیستمی تا حدی گمراه کننده است. خود کاراکتر ‘*’ دلیل قویتر شدن پسورد نیست بلکه مهم این بوده که این کاراکتر از یک مجموعه کاراکتر متفاوت انتخاب شده است.
نکته: جانی عاشق وبگردی بود و پسوردهایش را همیشه روی کاغذ یادداشتهای چسب دار مینوشت. مادر او متوجه شد که پسورد حساب Disney Online جانی “MickeyMinnieGoofyPluto” است و از او پرسید چرا چنین پسورد طولانی را انتخاب کرده است. جانی پاسخ داد “چون به من گفتند که پسوردم باید حداقل شامل چهار کاراکتر باشد.”
برای پسورد، مجموعه کاراکتر یک گروه از کاراکترهای صفحه کلید است که فرد میتواند از آنها در یک پسورد استفاده کند. کاراکترهای پایه عبارتند از:
- اعداد 0 تا 9
- حروف کوچک از a تا z
- حروف بزرگ از A تا Z
- نمادها که متشکل از بقیه سمبلها و کاراکترها هستند مثل علامت مد (~)، ستاره (*) یا علامت مساوی (=).
بسیاری از سیستمها با بررسی تعداد مجموعه کاراکترهای متفاوتی که شما استفاده میکنید – هر چه بیشتر، بهتر – قدرت پسوردتان را ارزیابی میکنند.
ممکن است مدیر یک سیستم در هنگام تعیین خط مشی پسورد شما را ملزم کند که در پسوردتان از بیش از یک مجموعه کاراکتر استفاده کنید. در سیستم عامل ویندوز، تنظیمات پیچیدگی پسورد به گونهای است که کاربر را ملزم به استفاده از کاراکترهای حداقل 3 مجموعه کاراکتر میکند. اگر خطایی مشاهده کردید مبنی بر اینکه پسورد شما الزامات لازم در زمینه پیچیدگی را رعایت نکرده، این یعنی باید مجموعه کاراکترهایی که در پسوردتان مورد استفاده قرار گرفته افزایش پیدا کند، بنابراین سعی کنید چند عدد و نماد به آن اضافه کنید. در ادامه مثالهایی از به کار بردن مجموعه کاراکترهای مختلف را مشاهده میکنید:
یک مجموعه کاراکتر:
- applepie
- 6565656
دو مجموعه کاراکتر:
- HappyCamper (حروف بزرگ و کوچک)
- notnothing! (حروف کوچک و نماد)
سه مجموعه کاراکتر:
- 677Mustangs (حروف بزرگ، حروف کوچک، اعداد)
- wrong3@email.com (حروف کوچک، نمادها، اعداد)
تمام چهار مجموعه کاراکتر:
- Different-2day
- 4 Broken (shellfish)
- example.com
بیشتر ابزارهای مورد استفاده کرکرها برای جستجوی فراگیر امکان تعیین کاراکترهای مورد استفاده در حمله را به آنها میدهد. در بیشتر مواقع این ابزارها برای کاهش زمان حمله، فقط اعداد و حروف را امتحان میکنند. معمولاً تغییر این تنظیمات بر اساس مجموعه کاراکترها صورت میگیرد. بنابراین شما با استفاده از هر کاراکتری از یک مجموعه کاراکتر، کرکر را ملزم به امتحان کردن تمام کاراکترهای آن مجموعه میکنید.
حروف کوچک
بیشتر پسوردها از حروف کوچک الفبا تشکیل میشوند. بیش از 75 درصد از تمام کارکترهای مورد استفاده در پسوردها، حروف کوچک هستند و بیش از 60 درصد پسوردها به جز حروف کوچک هیچ کاراکتر دیگری ندارند.
پایه و اساس بیشتر پسوردها را حروف کوچک تشکیل میدهد اما شما باید سعی کنید به غیر از حروف کوچک بقیه مجموعه کاراکترها را هم مورد استفاده قرار دهید.
دلیل متداول بودن استفاده از حروف کوچک این است که تایپ کردن آنها سریعتر و راحتتر است. به همین دلیل برای تولید پسوردهای طولانی از این حروف استفاده میشود. در واقع شما باید حروف کوچک را به عنوان استراتژی اصلی جهت افزایش پیچیدگی و طول پسوردتان استفاده کنید.
در ادامه چند نمونه استفاده خلاقانه از حروف کوچک در پسورد را مشاهده میکنید:
■ yer weather is colllder
■ sitting at the mall in springville
■ collidingwithatomss
■ left at the firststoplight
توجه کنید که تمام این پسوردها 20 کاراکتری یا طولانیتر هستند. تایپ کردن و به خاطر سپردن آنها آسان است. اگر شما از پسوردی استفاده کنید که طول آن کمتر از 15 کاراکتر باشد، باید به غیر از حروف کوچک از سایر مجموعه کاراکترها هم استفاده کنید.
حروف بزرگ
جالب توجه است که کمتر از 3 درصد تمام پسوردها حاوی حروف بزرگ هستند. در اکثر مواقع حروف بزرگ تنها در جایگاه اول یا دوم پسورد قرار میگیرد. به عبارت دیگر بیشتر پسوردها کلماتی هستند که حرف اول آنها با حروف بزرگ نوشته میشود. استفاده از حروف بزرگ را فراموش نکنید و حتماً آنها را به صورت غیرقابل پیش بینی در کل پسوردتان استفاده کنید.
در ادامه چند نمونه از به کار بردن حروف بزرگ در پسوردها را مشاهده میکنید:
■ Evan the IV
■ Call the FBI
■ CRAVING.com
■ Radio 99.3 KRPP
■ whitefish.DLL
اعداد
استفاده از اعداد متداولترین روشی است که کاربران از آن جهت افزایش تعداد مجموعه کاراکترهای پسوردشان استفاده میکنند. مشکل اعداد این است که معمولاً بیشتر کاربران آنها را به صورت کاملاً قابل پیش بینی استفاده میکنند، به همین دلیل استفاده از آنها هیچ تاثیری در افزایش قدرت پسوردشان ندارد. شما هم باید از اعداد در پسوردهایتان استفاده کنید اما باید در به کار بردن آنها هوشمندانه عمل کنید.
نقطه ضعف اصلی در استفاده از اعداد این است که فقط 10 عدد وجود دارد و تاثیر کمی در افزایش فضای کاراکتری دارند. علاوه بر آن معمولاً افراد برخی اعداد را بیشتر از بقیه استفاده میکنند. شکلزیر نشان میدهد کدام اعداد بیشتر در پسوردها مورد استفاده قرار میگیرند.
عدد یک پر کاربردترین عدد در پسوردها است؛ میزان استفاده از آن تقریباً دو برابر هر کدام از اعداد دیگر است.
هکرها با بررسی چنین نمودارهایی میتوانند استراتژی جستجوی فراگیر خودشان را به گونهای تغییر دهند که تنها اعداد یک و دو را مورد بررسی قرار دهند و با این کار یک سوم از پسوردهای حاوی عدد را بررسی کردهاند.
علاوه بر استفاده از اعداد متداول، معمولاً افراد سعی دارند الگو یا دنبالههایی از اعداد ایجاد کنند. یک نمونه از این موضوع پسوردهای حاوی رشتههای عددی مثل 12345، 1212، 2005، 99 و غیره هستند. در واقع بسیاری از پسوردهای لیست 500 پسورد بد و ضعیف (که در فصل 9 مورد بررسی قرار میگیرند) دنبالههای عددی ساده هستند.
بعلاوه، اگر پسورد شما Fluffy12 باشد و مجبور به تغییر آن باشید میتوان به راحتی یک پسورد قابل پیش بینی مثل Fluffy13 از آن استخراج کرد. سعی کنید بیش از 10 درصد پسورد شما متشکل از اعداد نباشد و از به کار بردن الگوهای عددی قابل پیش بینی خودداری کنید.
متداولترین روش استفاده از اعداد در پسورد، انتخاب یک کلمه از دیکشنری و اضافه کردن یک یا دو عدد بعد از آن است مثل cecil6، ford99، katie5 و یا broncos12. شما باید از به کار بردن چنین الگوهایی خودداری کنید.
تقریباً یک سوم پسوردها به یک عدد ختم میشوند. ده درصد از تمام پسوردها به عدد 1 ختم میشوند. اگر در پسوردتان از اعداد استفاده میکنید، سعی کنید آنها را در کل پسورد استفاده کنید و استفاده از اعدادی که محبوبیت و کاربرد کمتری دارند را فراموش نکنید.
در ادامه چند مثال از نحوه استفاده از اعداد در پسوردها را مشاهده میکنید:
■ 1515 Parsley Road
■ 12 dozen dozens
■ Channel 42 news
■ Wasted 500 bucks
■ Lost 7 socks
■ Scoring 8 more points
■ Go 50 miles on Rt. 80
■ 1-800-go-NUTS
نمادها
نمادها متشکل از کاراکترهایی هستند که عدد یا حرف نیستند. این کاراکترها عبارتند از:
- علائم نشانه گذاری: این گروه شامل نمادهایی هستند که از آنها برای نشانه گذاری در زبان استفاده میشود مثل نقطه (.)، ویرگول (،) یا گیومه (“).
- نمادهای صفحه کلید: این گروه شامل نمادهایی غیر از علائم نشانه گذاری زبان هستند که روی یک صفحه کلید استاندارد مشاهده میشوند مثل مد (~)، بک اسلش (\) یا خط لوله (|).
- نمادهای غیر صفحه کلیدی: این گروه متشکل از کاراکترهای قابل چاپی هستند که روی یک صفحه کلید استاندارد وجود ندارند و برای تایپ کردن آنها نیاز به استفاده همزمان از چند کلید وجود دارد؛ مثل نماد کپی رایت (©)، دو نقطهای که روی برخی حروف قرار میگیرد (¨) یا علامت سوال معکوس (¿).
- کاراکترهای غیرقابل چاپ: کاراکترهای کنترلی خاص که قابل چاپ نیستند اما گاهی اوقات و به ندرت میتوانید از آنها در پسوردتان استفاده کنید و شامل کاراکترهایی مثل بک اسپیس، اینتر یا تب میشوند.
کامپیوترهای امروزی از فضای کاراکتری بسیار بزرگتری پشتیبانی میکنند. اگر وارد منوی استارت سیستم عامل ویندوز شده و سپس Program Files را انتخاب کرده و منوی Accessories و بعد برنامه Character Map را باز کنید، خواهید دید که بسته به نوع فونت انتخابی کاراکترهای بسیار متنوع و متفاوتی قابل انتخاب هستند. در واقع فونت Arial مایکروسافت حاوی بیش از 65 هزار کاراکتر و نماد از زبانهای مختلف است. به پشتیبانی از این کاراکترهای توسعه یافته یونیکد (Unicode) گفته میشود.
با استفاده از کلید Alt صفحه کلید میتوانید به تمام این کاراکترها دسترسی پیدا کنید. به عنوان مثال اگر WordPad را باز کنید، میتوانید با نگه داشتن کلید Alt و تایپ کردن اعداد 9786 و سپس رها کردن کلید Alt کاراکتر چهره خندان را (☺) رسم کنید. ممکن است برخی تایپفیسها از تمام این کاراکترها پشتیبانی نکنند و به جای آن یک مربع کوچک نمایش دهند اما این موضوع مهم نیست زیرا شما در هر صورت پسوردتان را مشاهده نمیکنید. لزوماً تمام سیستمها به شما اجازه استفاده از چنین نمادهایی را در پسوردهایتان را نمیدهند اما سیستم عامل ویندوز امکان استفاده از تمام کدهای کاراکتری تا کد 65535 را فراهم کرده است.
استفاده از نمادها، به خصوص نمادهای غیر صفحه کلیدی باعث میشود که فضای کاراکتری بزرگتری در دسترس شما قرار بگیرد. این شرایط شبیه به قفل دوچرخهای است که هر ردیف آن 65535 حالت مختلف داشته باشد. یک پسورد 8 کاراکتری که از چنین فضای کاراکتری استفاده کند، 340240830764391000000000000000000000000 جایگشت مختلف خواهد داشت. اگر چه چنین پسوردی باز هم قابل حدس زدن است اما این احتمال وجود دارد که هیچ کس نتواند در مدت زمانی به اندازه طول عمر یک انسان آن را حدس بزند.
البته این به آن معنا نیست که همیشه باید از چنین کاراکترهایی استفاده کنید. به خاطر داشته باشید که استفاده از این کدهای کاراکتری که با کلید Alt و اعداد شکل میگیرند، کند و پرزحمت است. در واقع اگر تعداد ضربات کلیدهای صفحه کلید را در نظر بگیریم، بهتر است به جای این کار همانطور که در فصل 5 توضیح خواهیم داد، پسوردتان را طولانیتر کنید. در هر صورت استفاده از کل فضای کاراکتری در محیطهایی با سطح امنیتی بالا یا برای پسوردهایی که به ندرت با دست تایپ میشوند، میتواند کارآمد باشد.
کاراکتر فاصله هم از جمله کاراکترهایی است که به ندرت در پسوردها مورد استفاده قرار میگیرد. بیشتر مردم اطلاع ندارند که در بسیاری از سیستمها امکان استفاده از فاصله در پسورد وجود دارد. به عنوان مثال سیستم عامل ویندوز به کاربران امکان میدهد که نه تنها داخل پسورد بلکه قبل و بعد از آن از فاصله استفاده کنند. اگر به عنوان مثال بعد از پسوردتان سه کاراکتر فاصله درج کنید، هر شخصی که قصد دسترسی به حساب شما را داشته باشد، باید همین کار را انجام دهد زیرا این فاصلهها جزء پسورد شما محسوب میشوند.
استفاده از فاصله، استراتژی موثری است به این دلیل که:
- به خاطر سپردن آنها آسان است؛ این کاراکترها فقط فاصله هستند و چیزی برای به خاطر سپردن ندارند.
- کاربران را به ایجاد پسوردهای طولانی و چند کلمهای تشویق میکنند.
- تایپ کردن آنها آسان و راحت است.
- منجر به افزایش فضای کاراکتری فراتر از اعداد و حروف میشوند.
تنها ایرادی که برای استفاده از فاصله در پسورد وجود دارد این است که صدای این کلید نسبت به سایر کلیدها متفاوت است. استفاده از تعداد زیادی کاراکتر فاصله باعث میشود مهاجم باهوشی که در نزدیکی شما باشد و صدای تایپ کردن پسوردتان را بشنود، این موضوع را تشخیص دهد. البته این نقطه ضعف به اندازهای قوی و مهم نیست که مانع استفاده از کاراکتر فاصله در پسورد شود.
استفاده از کاراکتر فاصله به صورت باور نکردنی میتواند باعث نجات شما شود! زمانی به یکی از مشتریانم توصیه کرده بودم که در پسوردهایش از کاراکتر فاصله استفاده کند. یک روز وقتی یک پشت سیستم جدید نشسته بود، پسورد ادمین را روی یک تکه کاغذ نوشت. اما این کاغذ بدون این که خودش متوجه شود، گم شد. او روز بعد متوجه شد که شخصی چندین بار سعی کرده وارد حساب ادمین سیستم شود. در نهایت با توجه به گزارشات ثبت شده، مقصر شناسایی و اخراج شد.
اما چه چیزی مانع نفوذ این فرد به سیستم شده بود؟ پسورد او به یک فاصله ختم میشد که آن را روی کاغذ ننوشته بود. مهاجم پسورد نوشته شده روی کاغذ را – بدون درج فاصله – امتحان کرده بود.
اما مردم نمادها را مثل اعداد به روشهایی قابل پیش بینی استفاده میکنند. احتمال وجود نقطه، علامت تعجب و علامت سوال در انتهای پسورد و وجود خط ربط، خط تیره و کاما بین کلمات دیکشنری بیشتر است. معمولاً علامت دلار قبل از اعداد و علامت درصد بعد از اعداد ظاهر میشود. پر کاربردترین روش استفاده از یک نماد، به کاربردن خط ربط در چهارمین، پنجمین و یا ششمین موقعیت کاراکتری پسورد است مثل wall-orange و knot-five.
در ادامه مثالهایی از به کار بردن نمادها و علائم نشانه گذاری در پسورد را مشاهده میکنید:
■ Making $$$count
■ 2+2+3 isn’t five
■ 1/2 the_meal
■ Batman and/or/not Robin
■ <h1>Introduction</h1>
■ If (x=0) then
■ C:\Program Files
■ (999) dog-walk
■ Smileys 🙂 😉
■ Not! Again!?
■ www.eatingcoldpizza-forbreakfast.com
■ Staying “interconnected”
خلاصه
تنوع کاراکترها یکی از ویژگیهای مهم و کلیدی پسورد های قوی است. هدف از به کار بردن انواع کاراکترها کاهش قابلیت پیش بینی و ضعف پسوردها است. اگر در پسورد شما به درستی از اعداد، حروف بزرگ و نمادها استفاده کنید باعث افزایش سطح خلاقیت و منحصربفرد شدن پسوردهایتان شدهاید.
پسورد شما باید منحصربفرد باشد. در واقع باید آنقدر منحصربفرد باشد که احتمال استفاده از همان پسورد توسط فرد دیگری بسیار کم باشد. افزایش انواع کاراکترهای مورد استفاده در پسورد، احتمال منحصربفرد بودن آن را به میزان زیادی افزایش میدهد.