سیستم اعتبارسنجی Google Authenticator یک برنامه نرم افزاری امنیتی است که با ارائه خدمت در زمینه تایید دو مرحلهای، کاربران را در برابر سرقت رمزهای عبور و ورود غیر مجاز به ناحیه کاربری آنها محافظت میکند. در فرآیند کد تایید دو مرحلهای، یک کد تصادفی معمولا با تاریخ انقضا کوتاه در مرحله ورود توسط برنامه تولید و برای کاربر پیامک میشود. در این روش هر هکر نسبتا ماهری امکان سرقت کد ساخته شده و در نتیجه ورود غیر مجاز را خواهد داشت.
شرکت گوگل با سرویس Google Authenticator، به بهترین نحو راه حلی برای این نقص امنیتی یافته است. در این سیستم احراز هویت، از دو الگوریتم تولید رمز منحصر به فرد با بازه زمانی مشخص، با نامهای TTOP و HOTP استفاده میگردد. در این فرآیند هنگام ورود کاربر به سایت و یا اپلیکیشنی که از این سرویس استفاده میکند، سیستم یک کد منحصر به فرد 6 تا 8 رقمی تولید میکند و آن را از طریق برنامهای که پیشتر بر روی دستگاه کاربر نصب شده است ارسال مینماید. نکته قابل توجه این است که در هنگام وقوع این رویداد، سیستم کاربر(تلفن همراه، کامپیوتر شخصی و …) نیاز به هیچگونه ارتباطی با دنیای بیرون از جمله اینترنت و یا آنتن ندارد. اما این اتفاق چگونه رخ میدهد؟
نحوه عملکرد Google Authenticator
در طول مراحل اولیه راهاندازی یک کد مخفی یا secret key توسط سیستم به صورت انحصاری برای کاربر تولید و در قالب 16 یا 32 کاراکتر به برنامه در حال استفاده کاربر ارسال میشود. در ادامه سیستم و برنامه کاربر در یک چرخه همسان اقدام به تولید کدهای اعتبار سنجی یکسان با استفاده از این secret key و الگوریتمهای TTOP و HTOP میکنند. به این ترتیب در واقع نیازی به ایجاد ارتباط بین سرویس تایید کننده کد و سیستم ارسال کننده آن که دستگاه کاربر است وجود ندارد، چرا که در اصل کد ارسالی در همان بازه توسط سیستم تایید کننده تولید شده و به همین دلیل سیستم از آن مطلع میباشد.
تفاوت TOTP و HOTP در چیست؟
تفاوت اصلی موجود بین این دو نوع الگوریتم در زمان انقضا است. در HOTP کد ایجاد شده تا زمان استفاده همچنان معتبر خواهد بود، اما در TOTP کد تولیدی برای بازه زمانی از پیش تعیین شده دارای اعتبار است. این بازه به طور معمول بین 30 ثانیه الی 2 دقیقه است. همچنین در TOTP ساعت و محدوده زمانی دستگاه کاربر نیز اهمیت دارد و چنانچه ساعت دستگاه به درستی تنظیم نشده باشد، کد ایجاد شده متفاوت از کد تولیدی در سمت سیستم اعتبار سنجی دارد و عملکرد مختل خواهد شد.