{"id":32343,"date":"2019-10-31T21:46:27","date_gmt":"2019-10-31T18:46:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne\/"},"modified":"2019-10-31T21:46:27","modified_gmt":"2019-10-31T18:46:27","slug":"cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne","title":{"rendered":"Blockchain'i digitaalallkirja p\u00f5hinev juhuslik oraakel","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ideest teostuseni: muudetakse olemasolevat elliptilise k\u00f5vera digitaalallkirja skeemi nii, et see oleks determinantne ning selle alusel pakume v\u00e4lja blokeeritud kontrollitavate pseudojuhuslike numbrite genereerimise funktsioone.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Blockchain&#039;i digitaalallkirja p\u00f5hinev juhuslik oraakel\" src=\"\/wp-content\/uploads\/2019\/04\/91c321aa895498263f80f586aa336956.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1 id=\"ideya\">Idee<\/h1>\n<p><\/p>\n<p>2018. aasta s\u00fcgisel aktiviseeriti Waves'i plokiahelas <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.wavesplatform.com\/smart-accounts-finally-activated-on-waves-mainnet-8bb7c7b67beb\">esimesed nutilepingud<\/a><\/noindex>, millele j\u00e4rgnes kohe k\u00fcsimus usaldusv\u00e4\u00e4rsete <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%93%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_%D0%BF%D1%81%D0%B5%D0%B2%D0%B4%D0%BE%D1%81%D0%BB%D1%83%D1%87%D0%B0%D0%B9%D0%BD%D1%8B%D1%85_%D1%87%D0%B8%D1%81%D0%B5%D0%BB\">pseudojuhuslike numbrite<\/a><\/noindex>saamise v\u00f5imaluse kohta.<\/p>\n<p><\/p>\n<p>Pea vaeva selle k\u00fcsimuse \u00fcle m\u00f5eldes, j\u00f5udsin l\u00f5puks j\u00e4reldusele: iga plokiahel on rakend, suletud s\u00fcsteemis on usaldusv\u00e4\u00e4rse entropia allika saamine v\u00f5imatu.<\/p>\n<p><\/p>\n<p>Kuid \u00fcks idee meeldis mulle siiski: kui <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A1%D0%BB%D1%83%D1%87%D0%B0%D0%B9%D0%BD%D1%8B%D0%B9_%D0%BE%D1%80%D0%B0%D0%BA%D1%83%D0%BB\">juhuslik oraakel<\/a><\/noindex> kui kasutaja allkirjastab kasutajaandmeid deterministliku algoritmiga, suudab ta alati sellist allkirja kontrollida avatud v\u00f5tmega ning olla kindel, et saadud v\u00e4\u00e4rtus on ainulaadne. Oraakel ei suuda, olenemata soovist, midagi muuta, algoritm annab selge tulemuse. Sisuliselt fikseerib kasutaja tulemuse, kuid ei tea seda enne, kuni oraakel selle avaldab. Tulemuseks on, et oraaklile ei saa t\u00e4ielikult usaldada, kuid tema t\u00f6\u00f6d saab tulemust kontrollida. Seet\u00f5ttu v\u00f5ib sellist allkirja, kui kontrollimine on edukas, pidada pseudojuhusliku arvu entropia allikaks.<\/p>\n<p><\/p>\n<p>Blockchain-platvormil Waves kasutatakse allkirjastamisskeemi <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/EdDSA\">EdDSA<\/a><\/noindex> variant <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/EdDSA#Ed25519\">Ed25519<\/a><\/noindex>. Antud skeemis koosneb allkiri v\u00e4\u00e4rtustest R ja S, kus R s\u00f5ltub juhuslikust v\u00e4\u00e4rtusest ning S arvutatakse allkirjastatava s\u00f5numi, privaatv\u00f5tme ja selle sama juhusliku numbri p\u00f5hjal, mis on R. Seega ei ole \u00fchem\u00f5ttelist s\u00f5ltuvust, \u00fche ja sama kasutaja s\u00f5numi jaoks eksisteerib palju kehtivaid allkirju.<\/p>\n<p><\/p>\n<p>On selge, et sellist allkirja ei saa puhtal kujul kasutada pseudojuhuslike arvude allikana, kuna see on m\u00e4\u00e4ramatud ja seet\u00f5ttu v\u00f5ib see olla kergesti manipuleeritav oraakli poolt.<\/p>\n<p><\/p>\n<p>Kuid nagu selgus, on selle m\u00e4\u00e4ratlemine tegelikult v\u00f5imalik.<\/p>\n<p><\/p>\n<p>Mul oli suured lootused <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/draft-irtf-cfrg-vrf-04\">kontrollitava juhusliku funktsiooni (VRF) suhtes<\/a><\/noindex>, kuid uurides teoreetilisi aluseid, pidin sellest variandist loobuma. Kuigi VRF pakub m\u00e4\u00e4ratletud allkirja ja selle t\u00f5endite varianti, sisaldab algoritm kummalist kohta, mis avab musta augu oraakli manipuleerimiseks. Nimelt, k v\u00e4\u00e4rtuse arvutamisel (<noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/draft-irtf-cfrg-vrf-04#section-5.1\">jaotis 5.1<\/a><\/noindex>) kasutatakse suletud v\u00f5tme, mis j\u00e4\u00e4b kasutajale teadmata, t\u00e4hendab see, et kasutaja ei saa k-kalkulatsiooni \u00f5igsust kontrollida, seega v\u00f5ib oraakel kasutada mistahes vajalikke k-v\u00e4\u00e4rtusi ning samal ajal pidada andmebaasi vastavuste k ja allkirjastatavate andmete kohta, et alati suuta uuesti arvutada VRF-i seisukohast \u00f5iget tulemust. N\u00e4ete VRF-i p\u00f5hine loosimine ilma suletud v\u00f5tme avaldamiseta, v\u00f5ite targutada: m\u00e4rkida vajadust kas v\u00f5tme avalikustamise v\u00f5i selle k-kalkulatsioonist v\u00e4listamise osas, siis suletud v\u00f5ti avastatakse automaatselt esimese allkirja ilmumisega. \u00dcldiselt, nagu juba \u00f6eldud, on see kummaline skeem juhuslikule oraaklile.<\/p>\n<p><\/p>\n<p>Veidi m\u00f5eldes ja kohalike anal\u00fc\u00fctikute toel, s\u00fcndis VECRO t\u00f6\u00f6re\u017eiim.<\/p>\n<p><\/p>\n<p>VECRO on l\u00fchend Verifiable Elliptic Curve Random Oracle, mis vene keeles t\u00e4hendab kontrollitavat juhuslikku oraaklit elliptiliste k\u00f5verate p\u00f5hjal.<\/p>\n<p><\/p>\n<p>K\u00f5ik osutus \u00fcsna lihtsaks: determinatiivsete tulemuste saavutamiseks tuleb R v\u00e4\u00e4rtus fikseerida enne allkirjastatava s\u00f5numi ilmumist. Kui R on fikseeritud ja on osa allkirjastatavast s\u00f5numist, mis lisaks tagab R fikseerimise allkirjastatavas s\u00f5numis, siis S v\u00e4\u00e4rtus on \u00fcheselt m\u00e4\u00e4ratletud kasutaja s\u00f5numiga ja seega v\u00f5ib seda kasutada pseudojuhuslike numbrite allikana.<\/p>\n<p><\/p>\n<p>Sellises skeemis ei oma t\u00e4htsust, kuidas R fikseeritakse, see j\u00e4\u00e4b oraakli vastutusele. Oluline on, et S on \u00fcheselt m\u00e4\u00e4ratletud kasutaja poolt, kuid selle v\u00e4\u00e4rtus j\u00e4\u00e4b teadmata, kuni oraakel selle avaldab. Just nagu me tahtsime!<\/p>\n<p><\/p>\n<p>R fikseerimise kohta tasub t\u00e4helepanu p\u00f6\u00f6rata sellele, et <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/jedisct1\/libsodium\/issues\/170\">uuesti kasutatud R<\/a><\/noindex> eri s\u00f5numite allkirjastamise puhul paljastab EdDSA skeemis \u00fcheselt privaatse v\u00f5tme. Oraakli jaoks on \u00e4\u00e4rmiselt oluline v\u00e4listada R uuesti kasutamise v\u00f5imalus erinevate kasutaja s\u00f5numite allkirjastamiseks. See t\u00e4hendab, et iga manipuleerimise v\u00f5i kokkuleppe korral riskib oraakel alati oma privaatv\u00f5tme kaotamisega.<\/p>\n<p><\/p>\n<p>Sel juhul peab oraakel kasutajatele pakkuma kahte funktsiooni: initsialiseerimist, mis kinnitab v\u00e4\u00e4rtust R, ja allkirja, mis tagastab v\u00e4\u00e4rtuse S. Sellisel juhul on paar R, S tavaline kontrollitav allkiri kasutaja teadete kohta, mis sisaldavad fikseeritud v\u00e4\u00e4rtust R ja kasutaja meelevaldseid andmeid.<\/p>\n<p><\/p>\n<p>V\u00f5ib vaielda, et see skeem plokiahelas on midagi muud kui tavaline <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/348838\/\">commit-reveal skeem.<\/a><\/noindex>T\u00f5epoolest on see nii. Kuid siin on m\u00f5ned n\u00fcansid. Esiteks t\u00f6\u00f6tab oraakel alati sama v\u00f5tmega k\u00f5igis toimingutes, mis on mugav kasutada lepingutes. Teiseks on oht, et oraakel kaotab oma privaatv\u00f5tme vale k\u00e4itumise t\u00f5ttu; n\u00e4iteks kui oraakel v\u00f5imaldab tulemuse proovimist, piisab kahe proovi tegemisest, et teada saada privaatv\u00f5ti ja saada t\u00e4ielik juurdep\u00e4\u00e4s rahakotile. Kolmandaks, plokiahelas natiivset kontrollitavat allkirja, mis on juhuslikkuse allikas \u2014 see on ilus.<\/p>\n<p><\/p>\n<p>Pool aastat oli idee elluviimisest peas, kuni l\u00f5puks ilmus motivatsioon Waves Labsi poolt antud <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/waves-lab\/waves-labs-announces-first-grant-recipients-7568f01fec22\">toetuse n\u00e4ol.<\/a><\/noindex>. Suure toetusega kaasneb suur vastutus, seega projekt peab olema!<\/p>\n<p><\/p>\n<h1 id=\"realizaciya\">Rakendus<\/h1>\n<p><\/p>\n<p>Nii et antud projektis <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/deemru\/VECRO\">VECRO on teostatud<\/a><\/noindex> Waves plokiahelal p\u00e4ring-vastus re\u017eiimis kasutades \u00fclekannetega tehingute vahel kasutaja ja oraakli vahel. Samuti on oraakli kontol skript, mis kontrollib t\u00f6\u00f6d rangelt vastavalt eespool kirjeldatud loogikale. Oraakli tehingud l\u00e4bisid kontrolli, taastades kogu interaktsiooni ahela kasutajaga. L\u00f5pliku v\u00e4\u00e4rtuse kontrollis osalevad k\u00f5ik neli tehingut, nutileping p\u00e4rib need rangesse kontrollihelvesse, sama samm-sammult kontrollides k\u00f5iki v\u00e4\u00e4rtusi ja j\u00e4ttes mingisugusteks manipulatsioonideks ruumi.<\/p>\n<p><\/p>\n<p>Veel kord, et see selgeks j\u00e4\u00e4ks. Oraakel ei toimi lihtsalt esitatud skeemi kohaselt. Tema t\u00f6\u00f6 on t\u00e4ielikult kontrollitud plokiahela tasemel kehtestatud <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/deemru\/VECRO\/blob\/master\/vecro.ride\">t\u00f5uklemisega nutilepinguga<\/a><\/noindex>. Samm vasakule, ja tehing lihtsalt ei toimi. Nii et kui tehing j\u00f5uab plokiahelasse, ei pea kasutaja isegi midagi kontrollima, k\u00f5ik on juba kontrollitud sadu v\u00f5rgus\u00f5lmes.<\/p>\n<p><\/p>\n<p>Praegu on Wavesi p\u00f5hiv\u00f5rgus aktiivne \u00fcks VECRO (v\u00f5ite k\u00e4ivitada ka enda oma, see ei ole keeruline, lihtsalt <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/deemru\/VECRO\/blob\/master\/config.sample.php\">vaadake konfiguratsiooni n\u00e4idet<\/a><\/noindex>). Praegune kood t\u00f6\u00f6tab PHP-l ( <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/deemru\/WavesKit\">WavesKit<\/a><\/noindex>, millest <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/446110\/\">r\u00e4\u00e4kisin varem<\/a><\/noindex>).<\/p>\n<p><\/p>\n<p>Orakliteenuse kasutamiseks on vajalik:<\/p>\n<p><\/p>\n<ul>\n<li>Fikseerida R;\n<ul>\n<li>Saada v\u00e4hemalt 0.005 Waves orakli aliasele init@vecr;<\/li>\n<li>Saada R-kood manuses 1 R-vecr tokeni \u00fclekande poolt oraklilt kasutajale;<\/li>\n<\/ul>\n<\/li>\n<li>Saada allkiri;\n<ul>\n<li>Saada v\u00e4hemalt 0.005 Waves orakli aliasele random@vecr, ja kindlasti m\u00e4rkida manuses varem saadud R-kood ja t\u00e4iendavad kasutaja andmed;<\/li>\n<li>Saada S-kood manuses 1 S-vecr tokeni \u00fclekande poolt oraklilt kasutajale;<\/li>\n<\/ul>\n<\/li>\n<li>Kasutada S-koodi kui pseudojuhusliku arvu allikat.<\/li>\n<\/ul>\n<p><\/p>\n<p>Praeguse rakenduse detailid:<\/p>\n<p><\/p>\n<ul>\n<li>Oraklile saadetud Wavesi kasutatakse kasutajale tagasi\u00fclekande komisjonitasuna, kuni maksimaalselt 1 Waves;<\/li>\n<li>R-kood on s\u00fcmbolit \u2018R\u2019 sisaldava mobi(s) ja 32-baidise R v\u00e4\u00e4rtuse konkateneerimine base58 kodeeringus;<\/li>\n<li>R-kood manuses peab olema esimesena, kasutaja andmed l\u00e4hevad R-koodist edasi;<\/li>\n<li>S-code on 'S' s\u00fcmboli ja 32-bitisest S v\u00e4\u00e4rtuse base58 kodeerimise kombinatsioon;<\/li>\n<li>S on modulaarsuse jagamise tulemus, seet\u00f5ttu ei saa S-d kasutada t\u00e4is 256-bitise pseudojuhusliku numbrina (seda arvu v\u00f5ib pidada maksimaalselt 252-bitise pseudojuhusliku numbrina);<\/li>\n<li>Lihtsaim lahendus on kasutada pseudojuhusliku arvuna S-code hash'i.<\/li>\n<\/ul>\n<p><\/p>\n<p>N\u00e4ide S-code saamisest:<\/p>\n<p><\/p>\n<ul>\n<li>Initsialiseerimine: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/8gc8jwM7JrPNehoDs7NVyos7BsufYktvkwVW1B6FAY6\">https:\/\/wavesexplorer.com\/tx\/8gc8jwM7JrPNehoDs7NVyos7BsufYktvkwVW1B6FAY6<\/a><\/noindex><\/li>\n<li>R-code saamine: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/9eB25SbzEwvHEbm8pcKj7MGDrYv1u3Fxpj696FkJ96hd\">https:\/\/wavesexplorer.com\/tx\/9eB25SbzEwvHEbm8pcKj7MGDrYv1u3Fxpj696FkJ96hd<\/a><\/noindex><\/li>\n<li>R-code allkirja ja kasutaja andmete \u201crandom\u201d tulemuse p\u00e4rimine: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/6faoFJobEsugDFYmYmfsbtQYABmckNuE2kevaLh7ifzz\">https:\/\/wavesexplorer.com\/tx\/6faoFJobEsugDFYmYmfsbtQYABmckNuE2kevaLh7ifzz<\/a><\/noindex><\/li>\n<li>S-code saamine: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/C5VrFLQcprbA1KXAToaNvMP4Kg2rq43NkwWuADAA7wXX\">https:\/\/wavesexplorer.com\/tx\/C5VrFLQcprbA1KXAToaNvMP4Kg2rq43NkwWuADAA7wXX<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<p>Tehnilisest vaatepunktist on oraakel t\u00e4ielikult t\u00f6\u00f6korras, seda on t\u00e4iesti ohutu kasutada. Kuid l\u00f5ppkasutaja pilguga vaadates on mugav graafiline liides puudu, seda peab veel ootama.<\/p>\n<p><\/p>\n<p>Olen r\u00f5\u00f5mus vastama k\u00fcsimustele ja v\u00f5tma vastu ettepanekuid, ait\u00e4h.<\/p>\n<p>Allikas: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/449340\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438: \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043d\u0430 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0440\u0438\u0432\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0431\u044b\u043b\u0430 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439, \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u044b\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0418\u0434\u0435\u044f \u041e\u0441\u0435\u043d\u044c\u044e 2018 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves \u0431\u044b\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b, \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u043e\u0437\u043d\u0438\u043a \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c. \u041b\u043e\u043c\u0430\u044f \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0430\u0434 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":24158,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-32343","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438: \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043d\u0430 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0440\u0438\u0432\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0431\u044b\u043b\u0430 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439, \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u044b\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0418\u0434\u0435\u044f \u041e\u0441\u0435\u043d\u044c\u044e 2018 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves \u0431\u044b\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b, \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u043e\u0437\u043d\u0438\u043a \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c. \u041b\u043e\u043c\u0430\u044f \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0430\u0434 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c,\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47C\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u043e\u0440\u0430\u043a\u0443\u043b \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438: \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043d\u0430 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0440\u0438\u0432\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0431\u044b\u043b\u0430 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439, \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u044b\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0418\u0434\u0435\u044f \u041e\u0441\u0435\u043d\u044c\u044e 2018 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves \u0431\u044b\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b, \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u043e\u0437\u043d\u0438\u043a \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c. \u041b\u043e\u043c\u0430\u044f \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0430\u0434 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c,\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:46:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:46:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Digitaalallkirjale p\u00f5hinev juhuslik oraakel plokiahelas | ProHoster","description":"Ideest teostuseni: me muudame olemasoleva digitaalallkirja skeemi elliptiliste k\u00f5verate alusel, et see oleks deterministlik, ning pakume selle p\u00f5hjal funktsioone, mis genereerivad plokiahelas kontrollitavaid pseudojuhuslikke numbreid. Idee S\u00fcgisel 2018 aktiveeriti Waves'i plokiahelas esimesed nutilepingud, kohe tekkis k\u00fcsimus, kas on v\u00f5imalik usaldusv\u00e4\u00e4rsete pseudojuhuslike numbrite saamine. N\u00fc\u00fcd, mil seda k\u00fcsimust lahendatakse,","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47C\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0439 \u043e\u0440\u0430\u043a\u0443\u043b \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 | ProHoster","og:description":"\u041e\u0442 \u0438\u0434\u0435\u0438 \u0434\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438: \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u0443\u0435\u043c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0441\u0445\u0435\u043c\u0443 \u0446\u0438\u0444\u0440\u043e\u0432\u043e\u0439 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043d\u0430 \u044d\u043b\u043b\u0438\u043f\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u0440\u0438\u0432\u043e\u0439, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0430 \u0431\u044b\u043b\u0430 \u0434\u0435\u0442\u0435\u0440\u043c\u0438\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439, \u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430 \u0435\u0451 \u043e\u0441\u043d\u043e\u0432\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u044b\u0445 \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430 \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b. \u0418\u0434\u0435\u044f \u041e\u0441\u0435\u043d\u044c\u044e 2018 \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves \u0431\u044b\u043b\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u044b \u043f\u0435\u0440\u0432\u044b\u0435 \u0441\u043c\u0430\u0440\u0442-\u043a\u043e\u043d\u0442\u0440\u0430\u043a\u0442\u044b, \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e \u0432\u043e\u0437\u043d\u0438\u043a \u0432\u043e\u043f\u0440\u043e\u0441 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043f\u0441\u0435\u0432\u0434\u043e\u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0432\u0435\u0440\u044f\u0442\u044c. \u041b\u043e\u043c\u0430\u044f \u0433\u043e\u043b\u043e\u0432\u0443 \u043d\u0430\u0434 \u044d\u0442\u0438\u043c \u0432\u043e\u043f\u0440\u043e\u0441\u043e\u043c,","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/cluchajnyj-orakul-na-osnove-tsifrovoj-podpisi-v-blokchejne","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:46:27+00:00","article:modified_time":"2019-10-31T18:46:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"32343","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 10:26:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:00:23","updated":"2026-01-21 10:26:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/32343","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=32343"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/32343\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/24158"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=32343"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=32343"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=32343"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}