ක්‍රිප්ටොකරන්සි (CryptoCurrency) දෙවන කොටස

 BLOCK CHAIN TECHNOLOGY

ක්‍රිප්ටොකරන්සි සමඟ කරලියට පැමිනි ඉතා වැදගත් තාක්ෂනයක් තමයි බ්ලොක් චේන් කියන්නේ. අද වන විට, මෙම තාක්ෂනය ක්‍රිප්ටොවලට අමතරව වෙනත් සේවාවලද භාවිතා කිරීම අරඹා ඇත. 

බ්ලොක් චේන් එකක් යනු බ්ලොක් කිහිපයක් එකට එකතු කල විට හෙවත් link කල විට හැදෙන එකකි.

 

එතකොට බ්ලොක් එකක් යනු කුමක්ද? 

බ්ලොක් එකක් කියන්නේ ගනුදෙනු එකක් හෝ කිහිපයක් එකට ගොනු කල විට, ඊට කියන නමයි. ඒ කියන්නේ a block of transactions (ගනුදෙනු පොකුරක්) තමයි බ්ලොක් එකක් කියන්නේ.

ගනුදෙනුවක් (transaction) යනු යම් වටිනාකමක් හුවමාරු වීමකි. ඒ කියන්නේ ඔබෙන් බඩුවක් හෝ සේවාවක් මා මිලට ගත් විට, මා ඔබට ඊට වටිනාකම ගෙවනවා. එය ගනුදෙනුවක්. එහෙමත් නැතිනම්, මා ඔබට නිකං යම් මුදලක් ලබා දෙනවා. එයත් ගනුදෙනුවක් මොකද මා ඔබට මුදලක් එවනවානෙ. ඉතිං සෑම ගනුදෙනුවකදීම වැදගත් කරුනු කිහිපයක් තිබෙනවා - වටිනාකම යවන්නා, වටිනාකම ලබන්නා, වටිනාකම, එය සිදු වූ දිනය වෙලාව. ඔබ දන්නවා එදිනෙදා භාවිතා කරන ගිනුම්වල සටහන් කරන්නෙත් මෙම විස්තරම නේද?

මෙවැනි ගනුදෙනු එකක් හෝ දෙකක් හෝ දුසිමක් හෝ ඊටත් වැඩි ගනනක් එකට ගොනු කල විට, ඊට බ්ලොක් එකක් කියා කියනවා. බ්ලොක් එකක අනිවාර්යෙන්ම අච්චර ගනුදෙනු ගනනක් තිබිය යුතු යැයි නියමයක් නැත. එහෙත් බ්ලොක් එකක සාමාන්‍යයෙන් උපරිම විශාලත්වයක් තිබෙනවා. උදාහරනයක් ලෙස බිට්කොයින්වල බ්ලොක් එකක උපරිම විශාලත්වය මෙගාබයිට් 32ක් වූවා. සාමාන්‍යෙයන් එක් ගනුදෙනුවක් සටහන් කිරීම සඳහා බයිට් 500කට අඩුවෙන් තමයි ඉඩ ගන්නේ. ඒ අනුව එක බ්ලොක් එකක ගනුදෙනු (32,000,000 / 500 =) 65,000ක් පමන තිබිය හැකියි නේද?

ඇත්තටම, බ්ලොක් චේන් තාක්ෂණය භාවිතා කරන වෙනත් ක්ෂේත්‍රවලදී ගනුදෙනු විස්තර වෙනුවට තිබෙන්නේ වෙනත් විස්තර විය හැකියි (උදාහරන ලෙස, රෝහලක බ්ලොක් චේන් තාක්ෂනය භාවිතා කිරීමේදී, රෝගියකුගේ විස්තර වැනි).

සිතන්න යම් දත්ත සමූහයක් පවතිනවා කියා. එම දත්ත සමූහය තනි ඒකකයක් ලෙස සලකා, ඊට අනන්‍ය (unique) අනුක්‍රමික අංකයක් (serial number) ලබා දෙමු. සීරියල් අංකයක් යනු යමක් අනිත් ඒවලින් වෙන් කොට හඳුනා ගන්නට ලබා දෙන අනන්‍ය අංකයක් (අපේ ජාතික හැඳුන්ම්පත් අංකයත් සීරියල් අංකයකි මොකද එමඟින් අන් අයගෙන් තමන්ව නිශ්චිතව අනන්‍යව හඳුනා ගන්නවා). මෙවැනි දත්ත සමූහයක් පවතින ඒකකයක් බ්ලොක් එකක් වේ. පෙර සඳහන් කල පරිදි මෙම දත්ත සමූහයේ අඩංගු වන්නේ ගනුදෙනු විස්තර විය හැකියි (වෙනත් තොරතුරුද විය හැකියි).


ඉහත රූපයේ බ්ලොක් එක තුල ඇති දත්තවල ඕනෑම දෙයක් ලිවිය හැකි බව පෙනේ. කවියක්, ලියුමක් වුවත් එහි ලිවිය හැකිය. එනම් එම දත්ත ඇතුලු කිරීමට ආකෘතියක්/ෆෝමැට් එකක් නැත. මෙවැනි දත්ත unstructured data ලෙස හැඳින්වේ.


එහෙත් සමහර දත්ත අපි එක්තරා පිලිවෙලකට හෙවත් ආකෘතියකට තමයි ලියන්නේ. එවැනි දත්ත structured data ලෙස හඳුන්වනවා. එදිනෙදා ජීවිතයේදි විවිධ අවශ්‍යතා සඳහා පිරවීමට තිබෙන ෆෝර්ම් යනු ස්ට්‍රක්චර්ඩ් දත්ත ලබා ගැනීමේ ක්‍රමයකි. එහිදී අසා තිබෙන ප්‍රශ්නවලට නිශ්චිත පිලිතුරු ලබා දීමට සිදු වේ. සාමාන්‍යයෙන් ස්ට්‍රක්චර්ඩ් ඩේටා ඇතුලු කරන්නේ වගුවක් (table) ආකාරයටයි. ක්‍රිප්ටොවලදී බ්ලොක් එකේ දත්ත පවතින්නේ ස්ට්‍රක්චර්ඩ් ආකාරයටයි. ස්ට්‍රක්චර්ඩ් ආකාරයෙන් දත්ත පවතින විට වාසි කිහිපයක් ඇති අතර, ඉන් වැදගත්ම වාසිය වන්නේ පරිගනකයකට හැකියි පහසුවෙන් හා ඉක්මනින් එම දත්ත කියවීමට හා ඒ මත යම් යම් ගණනය කිරීම් හෙවත් සැකසීම් (processing) සිදු කිරීමට.

මෙම ස්ට්‍රක්චර්ඩ් දත්ත සමූහයේ එක් පේලියකින් (ROW හෝ RECORD) එක් ගනුදෙනුවක් ගැන කියවේ. එවිට, එම ගනුදෙනුවට අදාල එක් එක් විස්තරය එම පේලියේ එක් එක් කොටුව/තීරුව (COLUMN හෝ FIELD) තුල නිශ්චිතව සටහන් කෙරේ. උදාහරන ලෙස, ගනුදෙනුවක් ගැන රෙකෝඩ් එකක වටිනාකම, යවන්නා, හා ලබන්නා යන ෆීල්ඩ් ඇත. ඒ අනුව ඊළඟ ගනුදෙනුව ලියන්නේ ඊළඟ පේලියේය. එයත් මුල් පේලියේ ආකෘතියටම පවතී. සියලු පේලී එකම ආකෘතියට අනුව පවතී. පරිගනක දත්ත පද්ධති (database) ගැන ඉගෙන තිබෙන අයෙකුට නම් මෙය පහසුවෙන්ම වැටහෙනවා data table එකක් බව.

මෙවැනි බ්ලොක් එකක් ඊළඟ බ්ලොක් එක හා ලින්ක් කිරීමට ක්‍රමයක් තිබිය යුතුයි නේද? ඒ සඳහා සෑම බ්ලොක් එකකම තමන්ගේ සීරියල් අංකයට අමතරව මීට පෙර බ්ලොක් එකේ (previous block) සීරියල් අංකයද ගබඩා කර ගන්නේ නම් ලින්ක් කිරිල්ල පහසුවෙන්ම කල හැකියි.


මෙවිට, බ්ලොක් චේන් එකේ පලමු බ්ලොක් එකට කලින් බ්ලොක් එකක් නැති නිසා, එම බ්ලොක් එකේ ඇති previous block serial යන තැනට ලියන්නට අංකයක් නැහැ නේද? ඔව්... එතැන 0 ඉලක්කම ලියනවා. බ්ලොක් චේන් එකක පලමු බ්ලොක් එක සුවිශේෂි එකකි. එය block 0 හෝ genesis block ලෙස හැඳින්වෙනවා. සාමාන්‍යෙයන් බ්ලොක් චේන් එක නිර්මානය කරන කෙනා තමයි ජෙනෙසිස් බ්ලොක් එක හදන්නේ. එතකොට එම ජෙනෙසිස් බ්ලොක් එකෙහි ගබඩා වන පලමු ගනුදෙනුද (ගනුදෙනු එකක් හෝ දෙක තුනක්) එම නිර්මාතෘ විසින්මයි සිදු කරන්නේ.

කොම්පියුටර් ප්‍රෝග්‍රැමිං ඉගෙන ගත්තු කෙනෙකුට දැන් linked list යන data structure මතක් වෙනවා ඇති මෙම විස්තරය කියවගෙන යන විට (ප්‍රෝග්‍රැමිං ගැන නොදන්න අය මේ කියනා දේවල් නොසලකා හරින්න) මොකද ලින්ක්ඩ් ලිස්ට් එකකට සමානයි ඉහත රූපයේ දක්වා තිබෙන බ්ලොක් චේන් එක.

මේ ලෙසට අලුතින් අලුතින් බ්ලොක් බිහි වෙන කොට ඒවා ඉහත චේන් එකේ අලුත් පුරුක් බවට පත් වෙනවා. මෙවැනි බ්ලොක් චේන් එකක් සෑම ක්‍රිප්ටොකරන්සි එකකටම ඇත. ඒ අනුව bitcoin නම් ක්‍රිප්ටො ඒකකයට තමන්ගේම බ්ලොක් චේන් එකක් ඇත. ethereum යන ක්‍රිප්ටො එකටත් තමන්ගේම බ්ලොක් චේන් එකක් ඇත. අනෙක් ක්‍රිප්ටොවලටත් තම තමන්ගේ බ්ලොක් චේන් එක බැඟින් ඇත. 

මෙතැන් සිට අපි බිට්කොයින් යන ඒකකය පදනම් කරගෙන විස්තර කිරීම සිදු කරමු.

ඉතිං, 2009 වසරේ බිට්කොයින්වල උපතේ සිට මෙම තත්පරයේදී සිදු වන ගනුදෙනුව දක්වා සිදු කල සියලු ගනුදෙනු මෙම බ්ලොක් චේන් එකේ අනිවාර්යෙන්ම පිලිවෙලින් සටහන් විය යුතුය. යම්කිසි ගනුදෙනුවක් මෙම චේන් එකේ නැතැයි කියන්නේ බිට්කොයින්වලින් ඇත්තටම එම ගනුදෙනුව සිදු වී නැතැයි යන්නයි. යම් බිට්කොයින් ගනුදෙනුවක් වූවා යැයි ඔප්පු කිරීමට ඇති එකම ක්‍රමය එම ගනුදෙනු විස්තරය (රෙකෝඩ් එක) මෙම බ්ලොක් චේන් එකේ යම් බ්ලොක් එකක සටහන් වී තිබීමයි.

ඔබටත් හැකියි අන්තර්ජාලය ඔස්සේ බිට්කොයින්ද ඇතුලුව ඕනම ක්‍රිප්ටොකරන්සි එකක මුල් බ්ලොක් එකේ සිට අද දක්වා තිබෙන ඕනම බ්ලොක් එකක විස්තර බලන්න. ඒ ඒ බ්ලොක් එකේ තිබෙන සෑම ගනුදෙනුවක්මත් බැලිය හැකියි. උදාහරනයක් ලෙස https://www.blockchain.com/btc/address/12cbQLTFMXRnSzktFkuoG3eHoMeFtpTu3S?page=11 යන ලින්ක් එකෙන් ඔබට හැකියි බිට්කොයින්වල මුල්ම බ්ලොක් එක හා එහි ගනුදෙනු විස්තර බැලීමට.

බ්ලොක් චේන් එක යම් පරිගනකයක (computer server) ගබඩා කර ගත යුතුය. ඒ විතරක් නොවේ, මිනිසුන්ටම මෙම චේන් එකට ගනුදෙනුවක් සිදුවන ඕනෑම මොහොතක සම්බන්ද වීටම අවශ්‍ය නිසා, මෙම සර්වර් එක අන්තර්ජාලයට සම්බන්දව තිබිය යුතුය (හරියට වෙබ් අඩවි පවත්වාගෙන යෑමට සමානයි). ඇත්තටම මෙවැනි බ්ලොක් චේන් ගබඩා කරන පරිගනක ප්‍රබල පරිගනක වේ (බොහෝවිට තනි පරිගනකයක් නොව පරිගනක සෙට් එකක්).

ඉතිං, මටත් පුලුවන් ප්‍රබල පරිගනක ටිකක් ගෙන ඒවා ජාලගත කර (network), පැය 24ම එක දිගට අන්තර්ජාලයට සම්බන්ද කර, කරන්ට් ගියද බැටරිවලින් නොනවත්වා වැඩ කරන පරිදි සර්වර් එකක් සාදා එහි බිට්කොයින්වල බ්ලොක් චේන් එක පවත්වාගෙන යන්න. 

එවිට, ඒ සඳහාම වූ විශේෂිත මෘදුකාංගයක් සර්වර් එකේ ස්ථාපිත කිරීමට සිදු වේ. ක්‍රිප්ටොකරන්සි එකට අදාල සියලු දේ සිදු කරන්නේ මෙම මෘදුකාංගය මඟිනි. බිට්කොයින්වල මෙම මෘදුකාංය සතොෂි නකමොටො (Satoshi Nakamoto) නම් තැනැත්තෙක් නිර්මානය කර ඇත. ඇත්තටම බිට්කොයින්වල නිර්මාතෘ ලෙසද සැලකෙන්නේ ඔහුය. 

එහෙත් අද වන තුරු ඇත්තටම සතොෂි යන මෙම තැනැත්තා කවුදැයි හෙලි වී නැත (ඔහු සැඟවිලා තමයි මේ කටයුත්ත සිදු කර තිබෙන්නේ). විශිෂ්ට නිර්මානයක් සිදු කර එය තමන් විසින් සිදු කලේ යැයි පිලි ගන්නට ඉදිරිපත් නොවීම ගැන සිතන විට, අනිවාර්යෙන්ම ඔහු තනි තැනැත්තෙක් නොව, ලෝක පරිමානයේ අතිදැවැන්ත මෙහෙයුමක් බව මට සිතේ. දැනට තිබෙන ඩොලර් පදනම් කරගෙන සිදු වන ජාත්‍යන්තර ගනුදෙනුවලට ආදේශකයක් අවශ්‍ය කරන අය කවරේද, අන්න ඒ පිරිසෙ සිටින බලවත් කන්ඩායමක් මෙය පිටුපස විය හැකියි. ඔබ අහිංසක පද්ධතියක් ලෙස බිට්කොයින් සැලකිය හැකි වුවත්, සමහරවිට මෙහි නිර්මාතෘවරුන්ගේ සත්‍ය අභිප්‍රාය ඊට වඩා වෙනස් විය හැකියි. ඔබ දන්නෙම නැතිව එම උගුලේ වැටී තිබීමට පුලුවන්. චීනය හෝ ජාත්‍යන්තර පාතාලය හෝ ලෝකය පාලනය කිරීමට සිහින මවන ධනවත් බලවත් පුද්ගල කණ්ඩායම් බිට්කොයින් හඳුන්වා දෙන්නට ඇතැයි මා සිතනවා.

මෙලෙස බිට්කොයින්වල බ්ලොක් චේන් එක ගබඩා කරන සර්වර් රාශියක් ලොව පුරා විවිධ රටවල ඇත. ඒවා විවිධ ආයතන හා ව්‍යාපාර විසින් පවත්වාගෙන යයි. සර්වර් කොපමන තිබුනත් ඒ සියල්ලෙහිම තියෙන්නේ එකම බ්ලොක් චේන් එකයි. සර්වර් රාශියක් තිබීම වාසිදායක මෙන්ම බිට්කොයින්වල යහපැවැත්මට හොඳය. 

නිකමට හෝ යම් ව්‍යසනයක් නිසා එක් සර්වරයක් ක්‍රියා විරහිත වුවොත්, අනෙක් සර්වර් තියෙන නිසා බිට්කොයින් ජාලය බිඳ වැටෙන්නේ නැත.

තවද, ලෙජරය එක් සර්වර් එකක මැකී ගියත් අනෙක් සර්වර්වල එම කොපියම තිබෙන නිසා ගැටලුවක් ඇති නොවේ. උදාහරනයක් ලෙස සිතන්න ලංකාවේ ලඟදී ඖෂධ අධිකාරියේ දත්ත මකා දැමීමේ කූට අපරාධය. එම දත්ත එක් තැනක පමනක් තිබූ නිසා, එම දත්ත මැකූ විට ඒවා නැවත ගැනීමේ නොහැකියාවක් තිබේ. කෙසේ වෙතත් නියමිත පරිදි එම දත්තවල කොපි සීඩී හෝ දත්ත ගබඩාවකට ගැනීම (BACKUP) මඟින් එම අවදානම අඩු කර ගත හැකියි. තවත් තාක්ෂනික උපක්‍රමද ඒ සඳහා තිබෙනවා (RAID වැනි) මෙම අවදානම අඩු කරන්නට. එහෙත් ඖෂධ අධිකාරියේ දත්ත ඕන කමින්ම හොරකම් කිරීමේ අදහසින්ම කල නිසා සෙන්ට්‍රලයිස්ඩ් ලෙජර් ක්‍රමයේ එම දුර්වලතාව පවතිනවා. ක්‍රිප්ටොවල එය සිදු වීමට තිබෙන හැකියාව අඩුයි මොකද දත්ත මකනවා නම් ලෝකයේ විවිධ තැන්වල තිබෙන පරිගනක දුසිම් ගනනක පවතින දත්ත මැකීමට සිදු වෙනවා.

බිට්කොයින් පාරිබෝගිකයන් වැඩි වන විට, සර්වර් ගනන වැඩි වීමෙන් ඔවුන්ට වේගවත් කාර්යක්ෂම සේවාවක් ලබා දීමට හැකි වෙනවා. එය හරියට බිල් ගෙවන ස්ථානයක කවුන්ටර් ගනන වැඩි කරනවා වගේ්‍.

තවද, එකම රාජකාරිය වැඩි පිරිසක් විසින් සිදු කරන විට, එතැන ඉතා හොඳ තරගකාරිත්වයක් ඇති වී වඩා කාර්යක්ෂම මෙන්ම පාරිබෝගිකයාට වඩා ලාබදායි සේවාවක් ලැබේ. එනිසා සර්වර් වැඩි වන තරමට හොඳය.

ඔබ බිට්කොයින් ගනුදෙනුවක් කරන විට (උදාහරනයක් ලෙස ඔබ යම් බිට්කොයින් ප්‍රමානයක් මට එවන විට), ඇත්තටම ඔබ මුලින්ම සිදු කරන්නේ අර සර්වර් අතරින් එක් සර්වර් එකකට කනෙක්ට් වීමයි. ඔබ බිට්කොයින් ජාලයට සම්බන්ද වන්නේ හැමවිටම සර්වර් එකක් හරහාය. මෙය (ලංකාවේ) කොටස් වෙලඳපොලට ඇතුලු වී ගනුදෙනු කිරීමට අනිවාර්යෙන්ම තැරැව්කාර සමාගම හරහා (ඔවුන්ගේ සර්වර් හරහා) සම්බන්ද විය යුතුයි වගේමයි.

ඉතිං, බිට්කොයින් සමඟ ගනුදෙනු කරන විට, ඔබ අන්තර්ජාලයෙන් හොඳ සර්වර් එකක් සොයා ගත යුතුයි මොකද ඔබට එතැන් සිට සේවාව සපයන්නේ එම සර්වරය මඟිනි. යම් මොහොතක ඔබට සිතුනොත් දැන් භාවිතා කරන සර්වරය හරි නැහැ කියා, ඔබට හැකියි තවත් සර්වර් එකකට මාරු වන්නත්. 

ඉතිං, ඔබේ ගනුදෙනුවේ විස්තර පලමුවෙන්ම ඇතුලු වන්නේ ඔබ තොරා ගෙන සිටින සර්වරයටයි. එම ගනුදෙනුව තාවකාලිකව transaction pool එකක ගබඩා වෙනවා ඊළඟ බ්ලොක් එකට එය ඇතුලු කරන තෙක්. බිට්කොයින්වලදී මෙම ට්‍රාන්සැක්ෂන් පූල් එක mempool යන නමින්ද හැඳින්වෙනවා. ඔබේ ගනුදෙනු පමනක් නොව, වෙනත් අයගේ ගනුදෙනුද සිය දහස් ගනනක් එසේ පූල් එකේ පවතිනවා.

එම සර්වරයේ වගකීම තමයි ඉහත කියූ පරිදි පූල් එකේ තාවකාලිකව ගබඩා වී පවතින ඔබේ බිට්කොයින් ගනුදෙනුව සම්මත ක්‍රමයට (එනම්, බිට්කොයින් ප්‍රෝටොකෝලයට) අනුව, බිට්කොයින් ජාලයට ඇතුලු කර, යම් බ්ලොක් එකක සටහන් කිරීමයි. බ්ලොක් එකකට ඇතුලු කල පසු පූල් එකෙන් එම දත්ත මැකෙනවා. ඇත්තටම මේ සඳහා සර්වර් එක ඔබෙන් යම් කුඩා ගාස්තුවක් අය කරනවා. එය තමයි ඒගොල්ලන්ගේ ලාබය. මෙම ගාස්තුව ඔවුන් ලබා ගන්නේද බිට්කොයින්වලිනි. 

ඇත්තටම ගාස්තුවක් ගැනීමට හෝ නොගැනීමට හෝ ගාස්තුවක් ගන්නවා නම් එය කොපමනදැයි තීරනය කරන්නේ එම සර්වර් එක පවත්වාගෙන යන ආයතනයයි. බොහෝවිට මා දැක තිබෙන්නේ ඒගොල්ලන්ගේ තිබෙන්නේ අවම ගාස්තුවක්. ඔබට හැකියි එම අවම ගාස්තුව හෝ ඊට වඩා වැඩි ප්‍රමානයක් ඔවුන්ට ගෙවන්නට. ඔබ වැඩිපුර ගෙවන විට, ඔබගේ ගනුදෙනුව බ්ලොක් එකක ගබඩා කිරීමට වැඩි ප්‍රමුඛතාවක් ලබා දෙනවා. මා පෞද්ගලිකව සිතනවා එම ක්‍රමය කප්පං ක්‍රමයක් කියා (ලංකාවේ දේශපාලනය හා ලංකාවේ රාජ්‍ය සේවය වගේ).

ඔබ යම් ගනුදෙනුවක් කල පමනින් (එනම්, ඔබ යම් කෙනෙකුට බිට්කොයින් යැවූ පමනින් හෝ කෙනෙකු ඔබට බිට්කොයින් එව්ව පමනින්) ඔබේ ගනුදෙනුව සිදු වූවා යැයි සිතන්නට බැහැ. ඊට හේතුව, ඔබ ගනුදෙනුව සිදු කර, එම ගනුදෙනුව අර කියූ අන්දමට බ්ලොක් එකක සටහන් වී එම බ්ලොක් එක චේන් එකට සෙට් විය යුතුයි. ඊට හේතුව, බ්ලොක් එකක ගබඩා වීමට ගනුදෙනු විශාල ගනනක් බලාගෙන ඉන්නවා පූල් එකේ. ඉතිං, ඔබ ගෙවනවාට වඩා වැඩි ගාස්තු ගෙවපු අයත් මේ අතර ඉන්නවා. සමහරවිට ඔබේ ගනුදෙනුව බ්ලොක් එකකට ඇතුලු වීමට සෑහෙන්න වෙලාවක් ගත වේවි. ඔබට හදිසි නම්, වැඩිපුර ගාස්තුවක් ගෙවා (කප්පං ගෙවා) එය කර ගත හැකි වේවි.

ඉහත බ්ලොක් චේන් එකට තමයි මීට පෙර අප ලෙජරය කියා පැවසුවෙ මොකද බ්ලොක් චේන් එකේ තිබෙන්නේ ගනුදෙනු විස්තරයි (ගනුදෙනු සටහන් කරන්නේ ලෙජරයේනෙ). එහෙත් පැහැදිලිවම මෙම ලෙජරය හා සාමාන්‍ය බැංකුවක තිබෙන ලෙජරය අතර විශාල වෙනසක් තිබෙනවා නේද? ඔව්, බැංකුවේ ලෙජරය මධ්‍යගත ස්ථානයක රහසිගතව ආරක්ෂිතව පවතින අතර, ක්‍රිප්ටොවල ලෙජරය හැමෝටම ලඟා විය හැකි පරිදි අන්තර්ජාලයේ ප්‍රසිද්ධියේ පවතී. ඔබ අලුතින් සර්වර් එකක එකතු කරන විට, එම බ්ලොක් චේන් එක ඔබේ සර්වර් එක මත කොපි කර ගත හැකි වන්නේ එය ප්‍රසිද්ධියේ ඕනම කෙනෙකුට ගත හැකි පරිදි තිබෙන නිසානෙ. මෙවැනි විවෘත ලෙජර් විමධ්‍යගත ලෙජර (distributed ledger) ලෙස හැඳින්වෙනවා.

ඉතා සරලව බ්ලොක් චේන් එකක් සැකසෙන්නේ එසේය. එහෙත් එම බ්ලොක් චේන් එක ක්‍රිප්ටො සඳහා භාවිතා කිරීමට තාමත් ප්‍රාථමික වැඩිය. එයට තව බොහෝ උසස් ගතිලක්ෂන ලබා දිය හැකියි. මෙවැනි වැඩිදියුනු කිරීම් දෙකක් තමයි හෑෂිං හා පබ්ලික්-ප්‍රයිවට් කී එන්ක්‍රිප්ෂන් මීට එකතු කිරීම. ඒ එක් එක් වැඩි දියුනු කිරීම දැන් විමසා බලමු.

මේ බ්ලොක්වල ඇත්තේ ගනුදෙනු විස්තරය. හිතන්න ඔබ ගමේ කඩෙන් රුපියල් 10,000ක ණයට බඩු ගත්තා කියලා. එතකොට කඩේ නංගී එය ණය පොතේ ලියා ගන්නවානෙ. ඒක තමයි එයාගේ ලෙජරය. එම ලෙජරය කඩේ කවුන්ටරය මත තිබුනොත් සමහරවිට ඔබට හැකි වේවි කඩකරු එහාට මෙහාට ගිහිපු වෙලාවකට ටක් ගාලා අර රුපියල් දහදාහෙන් බිංදු 2ක් කපා එය රුපියල් 100ක් බවට පත් කරන්නට. ඉතිං, අපේ බිට්කොයින් ලෙජරයටත් මේ දේම වෙිවි මොකද බිට්කොයින් ලෙජරයට ඕනෑම කෙනෙකුට ඇතුලු විය හැකි ලෙස ප්‍රසිද්ධියේ අන්තර්ජාලයේ පවතින නිසා. මට පුලුවන් වේවි බිට්කොයින් බ්ලොක්වල තිබෙන මගේ ගනුදෙනුවකට අදාල විස්තරය මට වාසි වන ලෙසට වෙනස් කරන්න (මට කවුරු හරි බිට්කොයින් 1ක් එවූ එක 100ක් එව්වා සේ වෙනස් කල හැකියි). ඉතිං, එසේ කල නොහැකි ආකාරයට මෙම බ්ලොක් චේන් එක (එනම් බිට්කොයින් ලෙජරය) සාදා ගන්නා හැටි බලමු.

දත්තයක් වෙනස් කලොත් එය හඳුනා ගැනීමට අපි කදිම තාක්ෂනයක් යොදා ගන්න හැටි පෙර ලිපියෙන් කතා කලා මතකද? ඒ තමයි හෑෂිං (ඩිජිටල් සිග්නේචර්). අපට දැන් කරන්නට තිබෙන්නේ එක් එක් බ්ලොක් එකේ දත්ත ටික හෑෂ් කිරීමයි. එවිට ලැබෙන ඩයිජෙස්ට් එක හෙවත් හෑෂ් එක අපිට භාවිතා කරන්න පුලුවන් එම බ්ලොක් එක හඳුනා ගන්නට යොදා ගන්නා සීරියල් අංකය ලෙසත්. එක ගලින් කුරුල්ලො දෙන්නයි. ඒ කියන්නේ ඩයිජෙස්ට් එකින් බ්ලොක් එකෙහි ඇති දත්ත වෙනස් කලාදැයි දැනගත හැකි අතරම, එම අංකයම එම බ්ලොක් එකේ සීරියල් අංකය ලෙසත් ක්‍රියා කරනවා.


යමෙකු යම් බ්ලොක් එකක තිබෙන යම් දත්තයක් (ගනුදෙනුවක්) හොරෙන් වෙනස් කරන්නට උත්සහ කරනවා යැයි සිතමු. එවිට, එම බ්ලොක් එකේ ඩයිජෙස්ට් එක වෙනස් වේ. එමඟින් වෙනස් කරපු දත්තයේ ඩයිජෙස්ට් එක හා එම බ්ලොක් එකේ පැවති ඔරිජිනල් ඩයිජෙස්ට් එක අතර වෙනස හඳුනාගෙන කවුරුන් හෝ මෙම තොරතුර වෙනස් කර ඇති බව පද්ධතියට හඳුනාගත හැකිය. 

ඊට පිලියමක් ලෙස, හැකර් විසින් එලෙස දත්තය වෙනස් කල පසු නැවත එම දත්තය හෑෂ් කර, එම බ්ලොක් එකේ ඩයිජෙස්ට් එකේ හොරෙන් තැන්පත් කලා යැයි සිතමු (දැනට තිබෙන ඩයිජෙස්ට් වෙනුවට). එම ඩයිජෙස්ට් එක ඊළඟ බ්ලොක් එකෙත් ගබඩා වෙනවනෙ (මොකද සෑම බ්ලොක් එකකම තමන්ගේ සීරියල් අංකය වගේම තමන්ට පෙර තිබෙන බ්ලොක් එකේ සීරියල් අංකයද ගබඩා කරනවනේ). ඉතිං, එලෙස පෙර බ්ලොක් එකේ ඩයිජෙස්ට් එකේ වෙනසක් වීමෙන් (හැකර් විසින් එය කලේ), ඊළඟ/පසු බ්ලොක් එකේ දත්තයද ඉබේ වෙනස් වෙනවා දැන්. ඒ නිසා, පසු බ්ලොක් එකේ සමස්ත දත්තය දැන් වෙනස් වෙලා තිබෙනවා. එවිට, පසු බ්ලොක් එකේ දැනට තිබෙන ඩයිජෙස්ට් එක හා බ්ලොක් එක අලුතින් හෑෂ් කල විට ලැබෙන අලුත් ඩයිජෙස්ට් එක තිබුනු ඩයිජෙස්ට් එකට සමාන නොවන නිසා, පසු බ්ලොක් එක විකෘති වීම හඳුනා ගැනේ. 

ඒ කියන්නේ යම් බ්ලොක් එකක් වෙනස් කර විට, එම බ්ලොක් එක විකෘති බව පද්ධතිය හඳුනා ගන්නවා. එම හඳුනාගැනීම වැලැක්වීමට කටයුතු කරන විට, එම විකෘතිය ඊලඟ බ්ලොක් එකට මාරු වෙනවා.

ඉතිං හැකර්ට එම පසු බ්ලොක් එකේ අර්බුදය විසඳීමට නම්, ඔහු පෙර බ්ලොක් එකට කරපු දේම මෙහිදීත් කල යුතු වෙනවා. එනම්, පසු බ්ලොකය නැවත හෑෂ් කර, එම අලුත් ඩයිජෙස්ට් එක පරන ඩයිජෙස්ට් එක තිබෙන තැන ගබඩා කිරීමට සිදු වේ. 

එහෙත් එම ඩයිජෙස්ට් එක ඊටත් පසුවට ඇති බ්ලොක් එකේද සටහන් වන නිසා, ආයෙත් අර ගැටලුවම ඇති වේ. 

මෙලෙස, එකින් එක සෑම බ්ලොක් එකකටම වෙනස්කම් කරන්නට සිදු වෙනවා හැකර්ට. එවැනි බ්ලොක් සාමාන්‍යෙයන් මිලියන ගනනක් තිබෙනවා. එනිසා එය කිරීම ප්‍රායෝගික නැත. 

ඉතිං, ඔබ අතීත ගනුදෙනුවක් බ්ලොක් එකක වෙනස් කරන්නට හැදුවොත් එම බ්ලොක් එකේ සිට ඉදිරියට ඇති සියලුම බ්ලොක්වල වෙනස්කම් කිරීමට සිදු වේ. එනිසා එවැනි හොර වැඩ කිරීමට බැරි වෙනවා හෑෂිං තාක්ෂනය යොදා ගැනීම නිසා. අන්න එහෙමයි බ්ලොක් චේන් එකක දත්ත ආරක්ෂා වන්නේ. 

බැලූ බැල්මට ඕනම කෙනෙකුට ලෙජරය වෙනස් කල හැකි ලෙසට පැවතියත්, හෑෂිං තාක්ෂනය යොදා ගැනීම නිසා එය කිරීම අතිශය දුෂ්කර වේ. මා මෙහිදී “අතිශය දුෂ්කර වේ“ යන වදන් පෙලයි භාවිතා කලේ. ඊට හේතුව පරිගනක තාක්ෂනයේ සිදු වන දියුනු වීම් සලකන විට, අද අපට කරන්නට බැහැයි සිතෙන බොහෝ දේවල් කාලයක් ගියහම කල හැකි තත්වයට පත් වන බවක් පේනවා. ක්වන්ටම් පරිගනකද බිහි කරන්නට උත්සහ කරනවා. එවිට අද අප භාවිතා කරන එන්ක්‍රිප්ෂන් හා හෑෂිං ඉතා පහසුවෙන් බිඳ හෙලිය හැකි මට්ටමකට පත් වන්නට පුලුවන්. ඒ කියන්නේ පරිගනක තාක්ෂනය ගැන පර්යේෂන කරන ප්‍රබල පර්යේෂන ආයතනයකට හෝ ඇමරිකාව වැනි රටකට මෙවැනි ක්‍රිප්ටො ජාලයක් සුලු මොහොතකින් විනාශ කර දැමීමේ හැකියාව අමතක නොකල යුතුයි.

ඔබේ සාම්ප්‍රදායික බැංකු ගිනුමේ ඔබේ නමින් යම් මුදලක් තිබේ නම්, එය එම ගිනුමේ ශේෂයක් ලෙස සටහන් වෙනවානෙ. එම ශේෂය දැන ගැනීමෙන් ඔබට පුලුවන් කීයක් ඔබ සතුව තිබේදැයි තහවුරු කර ගන්නට. එම මුදල ඔබට අයිති නම්, එය (නීත්‍යානුකූල ආකාරවලට) වියදම් කිරීමටද හැකියි. 

ඇත්තටම කෙනෙකු සතුව යම් මුදලක් තිබෙනවා යන්න බැලිය හැක්කේ එම මුදල ඔහුට වියදම් කල හැකිද යන්න මතයි. ඔහුට එය වියදම් කල නොහැකි නම්, ඒ කියන්නේ එම මුදල ඔහුගේ විය නොහැකියි. මෙය ඉතාම සරල හා ඉතාම වැදගත් අදහසකි.

එලෙසම ඔබට යම් බිට්කොයින් ප්‍රමානයක් අයිති යැයි කියන්නේ එම බිට්කොයින් ඔබට වියදම් කල හැකි නම් පමනි. ඉතිං, ඔබ සතු බිට්කොයින් ප්‍රමානය පවතින්නේ අර සාමාන්‍ය බැංකු ගිනුමක මුදල් පවතින ආකාරයටද? තවත් ලෙසකින් කියතොත්, ඔබේ මුලු බිට්කොයින් ප්‍රමානය බිට්කොයින් බ්ලොක් චේන් එකේ ඔබේ නමින් තිබෙන යම් එකවුන්ට් එකක ශේෂයක් ලෙස සටහන් වෙනවාද? නැත. බිට්කොයින්වලදී ඊට හාත්පස වෙනස් ක්‍රමයකුයි පවතින්නේ.

බිට්කොයින්වල අයිතිය තහවුරු කිරීමේ ක්‍රමය හරියටම සමාන වනවා ලංකාවේ ඉඩමක අයිතිය තහවුරු කරන ක්‍රමයට. ඔබට ඔබේ දෙමාපියන්ගෙන් යම් ඉඩමක් ඔප්පුවකින් ලියා දුන්නා යැයි සිතන්න. එපමනකින් ඔබට එම ඉඩම අයිති වන්නේ නැත. ඔබේ මව ඔබට එම ඉඩම පැවරුවත්, නීතියෙන් බලනවා ඔබේ මවට එම ඉඩමේ අයිතිය නිරවුල්ව පැවතියාද කියා. ඒ කියන්නේ ඔබේ මවට එම අයිතිය ලැබුනු ඔප්පුවත් නීතියෙන් බලනවා. හිතමු ඔබේ මවට එම ඉඩම ඔප්පුවකින් පවරා තිබෙන්නේ ඇගේ පියා විසින් කියා. එවිට, නැවතත් නීතියෙන් බලනවා, ඇගේ පියාට (ඒ කියන්නේ ඔබේ සීයාට) එම ඉඩම නීත්‍යානුකුලව පවරා තිබෙනවාද කියා. නිකටම හෝ සීයාට කල පැවරීමේ දෝෂයක් ඇත් නම්, ඔබට අම්මගෙන් ලැබුනු ඔප්පුවක් තිබුනත් එම ඉඩමේ අයිතිය නැති වී යන්නට පුලුවන්.

ඒ ආදි ලෙස, සීයාට එම ඉඩම ලැබුනේ ඔහුගේ පියාගෙන් නම්, සීයාගෙ පියාට එම ඉඩම ලැබුනු හැටිත් බලනවා. මෙය ඉවරයක් නැහැ වගේ නේද? ඔව්, එලෙස මෙය යනවා රජ කාලෙට නැතිනම් සුද්ද ලංකාව පාලනය කරපු සමය දක්වා. ඊට හේතුව ඉස්සර සියලු ඉඩම් අයිතිව තිබුනේ රජුට. ඉතිං, රජය විසින් අතීතයේ යම් දවසක ඔබේ පරම්පරාවේ මුතුන් මිත්තෙකුට පැවරූ ඔප්පුව තමයි මුල්ම ඔප්පුව. මෙලෙස යම් ඔප්පුවක නිරවුල් බව සේවීමේදි ආපස්සට ඇති සියලු ඔප්පු බලාගෙන යන විට, කොතන හෝ වරදක් ඇත්නම් ඔබේ දැන් තිබෙන ඔප්පුවට එය බලපානවා. මෙලෙස අවුරුදු සිය ගනනකට ආපස්සට ඇති ඔප්පු බැලීම ප්‍රායෝගිකව කරන්න අමාරු නිසා දැන් අප සම්ප්‍රදායක් ලෙස පසුගිය අවුරුදු 30ක කාලයක් දක්වා අයිතිය නිරවුල්දැයි බලනවා (ඒකනෙ බැංකු ලෝන් ගන්න ගියාම ඔප්පුවකට, ඒගොල්ලේ අවුරුදු 30ක් ආපස්සට බලන්නේ).

බිට්කොයින්වලදීත් ඔබ සතුව ඇති බිට්කොයින්වල අයිතිය සොයන්නේ අර ඔප්පුවේ නිරවුල් බව සොයපු ආකාරයටයි. ඔබ අතට බිට්කොයින් ලැබුනේ තව කෙනෙකුගෙන්නේ. ඉතිං, ඔහුට ඒවා ලැබුනු හැටිත් බලනවා. ඒ ආදි ලෙස ගනුදෙනු ආපස්සට බලනවා.

ඔබ බිට්කොයින්වල හිමිකරුවෙක් වන්නේ කෙසේද? ඒ සඳහා ක්‍රම කිහිපයක් තිබේ.

1. දැනටමත් බිට්කොයින් තිබෙන කෙනෙකු ඔබට යම් බිට්කොයින් ප්‍රමානයක් එවීම. ඔබගේ හිතවතෙකු හෝ නෑයෙකු හිතවත්කමට හෝ නෑකමට නිකංම එම බිට්කොයින් එවනවා විය හැකියි. එහෙමත් නැතිනම්, ඔබ යම් බඩුවක් හෝ සේවාවක් විකිනීම හේතුවෙන් ඔබට එම බිට්කොයින් එවනවා විය හැකියි.

2. බිට්කොයින් විකුනන ඔන්ලයින් මාර්කට් තිබෙනවා. ඔබට හැකියි ඩොලර් ගෙවා එම මුදලට සමාන බිට්කොයින් ලබා ගැනීමට. මෙහිදිත් සිදු වන්නේ මාකට් එකේ බිට්කොයින් ගිනුමකින් ඔබේ බිට්කොයින් ගිනුමට මුදල් එවීමක්ම තමයි. එහෙත් ඉහත එකට වඩා වෙනස් වන්නේ මෙහිදී ඔබ ලබා ගත් බිට්කොයින්වලට සරිලන සාම්ප්‍රදායික මුදලක් (ඩොලර්) ගෙවනවා. තවද, මෙම ගනුදෙනුව සිදු වන්නේ වෙලඳපොලක් තුලයි.

3. bitcoin mining මඟින්. මේ ගැන පසුවට කතා කරමු. මයිනිං ක්‍රිප්ටොකරන්සිවල ඉතාම වැදගත් කටයුත්තක් වුවත්, සාමාන්‍ය අය මෙය සිදු කරන්නේ නැත. මයිනිං සිදු කරන්නේ ඉතාම ඉතා සීමිත පිරිසකි. එහෙත් විශාල වටිනාකමක බිට්කොයින් ඉන් උපයා ගත හැකියි (කෝටිපතියෙක් විය හැකියි).

හරි, දැන් බලමු ඔබට බිට්කොයින් ලබා ගන්න පුලුවන් කෙසේද කියා. ඒ සඳහා මුලින්ම ඔබ බිට්කොයින් බ්ලොක්චේන් එක පවත්වාගෙන යන (එනම්, බිට්කොයින් ජාලයට සම්බන්ද) සර්වර් එකක් අවශ්‍යයි. ඔබ කරන්නේ අන්තර්ජාලයෙන් යම් ඇප් එකක් පරිගනකය හෝ ස්මාට් ෆෝන් එකට ස්ථාපනය (install) කිරීමයි. මේ සඳහා කිසිදු මුදලක් වැය නොවන අතර, එවැනි ඇප් සිය ගනනක් playstore, appstore හා අන්තර්ජාලය හරහා ලබා ගත හැකියි.

ඔබට යම් බිට්කොයින් ප්‍රමානයක් හිමි නම්, ඒ බවට බ්ලොක්චේන් එකේ යම් බ්ලොක් එකක සටහන් විය යුතු බව පැවසුවා මතකද? එනම් ඔබගේ නමින් එම බිට්කොයින් ලැබී තිබිය යුතුයි. එහෙත් මෙහිදී ඔබේ නමින් කිව්වට ඔබේ සත්‍ය නම හෝ හැඳුනුම්පත් අංකයට නොවෙයි එම බිට්කොයින් “රෙජිස්ටර්“ වෙන්නේ. ඔබ වෙනුවෙන් ඔබ විසින්ම සාදපු ඉතා විශාල අංකයක් තමයි ඔබේ අනන්‍යතාව වෙනුවට භාවිතා වන්නේ. එම අංකය ලෝකයේ අන් කවරෙකුවත් භාවිතා කරන්නේ නැහැ ඔබ හැර. එය ඔබේම අංකයක්. එම අංකය bitcoin address ලෙස හැඳින්වෙනවා. බිට්කොයින් ඇඩ්‍රස් එක හරියට බැංකුවකින් ලබා දෙන ගිනුම් අංකයක් වගේ. එහෙමත් නැතිනම් ඔබේ දුරකතන අංකය වගේ. ඔබ දන්නවා ඔබට හැර ලෝකයේ වෙන කාටවත් එම අංක හිමි වන්නේ නැහැ.

ක්‍රිප්ටොවල නිර්නාමිකව ගනුදෙනු කිරීමේ හැකියාව පවතින්නේ මෙනිසාමයි. ඔබේ නම ගම ලිපිනය ආදී පෞද්ගලික විස්තර කොහේවත් සඳහන් නොවේ. ඔබ වෙනුවෙන් පෙනී සිටින්නේ නිකංම නිකං අංකයකි. ඉතිං අංකයක් තිබූ පමනින් එය අහවලා යැයි කියන්න විදියක් නැති බව පැහැදිලියිනෙ.

දැන් ගැටලුව වන්නේ බිට්කොයින් ඇඩ්‍රස් එකක් ලබා ගත හැක්කේ කෙසේද හා කාගෙන්ද කියානෙ. බැංකු ගිනුමකදී නම් බැංකුව විසින් ගිනුම් අංකය ලබා දෙනවා; දුරකතනවලදී දුරකතන සේවා ලබා දෙන ආයතනය විසින් එම අංකය ලබා දෙනවා. ක්‍රිප්ටොවලදී පෙරත් සඳහන් කල පරිදි එක් තනි පුද්ගලයකු නැහැ එය පාලනය කරන්නට. එනිසා ක්‍රිප්ටොකරන්සිවලදී ඒ සඳහා අපූරු අතිසාර්ථක සරල ක්‍රමයක් භාවිතා කරනවා. ඒ කියන්නේ, ඔබමයි එම අංකය සාදන්නේ. එනම්, ඔබේ බිට්කොයින් ගිනුම් අංකය ඔබ විසින්මයි සාදා ගන්නේ.

සාමාන්‍යෙයන් බිට්කොයින් ඇඩ්‍රස් එක අපි එදිනෙදා ජීවිතේ භාවිතා කරන දශම ක්‍රමයෙන් ලියුවොත් ඉලක්කම් 48ක පමන දිගු අංකයක් (395827494848495958372945069484739505937837495048 වැනි). එක් එක් ක්‍රිප්ටො ඒකකවල මෙම සංඛ්‍යාෙව් සයිස් එක වෙනස් වේ. 

එයම ඩිජිටල් සංඛ්‍යාවක් ලෙස ලියුවොත් බිට් සිය ගනනක දිගු අංකයක් වනු ඇත. සාමාන්‍යෙයන් 1011101010101010000010101010101111111010101111010101111010000101000101010101010100100100001001001001010101010101000001 000011101010100011100011101011101000111101010011 වැනි ඉතා විශාල ඩිජිටල් සංඛ්‍යාවක් අපට හැකියි ඉංග්‍රිසි අක්ෂර හා ඉලක්කම් භාවිතා කර 12cbQLTFMXRnSzktFkuoG3eHoMeFtpTu3S වැනි කෙටි රූපයකින් ඉදිරිපත් කරන්නත් (alphanumeric representation). එවිට, දල වශයෙන් ඉතා දිගු ඩිජිටල් අංකය 8 ගුනයකින් පමන සංකෝචනය වී කුඩා වචනයක් බවට පත් වේ. එනිසා, බිට්කොයින්වලදී 12cbQLTFMXRnSzktFkuoG3eHoMeFtpTu3S වැනි ඇල්ෆනියුමරික් රූපයෙන් තමයි බිට්කොයින් ඇඩ්‍රස් ලියන්නේ. මෙහි කැපිටල් සිම්පල් අක්ෂර එලෙසම ලිවිය යුතුය; මාරු නොකල යුතුය. ඉතා දිගු 1 හා 0 පමනක් ඇති ඩිජිටල් අංකයක් ලියනවාට වඩා මේ වගේ ඉලක්කම් හා ඉංග්‍රිසි අක්ෂර සහිත කෙටි වචනයක් ලියන එක පහසුයි නේද? 

කෙසේ වෙතත්, අපේ පහසුවට ඉංග්‍රිසි අකුරුත් සහිතව මෙය ලියුවත්, ඇත්තටම එය 1 හා 0 වලින් ලියන ඉතා දිගු ඩිජිටල් සංඛ්‍යාවක් බව සිහි තබා ගන්න. ඇත්තටම පරිගනක ලෝකයේ සියල්ලම පවතින්නේ 1 හා 0 සහිත ඩිජිටල් සංඛ්‍යා වශයෙන්ම පමනි. බිට්කොයින් පවතින්නේද පරිගනක හා අන්තර්ජාලය ඇසුරින් නිසා ඊටද මෙම ලක්ෂනය පොදු වේ.

ඇත්තටම මෙම බිට්කොයින් ඇඩ්‍රස් එක නිකංම ඩිජිටල් අංකයක් නොවේ. මතකද ඒසිමෙට්‍රික් ක්‍රිප්ටොලොජි (PKI) ගැන කතා කරන විට, ප්‍රයිවට් කී පබ්ලික් කී ගැන කතා කළා? බිට්කොයින් ඇඩ්‍රස් එකක් යනු පබ්ලික් කී එකකි. එනම්, ඊට අදාල ප්‍රයිවට් කී එකකුත් තිබෙනවා. ඇයි අපි බිට්කොයින් ඇඩ්‍රස් සඳහා පීකේඅයි භාවිතා කරන්නේ? පිලිතුර සරලයි. ඒ ඇයිදැයි බලමු.

හරි. ඔබ ඔබේම බිට්කොයින් ලිපිනයක් සාදා ගන්නේ කොහොමද? එය ඔබ අතින් ලියන්නේ නැත. එය තමන් විසින් ඉන්ස්ටෝල් කර ගත්තු බිට්කොයින් ඇප් එකෙන් සිදු කර දෙනවා. ඔබට කරන්නට තිබෙන්නේ ඇප් එකේ බට්න් එකක් ඔබා අලුතින් පබ්ලික් කී හා ප්‍රයිවට් කී යුගලයක් සාදා ගන්නයි. ඇප් එකට මෙය සාදන්නට යන්නේ තත්පරයෙන් සියයෙන් පංගුවක් වැනි කෙටි කාලයක්.

ඉතිං, ඇප් එකෙන් ඔබට ලබා දුන් කී යුගලයෙන් පබ්ලික් කී එක තමයි ඔබේ බිට්කොයින් ඇඩ්‍රස් එක බවට පත් වෙන්නේ. එම අංකය මට දුන්නොත් මට හැකියි එම බිට්කොයින් ලිපිනයට මගේ බිට්කොයින් ලිපිනයකින් බිට්කොයින් එවීමට. හරි සරලයි නේද?

එහෙත් තව ප්‍රශ්නයක් ඔබට මතු විය යුතුයි. ඔබේ ඇප් එකෙන් සාදා දෙන බිට්කොයින් ලිපිනය මීට පෙර වෙනත් අයෙකුගෙ අංකය විය නොහැකිද? බැලූබැල්මට එසේ විය හැකියිනෙ. ලෝකයේ ලක්ෂ ගනනක පිරිසක් මෙලෙස බිට්කොයින් ඇඩ්‍රස් සාදා ගන්නවානෙ හැමදාම. ඉතිං එහෙම අහම්බෙන් දෙදෙනෙකුට එකම අංකය ලැබිය හැකියි නේද? “කරුමෙට“ එසේ විය හැකියි. එහෙත් අද දක්වා එසේ වී නැති අතර, එය වීමට තිබෙන සම්භාවිතාවද ඉතාම අඩුය. ඊට හේතුව තමයි මෙම අංකය ඉතා දිගු එකක් වීම. ඉතිං ප්‍රයිවට් පබ්ලික් කී යුගලයක් හදන විට, අහඹු බව උපරිමව පවතින ආකාරයකටයි එම ගනිත සංකල්ප ක්‍රියාවේ යෙදවෙන්නේ.

උපමාවකින් කියතොත්, ඔබට කිව්වොත් මේ ඉඳිකට්ට ඔබේ ගමේ ඔබ කැමති තැනක හංගන්න කියා, හා මටත් එසේ ඉඳිකට්ටක් සඟවන්නැයි පැවසුවොත් අපි දෙන්නම එම ඉඳිකට්ට එකම තැන සැඟවීමට තිබෙන සම්භාවිතාව කොතරම් අඩුදැයි සිතා බලන්න. ඉතිං, එකම ගමේ වෙනුවට ලෝකයේ ඕනෑම තැනක හංගන්නැයි කිව්වොත් කොහොමද? බිට්කොයින් ඇඩ්‍රස් සෑදීම ගැනද තත්වය එසේමයි.

දැන් මුලදී නැඟූ ප්‍රශ්නයකට පිලිතුරක් දෙමු. ඇයි බිට්කොයින් ඇඩ්‍රස්වලදී පබ්ලික් කී ප්‍රයිවට් කී එන්ක්‍රිප්ෂන් ක්‍රමය (PKI) යොදා ගන්නේ? ඔබට බිට්කොයින් ලැබෙනවා යනු ඔබේ බිට්කොයින් ඇඩ්‍රස් එකකට ඉදිරියෙන් එම බිට්කොයින්වල අගය සටහන් වීමනෙ. ඉතිං, බිට්කොයින් ලිපියනය කියන්නේ නිකංම අංකයක්. එම අංකය ඔබට පමනක් හැසිරිවිය හැක්කේ කෙසේද? ඔබේ නම එම අංකයේ නැහැනෙ. ඉතිං එය ඔබේ කියන්නේ කෙසේද? මටත් කිව හැකියිනෙ එම අංකය මගේ කියා. එවිට මට හැකියි එම අංකය යටතේ සටහන් වී තිබෙන බිට්කොයින් වියදම් කරන්නට. අන්න එම තත්වය මඟ හැරීමටයි පබ්ලික් ප්‍රයිවට් කී යොදා ගන්නේ. 

ඔබේ පබ්ලික් කී එකට, එනම් ඔබේ බිට්කොයින් ඇඩ්‍රස් එකට යම් බිට්කොයින් ප්‍රමානයක් ලැබුනා යැයි සිතන්න. එතකොට එම පබ්ලික් කී එකේ ප්‍රයිවට් කී එක තිබෙන්නේ ඔබ සතුව පමනයි. මා පැවසුවොත් එය මගේ කියා, මට සිදු වෙනවා එය ඔප්පු කරන්නට. ඒ කියන්නේ ඊට අදාල ප්‍රයිවට් කී එක මා සතුව තිබිය යුතුයි. එනිසා, ඔබ සතුව පමනක් එම බිට්කොයින් ඇඩ්‍රස් එකේ ප්‍රයිවට් කී එක තිබෙන නිසා, වෙන කාටවත් ඊට අයිතිවාසිකම් කිව නොහැකියි නේද? මෙම අයිතිවාසිකම් කීමේ ක්‍රමය තාක්ෂණිකව සිදු වන්නේ පහත ආකාරයටයි.

ඔබගේ පබ්ලික් කී එක, එනම් ඔබේ බිට්කොයින් ලිපිනය ඔබ මට එවනවා. මා එයට යම් බිට්කොයින් ගනනක් එවනවා. ඒ සමඟම මා එම පනිවුඩයේ (ගනුදෙනුව සම්බන්ද දත්තයේ), ඔබේ පබ්ලික් කී එකෙන් එන්ක්‍රිප්ට් කරපු තවත් දත්තයක් එවනවා. දැන් කාට හරි හැකියි නම්, අර පනිවුඩයේ මා එන්ක්‍රිප්ට් කරපු දත්ත කොටස ඩික්‍රිප්ට් කරන්න, අන්න එම තැනැත්තාට මෙම බිට්කොයින්වල අයිතිය ලැබෙනවා. ඉතිං, මා එය එන්ක්‍රිප්ට් කලේ ඔබේ පබ්ලික් කී එකෙන් නිසා, ඊට අදාල ප්‍රයිවට් කී එක තිබෙන්නේ ඔබ සතුව පමනක් නිසා, ඔබට හැර එය ඩික්‍රිප්ට් කිරීමට වෙන කාටවත් බැරිය. එනිස, එම බිට්කොයින්වල අයිතිය ඔබට පමනක් තහවුරු කර ගත හැකිය.

ඊ ලඟ අවසන් ලිපියෙන් හමු වෙමු.


1 comment:

  1. බ්ලොක් චේන් තාක්ෂණයෙන් කරගන්න පුළුවන් බිට් කොයින් හැර වෙනත් වැඩ මොනවද?

    ReplyDelete

Thanks for the comment made on blog.tekcroach.top.

අලුත් කමෙන්ට්