ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන

අපි දිගු කලක් තිස්සේ ගුප්තකේතන මුදල්වල නිර්නාමිකත්වය පිළිබඳ මාතෘකාව ගැන උනන්දු වී ඇති අතර මෙම ප්රදේශයේ තාක්ෂණයන් සංවර්ධනය කිරීම අනුගමනය කිරීමට උත්සාහ කරමු. අපගේ ලිපිවල අපි දැනටමත් මෙහෙයුම් මූලධර්ම පිළිබඳව විස්තරාත්මකව සාකච්ඡා කර ඇත රහසිගත ගනුදෙනු Monero දී, සහ ද සිදු කරන ලදී සංසන්දනාත්මක සමාලෝචනය මෙම ක්ෂේත්රයේ පවතින තාක්ෂණයන්. කෙසේ වෙතත්, අද වන විට සියලුම නිර්නාමික ගුප්තකේතන මුදල් Bitcoin - Unspent Transaction Output (මෙතැන් සිට UTXO) විසින් යෝජනා කරන ලද දත්ත ආකෘතිය මත ගොඩනගා ඇත. Ethereum වැනි ගිණුම් මත පදනම් වූ blockchains සඳහා, නිර්නාමිකභාවය සහ රහස්‍යභාවය ක්‍රියාත්මක කිරීම සඳහා පවතින විසඳුම් (උදාහරණයක් ලෙස, මොබියස් හෝ ඇස්ටෙක්) UTXO ආකෘතිය ස්මාර්ට් කොන්ත්‍රාත්තුවල අනුකරණය කිරීමට උත්සාහ කළේය.

2019 පෙබරවාරි මාසයේදී, ස්ටැන්ෆර්ඩ් විශ්ව විද්‍යාලයේ සහ වීසා පර්යේෂණයේ පර්යේෂකයන් පිරිසක් නිදහස් පූර්ව මුද්‍රණය "සෙතර්: ස්මාර්ට් කොන්ත්‍රාත්තුවේ ලෝකයේ පුද්ගලිකත්වය කරා." ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය සහතික කිරීම සඳහා ප්‍රවේශයක් යෝජනා කළ පළමු කතුවරුන් වූ අතර ස්මාර්ට් කොන්ත්‍රාත්තුවේ අනුවාද දෙකක් ඉදිරිපත් කරන ලදී: රහසිගත (ශේෂයන් සැඟවීම සහ හුවමාරු මුදල්) සහ නිර්නාමික (ලබන්නා සහ යවන්නා සැඟවීම) ගනුදෙනු සඳහා. අපි යෝජිත තාක්‍ෂණය සිත්ගන්නාසුළු වන අතර එහි සැලසුම බෙදා ගැනීමට කැමැත්තෙමු, එසේම ගිණුම් පදනම් වූ බ්ලොක්චේන් වල නිර්නාමිකභාවය පිළිබඳ ගැටළුව ඉතා දුෂ්කර යැයි සලකන්නේ මන්දැයි සහ කතුවරුන් එය සම්පූර්ණයෙන්ම විසඳීමට සමත් වූයේද යන්න ගැන කතා කරන්න.

මෙම දත්ත ආකෘතිවල ව්යුහය ගැන

UTXO ආකෘතියේ, ගනුදෙනුවක් "ආදාන" සහ "ප්‍රතිදාන" වලින් සමන්විත වේ. "ප්‍රතිදාන" වල සෘජු ප්‍රතිසමයක් වන්නේ ඔබගේ මුදල් පසුම්බියේ ඇති බිල්පත් ය: සෑම "ප්‍රතිදානයකට" යම් නිකායක් ඇත. ඔබ යමෙකුට ගෙවන විට (ගනුදෙනුවක් සාදන විට) ඔබ "ප්‍රතිදානයන්" එකක් හෝ කිහිපයක් වැය කරන විට, ඒවා ගනුදෙනුවේ "ආදාන" බවට පත් වන අතර, බ්ලොක්චේන් ඒවා වියදම් කළ ලෙස සලකුණු කරයි. මෙම අවස්ථාවෙහිදී, ඔබගේ ගෙවීමේ ලබන්නා (හෝ ඔබ විසින්ම, ඔබට වෙනසක් අවශ්‍ය නම්) අලුතින් ජනනය කරන ලද "ප්‍රතිදාන" ලැබේ. මෙය ක්‍රමානුකූලව මෙලෙස නිරූපණය කළ හැක:

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන

ගිණුම්-පාදක බ්ලොක්චේන් ඔබේ බැංකු ගිණුම මෙන් ව්‍යුහගත කර ඇත. ඔවුන් ගනුදෙනු කරන්නේ ඔබේ ගිණුමේ ඇති මුදල සහ හුවමාරු මුදල සමඟ පමණි. ඔබ ඔබේ ගිණුමෙන් යම් මුදලක් මාරු කරන විට, ඔබ කිසිදු "ප්‍රතිදානයක්" පුළුස්සා නොගන්නේ නම්, වියදම් කර ඇති කාසි සහ නොකළ දේ මතක තබා ගැනීමට ජාලයට අවශ්‍ය නොවේ. සරලම අවස්ථාවෙහිදී, ගනුදෙනු සත්‍යාපනය යවන්නාගේ අත්සන සහ ඔහුගේ ශේෂයේ මුදල පරීක්ෂා කිරීම දක්වා පැමිණේ:

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන

තාක්ෂණය විශ්ලේෂණය

ඊළඟට, අපි Zether ගණුදෙණු මුදල, ලබන්නා සහ යවන්නා සඟවන ආකාරය ගැන කතා කරමු. අපි එහි ක්රියාකාරිත්වයේ මූලධර්ම විස්තර කරන විට, රහස්ය සහ නිර්නාමික අනුවාදවල වෙනස්කම් අපි සටහන් කරමු. ගිණුම් පාදක බ්ලොක්චේන් වල රහස්‍යභාවය සහතික කිරීම වඩාත් පහසු බැවින්, නිර්නාමිකකරණය මගින් පනවන ලද සමහර සීමා කිරීම් තාක්‍ෂණයේ රහස්‍ය අනුවාදයට අදාළ නොවේ.

ශේෂයන් සහ හුවමාරු මුදල් සැඟවීම

Zether හි ශේෂයන් සංකේතනය කිරීමට සහ මුදල් මාරු කිරීමට සංකේතන ක්‍රමයක් භාවිතා කරයි එල් ගමාල්. එය පහත පරිදි ක්රියා කරයි. ඇලිස්ට බොබ් යැවීමට අවශ්‍ය වූ විට b ලිපිනය අනුව කාසි (එහි පොදු යතුර) Y, ඇය අහඹු අංකයක් තෝරා ගනී r සහ මුදල සංකේතනය කරයි:

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන
එහිදී C - සංකේතනය කළ මුදල, D - මෙම මුදල විකේතනය කිරීමට අවශ්‍ය සහායක අගය, G - ඉලිප්සාකාර වක්‍රයේ ස්ථාවර ලක්ෂ්‍යයක්, රහස් යතුරෙන් ගුණ කළ විට, පොදු යතුර ලැබේ.

බොබ්ට මෙම අගයන් ලැබුණු විට, ඔහු ඒවා ඔහුගේ සංකේතාත්මක ශේෂයට එකම ආකාරයකින් එකතු කරයි, එම නිසා මෙම යෝජනා ක්‍රමය පහසු වේ.

ඒ හා සමානව, ඇලිස් ඇගේ ශේෂයෙන් එකම අගයන් අඩු කරයි Y ඔබගේ පොදු යතුර භාවිතා කරයි.

ලබන්නා සහ යවන්නා සැඟවීම

UTXO හි "ප්‍රතිදාන" මාරු කිරීම ගුප්තකේතන මුදල් වල මුල් දින දක්වා දිවෙන අතර යවන්නා සැඟවීමට උපකාරී වේ. මෙය සිදු කිරීම සඳහා, යවන්නා විසින්ම, මාරු කිරීමක් සිදු කරන විට, බ්ලොක්චේන් හි අහඹු "ප්රතිදාන" එකතු කර ඒවා ඔහුගේම ඒවා සමඟ මිශ්ර කරයි. ඊළඟට, ඔහු මුද්ද අත්සනකින් "ප්‍රතිදාන" අත්සන් කරයි - යවන්නාගේ කාසි සම්බන්ධ "ප්‍රතිදාන" අතර ඇති බව සත්‍යාපනය කරන්නාට ඒත්තු ගැන්වීමට ඔහුට ඉඩ සලසන ගුප්ත ලේඛන යාන්ත්‍රණයකි. මිශ්ර කාසිම, ඇත්ත වශයෙන්ම, වියදම් නොකෙරේ.

කෙසේ වෙතත්, ලබන්නා සැඟවීමට ව්‍යාජ නිමැවුම් උත්පාදනය කිරීමට අපට නොහැකි වනු ඇත. එබැවින්, UTXO හි, එක් එක් "ප්රතිදානය" එහිම අනන්ය ලිපිනයක් ඇති අතර, එය මෙම කාසි ලබන්නාගේ ලිපිනයට ගුප්ත ලේඛනගතව සම්බන්ධ වේ. මේ මොහොතේ, එහි රහස් යතුරු නොදැන, අද්විතීය නිමැවුම් ලිපිනය සහ ලබන්නාගේ ලිපිනය අතර සම්බන්ධතාවය හඳුනා ගැනීමට ක්රමයක් නොමැත.

ගිණුම් පාදක ආකෘතිය තුළ, අපට එක්-වර ලිපින භාවිතා කළ නොහැක (එසේ නොමැති නම් එය දැනටමත් "පිටවීම්" ආකෘතියක් වනු ඇත). එබැවින්, ලබන්නා සහ යවන්නා බ්ලොක්චේන් හි අනෙකුත් ගිණුම් අතර මිශ්‍ර කළ යුතුය. මෙම අවස්ථාවෙහිදී, සංකේතාත්මක 0 කාසි මිශ්‍ර ගිණුම් වලින් හර කරනු ලැබේ (හෝ ලබන්නා මිශ්‍ර නම් 0 එකතු කරනු ලැබේ), ඇත්ත වශයෙන්ම ඒවායේ සැබෑ ශේෂය වෙනස් නොකර.

යවන්නාට සහ ලබන්නාට සෑම විටම ස්ථිර ලිපිනයක් ඇති බැවින්, එකම ලිපිනවලට මාරු කිරීමේදී මිශ්‍ර කිරීම සඳහා එකම කණ්ඩායම් භාවිතා කිරීම අවශ්‍ය වේ. උදාහරණයක් සමඟ මෙය බැලීම පහසුය.

ඇලිස් බොබ්ගේ පුණ්‍යායතනයට දායක වීමට තීරණය කරයි යැයි සිතමු, නමුත් මාරුව බාහිර නිරීක්ෂකයෙකුට නිර්නාමිකව පැවතීමට කැමැත්තක් දක්වයි. ඉන්පසුව, යවන්නාගේ ක්ෂේත්‍රයේ වෙස්වළා ගැනීම සඳහා, ඇය ඇඩම් සහ ඇඩෙල්ගේ ගිණුම් වලටද ඇතුළු වේ. සහ බොබ් සැඟවීමට, ලබන්නාගේ ක්ෂේත්‍රයේ බෙන් සහ බිල්ගේ ගිණුම් එක් කරන්න. ඊළඟ දායකත්වය ලබා දෙමින්, ඇලිස් ඇය අසල ඇලෙක්ස් සහ අමන්දා ද, බොබ් අසල බෲස් සහ බෙන්ජන් ද ලිවීමට තීරණය කළාය. මෙම අවස්ථාවෙහිදී, බ්ලොක්චේන් විශ්ලේෂණය කිරීමේදී, මෙම ගනුදෙනු දෙකෙහි ඇත්තේ එක් ඡේදනය වන සහභාගිවන්නන් යුගලයක් පමණි - ඇලිස් සහ බොබ්, මෙම ගනුදෙනු නිර්නාමික කරයි.

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන

ගනුදෙනු තරඟ

අප දැනටමත් සඳහන් කර ඇති පරිදි, ගිණුම් පදනම් වූ පද්ධති තුළ ඔබගේ ශේෂය සැඟවීමට, පරිශීලකයා ඔහුගේ ශේෂය සහ මාරු මුදල සංකේතනය කරයි. ඒ සමගම, ඔහුගේ ගිණුමේ ශේෂය සෘණ නොවන බව ඔප්පු කළ යුතුය. ගැටළුව වන්නේ ගනුදෙනුවක් නිර්මාණය කිරීමේදී, පරිශීලකයා තම ජංගම ගිණුමේ තත්ත්වය පිළිබඳව සාක්ෂියක් ගොඩනඟා ගැනීමයි. Bob ඇලිස් වෙත ගනුදෙනුවක් යවා එය ඇලිස් විසින් එවන ලද ගනුදෙනුවට පෙර පිළිගනු ලැබුවහොත් කුමක් සිදුවේද? එවිට ඇලිස්ගේ ගනුදෙනුව අවලංගු ලෙස සලකනු ලැබේ, මන්ද ශේෂය පිළිබඳ සාක්ෂිය බොබ්ගේ ගනුදෙනුව පිළිගැනීමට පෙර ගොඩනගා ඇත.

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන

එවැනි තත්වයක් තුළ පැමිණෙන පළමු තීරණය වන්නේ ගනුදෙනුව සිදු කරන තුරු ගිණුම කැටි කිරීමයි. නමුත් මෙම ප්‍රවේශය සුදුසු නොවේ, මන්ද බෙදා හරින ලද පද්ධතියක එවැනි ගැටළුවක් විසඳීමේ සංකීර්ණතාවයට අමතරව, නිර්නාමික යෝජනා ක්‍රමයක් තුළ කාගේ ගිණුම අවහිර කළ යුතුද යන්න පැහැදිලි නොවනු ඇත.

මෙම ගැටළුව විසඳීම සඳහා, තාක්ෂණය පැමිණෙන සහ පිටතට යන ගනුදෙනු වෙන් කරයි: වියදම් ශේෂ පත්‍රයට ක්ෂණික බලපෑමක් ඇති කරන අතර ලැබීම් ප්‍රමාද බලපෑමක් ඇති කරයි. මෙය සිදු කිරීම සඳහා, "යුගය" යන සංකල්පය හඳුන්වා දෙනු ලැබේ - ස්ථාවර ප්රමාණයේ කුට්ටි සමූහයකි. වත්මන් "යුගය" තීරණය වන්නේ බ්ලොක් උස කණ්ඩායම් ප්රමාණයෙන් බෙදීමෙනි. ගනුදෙනුවක් සිදු කරන විට, ජාලය වහාම යවන්නාගේ ශේෂය යාවත්කාලීන කර ලබන්නාගේ අරමුදල් ගබඩා ටැංකියක ගබඩා කරයි. සමුච්චිත අරමුදල් ගෙවන්නාට ලබා දෙන්නේ නව "යුගයක්" ආරම්භ වූ විට පමණි.

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

මෙම විසඳුම රහසිගත මාරු කිරීම් සඳහා හොඳින් ක්රියා කරයි, නමුත් නිර්නාමික ගනුදෙනු සමඟ, අපි පසුව දකින පරිදි, එය බරපතල ගැටළු නිර්මාණය කරයි.

නැවත ධාවනය වන ප්‍රහාර වලින් ආරක්ෂා වීම

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

මෙම ප්‍රහාරය නැවත ප්‍රහාරයක් ලෙස හැඳින්වේ. UTXO ආකෘතියේ, එවැනි ප්‍රහාර අදාළ නොවේ, මන්ද ප්‍රහාරකයා වියදම් කළ ප්‍රතිදානයන් භාවිතා කිරීමට උත්සාහ කරයි, එය වලංගු නොවන අතර ජාලය විසින් ප්‍රතික්ෂේප කරනු ලැබේ.

මෙය සිදුවීම වලක්වා ගැනීම සඳහා, අහඹු දත්ත සහිත ක්ෂේත්රයක් ගනුදෙනුව තුලට ගොඩනඟා ඇති අතර, එය නොන්ස් හෝ සරලව "ලුණු" ලෙස හැඳින්වේ. ලුණු සමඟ ගනුදෙනුවක් නැවත ඉදිරිපත් කරන විට, සත්‍යාපනය කරන්නා නොන්ස් එක කලින් භාවිතා කර ඇත්දැයි සොයා බලයි, එසේ නොමැති නම්, ගනුදෙනුව වලංගු යැයි සලකයි. බ්ලොක්චේන් හි පරිශීලක නොන්ස් හි සම්පූර්ණ ඉතිහාසය ගබඩා නොකිරීමට, සාමාන්‍යයෙන් පළමු ගනුදෙනුවේදී එය බිංදුවට සමාන වන අතර පසුව එකකින් වැඩි වේ. ජාලයට පරීක්‍ෂා කළ හැක්කේ නව ගනුදෙනුවේ සිදු නොවන ගනුදෙනුව පෙර එකින් එක වෙනස් වන්නේද යන්න පමණි.

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

Zether හි කතුවරුන් "යුගය" මත පදනම්ව, ගුප්ත ලේඛනගතව නොන්ස් උත්පාදනය කිරීමට යෝජනා කරයි. උදාහරණ වශයෙන්:

ගිණුම් පාදක බ්ලොක්චේන් වල නිර්නාමික භාවය ගැන
එය x යවන්නාගේ රහස් යතුර වේ, සහ Gepoch - 'Zether +' පෝරමයේ තන්තුවක් හෑෂ් කිරීමෙන් ලබාගත් යුගය සඳහා අතිරේක උත්පාදකයක්. දැන් ගැටළුව විසඳී ඇති බව පෙනේ - අපි යවන්නාගේ නොන්ස් හෙළි නොකරන අතර සම්බන්ධ නොවූ සහභාගිවන්නන්ගේ නොසැලකිලිමත්කම්වලට මැදිහත් නොවන්නෙමු. නමුත් මෙම ප්රවේශය බරපතල සීමාවක් පනවයි: එක් ගිණුමකට "යුගයට" එක් ගනුදෙනුවකට වඩා යැවිය නොහැක. මෙම ගැටළුව, අවාසනාවකට මෙන්, නොවිසඳී පවතින අතර, දැනට Zether හි නිර්නාමික අනුවාදය, අපගේ මතය අනුව, භාවිතයට කිසිසේත්ම සුදුසු නොවේ.

ශුන්‍ය දැනුම ඔප්පු වල සංකීර්ණත්වය

UTXO හි, යවන්නා ඔහු සෘණාත්මක මුදලක් වැය නොකරන බව ජාලයට ඔප්පු කළ යුතුය, එසේ නොමැතිනම් සිහින් වාතයෙන් නව කාසි උත්පාදනය කිරීමට හැකි වේ (මෙය කළ හැක්කේ ඇයි, අපි පෙර එකක ලිවීය. ලිපි) මිශ්‍ර කරන කාසි අතර ඔහුට අයත් අරමුදල් ඇති බව සනාථ කිරීම සඳහා මුද්ද අත්සනක් සමඟ “ආදාන” අත්සන් කරන්න.

ගිණුම්-පාදක බ්ලොක්චේන් හි නිර්නාමික අනුවාදයේ, සාක්ෂි සඳහා ප්‍රකාශන වඩාත් සංකීර්ණ වේ. යවන්නා එය ඔප්පු කරයි:

  1. යවන ලද මුදල ධනාත්මක ය;
  2. ශේෂය සෘණාත්මක නොවේ;
  3. යවන්නා විසින් හුවමාරු ප්‍රමාණයන් (ශුන්‍යය ඇතුළුව) නිවැරදිව සංකේතනය කර ඇත;
  4. ශේෂයේ ශේෂය වෙනස් වන්නේ යවන්නාට සහ ලබන්නාට පමණි;
  5. යවන්නාට ඔහුගේ ගිණුමේ පුද්ගලික යතුර හිමි වන අතර ඔහු ඇත්ත වශයෙන්ම යවන්නන්ගේ ලැයිස්තුවේ (සම්බන්ධ වූවන් අතර);
  6. ගනුදෙනුවේදී භාවිතා කරන ලද Nonce නිවැරදිව රචනා කර ඇත.

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

අවසානයේදී කුමක් ද?

අපගේ මතය අනුව, ගිණුම් මත පදනම් වූ blockchains සඳහා පෞද්ගලිකත්වය ගෙන එන Zether හි කොටස දැන් භාවිතා කළ හැක. නමුත් මේ මොහොතේ, තාක්ෂණයේ නිර්නාමික අනුවාදය එහි භාවිතය සඳහා බරපතල සීමාවන් පනවා ඇති අතර, එය ක්රියාත්මක කිරීම සඳහා එහි සංකීර්ණත්වය. කෙසේ වෙතත්, කතුවරුන් එය මාස කිහිපයකට පෙර නිකුත් කළ බව වට්ටම් නොකළ යුතු අතර, සමහර විට වෙනත් අයෙකු අද පවතින ගැටළු වලට විසඳුමක් සොයා ගනු ඇත. කොහොමත් විද්‍යාව කරන්නේ මෙහෙමයි.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න