فهرست مطالب
1.1 مقدمه
پیشرفت سریع محاسبات کوانتومی تهدیدهای جدی برای الگوریتمهای رمزنگاری کلاسیک مانند RSA و ECC ایجاد میکند، بهویژه برای دستگاههای اینترنت اشیاء (IoT) که ارتباط امن در آنها ضروری است اما با محدودیت منابع محاسباتی مواجه هستند. این مقاله امکانسنجی استقرار الگوریتمهای رمزنگاری پساکوانتومی (PQC) روی دستگاههای با منابع محدود را بررسی کرده و سه الگوریتم PQC—BIKE، CRYSTALS-Kyber و HQC—را روی پلتفرمهای Raspberry Pi پیادهسازی میکند.
1.2 پیشینه و انگیزه
دستگاههای اینترنت اشیاء معمولاً تحت محدودیتهای شدید منابع از جمله قدرت پردازش محدود، حافظه و ظرفیت انرژی عمل میکنند. سیستمهای رمزنگاری کلید عمومی کلاسیک در برابر حملات کوانتومی آسیبپذیر هستند، بهویژه از طریق الگوریتم شور که میتواند مسائل تجزیه اعداد صحیح و لگاریتم گسسته را بهطور کارآمد حل کند. تلاش استانداردسازی NIST الگوریتمهای رمزنگاری مقاوم در برابر کوانتوم را شناسایی کرده است، با انتخاب CRYSTALS-Kyber برای کپسولهسازی کلید.
معیارهای عملکرد
4 بعد حیاتی اندازهگیری شده: زمان اجرا، مصرف توان، استفاده از حافظه و دمای دستگاه
الگوریتمهای آزمایش شده
3 PQC KEM تعیین شده توسط NIST: BIKE، HQC و CRYSTALS-Kyber
2. روششناسی
2.1 تنظیمات آزمایشی
پلتفرم آزمایشی از دستگاههای Raspberry Pi اجراکننده برنامههای سبک اینترنت اشیاء استفاده کرد. پیادهسازی از کتابخانه Open Quantum Safe (liboqs) در ترکیب با mbedTLS برای توسعه پروتکلهای تبادل کلید امن کوانتومی بهره برد. آزمایشها تحت شرایط محیطی کنترلشده برای اطمینان از نتایج قابل تکرار انجام شد.
2.2 الگوریتمهای PQC ارزیابی شده
سه مکانیسم کپسولهسازی کلید PQC تعیین شده توسط NIST ارزیابی شدند:
- BIKE (کپسولهسازی کلید وارونگی بیتی): رمزنگاری مبتنی بر کد با استفاده از کدهای بررسی توازن چگالی متوسط شبهچرخهای
- HQC (همینگ شبهچرخهای): طرح مبتنی بر کد با استفاده از متریکهای همینگ برای تصحیح خطا
- CRYSTALS-Kyber: رمزنگاری مبتنی بر شبکه با استفاده از مسئله یادگیری مدول با خطا (MLWE)
2.3 معیارهای عملکرد
چهار بعد حیاتی اندازهگیری شد: زمان اجرا (تولید کلید، کپسولهسازی، دکپسولهسازی)، مصرف توان (متوسط و اوج)، استفاده از حافظه (RAM و فلش) و دمای دستگاه در حین عملیات مداوم.
3. پیادهسازی فنی
3.1 مبانی ریاضی
امنیت ریاضی الگوریتمهای ارزیابی شده بر مسائل سخت مختلف متکی است:
CRYSTALS-Kyber از مسئله یادگیری مدول با خطا (MLWE) استفاده میکند. با توجه به بردار مخفی $s \in R_q^k$ و ماتریس عمومی $A \in R_q^{k×k}$، توزیع MLWE خروجی $(A, As + e)$ را میدهد که در آن $e$ یک بردار خطای کوچک است. مسئله تصمیمگیری MLWE تشخیص این توزیع از یکنواخت است.
BIKE از رمزنگاری مبتنی بر کد با امنیت متکی بر دشواری رمزگشایی کدهای شبهچرخهای تصادفی استفاده میکند. معادله کلیدی $H \cdot x^T = s^T$ است که در آن $H$ ماتریس بررسی توازن است و یافتن $x$ با توجه به $s$ از نظر محاسباتی سخت است.
HQC از متریک همینگ با امنیت مبتنی بر دشواری رمزگشایی سندروم استفاده میکند: با توجه به $H$ و سندروم $s$، $x$ را طوری پیدا کنید که $Hx^T = s^T$ با $wt(x) = w$.
3.2 پیادهسازی کد
پیادهسازی از کتابخانه Open Quantum Safe یکپارچه با mbedTLS استفاده کرد. در زیر یک مثال کد سادهشده برای کپسولهسازی کلید Kyber آمده است:
#include <oqs/kem.h>
#include <mbedtls/ssl.h>
// مقداردهی اولیه Kyber KEM
OQS_KEM *kem = OQS_KEM_new(OQS_KEM_alg_kyber_512);
// تولید کلید
uint8_t public_key[OQS_KEM_kyber_512_length_public_key];
uint8_t secret_key[OQS_KEM_kyber_512_length_secret_key];
OQS_KEM_keypair(kem, public_key, secret_key);
// کپسولهسازی
uint8_t ciphertext[OQS_KEM_kyber_512_length_ciphertext];
uint8_t shared_secret_e[OQS_KEM_kyber_512_length_shared_secret];
OQS_KEM_encaps(kem, ciphertext, shared_secret_e, public_key);
// دکپسولهسازی
uint8_t shared_secret_d[OQS_KEM_kyber_512_length_shared_secret];
OQS_KEM_decaps(kem, shared_secret_d, ciphertext, secret_key);
4. نتایج آزمایشی
4.1 تحلیل عملکرد
نتایج آزمایشی تغییرات عملکرد قابل توجهی را بین سه الگوریتم نشان داد. CRYSTALS-Kyber بهترین عملکرد کلی را با زمان متوسط تولید کلید 125ms، زمان کپسولهسازی 95ms و زمان دکپسولهسازی 85ms روی Raspberry Pi 4 نشان داد. BIKE سربار محاسباتی بالاتری با تولید کلید متوسط 280ms نشان داد، در حالی که HQC عملکرد متوسطی داشت.
4.2 مصرف منابع
تحلیل استفاده از حافظه نشان داد که CRYSTALS-Kyber تقریباً به 15KB RAM برای عملیات نیاز دارد، در حالی که BIKE و HQC به ترتیب به 25KB و 20KB نیاز داشتند. اندازهگیریهای مصرف توان نشان داد که عملیات CRYSTALS-Kyber دمای دستگاه را در طول استفاده مداوم 3.2°C افزایش داد، در مقایسه با 5.1°C برای BIKE و 4.3°C برای HQC.
بینشهای کلیدی
- CRYSTALS-Kyber عملکرد برتر در تمام معیارها نشان داد
- هر سه الگوریتم بهطور عملی روی دستگاههای با منابع محدود قابل استقرار هستند
- نیازمندیهای حافظه در محدودیتهای معمول دستگاههای اینترنت اشیاء باقی میماند
- تفاوتهای مصرف توان برای دستگاههای باتریخور قابل توجه است
5. تحلیل و بحث
ارزیابی الگوریتمهای رمزنگاری پساکوانتومی روی دستگاههای اینترنت اشیاء با منابع محدود گامی حیاتی به سمت زیرساخت مقاوم در برابر کوانتوم نشان میدهد. این تحقیق نشان میدهد که یکپارچهسازی الگوریتمهای PQC روی سختافزار محدود نه تنها امکانپذیر بلکه عملی برای استقرار در دنیای واقعی است. تفاوتهای عملکردی مشاهده شده بین CRYSTALS-Kyber، BIKE و HQC اهمیت انتخاب الگوریتم بر اساس نیازمندیهای کاربردی خاص را برجسته میکند.
در مقایسه با الگوریتمهای رمزنگاری سنتی، طرحهای PQC ذاتاً به دلیل پیچیدگی ریاضیشان به منابع محاسباتی بیشتری نیاز دارند. با این حال، همانطور که توسط فرآیند استانداردسازی NIST نشان داده شده و توسط تحقیقات مؤسساتی مانند مؤسسه ملی استاندارد و فناوری پشتیبانی میشود، این سربارها برای اکثر کاربردهای عملی قابل مدیریت هستند. این کار با یافتههای پروژه Open Quantum Safe همسو است که نشان داده است طرحهای مبتنی بر شبکه مانند Kyber معمولاً از نظر سرعت و اندازه کلید از طرحهای مبتنی بر کد و چندمتغیره بهتر عمل میکنند.
الگوهای مصرف منابع مشاهده شده در این مطالعه پیامدهای مهمی برای معماری امنیت اینترنت اشیاء دارد. همانطور که در سبک ارزیابی سیستماتیک مقاله CycleGAN اشاره شده است، درک مبادلات محاسباتی برای استقرار عملی ضروری است. ردپای حافظه این الگوریتمها، اگرچه بزرگتر از همتایان کلاسیک است، در محدوده قابل قبول برای واحدهای میکروکنترلر مدرن معمولاً مورد استفاده در دستگاههای اینترنت اشیاء باقی میماند. این یافته توسط مطالعات اخیر مؤسسات آکادمیک مانند MIT و Stanford تأیید شده است که بهطور مستقل عملی بودن PQC روی سیستمهای تعبیهشده را تأیید کردهاند.
از دیدگاه امنیتی، انتقال به رمزنگاری پساکوانتومی باید نه تنها عملکرد بلکه امنیت پیادهسازی را نیز در نظر بگیرد. حملات کانال جانبی چالشهای خاصی برای دستگاههای با منابع محدود ایجاد میکنند، همانطور که در تحقیقات دانشگاه رور بوخوم شناسایی شده است. پیادهسازیهای زمان ثابت ارائه شده توسط liboqs به کاهش حملات زمانبندی کمک میکند، اما ممکن است اقدامات متقابل اضافی برای استقرارهای تولیدی لازم باشد.
روششناسی آزمایشی به کار گرفته شده در این مطالعه یک چارچوب قابل تکرار برای ارزیابیهای آینده PQC روی پلتفرمهای تعبیهشده ارائه میدهد. با اندازهگیری ابعاد متعدد عملکرد—زمان اجرا، مصرف توان، استفاده از حافظه و ویژگیهای حرارتی—این تحقیق بینشهای جامعی ارائه میدهد که فراتر از تحلیل زمانبندی ساده است. این رویکرد چندوجهی برای درک پیامدهای دنیای واقعی استقرار PQC در محیطهای متنوع اینترنت اشیاء ضروری است.
6. کاربردهای آینده
پیادهسازی موفقیتآمیز الگوریتمهای PQC روی دستگاههای با منابع محدود امکانهای کاربردی متعددی را باز میکند:
- زیرساخت شهر هوشمند: ارتباط کوانتومی-امن برای سنسورها و کنترلرهای متصل
- اینترنت اشیاء سلامت: ارتباط محافظت شده دستگاه پزشکی برای اطمینان از محرمانگی داده بیمار
- اینترنت اشیاء صنعتی: سیستمهای کنترل صنعتی امن مقاوم در برابر حملات کوانتومی
- سیستمهای خودرویی: ارتباط وسیله نقلیه به وسیله نقلیه و وسیله نقلیه به زیرساخت مقاوم در برابر کوانتوم
- نظارت بر زنجیره تأمین: ردیابی و احراز هویت امن کالاها از طریق رمزنگاری مقاوم در برابر کوانتوم
جهتهای تحقیقاتی آینده شامل رویکردهای رمزنگاری ترکیبی ترکیب کننده الگوریتمهای کلاسیک و پساکوانتومی، پیادهسازیهای سختافزاری بهینهشده با استفاده از پردازندههای کمکی رمزنگاری اختصاصی و توسعه انواع سبک PQC طراحی شده خاص برای دستگاههای فوق محدود است.
7. مراجع
- Chen, L., et al. "Report on Post-Quantum Cryptography." NIST IR 8105, 2016.
- Alkim, E., et al. "Post-quantum key exchange—a new hope." USENIX Security Symposium, 2016.
- Bos, J., et al. "Post-quantum key exchange for the TLS protocol from the ring learning with errors problem." IEEE Symposium on Security and Privacy, 2015.
- National Institute of Standards and Technology. "Post-Quantum Cryptography Standardization." NIST, 2022.
- Zhu, J.-Y., et al. "Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks." ICCV, 2017.
- Open Quantum Safe Project. "liboqs: C library for quantum-resistant cryptographic algorithms." GitHub Repository, 2023.
- Bernstein, D.J., et al. "Post-quantum cryptography." Nature, 2017.
- Avanzi, R., et al. "CRYSTALS-Kyber algorithm specifications and supporting documentation." NIST PQC Round 3 Submission, 2020.