بخشی از مقاله

چکیده

امروزه در دنیای دیجیتال حفاظت از اطلاعات نقش اساسی و مهمی در تبادلات پیامها و مبادلات تجاری ایفا مینماید. از رمزنگاری برای تأمین نیازهای امنیتی اطلاعات استفاده میشود. با توجه به اهمیت این موضوع و گذار از مرحله سنتی به مرحله دیجیتال آشنایی با روشهای رمزگذاری ضروری به نظر میرسد. الگوریتمهای رمزنگاری به دو گروه عمده تقسیم میگردند این دو گروه عبارت هستند از الگوریتمهای رمزنگاری متقارن و نامتقارن. از گروه الگوریتمهای رمزنگاری متقارن، الگوریتمهای رمزنگاری AES دارای سرعتبالا و قابلیت اجرا در سختافزار و نرمافزار میباشند .

به دلیل اهمیت الگوریتمهای رمزنگاری AES در این مقاله به بررسی ساختار و نحوه اجرای آنها در زبان برنامهنویسی C# خواهیم پرداخت و همچنین از گروه الگوریتمهای رمزنگاری نامتقارن یکی از الگوریتمهای رمزنگاری که نقش مهمی در توسعه الگوریتمهای رمزنگاری در گروه نامتقارن داشته است، الگوریتم رمزنگاری RSA است که با توجه به اهمیت آن در این مقاله به توضیح الگوریتم رمزنگاری RSA نیز خواهیم پرداخت.
.1 مقدمه

الگوریتم رمزنگاری به هر الگوریتم یا تابع ریاضی گفته میشود که به علت دارا بودن خواص موردنیاز در رمزنگاری، در پروتکلهای رمزنگاری مورداستفاده قرار گیرد .اصطلاح الگوریتم رمزنگاری یک مفهوم جامع است و لازم نیست هر الگوریتم از این دسته، بهطور مستقیم برای رمزگذاری اطلاعات مورداستفاده قرار گیرد، بلکهصرفاً وجود کاربرد مربوط به رمزنگاری مدنظر است. باید توجه داشت الگوریتمهای رمزنگاری ازجمله مهمترین موارد موردتحقیق بوده است و همچنین بر اساس آخرین آمار بهدستآمده از موتورهای جستجوگر مانند Google و نرمافزار آنلاین Google trends، میتوان آمار درخواست جستجو از کشورهای مختلف با کلیدواژه Cryptography را مشاهده کرد.

. شکل - 1 آمار درخواست جستجو از کشورهای مختلف با کلیدواژه Cryptography همچنین میتوان با استفاده از موتورهای جستجوگر مانند گوگل، نرمافزار آنلاین مربوطه و آمار بهدستآمده، اهمیت جستجو کلیدواژه Cryptography را در سالهای اخیر مشاهده کرد. شکل - 2 آمار درخواست جستجو کلیدواژه Cryptography  در سالهای اخیر در موتور جستجوگر گوگل درگذشته سازمانها و شرکتهایی که نیاز به رمزگذاری یا سرویسهای دیگر رمزنگاری داشتند، الگوریتم رمزنگاری منحصربهفردی را طراحی مینمودند. بهمرورزمان مشخص گردید که گاهی ضعفهای امنیتی بزرگی در این الگوریتمها وجود دارد که موجب سهولت شکسته شدن رمز میشود.

به همین دلیل امروزه رمزنگاری مبتنی بر پنهان نگاهداشتن الگوریتم رمزنگاری منسوخشده است و در روشهای جدید رمزنگاری، فرض بر این است که اطلاعات کامل الگوریتم رمزنگاری منتشرشده است و آنچه پنهان است فقط کلید رمز است. بنابراین تمام امنیت حاصلشده از الگوریتمها و پروتکلهای رمزنگاری استاندارد، متکی به امنیت و پنهان ماندن کلید رمز است و جزئیات کامل این الگوریتمها و پروتکلها برای عموم منتشر میگردد . - R. Walton, 2006 - در ادامه با انواع الگوریتمهای رمزنگاری آشنا خواهیم شد.
.2 ساختارهای الگوریتم رمزنگاری

الگوریتمهای رمزنگاری در حالت کلی در دودسته الگوریتمهای کلید متقارن - کلید خصوصی - و الگوریتمهای کلید نامتقارن - کلید عمومی - تقسیمبندی میشوند. در ادامه به بررسی هر یک از این ساختارها خواهیم پرداخت.
.3 الگوریتمهای رمزنگاری کلید متقارن

متداولترین نوع رمزنگاری مبتنی بر کلید، رمزنگاری "کلید خصوصی" است. به این نوع رمزنگاری، متقارن، سنتی و رمز مشترک نیز گفته میشود. در این نوع رمزنگاری، فرستنده و گیرنده از کلید استفادهشده بهمنظور رمزنگاری اطلاعات آگاهی دارند. رمزنگاری کلید خصوصی، گزینهای مناسب بهمنظور مبادله اطلاعات بر روی اینترنت و یا ذخیرهسازی اطلاعات حساس در یک بانک اطلاعاتی و یا یک فایل میباشد. از روش فوق، بهمنظور ایمنسازی ارسال اطلاعات در شبکههای عمومی استفاده میگردد .ایده اولیه و اساسی در چنین سیستمهایی، "اشتراک یک رمز" بوده و دو گروه شرکتکننده در مبادله اطلاعات، بر روی یک "کلید رمز مشترک "، با یکدیگر توافق مینمایند. . - Delfs,2007 -

بدین ترتیب امکان رمزنگاری و رمزگشایی پیامها برای هر یک از آنان با توجه به آگاهی از "کلید رمز "، فراهم میگردد . - Mullen,2007 - الگوریتمهای رمز متقارن شناختهشده عبارت هستند از Twofish، Serpent، AES، Blowfish، CAST5، RC4، DES، وIDEA از الگوریتمهای رمزنگاری متقارن گفتهشده، الگوریتم AES توسط NIST در سال 2001 با استفاده از بلوکهای 128 بیتی تائید شده است . - John Schwartz ,2000 -

.4 بررسی دقیق الگوریتم رمزنگاری AES

استاندارد رمزنگاری پیشرفته یا بهاختصار AES روشی برای رمزنگاری دادههای دیجیتال است که در سال 2001 توسط موسسه ملی فناوری و استانداردهای ایالاتمتحده ایجاد گردید . - Federal Information Processing,2001 - استاندارد رمزنگاری پیشرفته توسط دولت ایالاتمتحده پذیرفتهشده و اکنون در سراسر جهان استفاده میگردد. این الگوریتم رمزنگاری بهجای استاندارد رمزنگاری دادهها - DES - که در سال 1977 منتشرشده است - Westlund,2002 - جایگزین گردیده است. استاندارد رمزنگاری پیشرفته بر اساس یک قاعده طراحی به نام substitution-permutation network است و به هر دو صورت سختافزاری و نرمافزاری بهصورت سریع اجرا میشود . - Bruce Schneier,2000 - در الگوریتم AES اندازه بلاک ها 128 بیتی است و همچنین اندازه کلیدها در انواع 128، 192 و 256 بیتی تقسیمبندی میشوند . - Stallings,2011 -

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید