Рет қаралды 702
ဆာတိုရှီ နာကာမိုတာ အဖြူရောင်စာတမ်း Link
drive.google.c...
အားလုံးမင်္ဂလာပါ။ K2K Knowledge Bank က နေပြန်လည်ကြိုဆိုလိုက်ပါတယ်။ ဒီတစ်ပတ်နည်းပညာကဏ္ဍ မှာ တင်ဆက်နေကျအစီအစဥ်အတိုင်း bitcoin ငွေကြေးထဲမှာ တစ်နည်းအားဖြင့် cryptocurrency ငွေကြေးစနစ်ထဲမှာ အသုံးပြုကြတဲ့ နည်းပညာအကြောင်းအရာလေးတွေကို ဆက်လက်တင်ဆက်ပေးမှာဖြစ်ပါတယ်။ အရင်တစ်ခေါက်က CHF ဆိုတဲ့အကြောင်းလေးကိုတင်ဆက်ခဲ့ပြီးပါပြီ။ ဒီတစ်ခေါက်ကတော့ Digital Signature ဆိုတာလေးကို တင်ဆက်ပေးမှာဖြစ်ပါတယ်။ မြန်မာလိုတိုက်ရိုက်ဘာသာပြန်မယ်ဆိုရင်တော့ ဒစ်ဂျစ်တယ် လက်မှတ် တစ်နည်းအားဖြင့် ဒစ်ဂျစ်တယ်နည်းစနစ်ဖြင့် ထိုးသော လက်မှတ် လို့ဘာသာပြန်နိုင်ပါတယ်။
အပြင်လက်တွေ့ဘဝ မှာ လက်မှတ်ထိုးခြင်းဆိုတာဟာ စာရွက်စာတမ်းမှာ ပါဝင်တဲ့ အချက်အလက်များကို သဘောတူလက်ခံတယ်ဆိုတဲ့ အဓိပ္ပာယ်ဖြစ်ပါတယ်။ ဒါကိုလည်းမိတ်ဆွေတို့ သိကြမယ်ထင်ပါတယ်။ ဒါ့အပြင် လူတစ်ဦးချင်းစီရဲ့ လက်မှတ်ဆိုတာဟာ သူ့ရဲ့ သင်္ကေတ ဖြစ်ပါတယ်။
ဒီလိုပါပဲ ကျွန်တော်တို့ အင်တာနက်ပေါ်မှာ လက်မှတ်ရေးထိုးတယ်ဆိုတာ တစ်ဖက်နဲ့ တစ်ဖက် သဘောတူထားတာတွေကို မှန်ကန်မှုရှိမရှိ စစ်ဆေးပြီးလက်မှတ်ရေးထိုးကြခြင်းဖြစ်ပါတယ်။ ဒါ့အပြင် အသုံးပြုသူတစ်ဦးချင်းစီရဲ့လက်မှတ်တွေဟာ တင်စားပြောရရင် ဒစ်ဂျစ်တယ် လက်ဗွေလို့တောင်ပြောလို့ရပါတယ်။
ဥပမာ ပြောရမယ်ဆိုရင် မောင်စိန် နဲ့ မောင်လှိုင် နှစ်ဦးဟာ စာချုပ်ချုပ်တယ်ဆိုကြပါစို့။ မောင်စိန် နဲ့ မောင်လှိုင်တို့ဟာ ဒီစာချုပ်ထဲမှာ ဘာတွေကို သဘောတူကြမယ်ဆိုတာကို အပြင်မှာ ပြောထားကြပါတယ်။ ဒါပေမဲ့ အပြင်မှာ တွေ့ပြီး လက်မှတ်ထိုးဖို့မဖြစ်နိုင်တာကြောင့် အင်တာနက်ပေါ်မှာပဲလက်မှတ်ထိုးကြမှာဖြစ်ပါတယ်။ ဒီတော့ မောင်စိန်က စပြီး စာချုပ်မှာ လက်မှတ်ထိုးပြီး ပို့လိုက်ပါတယ်။ အင်တာနက်ဆိုတာ Public Network ကြီးဖြစ်တာကြောင့် လူလိမ်တွေက အချိန်မရွေး ဝင်ရောက်ပြောင်းလဲနိုင်ပါတယ်။ ဆိုကြပါစို့ လူလိမ်တစ်ဦးက စျေးနှုန်းဝင်ပြင်လိုက်ပြီး ဒီဘက်ကို ရောက်လာပြီဆိုရင် ဒါဟာ လက်မှတ်ထိုးရခြင်းရဲ့ အဓိက ရည်ရွယ်ချက်ကို ပျက်ပြယ်သွားပြီလို့ဆိုနိုင်ပါတယ်။ ဒါကြောင့် Digital Signature ကို စကားဝှက်နည်းလမ်း Cryptography ကို အသုံးပြုပြီး တိုက်ခိုက်ရန် အလွန့်အလွန်ခက်ခဲတဲ့ ပုံစံမျိုးဖြင့်အသုံးပြုထားပါတယ်။
ဒါဆိုဘယ်လို ဆောင်ရွက်ထားသလဲ တစ်ချက်ကြည့်ရအောင်ပါ။ Digital Signature ထိုးဖို့ဆိုရင် ပထမဦးစွာ Key နှစ်မျိုးလိုအပ်ပါတယ်။ မိတ်ဆွေက လက်မှတ်ထိုးမယ့်သူဆိုရင် မိတ်ဆွေအရင်ဆုံး ဒီ Key နှစ်မျိုးရှိရပါမယ်။ Private Key နဲ့ Public Key ပေါ့။ Private Key ဆိုတာ ကိုယ်တစ်ဦးတည်းသာ သိတဲ့ Key ဖြစ်ပြီးတော့ Public Key ဆိုတာကတော့လူတိုင်း သိနိုင်တဲ့ ကိုယ့်ရဲ့ Key မျိုးဖြစ်ပါတယ်။ အရင်က ဗီဒီယိုတွေကို ကြည့်ဖူးတဲ့သူတွေဆိုရင်တော့ စကားဝှက် cryptography အကြောင်းကျနော်ရှင်းပြတာ ကြားဖူးပြီးဖြစ်ပါလိမ့်မယ်။
Cryptography ကို အသုံးပြုတဲ့အခါမှာ တစ်ဖက်လူက စကားဝှက်ကို ဖော်ဖို့အတွက် Key သိဖို့လိုအပ်ပါတယ်။ Digital Signature မှာ အသုံးပြုတဲ့ စကားဝှက်နည်းလမ်းသည် စကားဝှက်ဖွက်သူဘက်က သုံးတဲ့ Key က Private Key ဖြစ်ပြီး စကားဝှက်ဖော်တဲ့သူဘက်က သုံးရတဲ့ Key သည် Public Key ဖြစ်ပါတယ်။
ဟုတ်ပြီအဲ့တော့ ဘာကို စကားဝှက်ဖွက်မှာလဲ? လက်မှတ်နဲ့စကားဝှက် ဘယ်လိုပတ်သက်နေတာလဲ စသဖြင့် မိတ်ဆွေတို့ စဥ်းစားနေကြပြီထင်ပါတယ်။ မလောပါနဲ့ ဖြည်းဖြည်းချင်း ရှင်းမှ နားလည်မှာမို့ တစ်ဆင့်ချင်းနားလည်အောင် ကျနော်ဆက်ပြီးတင်ပြပေးပါ့မယ်။
အပေါ်က ဥပမာ အတိုင်းပြန်ပြောကြည့်ရအောင်။ မောင်စိန်က စာချုပ်ကို လက်မှတ်နှင့်တကွ မောင်လှိုင့်စီပို့ရမှာဖြစ်ပါတယ်။ လက်မှတ်သည် စာချုပ်ပါအချက်များကို သဘောတူပါသည် ဆိုတဲ့ အဓိပ္ပာယ်ကိုလည်းဖော်ဆောင်ရမှာဖြစ်ပြီး တစ်ဖက်က မောင်လှိုင်ကလည်း စာချုပ်သည် ကြားလူတစ်ဦးဦးက ပြောင်းလဲထားခြင်းမရှိကြောင်းကို စစ်ဆေးအတည်ပြုနိုင်ရမှာဖြစ်ပါတယ်။
မောင်စိန်မှာ လက်မှတ်ထိုးဖို့အတွက် Key နှစ်ခုရှိပါတယ်။ Private Key & Public Key ။ ပထမဦးစွာ စာချုပ်ဖိုင်ကို Cryptographic Hash Function လို့ခေါ်တဲ့ Hash Function ထဲကို ဖြတ်သန်းစေပြီး Digest တစ်ခုကို ရယူလိုက်ပါတယ်။ Cryptographic Hash Function အကြောင်းကို အရင်တစ်ခေါက်က တင်ဆက်ထားပြီးပြီဖြစ်ပါတယ်။ ရလာတဲ့ Digest သည် hash function ဂုဏ်သတ္တိတွေနဲ့ ပြည့်စုံနေမယ်ဆိုရင် ဒီစာချုပ်အတွင်း တစ်လုံးတစ်ပါဒ ပြောင်းလဲလိုက်ရုံဖြင့် မတူညီတဲ့ Digest တစ်ခု အဖြစ်ပြောင်းလဲသွားမှာဖြစ်ပါတယ်။ ရလာတဲ့ Digest ကို မှ Private Key ကို အသုံးပြုပြီး စကားဝှက်အဖြစ်ပြောင်းလိုက်မယ်ဆိုရင် အဲ့ဒီ စကားဝှက်ကို လက်မှတ် signature လို့ စတင်ခေါ်လို့ရပြီဖြစ်ပါတယ်။ ဒါကြောင့်လဲ Private Key ကို Signing Key လို့ ခေါ်ကြတာလဲဖြစ်ပါတယ်။
အဲ့တော့ စာချုပ်ရယ် လက်မှတ်ရယ်ကို မောင်စိန်က မောင်လှိုင့်စီ ပို့လိုက်ပါပြီ။ မောင်လှိုင်က နေမှ မောင်စိန်ရဲ့ ဒုတိယ Key ဖြစ်တဲ့ Public Key ကို အသုံးပြုပြီး စကားဝှက်ကို ဖော်လိုက်ပါတယ်။အဲ့ဒီစကားဝှက်ရဲ့ အဖြေဟာ တစ်နည်းပြောရရင် မောင်စိန် ခုနက လုပ်လိုက်တဲ့ Digest ပဲဖြစ်ပါတယ်။ မောင်လှိုင်က အတူတွဲပါလာတဲ့ စာချုပ်ကို Hash Function ထဲ ဖြတ်သန်းစေပြီး Digest နှစ်ခုကို နှိုင်းယှဥ်ပါတယ်။ တူရင်တော့ မှန်ကန်မှုရှိတယ်လို့ ယူဆရမှာဖြစ်ပြီး မတူရင်တော့ ဒီ စာချုပ်သည် မောင်စိန် လက်မှတ်ထိုးထားတဲ့ စာချုပ်နဲ့ ကွာဟမှုရှိနေတယ်ဆိုပြီး သိရှိမှာဖြစ်ပါတယ်။ ဒါကြောင့် Public Key ကို Verifying Key လို့လည်း ခေါ်ကြတာဖြစ်ပါတယ်။
ထိုနည်းတူ မောင်လှိုင်ကလည်း လက်မှတ်ထိုးပြီး ပြန်ပို့မယ်ဆိုရင် သူ့မှာရှိတဲ့ Private Key ကို အသုံးပြုပြီး ထိုးရမှာဖြစ်ပါတယ်။ မောင်စိန်ကမှ မောင်လှိုင်ရဲ့ public key ကို အသုံးပြုပြီး verify စစ်ဆေးအတည်ပြုမှာဖြစ်ပါတယ်။
K.Y.Lynn