header

header

Friday, January 2, 2015

පරිගණක හා ජාල ආරක්ෂාව 2

හරි ගිය ලිපියෙන් මුලිකව කතා කරේ නෙට්වර්ක් සර්විසස් පිලිබදව.හරි අද එතන ඉදන් පටන් ගනිමු.
Cryptography
දත්ත හා පරිගණක ආරක්ෂාව පිලිබදව කතා කිරීමේදී  cryptography කියන වචනය ඔබ හැම අහලා ඇති.යම් ලියවිල්ලක් සන්නිවේදනයේදී එහි අන්තර්ගතය වෙනස් කරලා යැවීමත්,අනෙක් අන්තයේදී එය නිවැරදිව original text එක බවට පත් කිරීමේ සමස්ත ක්‍රියාවලිය මෙමගින් අදහස් වෙනවා.මේ දේ කතා කරන්න කලින් අපි භාවිතා කරන terminology(පාරිභාෂික වචන) එක පැහැදිලි කරගෙන ඉන්න ඕන.

  • Encryption-කියවිය නොහැකි තත්වයකට පත් කරපු තොරතුරු
  • Decryption-ඒ විදියට හරවපු තොරතුරු අනෙක් අන්තයේදී ඔරිගිනල් ටෙක්ස්ට් එකකට හැරවීම
  • Cipher text-Encrypt කරපු ටෙක්ස්ට්
  • plain text-කියවිය හැකි ඔරිජිනල් text එක

Cipher Alogarithms
මෙම alogarithm  ප්‍රදාන වර්ග දෙකකට අයිති වෙනවා.එනම් Encryption Alogarithms හා decryption alogarithms.මෙවැනි alogarithm ඇත්තටම යම් (encryption හෝ decryption) key එකක් භාවිතා කරනු ලබන ගණිත ශ්‍රිත වෙනවා.මෙම key එක එන්ක්රිප්ෂන් වලදී එකක් හා ඩික්රිප්ෂන් වලදී එකක් හැටියට වෙනම දෙකක් භාවිතා වෙනවානම් එකට කියන්නේ,Assymetric Key Encryption කියලා,මේ දෙතනදීම එකම key එකක් භාවිතා වෙනවනම් එකට කියන්නේ,Symmetic key Encription කියල. මේ ගැන ඉදිරියේදී වෙනම කතා කරනවා.
cipher alogarithm කීපයක් උදාහරණ විදියට කතා කරමු.සංකේත විදියට පණිවිඩ යවන ක්‍රමවේද පිලිබදව ඈත අතීතයෙනුත් වාර්තා වෙනවා.උදාහරණයක් තමයි caesar cipher එක.
සීසර් ස්යිපර් එකේදී encryption ,decryption වෙන්නේ කොහොමද කියල උදාහරණයකින් පැහැදිලි කර ගනිමු.

Plain Text : 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
Cipher Text : D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

මෙතනදී වෙලා තියෙන දේ පැහැදිලි ඇති.ඉංග්‍රීසි හෝඩියේ හැම අකුරකටම තුනක් එකතු කරාම ලැබෙන අකුර තමයි සයිපර් ටෙක්ස්ට් එකේදී භාවිත කරලා තියෙන්නේ.ඒක සාධාරණව පහත විදියට දක්වන්න පුළුවන්.
Ci = E(Pi)= Pi+3
vernam cipher
වර්නාම් සයිපර් භාවිතයෙන් යම් ටෙක්ස්ට් එකක් සයිපර් එකක් බවට හරවද්දී randomly generate කරගන්න number stream එකක් භාවිත කරනවා.පහත උදාහරණය බලන්නකෝ.

පලවෙනි පේලියේ තියෙන්නේ ඔරිජිනල් ටෙක්ස්ට් එක.දෙවැනි පේලියේ තියෙන්නේ ඒ එක් එක් අකුර ඉංග්‍රීසි හෝඩියේ කී වෙනි අකුරද කියල.මෙතනදී A-Z ,0-25 දක්වා ඉලක්කම් වලින් තමයි නිරුපනය කරලා තියෙන්නේ.හතර වැනි පෙලියෙදී අහබු ලෙස දාගත්ත අගයක් එක්ක එකතුව ගන්නවා.ඊලගට ඒකේ  26 modules value එක ගන්නවා.යමක මොඩ් අගය කියන්නේ අදාල අගය යම් නියතයකින්(මෙතනදී නම් 26)  බෙදුවට පස්සේ ඉතිරිවෙන අගය(ශේෂය).දැන් අවසානෙට ලැබුණු ඉලක්කමට අනුරුප ඉංග්‍රීසි අකුර දානවා.
Block Ciphers vs Stream Cipher
සයිපර් ප්‍රධාන කොටස් දෙකකට බෙදනවා,එක එන්ක්රිප්ෂන් ඩික්රිප්ශාන් කරද්දී භාවිතා කරන සයිස් එක අනුව.බ්ලොක් සයිපර් වලදී  එන්ක්‍රිප්ට් හෝ ඩික්රිප්ට් කරන්න ගන්නේ යම් ෆික්ස්ඩ් සයිස් බ්ලොක් එකක්(64 බිට්,128 බිට් වගේ).ස්ට්‍රීම් සයිපර් වලදී හැම අකුරක් අකුරක් (1 බයිට්) පාසා අලෝගරිතම් එකේ සයිපර් කරනවා.ස්ට්‍රීමින්ග් කියන වචනේ ගැන අදහසක් ඇතිනේ.video streaming ගැන එහෙම අහල තියෙනවනේ.

හොද සයිපර් එකක ලක්ෂණ
Shannon characteristics of a good cipher
1949 දී ශනොන් කියල හාදයෙක් හොද සයිපර් එකක තියෙන්න ඕන ලක්ෂණ ටිකක් පෙලගස්සවල තියෙනවා.ඒ ටික තේරෙන සිංහලෙන් මෙන්න මෙහෙමයි.
1.ආරක්‍ෂිත බව,ඒක සගවන්න වෙන මහන්සියට(අලෝගරිත්ම් එකට යන ප්රෝසෙසින්ග් පවර් එහෙම) අනුලෝමව සමානුපාතික වෙන්න ඕන.ගොඩක් මහන්සි වුනොත් ගොඩක් ආරක්ෂාවක්.
2.වර්නාම් සයිපර් එකේදී අපි එන්ක්රිප්ෂන් වලට රැන්ඩම් කීස් භාවිතා කරානේ.ඇත්තටම ප්‍රායෝගිකවත් මේ රැන්ඩම් කීස් තමයි බහුලවම භාවිතා වෙන්නේ.ඉතින් එහෙම රැන්ඩම් කීස් ජෙනරේට් කරගන්න යොදාගන්න මෙතඩ් එකත් සිම්පල්,කම්ප්ලේක්ස් නෙති වෙන්න ඕන කියලයි දෙවැන්නෙන් කියන්නේ.
3.සයිපර් ටෙක්ස්ට් එකයි,ඔරිජිනල් ටෙක්ස්ට් එකයි දෙකේම දිග සමාන වෙන්න ඕන කියලත් ඔහු කියනවා.
Kerckhoff's Principle
සයිපර් එකක තිබිය යුතු තවත් මුලදර්මයක් කර්චොෆ් කියල කෙනෙක් ඉදිරිපත් කරලා තියෙනවා.එන්ක්රිප්ෂන් කරන ක්‍රමවේදයක ආරක්ෂාව රදා පවතින්නේ භාවිතා කරන කී එකේ රහස්‍යභාවය මත බවත් ඒ සදහා භාවිත කරන අලෝගරිත්ම් එකේ රහස්‍යභාවය මත නොවන බවයි ඔහුගේ අදහස.
Cryptanalysis
ක්රිප්ටනලිසිස් කියන්නේ ඇටැකර්(ඉන්ට්රුඩර්- කියල හදුන්වන්නෙත් මෙයාමයි.) කෙනෙක් එන්ක්රිප්ෂන් අලෝගරිතම් එක හොයා ගන්න දෙන ට්‍රයි එකට(ඒ උත්සාහයට).
වචනවල තේරුමත් දැනගන්නකෝ.
intruder-තෙවැනි පාර්ශවයක් ලෙසින් අතුල්වෙන්නා
attacker-ප්‍රහාරකයා
cryptanalyst-ක්රිප්ටනලිසිස් සිදුකරන පුද්ගලයා
Brute Force Search
මේක ක්රිප්ටනලිස්ට් කෙනෙක් යම් කී එකක් (පාස්වර්ඩ් එකක්) අනාවරණය කරගන්න තියෙන්න පුළුවන් හැම කී එකක්ම ට්‍රයි කරන ක්‍රමවේදය.හිතන්න අපි දන්නවා කෙනෙක්ගේ FB අකවුන්ට් එකේ පාස්වර්ඩ් එක කැරැක්ටර්ස් 5යි තියෙන්නේ.අකුරු ,ඉලක්කම්,සංකේත හැම දෙයක්ම යොදාගෙන හදන්න පුළුවන් හැම පාස්වර්ඩ් එකක්ම ට්‍රය් කරලා බ්රේක් කිරීම තමයි මෙතනදී සිදුවෙන්නේ.කී එකේ බිට් සියිස් එකත් එක්ක හදන්න පුළුවන් උපරිම පොසිබල් කී සන්ක්යාවත් එක බිදින්න යන කාලයත් සන්සදනාත්මකව පහත වගුවෙන් දැක්වෙනවා.

Conditional /Unconditional Security 
පරිගණක ආරක්ෂාව conditional /unconditional security කියල තවත් කොටස් දෙකකට බෙදෙනවා.
මෙයින් conditional security කියන්නේ සීමිත පරිගණක සම්පත් පමණක් ලබාදීමෙන් යම් නෙට්වර්ක් එකක ආරක්ෂාව ඇතිකිරීම මේ නමින් හැදින්වෙනවා.බ්‍රුට් ෆෝර්ස් වගේ ඇටැක් එකක් ප්‍රධාන වශයෙන් කම්පියුටර් එකක ප්රෝසෙසින්ග් පවර් මත රදා පවතිනවනේ,ලිමිටඩ් රිසොර්සස් විතරක් දුන්නම ආරක්ෂාවක් ඇතිවෙනවනේ.
දැන් ඉතින් unconditional security වලින් මොකක්ද බලාපොරොත්තු වෙන්නේ මොනවද කියල අමුතුවෙන් කියන්න ඕන නැහැනේ.මොන ජිල්මාර්ට් එක දාලවත් සයිපර් බ්රේක් කරන්න බැරිවෙන විදියේ ආරක්ෂාවක් ඇතිකිරීම තමයි මේ ක්‍රමයේදී බලාපොරොත්තු වෙන්නේ.
තවත් ලිපියක් සමගින් ලගදීම හමුවෙමු.

No comments:

Post a Comment