آموزش رمزنگاری
رمزنگاری یکی از علاقه های انسان از زمان های گذشته بوده است، در زمان جنگ از رمزنگاری استفاده های زیادی شده است و امروزه نیز در بسیاری موارد برای امنیت بیشتر از رمزنگاری استفاده میکنند.
در ادامه مطلب درباره رمزنگاری توضیح بیشتری خواهیم داد.
هر شخصي مطالبي را براي خود به عنوان راز پنهان دارد. تازماني که اين راز بر زبان جاري نميشود همچنان پنهان ميماند، گاهي اوقات ما راز خود را با شخص معتمد درميان ميگذاريم ممکن است شخص مذکور راز داري نموده و يا مطلب را افشا نمايد.
مثال ذکر شده نمونه ساده از پنهان کاري و افشاي اطلاعات ميباشد.
يک نمونه واقعي تر اسرار نظامي است که ممکن است در زمان جنگ توسط پيک جابجا شود. شرايطي که امکان دارد براي پيک پيش آيد مانند گيرافتادن در دام دشمن، تخليه اطلاعات توسط عوامل نفوذي و يا بودن فردي نفوذي درقالب پيک براي ارسال پيام هاي نظامي، بنابراين انتظار لو رفتن پيام در هر حالت ممکن بود.
در مثال دوم علاوه بر سري بودن پيام، خود پيک عامل ديگري براي به مخاطره افتادن پيام بود. بنابراين بايد روشي پيش بيني ميشد که پيام مورد نظر از شکل واقعي خود خارج شده و علاوه براينکه فرد فرستنده و گيرنده بتوانند از متن پيام مطلع شوند، از دسترسي شخص ثالث به متن پيام جلوگيري شود. به بيان ساده تر به اين عمل رمز نگاري گفته ميشود.
اصطلاحات:
Plaintext : متن مبدا که ميبايست عمليات رمز نگاري برروي آن انجام گيرد.
Encryption Algorithm : الگوريتم رمزنگاري که دستورالعمل يا معادله رياضي است که براي عمليات رمز نگاري از آن استفاده ميشود.
Secret Key : کليد رمز به عدد و يا رشته اي از حروف الفبا گفته ميشود که به عنوان ورودي به الگوريتم داده ميشود و عمليات رمز به کمک آن انجام خواهد گرفت طول کليد بر زمان
عمليات رمز نگاري و ضريب اطمينان عمليات تاثير گذار ميباشد.
Ciphertext : به متني گفته ميشود که به عنوان خروجي عمليات رمز نگاري توليد ميشود . اين متن بر خلاف متن اوليه از چهار چوب اصلي خود خارج شده و قابل درک و فهم نخوهد بود.
Decryption Algorithm : الگوريتم بازيابي، به الگوريتمي گفته ميشود که براي بازيابي متن رمز شده و تبديل آن به متن اصلي مورد استفاده قرار ميگيرد. اين الگوريتم نيز مانند الگوريتم قبلي نوعي دستور العمل رياضي است که بر اساس ورود کليد معتبر متن اصلي را از متن رمز شده استخراج ميکند.
Cryptanalysis : به فردي گفته ميشود که ممکن است از روش استفاده شده در فرايند رمز نگاري مطلع نباشد و بر اساس روشهاي آماري و تحليلي سعي در گشودن متن رمز شده و استخراج پيام آن داشته باشد.
در ادامه یک روش رمزنگاری را برایتان توضیح میدهیم.
روش رمزنگاری سزار
الگوريتم رمز سزار براي اولين بار توسط ژوليوس سزار سردار رومي مورد استفاده قرار گرفت. در اين الگوريتم جايگزيني حروف براساس ترتيب در حروف الفبا انجام ميشود بنابراين برای رمز نمودن متن جايگزيني زير را خواهيم داشت:
رشته مبنا
ABCDEFGHIJKLMNOPQRSTUVWXYZ
رشته تبديل يافته
DEFGHIJKLMNOPQRSTUVWXYZABC
در اين تبديل هركدام از كاراكتر ها تبديل به كاراكتري تبديل ميشوند كه در ترتيب حروف الفبا سه مرحله بعد از آن قرار دارند، بعنوان مثال A به D كه اين تبديلات براي تمامي كلمات انجام ميشود.
در حالتي كه متن رمز شده در اختيار قرار دارد اين تبديل برعكس انجام ميشود و ما تبديل زير را خواهيم داشت:
رشته تبديل يافته
DEFGHIJKLMNOPQRSTUVWXYZABC
رشته مبنا
ABCDEFGHIJKLMNOPQRSTUVWXYZ
در صورتي كه به كلمات در هر زبان رايج توجه كنيم ميتوانيم اين نكته را دريابيم كه شكل ظاهري حروف، تعداد كاراكتر ها، تعداد حروف در هر كلمه ميتواند داراي معيار خاصي باشد. اين معيارها براساس نوع زبان ميتواند متفاوت باشد.
در رمز نگاري به روش سزار خصوصيات اصلي كلمات تغيير نميكند بلكه با توجه به اينكه نسبت يك به يك بين حروف برقرار است خصوصيات كلمه تغير نخواهد كرد و با اندكي هوشياري ميتوان متن رمز شده را حدس زد.