راهنمای جامع استخراج کلید مخفی از QR Code گوگل Authenticator
احراز هویت دو مرحلهای (2FA) یکی از مهمترین لایههای امنیتی برای محافظت از حسابهای آنلاین است. Google Authenticator یکی از محبوبترین برنامهها برای این کار است، اما یک مشکل بزرگ دارد: عدم امکان export یا پشتیبانگیری. ابزار استخراج کلید مخفی WebsiteBesaz این مشکل را حل میکند.
Google Authenticator چگونه کار میکند؟
Google Authenticator از الگوریتم استاندارد TOTP (Time-based One-Time Password) استفاده میکند. وقتی شما 2FA را برای یک حساب فعال میکنید، سرور یک کلید مخفی (Secret Key) به صورت رشته Base32 تولید میکند و آن را در یک QR Code به شما نمایش میدهد.
فرمت این QR Code استاندارد است: otpauth://totp/GitHub:username?secret=JBSWY3DPEHPK3PXP&issuer=GitHub
این URL شامل اطلاعات زیر است:
- otpauth:// - پروتکل استاندارد
- totp - نوع (Time-based)
- GitHub:username - نام صادرکننده و حساب
- secret=… - کلید مخفی (مهمترین بخش)
- issuer=… - نام سرویس
- (اختیاری) algorithm, digits, period
چرا به استخراج کلید مخفی نیاز دارید؟
۱. مهاجرت به برنامههای دیگر
Google Authenticator ساده و رایگان است، اما محدودیتهای زیادی دارد:
- عدم همگامسازی ابری: اگر گوشی خود را گم کنید، تمام حسابها از دست میروند
- عدم پشتیبانگیری: هیچ راه رسمی برای export وجود ندارد
- یک دستگاهی: فقط روی یک گوشی کار میکند
برنامههای جایگزین بهتر:
- Authy: همگامسازی ابری، چند دستگاهی
- Bitwarden: یکپارچه با مدیریت رمز عبور
- 1Password: تجربه کاربری عالی
- Aegis: متنباز و امن برای اندروید
- Raivo: متنباز برای iOS
۲. پشتیبانگیری از حسابها
داشتن یک نسخه پشتیبان از کلیدهای مخفی (در یک مکان امن مانند یک password manager) میتواند در شرایط بحرانی نجاتبخش باشد.
۳. تعویض گوشی
هنگام تعویض گوشی، بهجای تنظیم مجدد تمام حسابهای 2FA، میتوانید کلیدها را استخراج و در گوشی جدید وارد کنید.
فرآیند استخراج کلید
ابزار ما این مراحل را بهصورت خودکار انجام میدهد:
- تشخیص QR Code: با کتابخانه jsQR، الگوی QR Code در تصویر پیدا میشود
- استخراج محتوا: داده ذخیره شده در QR Code خوانده میشود
- تجزیه URL: فرمت otpauth تحلیل و اجزای آن جدا میشوند
- استخراج کلید: پارامتر
secretاز query string جدا میشود - نمایش نتایج: کلید به همراه سایر اطلاعات نمایش داده میشود
استفاده در عمل
پس از استخراج کلید مخفی، میتوانید آن را در هر برنامه Authenticator دیگری وارد کنید:
در Bitwarden:
- Bitwarden را باز کنید
- حساب مورد نظر را ویرایش کنید
- در بخش TOTP، کلید را paste کنید
در Authy:
- دکمه + را بزنید
- “Enter key manually” را انتخاب کنید
- کلید، نام حساب و تعداد ارقام را وارد کنید
در 1Password:
- یک Login جدید ایجاد کنید
- در بخش “one-time password” کلید را وارد کنید
انواع الگوریتمهای TOTP
هنگام استخراج کلید، ابزار ما الگوریتم مورد استفاده را نیز تشخیص میدهد:
| الگوریتم | توضیح | استفاده |
|---|---|---|
| SHA1 | استاندارد پیشفرض | ۹۵٪ سرویسها |
| SHA256 | امنتر | برخی سرویسهای مالی |
| SHA512 | قویترین | استفاده کم |
نکته مهم: هنگام وارد کردن کلید در برنامه جدید، مطمئن شوید که الگوریتم را درست انتخاب کردهاید. در غیر این صورت کدهای تولید شده معتبر نخواهند بود.
امنیت کلید مخفی
کلید مخفی (Secret Key) به اندازه رمز عبور اصلی حساب شما مهم است. در واقع، کسی که کلید مخفی را داشته باشد میتواند کدهای 6 رقمی معتبر تولید کند و به حساب شما دسترسی پیدا کند.
بهترین روشهای نگهداری:
✅ انجام دهید:
- ذخیره در Password Manager امن (Bitwarden، 1Password)
- نگهداری در یک vault آفلاین رمزنگاری شده
- چاپ و نگهداری در گاوصندوق فیزیکی (برای حسابهای بسیار حساس)
❌ انجام ندهید:
- ذخیره در Notes گوشی یا Google Keep
- ارسال از طریق ایمیل یا پیامرسان
- ذخیره در Google Drive یا Dropbox بدون رمزنگاری
- به اشتراکگذاری با دیگران
مقایسه ابزارهای موجود
| ویژگی | ابزار WebsiteBesaz | ابزارهای آنلاین دیگر |
|---|---|---|
| پردازش محلی | ✅ کاملاً | ❌ ارسال به سرور |
| پشتیبانی از دوربین | ✅ | ⚠️ محدود |
| نمایش جزئیات فنی | ✅ کامل | ⚠️ پایه |
| کار آفلاین | ✅ | ❌ |
| هزینه | رایگان | پولی |
پیادهسازی 2FA برای کسبوکار شما
اگر شما یک توسعهدهنده یا صاحب کسبوکار هستید، میتوانید از همین فناوری برای محافظت از حساب کاربران خود استفاده کنید. پیادهسازی TOTP نسبتاً ساده است:
- تولید کلید: با کتابخانههایی مثل
otplibدر Node.js - تولید QR Code: با
qrcodelibrary - تایید کد: با همان کتابخانه TOTP
- Recovery Codes: تولید کدهای بازیابی برای شرایط اضطراری
تیم WebsiteBesaz میتواند سیستم کامل احراز هویت دو مرحلهای را با استانداردهای امنیتی بالا برای سایت شما پیادهسازی کند.
نکات فنی برای توسعهدهندگان
اگر میخواهید خودتان سیستم TOTP پیادهسازی کنید، به این نکات توجه کنید:
- کلید را تصادفی و به اندازه کافی طولانی (حداقل ۱۶۰ بیت = ۳۲ کاراکتر Base32) تولید کنید
- هرگز کلید را در URL یا لاگها قرار ندهید
- Rate limiting برای جلوگیری از brute force روی endpoint تایید کد
- Recovery codes برای شرایطی که کاربر به برنامه Authenticator دسترسی ندارد
- Backup codes را بهصورت امن (hashed) در دیتابیس ذخیره کنید
برای اطلاعات بیشتر، مقاله چگونه TOTP کار میکند را مطالعه کنید.
نتیجهگیری
ابزار استخراج کلید مخفی Google Authenticator، یک راهحل سریع، امن و کاملاً رایگان برای مهاجرت حسابهای 2FA شما به سایر برنامهها است. با پردازش کاملاً محلی، میتوانید با خیال راحت از آن برای حسابهای حساس خود استفاده کنید.
فراموش نکنید که امنیت کلیدهای مخفی استخراج شده کاملاً بر عهده شماست. آنها را در مکانهای امن ذخیره کنید و هرگز با کسی به اشتراک نگذارید.
اگر نیاز به پیادهسازی سیستم احراز هویت 2FA در سایت خود دارید یا میخواهید امنیت زیرساخت کسبوکار خود را ارتقا دهید، با تیم WebsiteBesaz تماس بگیرید.