අදහසේ සිට ක්රියාත්මක කිරීම දක්වා: අපි දැනට පවතින ඉලිප්සීය වක්ර සංඛ්යාංක අත්සන යෝජනා ක්රමය නියත වන පරිදි වෙනස් කරන්නෙමු, එය මත පදනම්ව අපි බ්ලොක්චේන් තුළ සත්යාපනය කළ හැකි ව්යාජ අහඹු සංඛ්යා ලබා ගැනීම සඳහා කාර්යයන් සපයන්නෙමු.
අදහස
2018 සරත් සෘතුවේ දී, Waves blockchain ඇතුළත් විය
මෙම ප්රශ්නය ගැන ප්රහේලිකාවක් ඇති කරමින්, මම අවසානයේ නිගමනයට පැමිණියෙමි: ඕනෑම බ්ලොක්චේන් සෛලයකි; සංවෘත පද්ධතියක එන්ට්රොපියේ විශ්වාසදායක ප්රභවයක් ලබා ගත නොහැක.
නමුත් මම තවමත් එක් අදහසකට කැමතියි: නම්
Waves blockchain වේදිකාව අත්සන් යෝජනා ක්රමයක් භාවිතා කරයි
පැහැදිලිවම, එහි පිරිසිදු ස්වරූපයෙන්, එවැනි අත්සනක් ව්යාජ-අහඹු සංඛ්යා ප්රභවයක් ලෙස භාවිතා කළ නොහැක, මන්ද එය නිර්ණය නොවන බැවින් ඔරකල් මගින් පහසුවෙන් හැසිරවිය හැක.
එහෙත්, එය සිදු වූ පරිදි, එය නියත වශයෙන්ම එය නියත වශයෙන්ම කළ හැකිය.
මට ලොකු බලාපොරොත්තු තිබුණා
මඳක් සිතා බලා දේශීය විශ්ලේෂකයින්ගේ සහාය ලබා ගැනීමෙන් පසුව, VECRO වැඩ යෝජනා ක්රමය උපත ලැබීය.
VECRO යනු Verifiable Elliptic Curve Random Oracle සඳහා කෙටි යෙදුමකි, රුසියානු භාෂාවෙන් අදහස් කරන්නේ ඉලිප්සීය වක්ර මත සත්යාපනය කළ හැකි අහඹු ඔරකල් යන්නයි.
සෑම දෙයක්ම ඉතා සරල විය; අධිෂ්ඨානය සාක්ෂාත් කර ගැනීම සඳහා, අත්සන් කළ යුතු පණිවිඩය දිස්වීමට පෙර ඔබ R හි අගය නිවැරදි කළ යුතුය. R කැපවී ඇත්නම් සහ අත්සන් කරන ලද පණිවිඩයේ කොටසක් නම්, එය අත්සන් කරන පණිවිඩයේ R කැපවී ඇති බව තවදුරටත් සහතික කරයි නම්, S හි අගය පරිශීලකයාගේ පණිවිඩය මගින් අනන්යව තීරණය වන අතර එම නිසා ව්යාජ අංක සඳහා මූලාශ්රයක් ලෙස භාවිතා කළ හැක.
එවැනි යෝජනා ක්රමයක් තුළ, R සවි කර ඇත්තේ කෙසේද යන්න ගැටළුවක් නොවේ; මෙය ඔරකල්හි වගකීම ලෙස පවතී. S යන්න පරිශීලකයා විසින් අනන්ය ලෙස නිර්ණය කිරීම වැදගත් වන නමුත් ඔරකල් විසින් එය ප්රකාශයට පත් කරන තුරු එහි අගය නොදනී. අපට අවශ්ය සියල්ල!
ස්ථාවර R ගැන කතා කරන විට, එය සටහන් කරන්න
සමස්තයක් වශයෙන්, ඔරකල් මඟින් පරිශීලකයින්ට කාර්යයන් දෙකක් සැපයිය යුතුය: ආරම්භ කිරීම, R අගය ස්ථාවර කිරීම සහ S අගය ආපසු ලබා දෙන අත්සන. මෙම අවස්ථාවේදී, R, S යුගලය ස්ථාවර පණිවිඩයක් අඩංගු පරිශීලක පණිවිඩයක සාමාන්ය සත්යාපනය කළ හැකි අත්සන වේ. අගය R සහ අත්තනෝමතික පරිශීලක දත්ත.
බ්ලොක්චේන් සඳහා මෙම යෝජනා ක්රමය සාමාන්ය දෙයක් නොවන බව තර්ක කළ හැකිය
මාස හයක් තිස්සේ ක්රියාත්මක කිරීමේ අදහස මගේ හිසෙහි ගිලී ගියේය, අවසානයේ අභිප්රේරණය ස්වරූපයෙන් දිස්වන තුරු
Реализация
ඉතින්, මෙම ව්යාපෘතියේ
ආයෙත් පාරක් පැත්තකින් තියලා පැහැදිලි කරන්න. ඔරකල් යෝජිත යෝජනා ක්රමයට අනුව පමණක් ක්රියා නොකරයි. ස්ථාපිත කර ඇති බ්ලොක්චේන් මට්ටමින් එහි කාර්යය සම්පූර්ණයෙන්ම පාලනය වේ
දැනට, Waves mainnet මත එක් VECRO ක්රියාත්මක වේ (ඔබට ඔබේම ලෙස ධාවනය කළ හැකිය, එය අපහසු නැත,
ඔරකල් සේවාව භාවිතා කිරීම සඳහා ඔබ කළ යුත්තේ:
- R සවි කරන්න;
- ඔරකල් අන්වර්ථය init@vecr වෙත අවම වශයෙන් තරංග 0.005 ක් යවන්න;
- ඔරකල් සිට පරිශීලකයා වෙත 1 R-vecr ටෝකනය මාරු කිරීමේදී ඇමුණුම් ක්ෂේත්රයේ R-කේතය ලබා ගන්න;
- අත්සනක් ලබා ගන්න;
- ඔරකල් අන්වර්ථය random@vecr වෙත අවම වශයෙන් තරංග 0.005 ක් යවන්න, තවද ඇමුණුම් ක්ෂේත්රයේ කලින් ලැබුණු R-කේතය සහ අතිරේක පරිශීලක දත්ත සඳහන් කළ යුතුය;
- ඔරකල් සිට පරිශීලකයා වෙත 1 S-vecr ටෝකනය මාරු කිරීමේදී ඇමුණුම් ක්ෂේත්රයේ S-කේතය ලබා ගන්න;
- ව්යාජ අහඹු සංඛ්යාවේ මූලාශ්රයක් ලෙස S-කේතය භාවිතා කරන්න.
වත්මන් ක්රියාත්මක කිරීමේ සූක්ෂ්මතා:
- ඔරකල් වෙත යවන තරංග, උපරිම තරංග 1ක් දක්වා, පරිශීලකයා වෙත ආපසු ලබා දෙන ගනුදෙනුව සඳහා කොමිස් මුදලක් ලෙස භාවිත කෙරේ;
- R-කේතය යනු 'R' අක්ෂරයේ බයිටයක සහ 32-byte base58-කේතනය කළ R අගයක සංකලනයයි;
- ඇමුණුමේ R-කේතය පළමු විය යුතුය, පරිශීලක දත්ත R-code පසු පැමිණේ;
- S-කේතය යනු 'S' අක්ෂරයේ බයිටයක සහ S හි 32-byte base58-කේතන අගයක සංකලනයයි;
- S යනු මොඩියුල බෙදීමේ ප්රතිඵලයකි, එබැවින් ඔබට S යනු සම්පූර්ණ 256-bit ව්යාජ අංකයක් ලෙස භාවිතා කළ නොහැක (මෙම අංකය උපරිම 252-bit ව්යාජ අංකයක් ලෙස සැලකිය හැක);
- සරලම විකල්පය වන්නේ S-කේත හැෂ් ව්යාජ අහඹු අංකයක් ලෙස භාවිතා කිරීමයි.
S-කේතය ලැබීමේ උදාහරණය:
- ආරම්භ කිරීම:
https://wavesexplorer.com/tx/8gc8jwM7JrPNehoDs7NVyos7BsufYktvkwVW1B6FAY6 - R-කේතය ලබා ගැනීම:
https://wavesexplorer.com/tx/9eB25SbzEwvHEbm8pcKj7MGDrYv1u3Fxpj696FkJ96hd - R-කේත අත්සන් කිරීම සහ පරිශීලක දත්ත "අහඹු" ප්රතිඵලය විමසීම:
https://wavesexplorer.com/tx/6faoFJobEsugDFYmYmfsbtQYABmckNuE2kevaLh7ifzz - S-කේතය ලැබීම:
https://wavesexplorer.com/tx/C5VrFLQcprbA1KXAToaNvMP4Kg2rq43NkwWuADAA7wXX
තාක්ෂණික දෘෂ්ටි කෝණයකින්, ඔරකල් වැඩ සඳහා සම්පූර්ණයෙන්ම සූදානම්, ඔබට එය ආරක්ෂිතව භාවිතා කළ හැකිය. සාමාන්ය පරිශීලකයාගේ භාවිතයේ දෘෂ්ටි කෝණයෙන්, පහසු චිත්රක අතුරු මුහුණතක් නොමැතිකම ඇත; මෙය බලා සිටීමට සිදුවනු ඇත.
ප්රශ්නවලට පිළිතුරු දීමට සහ අදහස් පිළිගැනීමට මම සතුටු වෙමි, ස්තූතියි.
මූලාශ්රය: www.habr.com