مقدمه و تاریخچه 
 
 هر کدام از ما وقتی به دنیای ماموران مخفی و جاسوسان فکر می کنیم چیز های زیادی به ذهنمان می رسد: سفرهای خارجی، ماموریت های خطرناک، اسلحه های عجیب و ماشین های سریع.
کمتر کسی در کنار این چیزها به ریاضیات فکر می کند.
اما باید بدانیم ریاضیات در فهمیدن پیامهای سری و شکستن رمزها نقش اساسی بازی می کند و در طول تاریخ ریاضیدان ها نتیجه نبردهای فراوانی را با شکستن رمزها تغییر داده اند.
 رمزنگاری دانش تغییر دادن متن پیام به کمک یک کلید رمزنگاری و یک الگوریتم رمزنگاری است.
به صورتی که تنها شخصی که از کلید و الگوریتم مطلع است قادر به استخراج متن اصلی از متن رمزشده باشد و شخصی که از یکی یا هردوی آنها اطلاعی ندارد، نتواند به محتوای پیام دسترسی پیدا کند.
رمزنگاری از طریق پنهان نگاه داشتن الگوریتم رمزنگاری منسوخ است.
در روشهای جدید رمزنگاری فرض بر آن است که همگان الگوریتم رمزنگاری را میدانند.
آنچه پنهان است فقط کلید است.
رمزنگاری علمی است که به وسیله آن میتوان اطلاعات را بصورتی امن منتقل کرد حتی اگر مسیر انتقال اطلاعات (کانالهای ارتباطی) ناامن باشد.
دریافتکننده اطلاعات آنها را از حالت رمز خارج میکند (decrypting) که به این عمل رمزگشائی گفته میشود .
 توجه داشته باشید که رمزنگاری به تغییر ساده محتویات یک متن گفته میشود با کدگذاری (coding) تفاوت دارد.
در این صورت تنها هر کاراکتر با یک نماد تغییر میکند.
کلمه Cryptography بر گرفته لغات یونانی‘kryptos’ به مفهوم " محرمانه " و grapheinبه معنای نوشتن " است.
قبل از هر چیز لازم است بین رمز و کد تفاوت قائل شویم.
رمز به مفهوم تبدیل کاراکتر به کاراکتر یا بیت به بیت ؛ بدون تغییر محتویات زبان شناختی آن است.
در مقابل " کد " تبدیلی است که کلمهای را با یک کلمه یا نماد دیگر جایگزین میکند .
 دانش رمزنگاری بر پایه مقدمات بسیاری از قبیل تئوری اطلاعات، نظریه اعداد و آمار بنا شدهاست.امروزه در کشور ما نیز دوره دکترای رمزنگاری که از شاخه های رشته ریاضی کاربردی میباشد برگزار میشود.
 شروع و توسعه رمزنگاری 
 اولین بار سزار امپراتور رم باستان برای آنکه بتواند بدون اطلاع دشمن با ا ارتشش در سراسر دنیا در ارتباط باشد نوعی رمز را بکار گرفت.
این رمز به این شکل بود که برای فرستادن یک پیام جای هر حرف را با سومین حرف بعد از آن در الفبا عوض می کردند، مثلا به جای 'A' حرف 'D' و به جای 'X' حرف 'A' را می گذاشتند.
 
 بنابراین برای از کد خارج کردن پیام ها کافی بود دریافت کننده جای هر حرف را با سومین حرف بعد از آن در الفبا عوض کند.
مثلا سعی کنید این پیغام سزاری را از رمز خارج کنید: 
 hqhpb dssurdfklqj 
 wkluwb ghdg 
 uhwuhdw wr iruhvw 
 
 در این کدگذاری ریاضی زمانی مطرح می شود که به هر حرف یک عدد نسبت دهیم.
در این صورت فرایند کد کردن مثل اضافه کردن عدد 3 به عدد اولیه خواهد بود 
 
 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 
 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 
 
 مثلا برای به رمز درآوردن 'A' : داریم 0+3=3 
 برای اینکه در مورد حرف های نزدیک به پایان الفبا دچار مشکل نشویم بهتر است به جای جمع معمولی از جمع به پیمانه 26 استفاده کنیم، یعنی به جای هر عدد از باقیمانده تقسیم آن عدد بر 26 استفاده کنیم.
 مثلا: 
 برای 'X' داریم: (به پیمانه 26) 23+3=26=0 
 
 برای 'Y' داریم: (به پیمانه 26) 24+3=27=1 
 
 برای 'T' داریم: (به پیمانه 26) 19+3=21=21 
 
 
 برای از رمز درآوردن هم می توانیم از تفریق به پیمانه 26 استفاده کنیم.
واضح است که می توانیم به جای انتقال 3 تایی از هر انتقالی بین 1 و 25 استفاده کنیم، اما همانطور که احتمالا حدس زده اید شکستن این رمز خیلی ساده است یعنی یک جاسوس می تواند با امتحان کردن همه 25 انتقال ممکن به سرعت رمز را بشکند.
 حالا به سراغ یک روش پیچیده تر می رویم.
فرض کنید به ازای هر حرف الفبا یک علامت جایگزین کنیم، مثلا '*' به جای 'A' و '+' به جای 'B'.
مثل رمزی که ماری ملکه اسکاتلند برای مکاتباتش بر علیه الیزابت اول ملکه انگلیس بکار می گرفت .
 تا مدت ها مردم فکر می کردند شکستن این رمز ناممکن است تا اینکه آمار ریاضی بوجود آمد .
 
 نموداری که می بینید فراوانی حروف الفبا را در زبان انگلیسی نشان میدهد.
 
 
 
 
 این اطلاعات از شمارش حروف مختلف در حجم زیادی از نوشته ها مثل کتاب ها و روزنامه ها بدست آمده است.
این نمودار مثلا نشان می دهد به طور میانگین 13.5 درصد از حروف بکار رفته در متن های انگلیسی E هستند، که فراوان ترین حرف الفبا است.
بنابراین وقتی رمزی از نوع بالا داریم احتمالا علامتی که بیش از همه تکرار می شود علامت متناظر E است و فراوانترین علامت بعد از آن متناظر 'T' است.
سرنخ های دیگری هم وجود دارد مثلا تنها دو کلمه یک حرفی در انگلیسی وجود دارد: 'I' و 'A' و همچنین 'AND' و 'THE' کلمات خیلی معمولی هستند با کمک این سرنخ ها و کمی آزمایش و خطا میتوان اینگونه رمزها را شکست.همین روش باعث شد که ماری سرش را از دست بدهد.
 
 براساس متون موجود در مورد رمزنگاری تاریخچه این علم را میتوان در نگاهی گذرا بصورت زیر بیان کرد : 
 1 - شروع رمزنگاری به سال 1900 قبل از میلاد برمیگردد برطبق اساد موجود یک مصری درآن زمان که کلمات بصورت تصویر بیان میشد ازتصاویری استفاده کرده که متداول نبوده بنابراین شروع رمزنگاری از مصریان میباشد .
چهارصد سال بعد در بینالنهرین وحه هئی نوشته شد که شامل فرمولهائی رمزی از تهیه شیشه برای کوزه گری میباشد .
 2 - 500 سال قبل از میلاد یک نویسنده یهودی کتابی نوشت که کلمات آن برعکس نوشته شده بود این روش بنام رمز آتابش نامیده شد .
 3 - در سال 487 قبل از میلاد اسکیتال در یونان بوجود آمد و مورد استفاده قرار گرفت 
 4 - 400 سال بعد ژولیوس سزار در مکاتبات دولتی از رمز سزار استفاده کرد .
او در این رمز جای حروف الفبا را عوض کرد .
رمز سزار هرچند در نسبت به رمز آتابش ساده تر است اما مدارک محرمانه دولتی در نگاه اول قابل فهمیدن نبود .
 5 - بین سالهای 0 تا 400 بعد از میلاد رمز به عنوان یک هنر توسط هندیان در کاماسوترا بیان شده است .
در کاما سوترا به شیوه های ساده رمزنگاری اشاره شده است .
6 - 200 سال بعد از میلاد لیدن دستورالعمل های مهم خود را بصورت رمز می نوشت .
7 - در شروع امپراتوری اسلامی ابوعبدل الرحمان الخلیل ابن احمد امرابن تمام الفرهادی الزیدی الیهمدی کتابی در علم رمزنگاری نوشت که الهام گرفته از رمزهای یونانی میباشد که برای امپراتوری روم شرقی نوشته شده بود .
البته این کتاب مفقود شده است شیوه هائی که در این کتاب اشاره شده است در جنگ جهانی دوم در مقابل رمز انگما نیز استفاده شده است .
8 - در سال 855 ابوبکر احمد ابن علی ابن وحششیه نباتی رمزهای مختلفی را ابداع کرده تست 9 - در حکومت غزنویان که کشورگشائی های زیادی داشتند در بحث نظامی و سفارت خانه ای خود به وفور از رمزها استفاده می کردند .مقامات عالیرتبه حکومتی با توجه به موقعیتشان از سیستم رمز مخصوص آن مقام استفاده می کردند .
10 - در سالهای بعد از 1266 ( بعد از میلاد ) در ونیز رمزهائی ساده در عالم سیاست استفاده می شد .
در این رمز جای حروف با نقطه و ضریبدر عوض می شد .
11 - در حدود 1500 ( بعد از میلاد ) شخصی بنام روگر بکن رمزهای متعددی را نوشت او در اول کارهایش مینویسد .
: کسی که متن محرمانه ای را طوری بنویسد که بقیه بفهمند احمق می باشد .
12 - در 1300 میلادی ابن خلدون جهت استفاده اداره مالیات و ارتش برای ساده نویسی و پنهان کاری از نوعی رمز استفاده می کرد .
13 - در سالهای بعد از 1379 میلادی گابریل دی لاوندی بتقاضلی کلمنت هفتم رمزی نوشت که ترکیبی از جابجائی حروف و کدها بود این رمز سالها مورد استفاده دولتمردان قرارگرفت و تا 400 سال این رمز کاربرد داشت .
14 - جوفری چاوسر در سالهای 1392 رمزی نوشت که ترکیبی از علائم و جابجائی حروف و کد بود 15 - در 1412 میلادی عابد الله الکلکشندی دائره المعارفی عربی نوشت که 14 جلد می باشد و یکی از جلد های آن مربوط به رمزنگاری و منصوب به طالب موصولی می باشد .
او برای اولین بار ؛ چند بار از جانشانی استفاده می کند او در کتاب خود راجع به رمزگشائی نیز بحث می کند که رمز شکنی با استفاده از روش فرکانسی منصوب به او می باشد .
16 - در سال 1466 اون باتیستا البرتی رمزی را اختراع کرد که امروزه به رمز ( Capital Midnight Decode Badge ) مشهور است برای نزدیک به 400 سال یعنی تا 1800 این رمز شکسته نشد 17 - در 1518 اولین کتاب چاپی در باره رمز توسط جوهان تریتیمیوس نوشته شده او در انی کتاب از رمزهای مختلف سخن میگوید او از رمز polyalphabetic با شیوه جانشانی مستطیلی را توضیح می دهد .
18 - جیوان باتیستاپورتا در سال 1553 رمزی را ابداع کرد که در آن ازیک عبارت بعنوان کلید استفاده می شود بسیاری از نویسندگان این رمزبلاسو را با رمز ویگنر اشتباه میگیرند .
19 - جیوانی باتیستا پورتا در سال 1563 از رمزی استفاده کرد که در آن رمز ضمن استفاده از اسپل غلط و در ضمن جانشانی و انتقال از حروف عجیب و غریب در متن های خود استفاده کرد .
20 - در سال 1585 بلالیسس دی ویگنر کتابی در مورد رمز نوشت با متنهای رمزی همراه با سیستم رمز کلید خودکار ( یعنی کلید رمز در متن قبلی قرار دارد .
این سیستم بعد ها در رمزهای DES,CFB,CBC مورد استفاده قرار گرفت .
21 - در سال 1623 فرانسیس بیکن رمزی بنام رمز کننده 5 - بیتی باینری را ابداع کرد .
22 - توماس جفرسون در سال 1790 با کمک دکتر جفرسون ( ریاضی دان ) چرخ رمز را اختراع کردند .
این رمز تکامل پیدا کرد و بعدها در جنگ جهانی دوم مورد استفاده قرار گرفت .
23 - در سال 1817 سرهنگ وادستورد دیسکهای چرخدنده های رمز کننده ای با تعداد حروف متفاوت را اختراع کرد 24 - چارلز ویتستون رمز ( بازی مطبوع ) را در 1854 اختراع کرد .
او همچنین رمز وادستورد را تکمیل کرد .
25 - اختراع تکامل یافته چرخ رمز نگاری توسط چارلز بابگی در 1854 26 - در 1857 ادمیرال سرفرانسیس بیوفورت رمز جدیدی اختراع کرد که نوعی رمز ویگنر می باشد .
البته کار او س از مرگش توسط برادرش چاپ شد .
27 - پلینی چاسی اولین شرح را برای رمزهای توموگرافیک در 1859 نوشت .
28 - بین سالهای 1861 الی 1980 بحث رمز عمومی شد و در سال 1769 سندی در امریکا بدست امده که بنحوی با رمز سروکار دارد .
29 - در 1861 فردریک کاساسکی کتابی نوشت برچگونگی شکستن رمز چند الفبائی که چند صد سال امن مانده بود 30 - در جنگهای داخلی امریکا جنوبی ها از جانشین کردن حروف در متن رمزی استفاده کردند درصورتی که شمالی ها از رمز ویگنر که بتازگی از طرف کاساسکی ابداع شده بود استفاده می کردند .
31 - در 1891 سرهنگ اتینی بازرایز بعد از انکه مدل جدید چرخ رمزکننده را ابداع کرد و ارتش فرانسه از آن استقبال نکرد آن انتشار داد 32 - کاپیتان پارکت هیت در سال 1913 با تغییر در چرخ رمز کننده منجر به رمز کننده M-138-A از WW-II شد .
33 - در سال سال 1916 سرتیپ ژوزف مورجنی رمز هیت را بصورت چرخ رمزی درآورد و جایگزینی حروف را قویتر انجام داد و در نهایت منجر به دستکاه رمز کننده M-94 شد .
34 - در 917 ویلیام فردریک فایردمن که پدر علم رمز امریکا نامیده می شود در دولت محلی ریوربنک امریکا بعنوان متخصص رمز استخدام شد و اولین مرکز آموزشی رمز را برای ارتش آمریکا ایجاد کرد و بعدها به خاطر فعالیتش به واشنگتن رفت .
35 - در همین سال گیلبرت ورنام رمزی را ابداع نمود که