this site the web

408..cryptography

 

နားလည္နုိင္ေအာင္ လွိ်ဳ ့၀ွက္ေသာ စာလံုးမ်ား သေကၤတမ်ားနဲ့ ေရးထားတဲ့ နည္းပညာကို (cryptography)ဟူေခၚပါတယ္ ။ အင္ဂ်င္နီယာပိုင္းအရ အဲဒီနည္းပညာကို ေအာက္ပါအတိုင္း အတိအက် အဓိပၸၸါယ္ ဖြင့္ဆိုပါတယ္ [1] - -

The study of ways to disguise messages so as to avert unauthorized interception is called cryptography.

အဲဒီနည္းပညာကို ဆက္သြယ္ေရး (communications) ပိုင္းအတြက္ အဓိကထား သံုးၾကပါတယ္ ။ အထူးသျဖင့္ စစ္အတြင္းမွာ ဆက္သြယ္ၾကတဲ့အခါမိ်ဳးမွာ ေပးပို့လိုက္တဲ့ မက္ေစ့ခ်္ကို ရန္သူဘက္ကေန ျဖတ္ယူနိုင္လိုက္ရင္ ၊ ဆိုလိုခ်င္တာေတြ မသိေအာင္ လုပ္တဲ့ေနရာေတြမွာ အလြန္အေရးပါပါတယ္ ။ ခုေနာက္ပိုင္းေခတ္မွာေတာ့ ေန့စဥ္ commercial world က ေနရာတိုင္းလိုလိုမွာ (ဥပမာ - ကြ်န္မတို့ ေန့စဥ္ေရးေနတဲ့ အီးေမးလ္ေတြ ဘာေတြမွာေတာင္) လံုျခံဳေရးအတြက္ လိုအပ္သလို သံုးစြဲလာၾကပါတယ္ ။ ဒီပို့စ္မွာေတာ့ ဆက္သြယ္ေရးပိုင္းကေနပဲ အဓိကထား ၾကည့္ပါမယ္ ။ ဒီနည္းပညာ ေပၚေပါက္လာရတဲ့ အဓိက အေၾကာင္းရင္း အခ်က္နွစ္ခ်က္ကေတာ့ - -

(၁) the need for privacy or for preventing eavesdropping (ကိုယ့္ကိစၥ သူမ်ားေဘးကေန ခိုးမသိနိုင္ေအာင္)

(၂) the need for authentication or for preventing spoofing (မက္ေစ့ခ်္ကို ၾကားကေန ျဖတ္ ၊ မူရင္းမက္ေစ့ခ်္ကို လြဲမွားသြားေအာင္ အေၾကာင္းအရာ ေလွ်ာက္ထည့္တာမိ်ဳး)

ဒီနည္းပညာကိုသံုးတဲ့ေနရာကိုၾကည့္မယ္ဆိုရင္ ဆက္သြယ္ေရးပိုင္းေတြမွာ အဓိကရွိတဲ့ အပိုင္းသံုးပိုင္းျဖစ္တဲ့အျပင္ ၊ ပို့လိုက္တဲ့ လွ်ိဳ ့၀ွက္စာေတြကို ေဖာ္ထုတ္နိုင္မယ့္ ကီး (key) ဆိုတာလည္း ပါ၀င္ပါတယ္ - -

(1) Sender (in this case is known as Encipher)
(2) Receiver (in this case is known as Decipher)
(3) Channel (ပို့သူ နဲ့ လက္ခံရရွိသူၾကား ရွိတဲ့လိုင္း - အဓိကဥပမာကေတာ့ ေလလႈိင္း)
(4) Key

အဲဒီအပိုင္းေလးပိုင္း ဘယ္လိုလုပ္ၾကလဲဆိုတာ ဥပမာေပးရရင္ေတာ့ ... လူတေယာက္ (sender/ encipher) ဟာ တစံုတရာကို ေပးပို့ခ်င္တဲ့အခါ အဲဒီအရာကို ေသတၱာတခုထဲထည့္ ေသာ့ (key) ပိတ္လိုက္တယ္ဆိုပါဆို့ ။ အဲဒီေသတၱာထဲ သူဘာထည့္လိုက္တယ္ဆိုတာ အဲဒီေသတၱာကို သြားပို့ေပးမယ့္သူ (channel) က လံုး၀မသိဘူး ။ သြားပို့ေပးသူျမင္တာက ေသတၱာတလံုးပဲ ။ အဲဒီေသတၱာထဲ ဘာရွိလည္းဆိုတာ သိနိုင္ဖို့ ေသာ့ဖြင့္ၾကည့္မွရမယ္ ။ အဲဒီေသာ့ကလည္း လက္ခံရရွိမယ့္သူ (receiver/ decipher) ဆီမွာပဲ ရွိတယ္ ။

ေနာက္ Digital Fortress By Dan Brown (Page 16) ထဲမွာေပးထားတဲ့ ဥပမာ တခုကေတာ့ - -

HL FKZC VD LDS
LD SNN

အဲဒီနွစ္ေၾကာင္းကို ဒီအတိုင္းဖတ္မယ္ဆို အဓိပၸါယ္ဘာမွမရွိသလိုပါပဲ ။ ဒါေပမယ့္ အဲဒီစာေၾကာင္းမွာရွိတဲ့ စကားလံုးတိုင္းကို အဲဒီစကားလံုးမတိုင္ခင္က စကားလံုးနဲ့ အစားထိုးၾကည့္လိုက္မယ္ဆိုရင္ ၊ ေအာက္ပါအတုိင္းေပၚလာပါမယ္ ။

IM GLAD WE MET
ME TOO

ဒီေတာ့ အဲလို စကားလံုးတိုင္းကို တျခားစကားလံုးနဲ့အစားထိုးရမယ္ဆိုတာက ကီး ပါပဲ ။ အဲဒီ ကီး မရွိခဲ့ရင္လည္း အထက္ပါစာေၾကာင္းကို စကားလံုးေတြ ဟိုေရႊ ့ဒီေရႊ ့လုပ္ၾကည့္ ၊ နည္းအမိ်ဳးမိ်ဳး ၾကိဳးစားၾကည့္ျပီး ေနာက္ဆံုး မွန္တဲ့ ကီး ကို ရွာေတြ ့သြားနိုင္ပါတယ္ ။ ဒီဥပမာမွာဆိုရင္ အဂၤလိပ္စကားလံုး ၂၆ လံုးရွိတဲ့အတြက္ ၂၆ ခါ ၾကိဳးစားရမယ္လို့ ေယဘူယ် သတ္မွတ္ပါတယ္ ။ အဲလို trial-and-error guessing method (တခုနဲ့ လုပ္ၾကည့္လိုက္ ၊ မရရင္ ေနာက္တခုနဲ့ လုပ္လိုက္) ကို သံုးတဲ့အခါ brute force attack (အတင္းဓမၼ ရွာေဖြျခင္း / တိုက္ခိုက္ျခင္း) လို့ ေခၚပါတယ္ ။

အဲဒီနည္းဟာ သခ်ၤာပိုင္းကေနၾကည့္မယ္ဆိုရင္ ရာခိုင္ႏႈန္းျပည့္ ေအာင္ျမင္မယ့္ နည္းလမ္းပါပဲ ။ ဘာလို့လဲဆိုေတာ့ ကီး တခုဟာ ဂဏန္း ၅လံုးပါခဲ့မယ္ဆိုရင္ ၀၀၀၀၀ - ၉၉၉၉၉ ၾကားက combination အမိ်ဳးမိ်ဳးကို ၾကိဳးစားမယ္ဆိုရင္ ၊ အဲဒီ combination ေတြထဲက တခုမဟုတ္ တခုကေတာ့ ကီး ျဖစ္ေနမွာပါပဲ ။ အဲဒီေတာ့ ကီး က ဂဏန္းမ်ားလာေလေလ ၊ စစ္ၾကည့္ရမယ့္ combination ေတြ မ်ားလာေလေလ ၊ ဒါေၾကာင့္ အဲဒီ ကီး ကို ခန့္မွန္းရဖို့ ခက္ေလေလျဖစ္ပါတယ္ ။

ဒါေၾကာင့္ ခုေခတ္မွာ password ေတြ ေရြးတဲ့အခါ ရွည္ရွည္ေရာ ဂဏန္းေတြ ၊ စာလံုးေတြ ၊ သေကၤတ သံုးျပီး ထည့္ခိုင္းတာပါ ။ ဂဏန္းဆို ၁ - ၉ (၁၀လံုး) ၊ စာလံုးဆို a - z (၂၆ လံုး) နဲ့ ေနာက္ သေကၤတေတြေရာအပါအ၀င္ ထည့္လိုက္မယ္ဆိုရင္ ရွည္ေလ ၊ စစ္ၾကည့္ရမွာေတြ မ်ားလာေလပါပဲ ။ အဲလို မ်ားလာတဲ့ combination ေတြကို စစ္ၾကည့္ဖို့ အရမ္းျမန္တဲ့ processor ေတြ လိုအပ္ပါတယ္ ။ အဲဒီအခ်က္က brute force attack ကေန အဓိက ကာကြယ္နည္းတမိ်ဳးပါပဲ ။

သမိုင္းမွာ စကား၀ွက္ေတြကို စသံုးသူတေယာက္ကေတာ့ Julius Caesar ပါပဲ ။ ကိုယ္ေျပာခ်င္တာကို စကားလံုးတလံုးကို ေရႊ ့ျပီး ၊ စကား၀ွက္လုပ္တဲ့ (monoalphabetic cipher) နည္းကို Caesar က Gallic wars မွာ စသံုးခဲ့တဲ့အတြက္ Caesar Cipher လို့အမည္တြင္ခဲ့ပါတယ္ ။ အဲဒီ လွ်ိဳ ့၀ွက္နည္းရဲ့ ဥပမာကေတာ့ - -
Message: N O W I S T H E T I M E
Code: Q R Z L V W K H W L P H
Key: shift the alphabets by one position and replace it in the message to get the code


ေနာက္ စကား၀ွက္နည္း တမိ်ဳးကေတာ့ ေအာက္မွာ ေဖာ္ျပထားတဲ့ polybius square လို့အမည္ရတဲ့ 5x5 square array ကို သံုးတာပါပဲ ။
polybius%20square.JPG

အဲဒီနည္းကို သံုးျပီးလုပ္မယ္ဆိုရင္ ေအာက္ပါအတိုင္း မက္ေစ့ခ်္ ကို လွ်ိဳ ့၀ွက္လို့ ရပါတယ္ - -
Message: N O W I S T H E T I M E
Code: 33 43 25 42 34 44 32 51 44 42 23 51
Key: Find the corresponding column&row number for each alphabet and replace.

ေနာက္ စကား၀ွက္နည္းတမိ်ဳးကေတာ့ Trithemius Progressive Key ဆိုတဲ့နည္းပါပဲ ။ အဲဒီနည္းမွာ a - z အထိရွိတဲ့ စကားလံုးေတြကို တလံုးခ်င္းဆီ ညာဘက္ကို ေရြ ့ျပီး ၊ z ျပီးတဲ့အခါ က်န္တဲ့ေနရာကို a ကေန ျပန္စပါတယ္ ။
IMG_0002%7E1.jpg

အဲဒီနည္းကိုသံုးတဲ့ဥပမာကေတာ့ - -

Key: T Y P E T Y P E T Y P E
Message: N O W I S T H E T I M E
Code: G M L M L R W I M G B I

ဒီနည္းမွာေတာ့ Key က အေပၚကပံုထဲက ဇယားထဲက ဘယ္ row ကို ၾကည့္ရမလဲဆိုတာ ရည္ညႊန္းပါတယ္ ။ ခု ဥပမာမွာ ပထမဆံုးအလံုးက T ျဖစ္ေနလို့ row 19 ကို ရည္ညႊန္းပါတယ္ ။ ေနာက္ မက္ေစ့ခ်္က N ျဖစ္တဲ့အတြက္ plaintext ဆိုတဲ့ေနရာမွာ N စကားလံုးကိုရွိျပီး ၊ အဲဒီ ေကာ္လံ နဲ့ ခုန ရိုး ၁၉ တို့ ဆံုတဲ့ေနရာက စကားလံုးကို ကုဒ္ အျဖစ္ယူလိုက္ပါတယ္ ။

အေပၚမွာ ေဖာ္ျပထားတဲ့ cipher (စကား၀ွက္နည္း) သံုးခုကေတာ့ cryptology မွာ မူလအဆင့္ျဖစ္တာေတြပါပဲ ။ ေနာက္ဆံုးအေနနဲ့ စဥ္းစားမိတဲ့ စကား၀ွက္ကို ၾကိဳးစားၾကည့္ၾကပါဦးလား ။ အဂၤလိပ္လို ဘာကိုဆိုလိုတာပါလဲ ။ သိပ္လြယ္လြန္းသြားရင္ေတာ့ ေနာက္ထပ္ စဥ္းစားထားတာ ရွိပါေသးတယ္ း) ။

Code: K H U R L
Key: Using monoalphabetic cipher. Number of alphabetic shifts = a prime number




References:
[1] Digital Communications: Fundamentals And Applications (Bernard Sklar) - All cipher examples were taken from there.
[2] http://en.wikipedia.org/wiki/Dan_Brown
[3] http://www.biblio.com/authors/558/Dan_Brown_Biography.html
Ref: /engineersformyanmar




Labels: ,

Print ပဲထုပ်ပါ..pdf ထုပ်လျှင်.ဖောင့်လွဲနေလိမ့်မယ်



မာတိကာ ၁ မာတိကာ ၂ မာတိကာ ၃ မာတိကာ ၄ မာတိကာ ၅

0 - ဦး မှတ်ချက်ပေးထားပါသည်

Post a Comment

KKZ Myanmar Unicode Keyboard

Mone Tine On Android

►Version 1.1

►Version 1.0

MoneTineKeyboard

Like လုပ်ထားနိုင်ပါတယ်

Mone Tine Knowledge Bank

Labels

အောက်ကကြေငြာလေးကလစ်ပေးပါဦး

Usage Policies

သင်၏ Facebook  တွင် ဖတ်နိုင်ရန် LIKE လုပ်ခဲ့ပါ..
( အမှန်ခြစ် ပေါ်နေပြီး LIKE ပြီးသားပါက CLOSE ကိုသာနှိပ် ပိတ်ပါ )

ကျေးဇူးတင်ပါတယ် မုန်တိုင်း

ကျန်းမာကြပါစေ