اطلاعات رمزگذاری شده و رمزگشایی شده و تلاش برای مخفی نگه داشتن و غیرقابل شناسایی بودن آن از گذشته های دور اهمیت و توجه زیادی داشته است. شاید زندگی و مرگ مردم، ملت ها، فرهنگ ها و کشورها به آن بستگی داشته باشد. اما در این مقاله با وجود همه این بحث ها، جنبه فنی این امر مورد توجه قرار گرفته است.
دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و … با بهترین های ایران
برای مشاهده تخفیف های ویژه امروز کلیک کنید
انواع رمزگذاری
به طور کلی سه نوع رمزگذاری وجود دارد: فیزیکی-ریاضی-کوانتومی
رمزگذاری فیزیکی: در رمزگذاری فیزیکی، پردازش ریاضی روی متن انجام نمی شود. (رمزگذاری) رایج ترین روش جابجایی یا جایگزینی حروف (کاراکترها) یا کلمات یا پنهان کردن اطلاعات در داخل اطلاعات دیگر مانند تصویر (Stenography) است.
رمزگذاری ریاضی: از فرآیندها و فرآیندهای ریاضی روی متن یا کاراکترها استفاده می کند. معروف ترین این روش هش است. در این روش یک محاسبه بر روی پیام انجام می شود و آن را به یک مقدار عددی به نام Hash Value تبدیل می کند. به عنوان مثال هر کاراکتر را در 3 ضرب کنید و حاصل را بر 10 جمع و تقسیم کنید این الگوریتم یک طرفه است و از مقدار Hash نمی توان به متن رسید. یکی از رایج ترین کاربردهای تابع هش در پایگاه داده است. هنگامی که می خواهید وارد یک وب سایت شوید، رمز عبور شما دریافت می شود و در صورت مساوی بودن مقادیر به یک مقدار هش و با پایگاه داده مورد نظر مقایسه می شود. این بدان معنی است که رمز عبور شما صحیح است. یک برنامه دیگر اطمینان از صحت داده های ارسال یا دریافت شده در مسیر یک شبکه است به طوری که یک مقدار هش از فایل در مبدا تهیه شده و پس از رسیدن به مقصد، دوباره Hash تهیه کنید و مقادیر را مقایسه کنید، اگر مقادیر یکسان باشند، فایل شما حتی اگر حاوی چندین ترابایت داده باشد، قطعا سالم و خوب خواهد بود.
رمزنگاری کوانتومی: روش جدید رمزنگاری است که تا سال 2002 در آزمایشگاه ها و برخی مراکز امنیتی دولتی استفاده می شد.در این روش پیام با استفاده از یک سری فوتون ارسال می شود. اگر گیرنده این فوتون ها را طبق الگوریتم خود درک کند، می تواند پیام را رمزگشایی کند. در غیر این صورت، فوتون ها تغییر کرده اند و فرستنده دوباره با مجموعه جدیدی از فوتون ها شروع به ارسال پیام می کند. رمزنگاری کوانتومی بسیار گران است و کاربردهای محدودی دارد.
حملات کریپتو
برخی از شناخته شده ترین روش ها برای شکستن کدها عبارتند از:
خطاهای الگوریتم
مهندسی اجتماعی
حملات بی رحمانه
تحلیل فرکانس
خطای انسانی
الگوریتم های رمزنگاری
3 روش اصلی رمزگذاری عبارتند از Hash – Asymmetric – Symmetric
1. الگوریتم های متقارن: یک کلید امنیتی تولید می کند. دارای یک کلید خصوصی است که توسط افراد غیرمجاز قابل استفاده نیست. کلید بین فرستنده و گیرنده یکسان است.
انواع الگوریتم های متقارن
DES از سال 1970 ایجاد شده است. استاندارد اصلی مورد استفاده در مراکز دولتی و صنعتی. یک کلید 128 بیتی تولید می کند.
AES: جایگزین DES می شود، کلیدهای 128، 192 و 256 بیتی تولید می کند، توسط 2 نفر به نام های وینسنت ریمن و جوآن دیمون طراحی شده است.
3DES یک نسخه ارتقا یافته از DES است، از DES ایمن تر است و شکستن قفل آن بسیار سخت است.
بازیگران: توسط Carlisle Adams و Stafford Tavares طراحی شده است. شرکت های مایکروسافت و آی بی ام از این الگوریتم استفاده می کنند. از کلیدهای 40 و 128 بیتی استفاده می کند.
RC: توسط آزمایشگاه های RSA استفاده می شود. طراح آن ران ریوست است. انواع نسخه ها: RC5، RC6 یک کلید 2048 بیتی تولید می کند.
Blowfish: ساخته شده توسط Counterpane Systems، نویسنده اصلی آن بروس اشنایر است. نسخه بعدی او Twoofish است. از کلیدهای 448 بیتی استفاده می کند.
IDEA: از یک کلید 128 بیتی استفاده می کند. این الگوریتم از نظر سرعت و اولویت شبیه به الگوریتم DES است، اما امنیت بیشتری از آن دارد.
2. الگوریتم نامتقارن: از 2 کلید برای رمزگذاری و رمزگشایی داده ها استفاده می کند. این کلیدها کلید عمومی و کلید خصوصی نامیده می شوند. کلید عمومی برای رمزگذاری پیام توسط فرستنده و کلید خصوصی برای رمزگشایی توسط گیرنده استفاده می شود.
انواع الگوریتم های نامتقارن
RSA: طراحان آن Ron Rivest، Adi Shamir، Leonard Adleman هستند. هم برای امضای دیجیتال و هم برای SSL استفاده می شود.
الگوریتم Diffie Hellman: این الگوریتم توسط 2 نفر به نامهای Dr W. Diffie و Dr M.E. Hellman ساخته شده است.
ECC: شبیه الگوریتم RSA است. در شبکه های بی سیم استفاده می شود.
ال جمال: نام دیگر او DSA است. برای انتقال امضای دیجیتال و تبادل کلید استفاده می شود. در سال 1985 ایجاد شد.
الگوریتم ها: هش دو نوع اصلی دارد: SHA و MD. الگوریتم SHA یک جهته است و یک کد 160 بیتی تولید می کند. الگوریتم MD یک الگوریتم یک جهته است. چندین نسخه وجود دارد که مهمترین آنها عبارتند از: MD2، MD4، MD5، برای اطمینان از صحت اطلاعات از کد 128 بیتی Hash استفاده شده است.
همانطور که در مقاله تفاوت رمزگذاری و هش چیست؟ گفتیم که الگوریتم SHA-1 دارای نقاط ضعفی است که باعث می شود خروجی تابع هش همیشه برای مقادیر مختلف منحصر به فرد نباشد و برای اولین بار گوگل توانست با ایجاد یک نوع PDF Manipulated با پیشوند خاص، خطا در هش SHA ایجاد کند. 1. محققانی که روی این پروژه کار می کردند، توانستند دو فایل مختلف را با این الگوریتم هش کنند و خروجی SHA-1 برای هر دو فایل یکسان بود!
در واقع گوگل با استفاده از زیرساخت ابری خود توانست حجم عظیمی از این تعاملات را محاسبه کند و پس از این رویداد گوگل پیش بینی می کند که استفاده از الگوریتم آسیب پذیر SHA-1 کاهش خواهد یافت، اما قبل از پرداختن به جزئیات نحوه انجام آن ، بیایید کمی بیشتر در مورد الگوریتم SHA-1 بیاموزیم.
الگوریتم SHA-1 چیست و چه وظیفه ای دارد؟ 23123 الگوریتم SHA-1 توسط NSA، مخفف آژانس امنیت ملی ایالات متحده آمریکا، در گذشته های دور ایجاد شده و بخشی جدایی ناپذیر از اینترنت است. معاملات در گذشته الگوریتم SHA-1 یک الگوریتم امن برای عملیات هش در نظر گرفته می شد. در واقع Hash یک رشته منحصر به فرد است که بر اساس داده های ورودی یک رشته خروجی را به صورت هش ایجاد می کند که باید منحصر به فرد باشد.
به عنوان مثال، وقتی برای حساب های کاربری خود رمز عبور تعیین می کنید، ظاهراً آن رمز عبور هش شده و در سرور ذخیره می شود (البته برخی از سایت ها این را اصلاً باور نمی کنند!) حالا وقتی می خواهید وارد حساب کاربری خود شوید و شما رمز عبور را وارد کنید، رمز وارد شده توسط سیستم هش شده و با هش ذخیره شده در سرور مقایسه می شود. به عبارت سادهتر، SHA-1 به ایجاد یک امضای دیجیتال برای یک فایل یا هر مقدار ورودی دیگر کمک میکند تا کسی که میخواهد از آن فایل استفاده کند، مطمئن شود که فایل واقعی است و دستکاری نشده است.
اگر SHA-1 بسیار مفید است، چرا گوگل باید سعی کند آن را بشکند؟ چندین سال است که از نظر تئوری ثابت شده است، با این حال، این الگوریتم هنوز برای بسیاری از کاربردها استفاده می شود.
با دستیابی به این موفقیت، گوگل اشاره کرد که الگوریتم SHA-1 به پایان راه خود رسیده است. این شرکت چند سال پیش از شرکتهای فناوری خواست تا استفاده از الگوریتم SHA-1 را متوقف کنند (به طور مشابه، اعضای تیم توسعه کروم در سال 2014 اعلام کردند که از الگوریتم SHA-1 استفاده نمیکنند). دیگر از الگوریتم SHA-1 استفاده خواهند کرد. )
تداخل رمزنگاری 23123 این تداخل زمانی رخ می دهد که الگوریتم هش به درستی کار نمی کند و دو فایل مختلف دارای هش یکسان هستند. چنین وضعیتی بسیار خطرناک است و به هکر اجازه می دهد تا سیستم را فریب دهد تا یک فایل مخرب را بپذیرد.
به طور کلی، برای به اصطلاح برخورد، گوگل یک پیشوند PDF ایجاد کرده است که می تواند دو سند ایجاد کند که محتوای متفاوتی دارند اما مقدار هش یکسان است، حتی اگر SHA-1 درست باشد. این اتفاق نیفتاد
برای یافتن کلاژن، گوگل از زیرساخت ابری خود استفاده کرد، بنابراین این اقدام مهندسان گوگل یکی از بزرگترین محاسباتی است که تاکنون انجام شده است. اگر میخواهید بدانید که این محاسبات چقدر بزرگ بودهاند، اجازه دهید به چند عدد نگاه کنیم:
– 9 کوانتیلیون محاسبات (9,223,372,036,854,775,808) 23123 – به عبارت دیگر، 6500 سال CPU برای تکمیل فاز اول این حمله و 110 سال پردازش GPU طول می کشد تا مرحله دوم حمله انجام شود.
آشنایی با Shattered23123 برای اینکه بتوانید عناصر آسیب پذیر را ببینید، گوگل سایتی به نام Shattered برای این منظور ایجاد کرده است که می توانید با مراجعه به این سایت اطلاعات بیشتری کسب کنید.
همانطور که قبلاً گفتیم، باور عمومی بر این است که متخصصان امنیت به زودی به الگوریتمهای امنتری مانند SHA-256 یا SHA-3 روی خواهند آورد. با این نظرات، چه الگوریتم های هش دیگری را برای محافظت از حریم خصوصی کاربران خود در نظر می گیرید؟ نظرات، دیدگاه ها و تجربیات خود را با دیگر کاربران اسکان آکادمی به اشتراک بگذارید.
بسیاری از فناوریهایی که امروزه به راحتی نادیده میگیریم، مانند ترانزیستورهای تلفنهای همراه، چراغ قوههای LED و دستگاههای MRI، همگی وجود خود را مدیون مکانیک کوانتومی هستند. اما یکی دیگر از کاربردهای مکانیک کوانتومی که سایر فناوریهای کنونی قادر به عملیاتی کردن آن نیستند، محاسبات کوانتومی است که روشی کاملاً متفاوت برای ذخیره و پردازش دادهها ارائه میدهد.
امروزه رایانه ها اطلاعات را به صورت بیت های یک یا صفر (روشن/خاموش) ذخیره می کنند و محاسبات را با استفاده از اجزای کوچک پردازش داده های الکترونیکی به نام «ترانزیستور» انجام می دهند. از سوی دیگر، کامپیوترهای کوانتومی مبتنی بر کیوبیت (بیت کوانتومی) به لطف پدیده برهم نهی کوانتومی (برهم نهی) می توانند به طور همزمان ترکیبی از یک و صفر را ذخیره کنند و این ترکیب تا زمانی که کیوبیت محاسبه نشود ناشناخته می ماند.
پدیده برهم نهی کوانتومی، که در آن یک سیستم کوانتومی می تواند در چندین حالت یا مکان ممکن در یک زمان وجود داشته باشد، شبیه به پرتاب سکه است. تا زمانی که سکه در هوا می چرخد، تنها چیزی که مسلم است این است که احتمال پرتاب سکه نصف و نیم است. اما به محض اینکه سکه فرود آمد و به آن نگاه کردید، با اطمینان می توانید متوجه شوید که کدام روی سکه قابل مشاهده است. به عبارت دیگر می توان گفت تا زمانی که سکه می چرخد، هم شیر است و هم خط.
این مورد برای محاسبات ریاضی با استفاده از محاسبات کوانتومی نیز صادق است. در یک کامپیوتر کوانتومی، ذرات (الکترون ها یا فوتون ها) با استفاده از لیزرهای با دقت بسیار بالا یا پرتوهای مایکروویو روی هم قرار می گیرند و به طور مداوم در نوسان هستند. وضعیت این ذرات تا زمانی که مقادیر آنها اندازه گیری نشود مشخص نیست. اما اگر تمام حالاتی که این ذرات می توانند داشته باشند شناخته شده باشند، می توان گفت که در همه این حالات ممکن به طور همزمان وجود دارند.
از آنجایی که هر کیوبیت هر دو حالت صفر و یک بیت را ذخیره می کند، با تعداد N کیوبیت، دو برابر حالت ممکن داده های ذخیره شده در بیت را می توان همزمان ذخیره کرد. مقدار بسیار قابل توجهی است. 10 به توان 78 تا 10 به توان 82 اتم قابل مشاهده در جهان هستی وجود دارد و 265 کیوبیت می توانند به طور همزمان به اندازه تمام اتم های جهان داده ذخیره کنند.
کیوبیت ها علاوه بر پدیده برهم نهی، ویژگی مهم دیگری به نام درهم تنیدگی دارند. در این حالت، تغییر رفتار یکی از دو کیوبیت درهم تنیده، بلافاصله رفتار کیوبیت دوم را به صورت کاملاً قابل پیش بینی تغییر می دهد. یک اتفاق بسیار شگفت انگیز در پدیده درهم تنیدگی رخ می دهد و آن تأثیر دو کیوبیت است که در فواصل بسیار طولانی با یکدیگر درهم می مانند.
به عبارت دیگر، حتی اگر ذرات در هم پیچیده چندین کیلومتر از هم فاصله داشته باشند، تغییر حالت یکی همیشه بر دیگری تأثیر می گذارد. در یک کامپیوتر معمولی، دو برابر شدن تعداد بیت ها، قدرت پردازش آن را دو برابر می کند. اما به لطف پدیده درهم تنیدگی، افزایش تعداد کیوبیت ها در یک دستگاه کوانتومی منجر به افزایش تصاعدی در سرعت پردازش اطلاعات می شود.
پدیده درهم تنیدگی شباهت زیادی به جادو دارد و فیزیکدانان مکانیسم آن را کاملاً درک نمی کنند (حتی انیشتین آن را «رفتار عجیب و مرموز در فاصله» نامیده است!). اما در زمینه محاسبات کوانتومی، این پدیده امکان انتقال اطلاعات از مکانی به مکان دیگر را حتی در صورت عدم قطعیت فراهم می کند. مانند استفاده از یک سکه در حال چرخش برای حل محاسبات پیچیده است. اتصال چند کیوبیت به یکدیگر میتواند مشکلاتی را حل کند که حتی سریعترین رایانههای غیرکوانتومی میلیونها سال طول میکشد تا حل شوند.
یک تصور غلط در مورد کامپیوترهای کوانتومی
در مورد عملکرد یک کامپیوتر کوانتومی، تصور مشترکی وجود دارد که چندین کامپیوتر معمولی به طور همزمان روی یک مشکل با هم کار می کنند. این تصور تا حدودی هم درست است و هم نادرست.
وقتی می گوییم یک رایانه کوانتومی مجموعه ای از رایانه های معمولی است که مشغول حل یک مسئله به طور موازی هستند، در واقع به این معنی است که رایانه کوانتومی در برهم نهی همه حالت هایی است که رایانه معمولی می تواند بگیرد. در واقع، اگر N حالت پایه داشته باشیم، برای هر حالت یک N-امین امکان وجود دارد و به جای اینکه کامپیوتر کوانتومی در همه این حالت ها به عنوان یک حالت باشد، به نظر می رسد به N حالت ممکن شکسته شده است.
به عبارت دیگر، اگر شما یک مسئله را در یک کامپیوتر کوانتومی وارد کنید و پاسخ آن را در خروجی قرار دهید، کامپیوتر تمام حالات و پاسخ های ممکن را به شما نشان نمی دهد، بلکه تنها یکی از این پاسخ های ممکن را با احتمال N-امین به طور کاملا تصادفی انتخاب می کند. . و به شما می گوید که چیست.
بنابراین مشاهده همه این حالات و پاسخ ها ممکن نیست و محاسبات کوانتومی تنها یک پاسخ تصادفی را نمایش می دهد. به گفته اسکات آرونسون، دانشمند نظری، اینطور نیست که رایانه های کوانتومی برای حل مسائل بسیار دشوار و پیچیده، همه راه حل های ممکن را همزمان و در لحظه بررسی کنند تا به پاسخ صحیح برسند. برای کامپیوتر کوانتومی به طور کلی هیچ تفاوتی بین پاسخ درست و غلط وجود ندارد و پس از اتمام محاسبات فقط یک پاسخ را نمایش می دهد و آن هم کاملا تصادفی است.
سپس، در بخش نحوه عملکرد الگوریتم Shore، خواهیم دید که چگونه محققان از یک الگوریتم برای اعمال “برهم قرار دادن مخرب” برای خنثی کردن همه حالت های نادرست و تقویت پاسخ صحیح با استفاده از “لایه بندی سازنده” استفاده می کنند تا این انتخاب کوانتومی باشد. محاسبه.
مسائل امنیتی محاسبات کوانتومی
سالها قبل از اینکه سرگی برین و لری پیج با توسعه موتور جستجوی گوگل به شکلگیری اینترنت امروزی کمک کنند، پیتر شور، پروفسور آمریکایی ریاضیات کاربردی در MIT، مقالهای الگوریتمی منتشر کرد که میتواند تمام رمزگذاریهای ارتباطات را در آینده باز کند.
شور یک هکر با اهداف مخرب نبود، بلکه ریاضیدانی بود که مانند دیگر ریاضیدانانی مانند خودش، به دنبال حل مسائل دشوار ریاضی در مرکز آزمون آزمایشگاه بل بود. الگوریتم او که به الگوریتم شور معروف است به نوعی فناوری نیاز داشت که در زمان انتشار مقاله در سال 1994 به سختی تئوری بود و سالها طول کشید تا به مرحله عملیاتی برسد.