اعداد اول یکی از مفاهیمی است که دوران تحصیل با آن آشنا شدهایم. سادهترین تعریف ارائه شده اعداد اول را مجموعه از اعداد میدانند که فقط بر یک و خود عدد بخشپذیر هستند. اما اعداد اول چه کاربردی دارند و چرا اهمیت این اعداد در زندگی مدرن بسیار بالا است؟ با ما همراه باشید تا اعداد اول را از منظری دیگر بررسی کنیم.
تعریف اعداد اول را باید از جمله مفاهیمی خواند که در مقاطع اولیه تحصیل با آن آشنا شدهایم، اما آیا با کاربردهای آن در زندگی روزمره و مخصوصا مدرن نیز آشنا هستیم؟ در مقالهی پیشرو سعی میکنیم به بررسی این اعداد پرداخته و اهمیت آنها در زندگی مدرن را مورد بررسی قرار دهیم. همانطور که گفتیم، عدد اول به مجموعهای از اعداد اطلاق میشود که فقط بر خود و یک بخش پذیر باشند. برای مثال از جملهی اعداد اول میتوان به ۲،۳،۵،۷ اشاره کرد.
نکتهی جالبی که میتوان در مورد اعداد اول به آن اشاره کرد، امکان تقسیم تمام اعداد، به اعداد اول است. یعنی میتوان اعداد اول را به گونهای در هم ضرب کرد، تا حاصلضرب، عددی باشد که در نظر داریم. برای مثال عدد ۲۲۲ را میتوان از ضرب سه عدد ۲ در ۳ در ۳۷ که همگی عدد اول هستند به دست آورد. این موضوع در مورد اعداد بزرگتر نیز صادق است، برای مثال میتوان عدد ۱۲۳٫۲۲۸٫۹۴۰ را با ضرب کردن اعداد ۲ در ۲ در ۲ در ۵ در ۲۳ در ۷۹ در ۳۳۹۱ به دست آورد.
این نکتهی بسیار جالب با عنوان قانون فاکتورگیری اعداد اول شناخته میشود. در واقع این قانون را باید یکی از پایههای اصلی ریاضیات خواند. در واقع این قانون با اصل اول عضویت در مجموعهی اعداد طبیعی همخوانی دارد. به بیان بهتر عدد طبیعی را دیگر نمیتوان با تقسیم به دو عدد دیگر تجزیه کرد. در صورتی که یک عدد را تا جایی که میتوانیم به دو قسمت تقسیم کرده و در نهایت دیگر نتوانیم این روند را ادامه دهیم، عدد اصلی را به مجموعهی اعداد طبیعی اول تقسیم کردهایم.
شاید در نگاه اول این موضوع یک حقهی شیرین ریاضی جلوه کند، اما حقیقتی بسیار جالب در پشت این مفهوم نهفته است. همانطور که بسیاری از ریاضیدانها و متخصصان رشتهی کامپیوتر نیز اشاره کردهاند، هیچ راه بهینهای برای فاکتورگیری از اعداد بزرگ برای به دست آوردن اعداد اول تشکیل دهنده وجود ندارد. برای درک بهتر این موضوع باید به این نکته اشاره کنیم که اگر از بهترین الگوریتم موجود به منظور تقسیم یک عدد ۲۰۰ رقمی یا ۵۰۰ رقمی به فاکتورهای اول آن استفاده کنیم، بهترین سوپرکامپیوتر موجود نیز به زمان بسیار بسیار زیادی برای اتمام کار خود نیاز خواهد داشت. حال فرض کنید اعدادی بزرگتر از این ۵۰۰ رقم را در نظر داشته باشیم؛ برآوردها زمانی معادل عمر کرهی زمین را برای تکمیل فرآیند یافتن فاکتورهای اول این عدد تخمین میزنند. البته این الگوریتم برای اعدادی که حداکثر از ۷ یا ۸ رقم تشکیل شدهاند، به خوبی پاسخگو است.
پس به زبان ساده، محدودیتی برای پیدا کردن فاکتورهای اول یک عدد وجود دارد و این موضوع برای امنیت در رایانههای مدرن بسیار حیاتی و ضروری است. هر عملیاتی که رایانهها بتوانند به راحتی انجام داده و عملیات معکوس آن غیرممکن باشد یا چالش بزرگی را پیش روی رایانهها قرار دهد، موضوعی است که متخصصان امنیت در رایانهها از آن استقبال میکنند. الگوریتمهای رمزنگاری مدرن به بهترین شکل ممکن از این موضوع بهرهبرداری میکنند. امکان ضرب دو عدد اول بزرگ در یکدیگر برای به دست آوردن یک عدد بسیار بزرگ، در حالی که نمیتوان دو عدد اول تشکیل دهنده را به روش معکوس پیدا کرد، مفهومی است که در حوزهی امنیت کاربرد بسیار زیادی دارد.
نبود راهی بهینه برای یافتن فاکتورهای اول یک عدد بزرگ، بنیان رمزنگاری در کامپیوترها است
موضوعی که در سطرهای پیشین به آن اشاره کردیم، همان مفهوم رمزنگاری به روش کلید عمومی و خصوصی است. برای درک بهتر این موضوع بهتر است نگاهی به فناوری رمزگذاری غیرمتقارن کلید عمومی و خصوصی داشته باشیم. فرض کنید که شخص A میخواهد پیامی را به شخص B ارسال کند. شخص A با داشتن کلید خصوصی که همان اعداد اول تشکیل دهندهی عدد بزرگ مورد نظر است، پیام را رمزگذاری میکند. دریافت کننده فقط میتواند با در اختیار داشتن کلید عمومی یا همان عدد بزرگ تولید شده، پیام را رمزگشایی کند. در اختیار نداشتن کلید خصوصی یا همان اعداد اول، امکان دستکاری پیام و ارسال به نفر B را از سایر افراد صلب میکند، چراکه پیام دریافت شده در صورت تغییر در روند کدگذاری با اعداد اول دیگر، دیگر با کلید عمومی قابل رمزگشایی نبوده و دستکاری در فرآیند ارسال مشخص خواهد شد. به همین علت در این روش نمیتوان تنها با در دست داشتن کلید عمومی به محتوای رمزنگاری شده دست پیدا کرد، از اینرو نباید از بابت انتشار کلید عمومی نگرانی داشت. با در دست داشتن کلید عمومی به هیچ عنوان نمیتوان بصورت معکوس اعداد اولی را که حاصلضرب با استفاده از آنها ساخته شده، به دست آورد و پیام را تغییر داد و سپس ارسال کرد. برای باز کردن رمز باید دو عدد اول تشکیل دهندهی عدد بزرگ اصلی (کلید خصوصی) را در دست داشت و تحت هیچ شرایطی قدرت رایانههای کنونی قادر نیست به روش معکوس اعداد تشکیل دهنده را تشخیص دهد.
یکی از الکوریتمهای مطرح مورد استفاده مبتنی بر رمزنگاری نامتقارن، RSA است. این عبارت برگرفته از حرف اول سه دانشمند با نامهای Ron Rivest، Adi Shamir و Leonard Adleman است که برای اولین بار در سال ۱۹۸۷ این روش رمزنگاری را معرفی کردند. شاید مفهوم اعداد اول تعریفی فراموش شده مربوط به دوران تحصیلات ابتدایی باشد، اما باید بدانیم که روزانه در زمان وارد شدن به حساب کاربری خود در سرویسهای اینترنتی نظیر گوگل یا سایر سرویسها، از این قابلیت اعداد اول استفاده میکنیم.
این موضوع بدین معنی نیست که در فاکتورگیری اعداد اول پیشرفتی در سالهای اخیر رخ نداده است. در سال ۲۰۰۹، محققان فعال در حوزهی امنیت، چندین هزار کامپیوتر را از طریق شبکه به یکدیگر متصل کردند. پردازش صورت گرفته توسط این تعداد کامپیوتر برابر با قدرت پردازشی یک رایانه برای ۲٫۰۰۰ ساعت متوالی بود. این رایانهها بصورت موازی برای فاکتورگیری اعداد اول مورد استفاده در استاندارد RSA-768 fi به کار گرفته شدند. در واقع وظیفهی مجموعهی این رایانهها یافتن فاکتورهای اول عددی متشکل از ۲۳۲ رقم بود. در نهایت این رایانهها موفق شدند با استفاده از قدرت پردازشی بالا، بصورت معکوس کد مورد نظر را شکسته و اعداد اول تشکیل دهندهی را پیدا کنند. هرچند این فرآیند در یک گسترهی دانشگاهی محقق شد، اما در زمینهی امنیت، این دستاورد به معنای پایانی بر استاندارد RSA-768 بود. از آن زمان متخصصان استاندارد مورد نظر برای رمزنگاری را به RSA-1024 تغییر دادند که در واقع عدد مورد استفاده در آن به بیش از ۳۰۹ رقم افزایش یافته است.
هرچند در ظاهر به نظر میرسد که استاندارد RSA-1024 همچنان با استفاده از رایانههای کنونی دست یافتنی نیست، اما انتشار شایعاتی در مورد توانایی رایانههای کوانتومی مورد استفاده توسط آژانس امنیت ملی آمریکا یا NSA نگرانی در میان متخصصان حوزهی امنیت را افزایش داده است. براساس شنیدهها، این رایانه نه تنها قادرند استاندارد RSA-1024 را شکسته و پیامهای مخابره شده را بخوانند، بلکه توانایی رمزگشایی استاندارد RSA-2048 را نیز دارند. البته باید به این موضوع اشاره کرد که هیچ شاهدی برای تایید شایعات مورد نظر وجود ندارد.
اعداد اول، مجموعهای بسیار جالب است. این مجموعه از اعداد را باید بنیانی مهم در ساختار تمام اعدادی بدانیم که وجود دارند. در واقع اعداد اول کلیدی برای درک جهان هستی هستند.
بسیاری از ریاضیدانان به اعداد و تئوریهای محدود شده در این حوزه نه به عنوان کلیدی برای کشف و ایجاد فناوریهای جدید، بلکه به عنوان راهی برای رمزگشایی از حقایق جهان هستی نگاه میکنند.
منبع: زومیت