رمزنگاری منحنی بیضوی

رمزنگاری منحنی بیضوی (ECC) یک رمزنگاری به روش کلید عمومی می‌باشد که بر اساس ساختاری جبری از منحنی‌های بیضوی بر روی میدانهای متناهی طراحی شده‌است. ECC در مقایسه با بقیه رمزنگاری‌های مبتنی بر میدانهای گالوا به کلید کوچکتری نیاز دارد. استفاده از منحنی‌های بیضوی در رمزنگاری به‌طور جداگانه توسط نیل کوبلیتز و ویکتور س. میلر در سال ۱۹۸۵ پیشنهاد شد.
منحنی‌های بیضوی برای توافق کلیدی، امضاهای دیجیتال، ژنراتورهای شبه تصادفی و سایر وظایف کاربرد دارند. به‌طور غیر مستقیم، آنها با ترکیب توافق کلید با طرح رمزنگاری متقارن می‌توانند برای رمزگذاری مورد استفاده قرار گیرند. منحنی‌های بیضوی همچنین در چندین الگوریتم فاکتورگیری عدد صحیح نیز استفاده شده‌است که این الگوریتم‌ها دارای کاربردهایی در زمینه رمزنگاری می‌باشند، مانند فاکتور منحنی بیضویLenstra.
مقدمه
رمزنگاری کلید عمومی مبتنی بر اشکالات برخی از مسائل ریاضی است. در اوایل سیستم‌های مبتنی بر کلید عمومی با این فرض که پیدا کردن دو یا بیشتر از دو عامل اول بزرگ برای یک عدد صحیح بزرگ مشکل است امن تلقی می‌شدند. برای پروتکلهای مبتنی بر منحنی بیضوی، فرض بر این است که پیدا کردن لگاریتم گسسته از یک عنصر تصادفی منحنی بیضوی با توجه به یک نقطه پایه عمومی شناخته شده غیر عملی می‌باشد. اندازه منحنی بیضوی تعیین‌کننده سختی مسئله‌است. مزیت اصلی که توسط ECC وعده داده می‌شد یک کلید با اندازه کوچکتر بود، که این موضوع به معنی کاهش ذخیره‌سازی و انتقال مورد نیاز است، به این معنی که، یک سیستم منحنی بیضوی می‌تواند همان سطح از امنیت را که یک سیستم مبتنی بر RSA با ماژولهای بزرگ و طول بلند کلید فراهم می‌کند را ایجاد کند، به عنوان مثال، یک کلید عمومی ۲۵۶ بیتی مبتنی بر ECC می‌بایست امنیت قابل مقایسه‌ای با یک کلید عمومی ۳۰۷۲ بیتی مبتنی بر RSA داشته باشد. برای اهداف امروزی رمزنگاری، منحنی بیضوی یک منحنی مسطح است که متشکل از نقاط رضایت بخش معادله می‌باشد.
همراه با یک نقطه برجسته در بی‌نهایت (نشان داده شده به شکل ∞)(مختصات در اینجا از یک حوزه ثابت متناهی از مشخصه که با ۲ یا ۳ برابر نیست انتخاب می‌شوند، یا اینکه معادله منحنی تا حدودی پیچیده‌تر خواهد بود)
این مجموعه همراه با عملیات گروهی از نظریه گروه بیضوی از گروه Abelian، با نقطه‌ای در بینهایت به عنوان عنصر هویت می‌باشند. ساختار گروه از گروه مقسوم علیه تنوع جبری زیرین ارث بری می‌کند.
همان‌طور که برای دیگر سیستم‌های رمزنگاری کلید عمومی محبوب، بدون اثبات ریاضی برای امنیت ECC از سال ۲۰۰۹ منتشر شد. با این حال، آژانس امنیت ملی ایالات متحده ECC و از جمله طرح‌های مبتنی بر آن را در سوئیت B خود قرار داد، که مجموعه‌ای از الگوریتم‌های توصیه شده بود و با این کار این الگوریتم را تایید کرد و اجازه داد تا از آن برای حفاظت از اطلاعات طبقه‌بندی شده و محرمانه با کلید ۳۸۴ بیتی استفاده شود. در حالی که حق ثبت اختراع RSA در سال ۲۰۰۰ منقضی می‌شد، سیستم‌های ثبت اختراع به شدت در حال ثبت برخی از ویژگی‌های تکنولوژی ECC بودند. هر چند برخی استدلال می‌کردند که امضای دیجیتال منحنی بیضوی استاندارد فدرال (ECDSA NIST FIPS 186-3) و برخی طرح‌های تبادل کلید قابل انجام مبتنی بر ECC (شامل ECDH) را می‌توان بدون نقض این حقوق نیز استفاده نمود.
فرض رمزنگاری
امنیت کاملECC بستگی به توانایی محاسبه ضرب نقطه‌ای و عدم توانایی برای محاسبه حاصلضرب با توجه به نقاط اصلی و نقاط تولید شده دارد.
اندازه کلید
از آنجایی که پر سرعت‌ترین الگوریتم‌های شناخته شده که حل رمزنگاری منحنی بیضوی با آنها ممکن است (مانند baby-step giant-step, الگوریتم رو پولارد و غیره) به( )O
مرحله نیاز دارند، از این رو زمینه زیرین باید تقریبا ۲ برار پارامتر امنیت باشد. برای مثال برای امنیت ۱۲۸ بیتی ما نیاز به منحنی‌ای با Fq داریم به طوری که مقدار q در حدود ۲۵۶^۲. این را می‌توان با رمزنگاری با زمینه محدود (مانند DSA) مقایسه کرد که به که کلید عمومی ۳۰۷۲ بیتی و یک کلید خصوصی ۲۵۶ بیتی نیاز دارد؛ و رمزنگاری فاکتورگیری عدد صحیح (مانند RSA) که به ۳۰۷۲ بیت کلید عمومی و خصوصی نیاز دارد.
قوی‌ترین طرح ECC (عمومی) شکسته شده تا به امروز یک کلید ۱۱۲ بیتی برای زمینه مورد اولو یک کلید ۱۰۹ بیتی برای رشته‌های باینری بوده‌است. زمینه مورد اول در ژوئیه ۲۰۰۹ با استفاده از مجموعه‌ای با بیش از ۲۰۰ کنسول بازی پلی استیشن ۳ شکسته شد و می‌توانست با استفاده از این مجموعه در صورتی که به‌طور مداوم کار کند در ۳٫۵ ماه به پایان برسد.
مورد رشته‌های باینری در اپریل ۲۰۰۴ با استفاده از ۲۶۰۰ کامپوتر در ۱۷ ماه شکسته شد.
پروژه فعلی شکستن ECC2K-۱۳۰ به وسیله ریسرچ این موشن که با استفاده از طیف گسترده‌ای از سخت‌افزارهای متفاوت (CPUs, واحد پردازش گرافیکیs, اف‌پی‌جی‌ای) انجام می‌شود.
امنیت
حملات کانال جانبی
بر خلاف سیستم DLP (که در آن امکان استفاده از روش یکسان برای تربیع و تکثیر وجود دارد) جمع کردن به روش EC به‌طور قابل توجهی در دو برابر کردن و جمع عادی بسته به نوع سیستم مختصاتی که از آن استفاده می‌شود متفاوت است. در نتیجه مقابله با حملات کانال جانبی (مانند زمان یا تجزیه و تحلیل قدرت حملات ساده / دیفرانسیلی) که از متدهایی از جمله پنجره با الگوی ثابت استفاده می‌کند، مهم خواهد بود. (توجه داشته باشید که این زمان محاسبه را افزایش نمی‌دهد)
یکی دیگر از نگرانی برای سیستم ECC خطر حملات گسل است. به ویژه هنگامی که در حال اجرا بر روی کارت‌های هوشمند باشد.
حملات محاسبه کوانتومی
رمزنگاری منحنی بیضوی در معرض خطر الگوریتم تغییر شور (modified Shors algorithm) برای حل مشکل لگاریتم گسسته در منحنی‌های بیضوی است.