هش، امضا، ساخت بازتولیدپذیر و ممیزی به پرسشهای متفاوتی پاسخ میدهند.
Signal (سیگنال)
سیگنال استاندارد طلایی پیامرسانهای امن است. این پلتفرم کاملاً متنباز بوده و توسط نهادهای مستقل حسابرسی امنیتی (Audited) شده است. رمزنگاری سرتاسری بهطور پیشفرض برای تمامی مکالمات اعمال میشود و پروتکل آن بهطور گسترده توسط کارشناسان تأیید شده است.
Livara (لیوارا)
لیوارا یک رویکرد پیشگامانه با رمزنگاری ترکیبی پسا-کوانتومی (ML-KEM-768 بر اساس FIPS 203) ارائه میدهد. این پلتفرم قابلیت تأیید (Verifiable) بالایی از طریق ابزارهایی مانند Proof Lab دارد، اما پروتکلهای جدید آن هنوز توسط نهادهای مستقل حسابرسی نشدهاند.
سیگنال به دلیل داشتن حسابرسیهای مستقل (Independent Audits) و اثبات امنیت خود در طول سالها، همچنان امنترین انتخاب ثابتشده است. لیوارا برای کاربرانی که به دنبال مقاومت در برابر تهدیدات کوانتومی آینده و شفافیت بالای معماری هستند، گزینهای قدرتمند محسوب میشود، اما به دلیل حسابرسی نشدن پروتکلهایش، نیازمند اتکا به قابلیت تأیید شخصی (Verifiability) است.
متنباز بودن، امکان بررسی کد را فراهم میکند؛ اما بهتنهایی ثابت نمیکند برنامه نصبشده همان کد است یا هیچ آسیبپذیری ندارد. برای ارزیابی یک پیامرسان، بهتر است چند نوع شاهد را جدا کنید: کد منبع، فرایند ساخت، امضای فایل، آزمون پروتکل و گزارش ممیزی.
هر شاهد دقیقاً چه چیزی را نشان میدهد؟
| شاهد | کمک اصلی | چیزی که بهتنهایی ثابت نمیکند |
|---|---|---|
| کد منبع قابل مطالعه | امکان بررسی طراحی و پیادهسازی | تطابق با فایل نصب یا نبود همه باگها |
| ساخت بازتولیدپذیر | امکان مقایسه خروجی از منبع و محیط مشخص | امنبودن خود کد |
| امضای APK | بررسی امضا و پیوند فایل با کلید امضاکننده مورد اعتماد | بیخطر بودن رفتار برنامه |
| هش SHA-256 | تشخیص تفاوت بایتها نسبت به digest مورد اعتماد | اصالت وقتی مهاجم فایل و digest را با هم عوض کرده |
| بردار آزمون | بررسی رفتار مشخص برای ورودی و خروجی معین | پوشش همه حالتها و مسیرهای اجرا |
| ممیزی مستقل | یافتههای بررسی یک محدوده و نسخه مشخص | تضمین دائمی همه نسخههای آینده |
ساخت بازتولیدپذیر با دانلود فایل همهش یکی نیست
طبق تعریف Reproducible Builds، بازتولیدپذیری به ساخت خروجی یکسان از منبع، محیط و دستورهای مشخص مربوط است. اگر فقط فایل دانلودشده را با هش منتشرشده سازنده مقایسه کنید، آزمون یکپارچگی انجام دادهاید؛ هنوز خودتان فایل را از کد نساختهاید.
برای ارزیابی ادعای بازتولیدپذیری، نسخه کد، وابستگیها، دستور ساخت و گزارش فرد دیگری که نتیجه را تکرار کرده بخواهید. عبارت «منبع در GitHub موجود است» جای این شواهد را نمیگیرد.
چگونه بررسی APK را درست تفسیر کنیم؟
- فایل را از مسیر رسمی و نسخه مشخص دریافت کنید.
- digest و اطلاعات امضاکننده را از منبعی که به اصالت آن اعتماد دارید بگیرید.
- هش فایل را محاسبه و با همان نسخه مقایسه کنید.
- در بررسی فنی، امضا را نیز اعتبارسنجی کنید؛ ابزار رسمی apksigner این کار را پشتیبانی میکند.
- اگر اختلافی دیدید، نصب را متوقف کنید و علت را روشن کنید؛ برای عبور از خطا فایل را دوباره امضا نکنید.
نمونه فرمان بررسی برای کارشناسی که Android SDK Build Tools را دارد:
apksigner verify --verbose --print-certs app.apk
نام app.apk صرفاً مثال است. موفقیت فرمان نیاز به شناخت کلید معتبر ناشر را حذف نمیکند.
Proof Lab چه نقشی دارد؟
Proof Lab لیوارا ابزارهایی برای بررسیهای مشخص ارائه میکند. دامنه هر آزمایش را بخوانید: هش فایل، نمونه توافق کلید یا رد داده دستکاریشده پرسشهای متفاوتی هستند. موفقیت یک نمایش رمزنگاری، ممیزی کل برنامه نصبشده، سرور، بهروزرسانیها یا مدیریت حساب نیست.
مدل تهدید لیوارا نیز تصریح میکند اگر مهاجم هم فایل APK و هم digest نمایشدادهشده را عوض کند، تطابق هش بهتنهایی اصالت را ثابت نمیکند. این محدودیت عمومی بررسی هش است، نه ویژگی یک پیامرسان خاص.
هنگام خواندن گزارش ممیزی چه بپرسیم؟
- چه سازمان یا اشخاصی بررسی را انجام دادهاند و گزارش عمومی کجاست؟
- کدام نسخه و commit بررسی شده است؟
- چه بخشهایی بیرون از محدوده بودهاند؟
- یافتههای مهم چگونه اصلاح و دوباره آزمایش شدهاند؟
- آیا نسخه نصبشده شما همان نسخه یا شامل اصلاحات آن است؟
از کلماتی مانند «تأییدشده» بدون پاسخ این پرسشها نتیجه قطعی نگیرید. استفاده از الگوریتم استاندارد نیز معادل تأیید استانداردی تمام محصول نیست.
نتیجه برای انتخاب پیامرسان
متنباز بودن و قابلیت بررسی رقیب هم نیستند؛ شواهد مکملاند. محصولی را ترجیح دهید که ادعاهایش دقیق، قابل پیگیری و دارای محدوده روشن باشد. سپس همان بررسی را به حالت مورد استفاده خود، مانند گروه، نسخه وب، پشتیبان و دستگاههای متصل تعمیم دهید، نه اینکه از یک آزمون موفق به امنیت مطلق برسید.



