اشتراک X IN
پروتکل SRP به کاربر اجازه می‌دهد اثبات کند رمز عبور را می‌داند بدون آنکه رمز عبور یا هش مستقیم آن هرگز از دستگاه خارج شود.

فناوری Passkey جایگزینی مدرن برای کلمات عبور سنتی است، اما همگام‌سازی ابری آن در زیست‌بوم‌های شرکت‌های بزرگ فناوری، ریسک متمرکزسازی داده‌های احراز هویت را به همراه دارد. در مقابل، احراز هویت صفر دانش مبتنی بر پروتکل SRP به کاربر اجازه می‌دهد اثبات کند رمز عبور را می‌داند بدون آنکه رمز عبور یا هش مستقیم آن هرگز از دستگاه خارج یا به سرور منتقل شود. این روش، امکان ورود بدون رمز عبور را فراهم کرده و امنیت ورود پیام‌رسان را بدون وابستگی به خزانه‌های ابری شخص ثالث ارتقا می‌دهد.

Key takeaways

  • فناوری Passkey از کلیدهای عمومی و خصوصی FIDO2 استفاده می‌کند، اما پشتیبان‌گیری ابری آن کلیدها را در سرورهای متمرکز اپل و گوگل قرار می‌دهد.
  • پروتکل SRP یک تبادل کلید تاییدشده با رمز عبور (PAKE) است که احراز هویت صفر دانش را روی دستگاه کاربر اجرا می‌کند.
  • در احراز هویت SRP، سرور هیچ‌گاه رمز عبور یا داده‌های معادل رمز عبور را ذخیره نمی‌کند و در صورت رخنه به سرور، کلیدهای کاربر افشا نمی‌شوند.
  • پیام‌رسان‌های امن مانند لیوارا (Livara) از SRP برای کاهش ریسک سرقت اعتبارنامه همراه با رمزنگاری پست-کوانتومی برای متون چت استفاده می‌کنند.

چرا امنیت Passkey در پیام رسان با چالش متمرکزسازی ابری روبرو است؟

پاس‌کی (Passkey) استاندارد مبتنی بر FIDO2 و WebAuthn است که با هدف حذف کلمات عبور طراحی شده، اما در عمل کلیدهای خصوصی کاربر را در خدمات ابری شرکت‌های بزرگ نظیر iCloud Keychain اپل یا Google Password Manager همگام‌سازی می‌کند. اگرچه ورود بدون رمز عبور با پاس‌کی جلوی حملات فیشینگ ساده را می‌گیرد، اما وابستگی آن به پشتیبان‌گیری ابری متمرکز، نقطه ضعف جدیدی در امنیت ورود پیام‌رسان ایجاد می‌کند. اگر حساب ابری اصلی کاربر یا سیستم احراز هویت شرکت ارائه‌دهنده با مشکل مواجه شود، تمام کلیدهای ورود متصل به آن در معرض خطر قرار می‌گیرند.

علاوه بر این، در پیام‌رسان‌هایی که کلیدهای رمزنگاری پیام‌ها را به زنجیره کلید ابری متصل می‌کنند، حریم خصوصی کاربر مستقیماً به سیاست‌های امنیتی و دسترسی‌های قانونی آن ارائه‌دهنده متصل می‌شود. برای بررسی عمیق‌تر ابعاد حریم خصوصی، می‌توانید مقاله توضیح متاداده پیام‌رسانی را مطالعه کنید. برخلاف این مدل متمرکز، پیام‌رسان‌های دارای معماری صفر-اعتماد (Zero-Trust) تلاش می‌کنند تا وابستگی به خدمات ابری شخص ثالث را برای احراز هویت کاملاً قطع کنند.

پروتکل SRP چگونه احراز هویت صفر دانش را ممکن می‌سازد؟

پروتکل SRP (مخفف Secure Remote Password) یک پروتکل PAKE (تبادل کلید تاییدشده با رمز عبور) است طبق RFC 2945 که به کاربر اجازه می‌دهد هویت خود را بدون ارسال رمز عبور یا حتی ارسال هش معادل آن ثابت کند. در این روش، کاربر و سرور یک کلید جلسه مشترک را از طریق محاسبات ریاضی ریاضیات پیمانه‌ای (Modular Math) استخراج می‌کنند. سرور فقط یک تاییدکننده (Verifier) ریاضی را ذخیره می‌کند که نمی‌توان از روی آن رمز عبور اصلی را بازسازی کرد.

فرآیند احراز هویت صفر دانش با SRP شامل مراحل زیر است:

  1. کاربر نام کاربری خود را به سرور می‌فرستد و سرور یک نمک (Salt) و پارامتر عمومی ارسال می‌کند.
  2. کاربر کلید عمومی خود را بر اساس رمز عبور، نمک و مقدار تصادفی محاسبه کرده و برای سرور می‌فرستد.
  3. هر دو طرف بدون مبادله رمز عبور، به یک کلید جلسه مشترک (Session Key) دست می‌یابند.
  4. کاربر اثبات ریاضی متقابل را ارائه می‌دهد که نشان می‌دهد کلید را به درستی محاسبه کرده است.

نتیجه این فرآیند این است که حتی اگر یک مهاجم شنود کامل روی شبکه انجام دهد یا دیتابیس سرور را کاملاً سرقت کند، هیچ اطلاعاتی برای حدس زدن آفلاین رمز عبور بدون تعامل مجدد با سرور به دست نمی‌آورد.

مقایسه Passkey و پروتکل SRP در پیام‌رسان‌های امن

تفاوت اصلی میان این دو فناوری به محل نگهداری کلیدها و مدل اعتماد (Trust Model) آن‌ها بازمی‌گردد. جدول زیر ویژگی‌های ساختاری این دو روش را مقایسه می‌کند:

تصویر مفهومی مقایسه احراز هویت محلی صفر دانش در برابر همگام‌سازی متمرکز ابری

ویژگی فناوری Passkey (FIDO2) پروتکل SRP (PAKE)
نحوه انتقال اعتبارنامه امضای دیجیتال با کلید خصوصی اثبات ریاضی صفر-دانش (بدون انتقال کلید)
وابستگی ابری زیاد (iCloud / Google Cloud Sync) صفر (محاسبه کاملاً محلی)
مقاومت در برابر سرقت سرور بالا فوق‌العاده بالا (عدم وجود داده معادل رمز)
بازیابی حساب وابسته به حساب ابری شرکت سازنده وابسته به کلید بازیابی 256 بیتی کاربر
پیاده‌سازی در پیام‌رسان نیازمند پشتیبانی مرورگر/سیستم‌عامل مستقل از سیستم‌عامل و قابل راستی‌آزمایی

در پیام‌رسان لیوارا، از پروتکل SRP برای اثبات آگاهی از رمز عبور استفاده می‌شود بدون آنکه رمز عبور از دستگاه خارج شود. کلیدهای رمزنگاری پیام‌ها، مانند پروتکل‌های LVR1 برای پیام‌های مستقیم و LGS1 برای گروه‌های خصوصی، به‌طور مستقل از سیستم‌های ابری مدیریت می‌شوند. شما می‌توانید اصول این معماری را در فهرست چک‌لیست پیام‌رسان امن بررسی کنید.

معماری رمزنگاری لیوارا: SRP در کنار حفاظت پست-کوانتومی

احراز هویت تنها قدم اول در حفظ امنیت پیام‌رسان است؛ پس از ورود، حفاظت از خود پیام‌ها اهمیت می‌یابد. لیوارا برای ثبت‌نام و ورود بدون رمز عبور در شبکه خود از الگوریتم‌های استاندارد SRP همراه با KDFهای قدرتمند استفاده می‌کند. پس از تایید هویت، تبادل پیام‌های مستقیم بر اساس پروتکل LVR1 انجام می‌شود که یک دابل راتچت پیشرفته ترکیبی (Hybrid) شامل ECDH P-256 و الگوریتم پست-کوانتومی ML-KEM-768 (استاندارد FIPS 203 سازمان NIST) است.

گروه‌های خصوصی نیز از پروتکل LGS1 بهره می‌برند که تمام متن‌ها، عکس‌ها، ویدئوها و فایل‌ها را با کلیدهای فرستنده (Sender Keys) پنهان‌شده در پاکت‌های LVR1 رمزنگاری می‌کند. همچنین کلیدهای بازیابی رمزنگاری‌شده (نسخه v7) هویت کاربر را زیر یک کلید 256 بیتی برآمده از عبارت بازیابی حفظ می‌کنند. جزئیات بیشتر این مدل در سند مدل تهدید لیوارا و صفحه مرزهای امنیتی به تفصیل بیان شده است.

با این حال، باید توجه داشت که این سطح از رمزنگاری سرتاسری مخصوص گفتگوی مستقیم و گروه‌های خصوصی است. کانال‌های عمومی در لیوارا بر اساس طراحی و به هدف انتشار عمومی، رمزنگاری سرتاسری ندارند تا امکان گزارش‌دهی و حذف محتوای مخرب وجود داشته باشد.

چگونه شفافیت و راستی‌آزمایی مستقل را در پیام‌رسان خود بررسی کنیم؟

یکی از مهم‌ترین ارکان امنیت واقعی، امکان راستی‌آزمایی مستقل کدهای اجراشده است. بسیاری از برنامه‌ها مدعی ورود بدون رمز عبور یا احراز هویت صفر دانش هستند، اما کلاینت آن‌ها بسته و غیرقابل بررسی است. در لیوارا، کاربران اندروید می‌توانند چک‌سام SHA-256 فایل APK منتشرشده را به صورت آفلاین و مستقیماً در آزمایشگاه اثبات (Proof Lab) بررسی کنند تا مطمئن شوند کد اجراشده روی گوشی دقیقاً همان کدی است که ادعا شده است.

برای اطمینان از عدم وجود حمله مرد میانی (MitM)، کاربران می‌توانند کدهای ایمنی (Safety Numbers v3) را نیز خارج از بستر پیام‌رسان مقایسه کنند. برای آموزش گام‌به‌گام این فرآیند، مقاله روش راستی‌آزمایی چت رمزنگاری‌شده را مطالعه کنید. شفافیت در Cryptography به این معناست که نیازی به اعتماد کورکورانه به سرور یا ارائه‌دهنده وجود ندارد.

Frequently asked questions

آیا پروتکل SRP همان پاس‌کی (Passkey) است؟

خیر، پاس‌کی بر اساس استاندارد FIDO2 و کلیدهای عمومی/خصوصی کار می‌کند و اغلب در کلود اپل یا گوگل همگام‌سازی می‌شود. پروتکل SRP یک پروتکل احراز هویت صفر دانش (PAKE) است که دانش رمز عبور را بدون ارسال آن به سرور یا ذخیره در cloud اثبات می‌کند.

چرا همگام‌سازی ابری Passkey می‌تواند خطرناک باشد؟

اگرچه پاس‌کی جلوی فیشینگ را می‌گیرد، اما همگام‌سازی آن در حساب‌های ابری بزرگ (iCloud یا Google) تمرکز متمرکز ایجاد می‌کند. اگر حساب ابری کاربر هک شود یا با دستور قضایی دسترسی آن تغییر کند، تمام کلیدهای متصل به آن در دسترس قرار می‌گیرند.

سرور پیام‌رسان در احراز هویت SRP چه چیزی را ذخیره می‌کند؟

سرور فقط یک تاییدکننده ریاضی (Verifier) و یک مقدار نمک (Salt) را ذخیره می‌کند. حتی اگر دیتابیس سرور به صورت کامل سرقت شود، مهاجم نمی‌تواند رمز عبور اصلی کاربر را استخراج کند یا بدون تعامل آنلاین با کاربر، حملات دیکشنری انجام دهد.

آیا رمزنگاری SRP در برابر حملات کوانتومی مقاوم است؟

پروتکل SRP مرحله احراز هویت اولیه را انجام می‌دهد. برای مقابله با تهدیدات کوانتومی آتی، لیوارا تبادل کلید پیام‌ها را با الگوریتم ML-KEM-768 (استاندارد FIPS 203) ترکیب می‌کند تا لایه متون و ارتباطات در برابر رایانه‌های کوانتومی کاملاً ایمن باشد.

چطور می‌توان صحت فایل نصب پیام‌رسان را راستی‌آزمایی کرد؟

با استفاده از هش SHA-256 منتشرشده برای APK اندروید، می‌توانید فایل برنامه‌ای را که دانلود کرده‌اید به‌صورت محلی و آفلاین در بخش Proof Lab بررسی کنید تا از عدم دستکاری کد برنامه اطمینان حاصل نمایید.

بررسی آزمایشگاه اثبات لیوارا
پایان / پاس‌کی (Passkey) یا رمزنگاری صفر-دانش؟ چرا ورود بدون عبور دادن رمزعبور (SRP) امنیت چت را تغییر می‌دهدساختهٔ لیوار ↗