تایید هویت دو عاملی (2FA) چیست؟ + آموزش فعالسازی
در اینترنتی که بر تمام دنیا سایه افکنده است، امنیت[1] حرف اول را میزند. تایید هویت دو عاملی یکی از گزینههای امنیتی در دنیای وب است که امنیت حسابهای شما را به شدت افزایش میدهد. در این پست هر آنچه که باید درباره این روش بدانید را به زبان ساده توضیح میدهیم. با ارزدیجیتال همراه باشید.
تایید هویت دو عاملی چیست؟
تایید هویت دو عاملی (Two-factor authentication) که به اختصار 2FA گفته میشود، روشی برای ورود به یک حساب کاربری است که در آن سیستم برای اینکه مطمئن شود کسی که قصد ورود دارد خودِ کاربر است (و مثلا یک هکر نیست)، از کاربر دو عامل مختلف برای تایید هویت طلب میکند.
این دو عامل اینها هستند:
- چیزی که سیستم میداند (مانند کلمه عبور شما)
- چیزی که اثبات کند خودِ شما آن کلمه عبور را وارد کردهاید نه شخص دیگری. عامل دوم میتواند یک رمز یکبار مصرف که از کلمه عبور جدا است یا تایید ایمیل و یا تایید پیامکی باشد.
در متون فارسی از نام احراز هویت دو مرحلهای/دو عاملی هم برای این روش استفاده میشود.
به عبارت دیگر، با استفاده از این روش، در ابتدا، کاربر، نام کاربری و کلمه عبور خود را وارد کرده، سپس به جای دسترسی فوری به حساب، از او خواسته میشود تا برای اینکه ثابت کند واقعا صاحب آن حساب است، اطلاعات اضافی دیگری را نیز وارد کند.
به عنوان مثال اگر در ایمیل خود (مثل حساب جیمیل) احراز هویت دو مرحله ای را فعال کنید، در هنگام درخواست برای ورود به حساب، علاوه بر کلمه عبور از شما خواسته میشود تا از طریق تلفن همراهتان (یا هر راه دیگری) هویتتان را تایید کنید.
عامل دوم میتواند انواع مختلفی داشته باشد که مهمترینشان عبارتند از:
اطلاعاتی که فقط خود کاربر میداند
این نوع از احراز هویت دو مرحلهای، اطلاعاتی است که مربوط به خود کاربر میشود و کاربر حتما آنها را میداند. برای مثال، پاسخ به یک سری سوالات خصوصی، و یا الگوی ضربه زدن به یک کلید خاص و .. میتواند به عنوان یکی از روشهای تایید هویت مورد استفاده قرار گیرد.
امکاناتی که کاربر دارد
به طور معمول، یک کاربر میتواند با استفاده از یکی از تجهیزات الکترونیکی که در اختیار دارد، مانند یک کارت اعتباری، تلفن هوشمند یا یک دستگاه سختافزاری کوچک که به آن توکن سختافزاری نیز میگویند، این احراز هویت را انجام دهد.
اطلاعات فیزیکیای که کاربر دارد
این نوع تایید هویت کمی پیشرفتهتر و همچنین امنتر است و شامل الگوهای بیومتریکی مانند اثر انگشت، اسکن عنبیه چشم و سایر احراز هویتهای این چنینی میشود.
چرا باید از تایید هویت دو عاملی استفاده کنیم؟
گسترش استفاده از اینترنت و افزایش تلاشها برای هک کردن حسابهای کاربران نشان داده است که رمز عبور به تنهایی نمیتواند امنیت یک حساب اینترنتی را تامین کند.
در ادامه به چند مورد از دلایلی که نشان میدهد چرا استفاده از رمز عبور نمیتواند امنیت ۱۰۰ درصدی را برای کاربران فراهم کند، اشاره میشود.
رمزعبورهای ساده و قابل حدس
بر اساس تحقیقاتی که اخیرا انجام شده، ۱.۴ میلیارد از پسوردهای هک شده، عبارتهای بسیار سادهای بودند که امکان حدس زدن آنها توسط هر شخصی فراهم بود.
در میان این عبارتهای ساده به عنوان پسورد، استفاده از عبارتهایی مانند «۱۱۱۱۱۱»، «۱۲۳۴۵۶»، «۱۲۳۴۵۶۷۸۹» بسیار احمقانه و قابل حدس بودند.
کرک کردن (Cracking) یکی از راههای رایج برای بدست آوردن کلمه عبور حسابهای مختلف است. در این روش کرکرها با استفاده از نرمافزارهای مخصوص و تست کردن تعداد زیادی کلمه عبور، به حسابهای مختلف دسترسی پیدا میکنند.
بدافزارها و مهندسی اجتماعی
حتی اگر از ترکیبات پیچیده و غیرقابل حدس برای رمزعبور حسابهای خود استفاده کنید که کرکرها نتوانند آنها را تست کنند، باز هم خطر دستیابی به کلمه عبورتان از دست نمیرود.
بدافزارهایی مثل رت، تروجان و کیلاگر پس از آلوده کردن سیستم قربانی، به راحتی میتوانند از کلمات عبوری که قربانی هنگام ورود به حسابش وارد کرده است، نسخه برداری کنند. فرقی نمیکند از چه کلمه عبوری استفاده کنید، یک بدافزار آن را به طور کامل کپی میکند و به هکر میدهد.
همچنین ممکن است از طریق مهندسی اجتماعی (مثل فیشینگ[2]) گول بخورید و خودتان با دستان خودتان کلمه عبور را در اختیار یک هکر یا کلاهبردار قرار دهید.
با احراز هویت دو عاملی حتی اگر یک نفر کلمه عبور شما را هم بداند، نمیتواند به حسابتان وارد شود.
انواع روشهای متداول احراز هویت دو مرحلهای (2FA)
امروزه چندین روش متفاوت برای احراز هویت دو مرحلهای، مورد استفاده قرار میگیرد؛ برخی از آنها امنیت بالاتری دارند و قویترند و استفاده از برخی از آنها پیچیدهتر است. اما تمام آنها امنیت بیشتری را نسبت به اینکه فقط از رمز عبور استفاده کنیم، ارائه میدهند.
در ادامه برخی از متداولترین انواع تایید دو مرحلهای را با هم بررسی میکنیم.
با استفاده از تجهیزات سختافزاری
قدیمیترین شکل احراز هویت دو مرحله ای، تجهیزات الکترونیکیای هستند که ابعاد آن بسیار کوچک بوده و هر چند ثانیه یک کد عددی جدید تولید میکنند. وقتی کاربر بخواهد به حساب خود دسترسی پیدا کند، به این دستگاه الکترونیکی خود نگاه کرده و کد 2FA نمایش داده شده در آن را در سایت یا اپلیکیشن وارد میکند تا وارد حساب کاربری خود شود. این دستگاهها انواع مختلفی دارند که نام بردنشان در این مقاله نمیگنجد.
بسیاری از بانکهای ایرانی، از سالها پیش این توکنهای سختافزاری را به مشتریانی که میخواستند امنیت حساب آنها بالا باشد، ارائه میدادند.
امروزه با گسترش تلفنهای همراه و راهحلهای آسانتر، ارزانتر و ایمنتر، این روش کاربرد زیادی ندارد.
با استفاده از پیام متنی و صوتی
استفاده از روش پیام کوتاه برای احراز هویت دو مرحلهای ارتباط مستقیم با تلفن همراه کاربر دارد. پس از دریافت نامکاربری و رمز عبور، یک رمز عبور یکبار مصرف منحصر به فرد، از طریق پیامک به تلفن همراه کاربر ارسال میشود.
مشابه روندی که در هنگام استفاده از روش تجهیزات سختافزاری برای تایید، اتفاق میافتاد، یعنی کاربر پس از دریافت کد در تلفن همراه خود، برای وارد شدن به حساب کاربری خود باید آن را در سایت یا اپلیکیشن وارد کند تا بتواند به حساب کاربری خود دسترسی پیدا کند، در اینجا هم همین اتفاق میافتد.
به صورت مشابه، در روش 2FA با استفاده از پیام صوتی، یک شماره با تلفن همراه کاربر تماس گرفته و کد 2FA به صورت صوتی به او گفته میشود. هرچند استفاده از این روش چندان متداول نیست، اما هنوز هم در کشورهایی که تلفنهای همراه هوشمند گران هستند و یا خدمات تلفن همراه ضعیف است، مورد استفاده قرار میگیرد.
برای فعالیتهای آنلاین که از حساسیت بالایی برخوردار نیستند، احراز هویت از طریق پیام متنی یا صوتی میتواند نیاز امنیتی شما را برآورده کند. اما در مورد وبسایتهایی که اطلاعات شخصی شما را ذخیره میکنند، مانند بسیاری از شرکتها، بانکها یا حسابهای ایمیل، این سطح از احراز هویت دو مرحلهای (2FA) ممکن است به اندازه کافی امن و قابل اتکا نباشد.
در واقع، استفاده از پیامک (SMS) یا پیام صوتی برای احراز هویت دو مرحلهای، پایینترین سطح امنیت را در بین روشهای تایید هویت برای کاربران ارائه میدهد. به همین دلیل، بسیاری از شرکتها، پا فراتر گذاشته و روشهای امنتری را برای ورود دو مرحلهای ارائه دادهاند.
با استفاده از نرمافزارها
محبوبترین شکل از تایید دو مرحله ای که به عنوان جایگزینی برای احراز هویت با استفاده از پیامهای متنی و صوتی مورد استفاده قرار میگیرد، استفاده از نرمافزارهایی است که کد یکبار مصرف تولید میکنند.
برای استفاده از این روش، ابتدا کاربر باید یکی از اپلیکیشنهای 2FA (مثل google authenticator) را دانلود کرده و بر روی تلفن همراه یا لپتاپ خود نصب کند. سپس میتواند از این اپلیکیشن در هر وبسایتی که از این نوع احراز هویت دو مرحلهای پشتیبانی میکند، استفاده کند.
هنگام ورود به سایت، کاربر در ابتدا نامکاربری و رمز عبور خود را وارد میکند، و سپس کدی که در اپلیکیشن 2FA نمایش داده شده را وارد میکند تا به حساب کاربری خود دسترسی پیدا کند.
مشابه تجهیزات سختافزاری که هر کدی که تولید میکرد، فقط یک مدت کوتاه (معمولا ۳۰ یا ۶۰ ثانیه) اعتبار داشت، در مورد اپلیکیشنهای احراز هویت دو مرحلهای هم همین امر صادق است. یعنی هر کدی که در اپلیکیشن نمایش داده میشود فقط به اندازه ۱ دقیقه اعتبار دارد و در نتیجه کاربر فقط ۱ دقیقه فرصت دارد تا آن را وارد کند.
از آنجایی که در این روش کد در تلفن همراه خود کاربر ایجاد شده و نمایش داده میشود، دیگر نگرانی بزرگی که در رابطه با روش احراز هویت دو مرحلهای با استفاده از پیام متنی یا پیام صوتی داشتیم، وجود ندارد و شانس هکرها برای پیگیری کد 2FA در این روش از بین میرود.
مهمتر از همه، از آنجایی که اپلیکیشنهای 2FA، هم برای موبایل و هم دسکتاپ در دسترساند و حتی بدون نیاز به اتصال به اینترنت هم کار میکنند، احراز هویت کاربران با این روش تقریبا در همه جا و هر شرایطی در دسترس است.
اگر بخواهیم به صورت مختصر به مزایای استفاده از اپلیکیشنها برای احراز هویت دو مرحله ای، اشاره کنیم:
- امنیت بالاتری نسبت به سایر روشهای 2FA دارند.
- هم نسخه موبایل دارند و هم دسکتاپ.
- به صورت آفلاین و بدون نیاز به اینترنت هم کار میکنند.
با گسترش فیشینگ حسابهای بانکی در ایران، بانکهای ایرانی هم به دنبال طرحی برای ایجاد رمز دوم یکبار مصرف هستند که در آن به کاربر هنگام خرید اینترنتی یک رمز دوم یکبار مصرف داده میشود تا در صورت لو رفتن رمز دوم، پس از چند ثانیه رمز قبلی نامعتبر شود و امکان سوءاستفاده نباشد.
چگونه تایید هویت دو عاملی را فعال کنیم؟
هر وبسایت یا نرمافزار میتواند روش خاص خود را برای تایید هویت دو عاملی داشته باشد اما معمولا بیشتر پلتفرمهای معتبر از نرم افزار google authenticator پشتیبانی میکنند. به این صورت که کاربر باید نرم افزار را دانلود کرده و از سپس از بخش امنیت (Security) در حساب کاربری خود، با اسکن یک کد QR این قابلیت را فعال کند.
این وبسایتها یک کلید اختصاصی به کاربر میدهند که اگر تلفن همراه خود را گم کرد یا به هر طریقی نرم افزار از گوشی آنها پاک شد، بتوانند حساب خود را بازیابی کنند. بنابراین از این کلید به خوبی باید محافظت شود.
در اینجا به بررسی احراز هویت دومرحلهای در صرافی بایننس[3] که بیشتر معاملهگران ایرانی با آن کار میکنند، میپردازیم.
پس از ساخت حساب در این صرافی و وارد شدن به حساب کاربری، با مراجعه به قسمت Security میتوان به صفحهی تنظیمات و قسمت فعال کردن 2FA دسترسی پیدا کرد:
همانطور که در تصویر زیر مشخص است با دسترسی به صفحه Security، تنظیمات 2FA قابل دسترسی است، که سایت بایننس از سه روش برای اعمال احراز هویتی دو مرحلهای پشتیبانی میکند:
روش اول استفاده از تجهیزات سختافزاریای شبیه به فلش مموری است که به کامپیوتر وصل شده و هر ۶۰ ثانیه یکبار، یک کد تولید میکند. بایننس در این روش، استفاده از تجهیزات سختافزاری یوبیکی (YubiKey) را پیشنهاد کرده است.
قیمت این سختافزارها، از ۲۰ تا ۶۹ دلار متغیر است.
روش دوم استفاده از اپلیکیشن گوگل آتنتیکیتور (Google Athenticator) به عنوان یکی از برنامههای احراز هویت دو مرحله ایست که هر ۶۰ ثانیه یکبار یک کد جدید ایجاد میکند.
از بین تمام اپلیکیشنهایی که به این منظور طراحی شدهاند، این اپلیکیشن احراز هویت، یکی از بهترین و محبوبترین برنامههاییست که اکثر سایتها و سرویسهایی که احراز هویت دو مرحله ای ارائه میدهند، از آن پشتیبانی میکنند.
برای استفاده از این اپلیکیشن، ابتدا باید آن را دانلود کرده و بر روی تلفن همراه خود نصب کنید.
سپس از آن در سایتهایی که در روش احراز هویت دو مرحله ای خود از این اپلیکیشن پشتیبانی میکنند، استفاده کنید. برای فعال کردن این روش در بایننس، همانطور که در تصویر زیر نیز مشخص است، بر روی گزینه Enable کلیک میکنیم.
با کلیک بر روی گزینه Enable وارد صفحه زیر میشویم، که مراحل فعال کردن احراز هویت دو مرحله ای با استفاده از اپلیکیشن گوگل آتنتیکیتور به صورت مرحله به مرحله برای ما نمایش داده میشود.
در مرحله اول همانطور که در تصویر زیر مشخص است، میتوان با توجه به سیستم عامل تلفن همراه، یکی از نسخههای اندروید یا iOS را دانلود کرد و یا اگر این برنامه را از قبل بر روی تلفن همراه هوشمند خود نصب کردهاید، روی گزینه Next کلیک کرد.
پس از کلیک بر روی Next صفحه بعدی برای ما نمایش داده میشود که کد QR مربوط به حساب کاربری بایننس است.
برای مشاهده سایز کامل روی تصویر کلیک کنید.نکته امنیتی مهمی که در رابطه با استفاده از اپلیکیشنها در احراز هویت دو مرحله ای باید به آن اشاره کرد این است که کد بکآپ یا پشتیبانی که نرمافزار به شما میدهد را حتما در جایی خارج از تلفن همراه خود یادداشت کنید.
این کد به این دلیل داده میشود که اگر تلفن همراه شما گم شد و یا از کار افتاد، بتوانید به احراز هویتی دو مرحله ای خود در سایتهای مختلف از طریق تلفن همراه هوشمند دیگری دسترسی پیدا کنید.
در مرحله آخر برای اینکه فعال کردن احراز هویت دو مرحله ای شما تکمیل شود، باید هم رمز عبور اصلی خود که هنگام ساختن حساب کاربری در سایت انتخاب کردید را وارد کنید و هم رمز عبور حساب بایننس خود در اپلیکیشن گوگل آتنتیکیتور که هر ۶۰ ثانیه تغییر میکند.
با زدن گزینه Submit احراز هویت دو مرحله ای با استفاده از اپلیکیشن گوگل آتنتیکیتور برای شما فعال میشود.
روش سوم، احراز هویت دو مرحلهای با استفاده از پیام کوتاه یا SMS است که هم امنیت پایینتری نسبت به دو روش قبل دارد و هم در سایتهایی مانند بایننس که ایران را در لیست تحریم خود قرار دادهاند، امکان احراز هویت با این روش و توسط شماره تلفنهای ایران امکانپذیر نیست.
کلام آخر
چالشی که همواره در رابطه با وبسایتهایی که خدمات آنلاین ارائه میدهند، مطرح بوده، مسئله امنیت آنهاست.
بسیار اتفاق میافتاد که حساب کاربری افراد در این سایتها هک شده و اطلاعات آنها به سرقت میرفت. بخاطر وجود این مشکل بود که استفاده از یک روش امنیتی اضافه برای جلوگیری از هک و سرقت اطلاعات کاربران مطرح شد. این لایه امنیتی اضافی با نام احراز هویت دو مرحله ای یا 2FA شناخته شد.
شاید برای برخی از افراد امنیت حساب کاربری در بسیاری از سایتهای آنلاین اهمیتی نداشته باشد. اما زمانی که پای پولتان در میان باشد، همه به دنبال بیشترین سطح از امنیت خواهند بود.
به همین دلیل استفاده از یکی از روشهای احراز هویت دو مرحله ای در صرافی ارز دیجیتالی که با آن کار میکنید، بسیار مهم و حیاتی است.
در بین همه روشهای احراز هویت دو مرحله ای، کارآمدترین و مطمئنترین روش، استفاده از یکی از اپلیکیشنهای 2FA و در بین همه اپلیکیشنهایی که به این منظور طراحی شدهاند، برنامه گوگل آتنتیکیتور (Google Authenticator) یکی از محبوبترین و رایجترین اپلیکیشنهاست.
References
- ^مطالب مربوط به صفر تا صد امنیت (arzdigital.com)
- ^فیشینگ چیست و چگونه از آن جلوگیری کنیم؟ (arzdigital.com)
- ^مطالب مرتبط با برچسب بایننس (arzdigital.com)
- ^دانلود Google Athenticator (play.google.com)