کالبدشکافی کلیدهای امنیتی سختافزاری: چرا این فلشهای کوچک هیچ رمزی را در خود ذخیره نمیکنند؟
برخلاف تصور عمومی، کلیدهای امنیتی مانند یوبیکی گاوصندوقی برای نگهداری رمزهای عبور نیستند؛ آنها کامپیوترهای مینیاتوری هستند که با استفاده از رمزنگاری نامتقارن، فیشینگ را از نظر ریاضی غیرممکن میکنند.
به قلم آیدا امینی
این خبر را به اشتراک بگذارید
بهطور خلاصه
- کلیدهای سختافزاری هیچ رمز عبوری را در خود ذخیره نمیکنند.
- این دستگاهها با تولید جفتکلیدهای ریاضی منحصربهفرد برای هر سایت کار میکنند.
- مقاومت آنها در برابر فیشینگ به دلیل بررسی خودکار آدرس سایت (Origin Binding) توسط مرورگر است.
بزرگترین اشتباهی که اکثر افراد درباره کلیدهای امنیتی سختافزاری (مانند YubiKey یا Google Titan) مرتکب میشوند، این است که فکر میکنند این دستگاهها شبیه یک فلش مموری کوچک هستند که رمزهای عبور را در خود ذخیره میکنند.
وقتی بازاریابها از عبارت «کلید فیزیکی» استفاده میکنند، ذهن ما ناخودآگاه به سمت یک گاوصندوق دیجیتال میرود که با وصل شدن به پورت USB، رمزها را به صورت خودکار تایپ میکند. اما واقعیت بسیار جذابتر و البته پیچیدهتر است. این دستگاهها در واقع هیچ رمزی را ذخیره نمیکنند و اصلاً نمیدانند رمز عبور شما چیست.[1][5]
برای درک قابلیت واقعی این سختافزارها، باید از هیاهوی تبلیغاتی «امنیت غیرقابل نفوذ» عبور کنیم و به هسته اصلی فناوری نگاهی بیندازیم. یک کلید امنیتی، در واقع یک کامپیوتر مینیاتوری فوقامنیتی است که پردازنده، حافظه و سیستمعامل اختصاصی خود را دارد. وظیفه این کامپیوتر کوچک تنها یک چیز است: انجام محاسبات پیچیده ریاضی برای اثبات هویت شما، بدون اینکه هرگز راز اصلی را فاش کند. این معماری باعث میشود که حتی در صورت آلوده بودن کامپیوتر شما به ویروس، کلید امنیتی همچنان وظیفه خود را به درستی انجام دهد.
اساس کار این سیستم بر پایه استانداردی به نام FIDO2 و پروتکل WebAuthn بنا شده است. به جای استفاده از یک «راز مشترک» (مانند رمز عبور که هم شما و هم سرور آن را میدانید)، این استاندارد از «رمزنگاری نامتقارن» (Public Key Cryptography) استفاده میکند. در این روش، برای هر حساب کاربری، یک جفت کلید تولید میشود: یک کلید عمومی (Public Key) و یک کلید خصوصی (Private Key). این دو کلید از نظر ریاضی به هم مرتبط هستند، اما نمیتوان یکی را از روی دیگری حدس زد.[1][3]
وقتی برای اولین بار کلید سختافزاری خود را در یک سایت (مثلاً جیمیل) ثبت میکنید، پردازنده داخل کلید یک جفت کلید ریاضی منحصربهفرد فقط برای همان سایت میسازد. کلید عمومی مانند یک قفل باز است که به سرور گوگل فرستاده میشود تا در پایگاه داده آنها ذخیره شود. اما کلید خصوصی، در یک تراشه امن (Secure Element) داخل خود سختافزار باقی میماند. این تراشه به گونهای طراحی شده که استخراج اطلاعات از آن حتی با تجهیزات پیشرفته آزمایشگاهی و باز کردن فیزیکی قطعات نیز تقریباً غیرممکن است.[3]
حالا وقتی میخواهید وارد حساب خود شوید، چه اتفاقی میافتد؟ سرور گوگل یک چالش ریاضی (یک رشته اعداد و حروف تصادفی) را به مرورگر شما میفرستد و میگوید: «اگر تو واقعاً صاحب این حساب هستی، این چالش را با کلید خصوصیات امضا کن.»
کلید سختافزاری این چالش را دریافت میکند، با استفاده از کلید خصوصی آن را رمزنگاری (امضا) کرده و نتیجه را برمیگرداند. سرور با استفاده از کلید عمومی که از قبل دارد، امضا را بررسی میکند و در صورت صحت، اجازه ورود میدهد. در تمام این فرآیند، کلید خصوصی هرگز از دستگاه خارج نمیشود.[2][3]
نکته حیاتی که بازاریابی شرکتها کمتر به آن میپردازد، ویژگی «اتصال به مبدأ» (Origin Binding) است. دلیل اصلی اینکه این کلیدها فیشینگ را شکست میدهند، پیچیدگی رمزنگاری آنها نیست، بلکه نحوه تعامل آنها با مرورگر است. وقتی یک هکر شما را فریب میدهد تا وارد سایت جعلی g00gle.com شوید، مرورگر آدرس دقیق این سایت جعلی را به کلید سختافزاری میفرستد. این ارتباط مستقیم بین مرورگر و سختافزار، عامل انسانی را از فرآیند تشخیص سایت جعلی حذف میکند.[2][5]
کلید سختافزاری آدرس دریافتی را بررسی میکند و میبیند که کلید خصوصی مربوط به google.com را دارد، نه g00gle.com. بنابراین، به سادگی از امضا کردن چالش خودداری میکند. هکر حتی اگر تمام ترافیک اینترنت شما را شنود کند، چیزی جز یک امضای دیجیتال بیمصرف برای یک چالش باطلشده به دست نمیآورد. این دقیقاً همان جایی است که کدهای پیامکی (SMS) و اپلیکیشنهای احراز هویت (مانند Google Authenticator) شکست میخورند، زیرا کاربر میتواند فریب بخورد و کد معتبر را با دستان خودش در سایت جعلی وارد کند.[1][4]
کلید سختافزاری آدرس دریافتی را بررسی میکند و میبیند که کلید خصوصی مربوط به google.com را دارد، نه g00gle.com.
بسیاری از این کلیدها دارای یک دکمه طلایی رنگ یا حسگر لمسی هستند. برخلاف تصور، این حسگر در اکثر مدلهای پایه اثر انگشت شما را نمیخواند، بلکه تنها یک حسگر خازنی ساده برای اثبات «حضور فیزیکی کاربر» است. این ویژگی تضمین میکند که حتی اگر یک بدافزار کنترل کامل کامپیوتر شما را در دست بگیرد، نمیتواند بدون اینکه شما به صورت فیزیکی کلید را لمس کنید، چالشی را امضا کرده و وارد حسابهایتان شود.
با این حال، باید با دیدی انتقادی به ادعای «امنیت مطلق» نگاه کرد. کلیدهای سختافزاری از شما در برابر سرقت کوکیهای نشست (Session Hijacking) محافظت نمیکنند. اگر بدافزاری روی کامپیوتر شما نصب شده باشد که کوکی ورود شما را پس از احراز هویت موفقیتآمیز بدزدد، هکر میتواند بدون نیاز به کلید فیزیکی شما، وارد حسابتان شود. کلید سختافزاری فقط در مرحله عبور از در ورودی از شما محافظت میکند، نه زمانی که از قبل داخل خانه هستید و در را باز گذاشتهاید.[4][5]
علاوه بر این، گم کردن این کلیدها یکی از نگرانیهای اصلی کاربران است. از آنجا که هیچ کپی پشتیبانی از کلیدهای خصوصی در فضای ابری وجود ندارد (برخلاف Passkeyهای نرمافزاری اپل و گوگل)، اگر کلید خود را گم کنید و روش جایگزینی تنظیم نکرده باشید، برای همیشه پشت درهای بسته حساب خود خواهید ماند. به همین دلیل است که متخصصان امنیت سایبری همیشه توصیه میکنند حداقل دو کلید سختافزاری تهیه کنید: یکی برای استفاده روزمره در دسته کلید، و دیگری برای نگهداری در مکانی امن به عنوان پشتیبان.[1][4]
تفاوت اصلی بین کلیدهای سختافزاری و Passkeyهای نرمافزاری که اخیراً در گوشیهای هوشمند رایج شدهاند، در قابلیت انتقال آنهاست. کلیدهای خصوصی در Passkeyهای نرمافزاری از طریق سرویسهای ابری (مانند iCloud Keychain) بین دستگاههای شما همگامسازی میشوند که راحتی بینظیری به همراه دارد. اما کلیدهای سختافزاری بر پایه اصل «غیرقابل استخراج بودن» (Non-exportability) بنا شدهاند؛ کلید خصوصی در همان تراشهای که متولد شده، میمیرد و هرگز به هیچ فضای ابری منتقل نمیشود.[2][3]
در نهایت، حرکت صنعت تکنولوژی به سمت حذف کامل رمزهای عبور (Passwordless) با استفاده از همین معماری در حال انجام است. استانداردهای جدید به این کلیدها اجازه میدهند که نه تنها به عنوان لایه دوم امنیتی (2FA)، بلکه به عنوان تنها عامل ورود عمل کنند. با ترکیب یک پینکد یا حسگر اثر انگشت روی خود کلید سختافزاری، نیاز به حفظ کردن هرگونه رمزی از بین میرود و امنیت به ترکیبی قدرتمند از «چیزی که دارید» (کلید فیزیکی) و «چیزی که میدانید یا هستید» (پین یا اثر انگشت) تبدیل میشود.[1]
اصطلاحات کلیدی
- رمزنگاری نامتقارن (Public Key Cryptography)
- سیستمی ریاضی که از دو کلید مجزا استفاده میکند: یک کلید عمومی برای قفل کردن دادهها و یک کلید خصوصی برای باز کردن آنها.
- اتصال به مبدأ (Origin Binding)
- مکانیسمی امنیتی که در آن مرورگر آدرس دقیق وبسایت (URL) را به کلید سختافزاری میفرستد تا از امضای چالشها در سایتهای جعلی جلوگیری شود.
- پروتکل WebAuthn
- استاندارد جهانی وب که به مرورگرها اجازه میدهد به جای رمز عبور، با استفاده از کلیدهای رمزنگاری شده با سرورها ارتباط برقرار کنند.
- تراشه امن (Secure Element)
- یک ریزپردازنده ویژه در داخل کلید که در برابر حملات فیزیکی و نرمافزاری مقاوم است و کلیدهای خصوصی را در خود نگه میدارد.
پرسشهای متداول
آیا اگر کلید امنیتی خود را گم کنم، هکرها میتوانند وارد حساب من شوند؟
خیر. کلید امنیتی به تنهایی رمز عبور شما را نمیداند. هکر برای ورود به حساب شما هم به کلید فیزیکی و هم به رمز عبور (یا پینکد کلید) نیاز دارد.
اگر کلید سختافزاری گم شود، چگونه وارد حساب خود شوم؟
به همین دلیل همیشه توصیه میشود دو کلید ثبت کنید (یکی به عنوان پشتیبان). در غیر این صورت، باید از کدهای بازیابی یکبارمصرفی که سایتها هنگام ثبتنام ارائه میدهند استفاده کنید.
آیا کلیدهای امنیتی به اینترنت متصل میشوند؟
خیر. این کلیدها هیچگونه اتصال بیسیم مستقلی به اینترنت ندارند و تنها زمانی کار میکنند که به پورت USB متصل شوند یا از طریق NFC به گوشی شما نزدیک شوند.
تفاوت این کلیدها با اپلیکیشنهایی مثل Google Authenticator چیست؟
کدهای اپلیکیشنها میتوانند توسط کاربر در سایتهای جعلی فیشینگ وارد شوند، اما کلید سختافزاری به صورت خودکار آدرس سایت را بررسی کرده و در سایتهای جعلی کار نمیکند.
بررسی عمیق دیدگاهها
دیدگاه مهندسان امنیت سایبری
تمرکز بر حذف کامل خطای انسانی از طریق اثباتهای ریاضی و اتصال به مبدأ.
از نگاه طراحان پروتکل FIDO2 و مهندسان امنیت، بزرگترین ضعف هر سیستم امنیتی، کاربر انسانی است. انسانها خسته میشوند، فریب میخورند و رمزهای عبور را در سایتهای جعلی وارد میکنند. کلیدهای سختافزاری این معادله را با انتقال مسئولیت تایید آدرس از چشم انسان به مرورگر وب تغییر میدهند. از نظر ریاضی، استخراج کلید خصوصی از تراشه امن (Secure Element) غیرممکن فرض میشود، که این امر حملات از راه دور را به طور کامل خنثی میکند.
دیدگاه منتقدان تجربه کاربری
تاکید بر خطرات قفل شدن دائمی حسابها و پیچیدگیهای مدیریت سختافزار فیزیکی.
منتقدان استدلال میکنند که امنیت مطلق کلیدهای سختافزاری، شمشیر دو لبه است. از آنجا که هیچ مکانیزم بازیابی ابری برای کلیدهای خصوصی وجود ندارد، گم شدن یک کلید فیزیکی میتواند منجر به از دست رفتن دائمی دسترسی به حسابهای حیاتی شود. علاوه بر این، هزینه خرید چند کلید سختافزاری برای ایجاد نسخه پشتیبان و پیچیدگیهای ثبت آنها در پلتفرمهای مختلف، مانع بزرگی برای پذیرش عمومی این فناوری توسط کاربران عادی محسوب میشود.
- مهندسان امنیت سایبری
- تمرکز بر اثباتهای ریاضی رمزنگاری نامتقارن و حذف کامل عامل انسانی در تشخیص حملات فیشینگ.
- مدافعان حریم خصوصی
- ارزشگذاری بر عدم ردیابی متمرکز، زیرا کلیدهای سختافزاری هیچ اطلاعات هویتی مشترکی بین سایتهای مختلف به اشتراک نمیگذارند.
- منتقدان تجربه کاربری
- تاکید بر دشواری بازیابی حسابها در صورت گم شدن کلید فیزیکی و پیچیدگیهای راهاندازی اولیه برای کاربران عادی.
دیدگاههایی که این گزارش پوشش نداده
- توسعهدهندگان وبسایتهای کوچک که توانایی پیادهسازی زیرساختهای WebAuthn را ندارند
- کاربران در کشورهای در حال توسعه با دسترسی محدود به خرید سختافزارهای امنیتی گرانقیمت
منابع
[1]FIDO Allianceمهندسان امنیت سایبریHow FIDO Works: Standardizing Passwordless Authentication
مطالعه در FIDO Alliance →
[2]WebAuthn.guideمدافعان حریم خصوصیGuide to Web Authentication
مطالعه در WebAuthn.guide →
[3]W3Cمهندسان امنیت سایبریWeb Authentication: An API for accessing Public Key Credentials
مطالعه در W3C →
[4]NISTمهندسان امنیت سایبریDigital Identity Guidelines: Authentication and Lifecycle Management
مطالعه در NIST →
[5]تیم سردبیری کوهستانمنتقدان تجربه کاربریتحلیل تیم سردبیری کوهستان
مطالعه در تیم سردبیری کوهستان →
بیشتر در فناوری
مشاهده همه →معماری سختافزار
کالبدشکافی پردازش موازی در GPU: چرا کارتهای گرافیک برای هوش مصنوعی و بازی ضروری هستند؟
2 منبع
سختافزار موبایل
کالبدشکافی صفحهنمایشهای لمسی: گوشی شما واقعاً چگونه انگشت شما را میبیند؟
3 منبع
معماری 5G
کالبدشکافی شبکههای 5G: چگونه «برش شبکه» و آنتنهای Massive MIMO سرعت و تأخیر را متحول کردند؟
6 منبع
زیرساخت وب
کالبدشکافی شبکههای توزیع محتوا (CDN): وقتی روی یک لینک کلیک میکنید، محتوا واقعاً از کجا میآید؟
6 منبع
نظرات
هر زاویه. هر روز.
اخبار فناوری با پوشش کامل منابع و تحلیل دیدگاهها، هر روز و رایگان.





