Hiding (සැගවිම) . (හතර කොටස)

 


හැශ් ක්‍රියාවලියේ දෙවන ගුණංගය වන්නෙ සැගවිමයි . (Hiding ) සැගවුණු ගුණයේ ප්‍රකාශනය  Y=H(X) හැශ් ශ්‍රිතයේ  Output එක ලබා දෙන්නෙ නම් , X Input එක කුමක්දැයි සොයාගැනීමට ක්‍රමයක් නොමැති බවයි, 

උදහරණයක් : කාසියක් උඩ දමා එම කාසියේ වැටෙන පැත්ත Head නම්  H(Head) හැශ් ලෙසෙද, වැටෙන පැත්ත Tail නම්  H(Tail) හැෂ් ලෙසද නම් කර ඇත, එම උල්කපාතය කරමු , නමුත් කාසියක් උඩ දැම්මා ලෙස ගත් එම හැශ් ශ්‍රිතය කවුරුන් හෝ දැක්කෙ නම් ලැබෙන්නෙ ප්‍රතිඑල 2ක්  ලෙස දන්නා නිසා එම හැශ් ශ්‍රිත දෙකම  ගණනය කර Input එක  සොයා ගැනිම ඉතාම පහසුය.

X හී  අගයන් දෙකක් පමණක් ඇති   නිසත්, ප්‍රතිවාදියාට ඒ දෙකම විසදිමට  පහසු විමත් නිසා ප්‍රතිවාදියාට  Input එක දැන ගැනිමට හැකි වේ, එනම් X සගවා ගැනිමට දුෂ්කර වේ. මෙහි දී අපේ ප්‍රශ්නය වන්නෙ සොයා ගැනීමට නොහැකි වන ලෙස Output  එකක් ලබා ගැනිමට හැකිද යන්නයි. එයට පිළිතුර නම් ඔව්, එනම් එවිට අපට ලැබෙන Output  එකක් යොදා ගෙන සැගවිමේ ගුණය නිර්මාණය කර ගත හැකිය,

සැගවිම ඉහළ සම්භවිතා ව්‍යාප්තියක් ඇති  Min-Entropy තුළින් R රහස් අගයක් තෝරා ගත් විට , H( R || x) ලෙස  ලැබේ, එවිට X සොයා ගැනිමට නොහැකි නම්, එම හැශ් ශ්‍රිතය සැගවි ඇතයි කියනු ලැබේ,

Min entropy යනු ප්‍රතිඑලය කුමක්දැයි දැන ගැනිමට යොදා ගත්ත මිනුම් දණ්ඩක් වන අතර, Min Entropy යේ ඉහළම අගයක් ලැබේනම් එයින් අදහස් වන්නෙ එම සැගවිම සොයා ගැනිමට ඇති අවම සම්භවිතාවයි.

දැන් අපි සැගවුණු ගුණයේ පිලිබද සලකා බලමු, මෙය පැහැදිලි කිරිමට යොදා ගත්තෙ Commitment Scheme හැදින්විම ය. Commitment ලෙස හදුන්වන්නෙ ඩිජිටල් සමානතමකින් යුත් වටිනා නමක් ඇති ලියමනක් ලෙස ගෙන ඇත , එය ලියුම් කවරයක දමා සිල් කර එය සියල්ලට පෙනෙන පරිදි මේසයක් මත තබා ඇත සිතන්න. එම ලියුම් කාවරය තුළ තිබෙන දේ ඔබ පමණක් දන්නේය, නමුත් එය  විවෘත කර නැත. එම නිස එම ලියමන අනෙක් අයට එය පෙන්විය හැක.


Commitment Scheme ඇල්ගෝරිදම් 2කින් සමන් විත වේ

01)  Commit (Msg,r) ---> Com 

   Secret Rondomness in R ---> Commitment Stning 

02)  Verify ( Msg,Com, R) ---> Accept or Reject (මෙය සත්‍ය වන අතර තවත් ආකරයකින් අසත්‍ය වේ.)


* Hide (සගවන්න) : ලබා දී ඇති Com හී  Msg සොයාගත නොහැකිය. 

*Binding (බැඳිම ) : Com සදහා යුගයල දෙකක් ඇති විට  එනම්  ( Msg ,r ) සහ ( Msg' ,r') සොයා ගැනිමට කළ නොහැකිය.

Msg =/= Msg 'වන  විට 

Commit ( msg,r ) = Commit (msg',r')


ඉහත සදහන් අනුව, අපි මුලින්ම අහඹු නොවන  Input එකක් නිර්මාණය කළ යුතුය , එනම්  Msg පමණි. ඊට පසුව එයට අපි අහඹු ලෙස  සෑදී ඇති r සම්බන්ධ කරමු, එය අපි  Com ලෙස ප්‍රකාශ කරමු,මෙම සිදු විම පෙර සදහන් කළ සිල් තැබු ලියුම් කවරය මේසය මත තැබිමට සමාන්‍ වේ, පසුව අප කලින් සැඟවු ලියමන තහවුරු කිරිමට අවශ්‍ය නම්, එහි ඇති  r සහ  Msg එක සියල්ලට පෙන්වයි, දැන් ඕන කෙනෙකුට එය  Verify කර ගැනිමට පුලුවන් මෙය ලියුම් කවරය විවෘත කිරිමට සමාන වේ.

 මෙම ගුණංග දෙකෙන් පැහැදිලි කරන්නෙ ඇල්ගෝරිදමක් ඇත්ත වශයෙන්ම ක්‍රියාත්මක වෙන්නෙ ලියුම් කවරය සිල් තැබිම සහ විවෘත කිරිම ලෙසය. පළමුව දී ඇති com එක ලෙස නම් කළ ලියුම් කවරය දෙස බලන කෙනෙකුට පණිවිඩය කුමක්දැයි වටහා  ගත නොහැකිය. දෙවන ගුණංගය බැදිමයි (Binding ) මෙයින් සහතික වන්නෙ ඔබ ලියුම්  කවරයේ දී ඇති  වටිනාකම වෙනස් නොකළ හැකි බවයි.

මෙහිදී , ගුප්තකේතන හැශ් ශ්‍රිතයක් භාවිතයේන්  එම ගුණ දෙක අත්දැයි නිරික්ෂණය කළ හැකිය.

                                                    Commit ( msg ,r)= H( r || msg )

                                                 මෙහි r යනු අහඹු 256 Bit අගයකි 

ඉන් පසුව  r සහ msg ඒකබද්ධ කර Commitment ලෙස සංයුත්ත අගයේ හැශ් අගය ලබා  දෙන්නෙමු

*Hiding (සැගවිම ) :  H ( R || msg ) ලබා දී ඇති විට , Msg එක සොයා ගැනිමට නොහැකිය වේ,

*Binding ( බැදිම )  : msg =/= msg' ---> H (r || msg) = H (r' || msg') මෙහි යුගල දෙකක්  ඇති නිසා සොයගත නොහැක .

අපට  මෙය අවශ්‍ය වන්නෙ හැශ් ශ්‍රිතය සදහාය, Key එක අහඹු 256 Bit අගයක් ලෙස  තෝරාගෙන නම්,  Hading (සැගවුණු ) ගුණංග  පවසන්නේ  Key එක සහ Msg එක සම්බන්ධය හැශ්  කළහොත් ,Msg එක හැශ්  Output එකෙන් ලබා ගත නොහැකිය බවයි, තවද බන්ධන ( Binding) ගුණයෙන්  හගවන්නෙ හැශ් ශ්‍රිතයයේ ඝට්ටන ප්‍රතිරෝධ (Collision Resistance ) ගුණය මගින් බව පෙනී යයි. හැශ් ශ්‍රිතය ගැටීමට ප්‍රතිරෝධී නම්  H(r || msg)= H(r' || msg') හැශ් ශිත මෙලෙස වන නිසා  Msg සහ  Msg' සොයා ගැනීමට   නොහැකි වනු ඇත.

ඒ බැවින් , H යනු ඝට්ටන ප්‍රතිරෝධය සහ  සැගවුණු හැශ් ශ්‍රිතයක්නම් මෙම Commercial Scheme ක්‍රමය ක්‍රියාත්මක වෙන්නෙ, එයට අවශ්‍ය ආරක්ෂාක ගුණංග ඇත යන අර්ථයෙනී.............

Post a Comment

2 Comments