روش هاي رمز نگاري به طور كلي به 2 رده تقسيم مي***شوند:
1- رمزهاي جانشيني (substitution)
2- رمزهاي جايگشتي (iranspostion)
رمزهاي جانشيني (substitution cipher)
در اين رمز نگاري هر حرف يا گروهي از حروف با يك حرف يا گروهي ديگر از حروف جابه جا مي***شوند تا شكل پيام به هم بريزد يكي از قديمي***ترين رمزهاي شناخته شده روش رمز نگاري سزار است. در اين روش حرف a به D و b و به E و به همين ترتيب تا z كه با c جايگزين مي***شود.
DWWDFN Attack
حالت عمومي***و ساده از رمز نگاري سزار آن است كه هر حرف الفبا از متن اصلي ابا حرفي كه در جدول الفباء k حرف بهتر قرار گرفته جابه جا شود روش (shiftby k كيد رمز عدد k خواهد بود.
روش رمز نگاري سزار امروزه نمي***تواند كسي را گول بزندو
در سيستم رمز نگاري كه در آن يك سمبول با سمبول ديگر جايگزين شود (سيستم يك حرفي) گفته مي***شود كه در آن كليد رمز يك رشته 26 كاراكتري است و نگاشت جدول الفبا را مشخص مي***نمايد.
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 متن آشكار
Q W E R T Y U I O P A S D F G H J K L Z X C V B N M
متن رمز شده
Attack QZZQEA
در روش فوق عليرغم آنكه آزمايش تمام حالات يك كليد ممكن نيست ولي حتي براي يك قطعه متن رمز شده كوچك، رمز متن به راحتي شكسته خواهد شد. درحمله اصولي به اين سيستم رمز از ويژگي هاي آماري زبان هاي طبيعي بهره گرفته شده است به عنوان مثال در زبان انگليسي حروفي كه بيشترين تكرار را دارند به ترتيب عبارتند از: e, t, o, a, n, i
تركيبات دو حرفي كه اصطلاحا Diagram ناميده مي***شوند به ترتيب بيشترين تكرار عبارتند از:
تركيبات سه حرفي Trigram به ترتيب بيشترين تكرار عبارتند از the , ing, and, ion
تحليل گر رمز (رمز شكن) براي شكستن سيستم رمز نگاري (جانشين تك حرفي) با شمارش حروف متن رمز شده و محاسبه تكرار نسبي هر حرف شروع مي***كند پس حرفي را كه داراي بيشترين تكرار است وحرف پر تكرار بعد را با t جايگزين مي***كند و مي***تواند با در نظر داشتن سه حرفي the به دنبال سه حرفي هاي txe در متن رمز شده مي***گردد به احتمال قوي x معادل با h است.
رمز نگاري جانشيني (Transposition)
رمز نگاري جانشيني ترتيب سمبول هاي يك متن را حفظ مي***كند ولي شكل سمبول ها را تغيير مي***دهد. بر عكس رمز نگاي جايگشتي، يك بلوك از كاراكترها به طول ثابت را از ورودي دريافت كرده و يك بلوك رمز شده با طول ثابت در خروجي توليد مي***كند، در اينگونه از روش ها فهرست كامل جايگشت هاي ورودي را كه متن رمز شده خروجي را توليد مي***كند) مشخص است.
براي شكستن رمز فوق، تحليل گر رمز، ابتدا بايد مطمئن شود كه آيا واقعا با يك متن رمز شده به روش جايگشت روبه رو است يا خيرۀ
گام بعد آن است كه تعداد ستون ها حدس زده شده است. گام آخر به دست آوردن تعداد ستون ها است عمل رمز شكني در نقطه هاي با موفقيت روبرو خواهد شد كه يك كلمه يا يك عبارت ظاهر گردد.
كليد رمز يك كلمه ياعبارتي است كه هيچ حرف تكراري ندارد.
كاربرد كليد رمز آن است كه ستون ها شماره گذاري مي***شود.
روش كار: شماره هر ستون بر اساس ترتيب الفبايي هر حرف كليد نسبت به جدول االفبا تعيين مي***شود. مثلا ستون چهارم شماره 1 است (حرف A) و به همين ترتيب متن اصلي به صورت افقي (سطري) نوشته مي***شود و در صورت لزوم تعدادي حرف مانند a و b و به آخرين سطر اضافه مي***شود تا ماتريس مربوطه پر شود متن رمز شده بر اساس شماره ستون ها به صورت عمودي خوانده شده و به هم متصل مي***شود. ترتيب خواندن ستون ها، از ستون با كمترين شماره به بزرگترين شماره است.
M E G A B U C K کليد رمز
7 4 5 1 2 8 3 6
p l e a s e t r
a n s f e r o n
e m i l l i o n
d o l l a r s a
متن آشکار
Pleasetransferonemilliondollars
متن رمزشده
afllselatoosinmoesilrnnapaederir
رمز one – time – pad (به هم ريزي محتوي پيام)
ايجاد يك سيستم رمز نگاري كه غير قابل شكستن باشد كار ساده ايست.
ابتدا يك رشته بيت تصادفي را به عنوان كليد انتخاب كنيد و سپس متن اصلي را به يك رشته بيت متوالي تبديل نماييد، (مثلا با الحاق بيت هاي كد اسكي هر كاراكتر نهايتا اين دو رشته بيت را باهم XOR كنيد رشته بيت حاصل، متن رمز شده است كه هرگز قابل شكستن نيست. دليل منطقي شكست ناپذيري اين روش رمز گذاري، (تئوري اطلاعات) استنتاج مي***شود: در صورت انتخاب كليد كاملا تصادفي هيچ اطلاعاتي از پيام اصلي در پيام رمز شده باقي نخواهد ماند زيرا تمام حروف و سمبول ها با حتمال وقوع مشابه د رمتن رمز شده تكرار خواهند شد.
Pad: كليد رمز تصادفي است.
به ازاي pad هاي مختلفي كه با پيام 1، XOP مي***شوند رشته هاي مختلفي ممكن است ظاهر شود كه بامتن اصلي اشتباه گرفته شود.
معايب
1- كليد را نمي***توان به خاطر سپرد و گيرنده و فروشنده پيام بايد آنرا حمل كنند كه مطلوب و قابل اعتماد نخواهد بود
2- حساسيت به كاراكتري هاي جا افتاده يا اضافي اگر يك كاراكتر به متن اضافه شود يا حذف شود از آن محل به بعد متن قابل مرز گشايي خواهد بود.
3- حجم كل داده هايي كه مي***تواند ارسال شود به طول كليد مورد استفاده بستگي دارد.
رمز نگاري كوآنتومي:
راه حل جالي براي مشكل انتقال كليد به روش one- time- pad به روي شكبه وجود دارد، (مكانيك كوآنتومي). رمز نگاري كوآنتومي***بر اين اصل استوار است كه نور در قالب بسته هاي كوچكي به نام فوتون باويژگي هاي خاص و عجيب جابه جا ي شود. وقتي نور از يك فيلتر پلاريزه كننده عبور كند، پلاريه (قطبي) مي***شود. اگر يك پرتو نوري از يك فيلتر پلاريزه عبور كند تمام فوتون هاي پرتو خارج شده از فيلتر در راستاي محور فيلتر محور عمودي پلاريزه مي***شوند حال اگر اين پرتو مجددا از يك فيلتر پلاريزه دوم عبور كند (شدت نور) پرتو خروجي متناسب با مربع كسينوسي زاويه بين محورهاي عمودي دو فيلتر خواهد بود. اگر محورهاي دو فيلتر بر هم عمود باشند هيچ يك از فوتون ها از بين اين دو فيلتر عبور نخواهد نمود براي توليد يك pad به عنوان كليد رمز، نياز به تنظيم دو زوج فيلتر پلاريزه كننده است.
زوج فيلتر اول شامل يك فيلتر عمودي و يك فيلتر افقي است. اين انتخاب اصطلاحا (دستگاه مستقيم) Rectilinear Bosis ناميده مي***شود زوج فيلتر دوم مشابه با قبلي است با اين تفاوت كه 45 درجه چرخيده است يعني يك از فيلتر ها در امتداد قطر گوشه يا بين سمت چپ به گوشه بالاست راست قرار گرفته و ديگري عمود بر آن يعني در امتداد گوشه يا بين سمت راست به گوشه بالا سمت چپ قرار دارد.
زوج فيلتر دوم اصطلاحا (دستگاه مورب) Diagonal Basis ناميده مي***شود. بدين ترتيب فرد ارسال كننده اطلاعات داراي دو دستگاه مبنا است كه مي***تواند به انتخاب خود پرتو نو را از هر كدام از اين دستگاه هاي مبنا (كه هر يك شامل دو فيلتر است) عبور دهد. درست مقابل، فرد گيرنده اطلاعات نيز از جنين ابزاري استفاده مي***كند. اين واقعيت كه فرد گيرنده و ارسال كننده اطلاعات هر كدام داراي دو دستگاه مبنا هستند در رمز نگاري كوانتومي***بسيار اساسي و حياتي است. حال ارسال كننده اطلاعات براي ارسال يك بيت توسط يكي از دستگاه هاي مبنا، فوتوني را براي گيرنده منتشر مي***كند و گيرنده به طور تصادفي يكي از دستگاه هاي مبناي خود را درجهت گرفتن اين فوتون تنظيم مي***كند، اگر دستگاه set شده بادستگاه مبنا فرستنده منطبق بود الگوريتم on time pad عدد 1 به معني درست بودن و اگر در دستگاه با يكديگر متفاوت باشند عدد به منزله اشتباه set كردن دستگاه توسط گيرنده، ظاهر هواهد شد بدين ترتيب باچيدن صفر و يك ها كنار يكديگر، كليد را به دست مي***آورد.
دو اصل اساسي در رمز نگاري:
افزونگي (Redundancy)
اولين اصل آن است كه تمام پيام هاي رمز شده بايد شامل مقداري افزوندگي باشند. به عبارت ديگر لزومي***ندارد كه اطلاعات واقعي به همانگونه هستند رمز و ارسال شوند حقيقت قضيه آن است كه تمام پيام ها بايد مقدار قابل توجهي افزونگي داشته باشند به كومه اي كه يك اخلال گر فعال نتواند پيام هاي تصادفي بي معنا توليد و ارسال كند باعث شود اين پيام ها به عنوان پيام هاي معتبر تفسير شوند.
افزوندگي بدان جهت نياز است كه از ارسال پيام هاي بي ارزش اخلالگران و فريب خوردن گيرنده در رمز گشايي پيامها و پردازش آنها جلوگيري شود (براي تشخيص پيام هاي معتبر از پيام هاي ساختگي)
عيب: شكستن سيستم رمز توسط اخلالگران غير فعال را ساده تر مي***كند.
افزونگي اطلاعات در قالب موارد زير مي***باشد.
- افزودن تعدادي عدد در ابتدا يا انتهاي پيام
- اضافه كردن يك چند جلمه اي CRC. (گيرنده اصلي به راحتي مي***تواند صحت پيام ها را بررسي كند)
- استفاده از توابع در هم سازي رمز (hash)
- استفاده از توابع checksum
2-تازگي پيام ها
دومين اصل اساسي در رمز نگاري آن است كه بايد محاسبات صورت بگيرد تا مطمئن شويم هر پيام دريافتي تازه و جديد است يا به عبارتي اخيرا فرستاده شدهاست به اين بررسي براي جلوگيري از ارسال مجدد پيام هاي قديمي***توسط يك اخلالگر الزامي***است. چنين محاسبه اي را مي***توان با قرار دان مهر زمان در پيام ها پيش بيني كرد به نحوي كه پيام مثلا براي ده ثانيه معتبر باشد. گيرنده پيام مي***تواند آنرا براي حدود ده ثانيه نگه دارد تا بتواند پيام هاي جديد را با آن مقايسه كرده و نسخه هاي تكراري را حذف كرد.