{"id":31729,"date":"2019-10-31T21:42:44","date_gmt":"2019-10-31T18:42:44","guid":{"rendered":"https:\/\/prohoster.info\/blog\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie\/"},"modified":"2019-10-31T21:42:44","modified_gmt":"2019-10-31T18:42:44","slug":"sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie","title":{"rendered":"Tilf\u00e6ldige tal og decentraliserede netv\u00e6rk: praktisk anvendelse","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h2 id=\"vvedenie\">Introduktion<\/h2>\n<p><\/p>\n<p><em>\u00abGenerering af tilf\u00e6ldige tal er for vigtig til at overlade til tilf\u00e6ldighederne\u00bb<\/em><br \/>\n<em>Robert Cavu, 1970<\/em><\/p>\n<p><\/p>\n<p>Denne artikel handler om praktisk anvendelse af l\u00f8sninger, der bruger kollektiv generering af tilf\u00e6ldige tal i en mistroisk kontekst. Kort sagt \u2014 hvordan og hvorfor tilf\u00e6ldigheder bruges i blokk\u00e6der, og lidt om hvordan man adskiller \u201cgod\u201d tilf\u00e6ldighed fra \u201cd\u00e5rlig\u201d. At generere et virkelig tilf\u00e6ldigt tal er en ekstremt vanskelig udfordring, selv p\u00e5 en enkelt computer, og har l\u00e6nge v\u00e6ret genstand for studier blandt kryptografer. I decentraliserede netv\u00e6rk er genereringen af tilf\u00e6ldige tal endnu mere kompleks og vigtig.<\/p>\n<p><\/p>\n<p>I netv\u00e6rk, hvor deltagerne ikke stoler p\u00e5 hinanden, muligg\u00f8r muligheden for at generere et uigenkaldeligt tilf\u00e6ldigt tal effektivt at l\u00f8se mange vigtige opgaver og forbedre allerede eksisterende ordninger. Desuden er gambling og lotterier slet ikke det prim\u00e6re form\u00e5l, som en uerfaren l\u00e6ser m\u00e5ske f\u00f8rst forestiller sig.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2 id=\"generaciya-sluchaynyh-chisel\">Generering af tilf\u00e6ldige tal<\/h2>\n<p><\/p>\n<p>Computere kan ikke selv generere tilf\u00e6ldige tal; de har brug for hj\u00e6lp udefra. Computeren kan f\u00e5 et tilf\u00e6ldigt v\u00e6rdig ved at bruge for eksempel musebev\u00e6gelser, m\u00e6ngden af brugt hukommelse, parasitstr\u00f8mme p\u00e5 processorens kontakter og mange andre kilder, der kaldes entropikilder. Disse v\u00e6rdier er ikke helt tilf\u00e6ldige, da de ligger inden for et bestemt interval eller har en forudsigelig karakter af \u00e6ndringer. For at omdanne s\u00e5danne tal til et reelt tilf\u00e6ldigt tal inden for et givent interval tilf\u00f8res kryptografiske transformationer, s\u00e5 de uj\u00e6vnt fordelte v\u00e6rdier fra entropikilderne genererer j\u00e6vnt fordelte pseudotilf\u00e6ldige v\u00e6rdier. De opn\u00e5ede v\u00e6rdier kaldes pseudotilf\u00e6ldige, da de ikke er \u00e6gte tilf\u00e6ldige, men deterministisk genereret fra entropi. Enhver god kryptografisk algoritme, der krypterer data, producerer chiffertekst, der statistisk set b\u00f8r v\u00e6re uadskillelig fra en tilf\u00e6ldig sekvens, s\u00e5 til fremstillingen af random kan man tage en entropikilde, der blot sikrer god unika og uforudsigelighed af v\u00e6rdierne, selv i sm\u00e5 intervaller; resten af arbejdet med at spredning og blande bits i resultatv\u00e6rdien vil algoritmen overtage.<\/p>\n<p><\/p>\n<p>For at afslutte en kort introduktion vil jeg tilf\u00f8je, at generering af tilf\u00e6ldige tal, selv p\u00e5 \u00e9n enhed, er en af \u200b\u200bs\u00f8jlerne til sikring af vores data. De genererede pseudotilf\u00e6ldige tal bruges ved etablering af sikre forbindelser i forskellige netv\u00e6rk, til generering af kryptografiske n\u00f8gler, til belastningsbalancering, kontrol af integritet og mange andre anvendelser. Sikkerheden i mange protokoller afh\u00e6nger af muligheden for at generere en p\u00e5lidelig, uforudsigelig tilf\u00e6ldighed udefra, at bevare den og ikke afsl\u00f8re den f\u00f8r n\u00e6ste protokoltrin, ellers vil sikkerheden v\u00e6re i fare. Et angreb p\u00e5 generatoren af \u200b\u200bpseudotilf\u00e6ldige v\u00e6rdier er ekstremt farligt og truer alt software, der bruger tilf\u00e6ldig generation. <\/p>\n<p><\/p>\n<p>Alt dette b\u00f8r du vide, hvis du har gennemf\u00f8rt et grundkursus i kryptografi, s\u00e5 lad os forts\u00e6tte med decentrale netv\u00e6rk.<\/p>\n<p><\/p>\n<h2 id=\"random-v-blokcheynah\">Random i blockchain<\/h2>\n<p><\/p>\n<p>F\u00f8rst og fremmest vil jeg tale om blockchains med st\u00f8tte til smart contracts, da de fuldt ud kan udnytte mulighederne, der tilbydes af kvalitetsbevist random. For korthedens skyld vil jeg i det f\u00f8lgende kalde denne teknologi \u201c<em>Publicly Verifiable Random Beacons<\/em>\u201d eller PVRB. Da blockchains er netv\u00e6rk, hvor enhver deltager kan bekr\u00e6fte informationen, er en n\u00f8glekomponent i navnet \u201cPublicly Verifiable\u201d, dvs. enhver kan gennem beregninger f\u00e5 bevis for, at det nummer, der er offentliggjort i blockchains, har f\u00f8lgende egenskaber:<\/p>\n<p><\/p>\n<ul>\n<li>Resultatet skal have en beviseligt ensartet fordeling, dvs. baseret p\u00e5 beviseligt robust kryptografi. <\/li>\n<li>Ingen af bits i resultatet kan kontrolleres. Som f\u00f8lge heraf kan resultatet ikke forudses p\u00e5 forh\u00e5nd.<\/li>\n<li>Man kan ikke saboterer protokollet til generering ved at undlade at deltage i protokollet eller ved at overbelaste netv\u00e6rket med angribermeddelser.<\/li>\n<li>Alt det ovenst\u00e5ende skal v\u00e6re modstandsdygtigt over for sammensv\u00e9rgelser fra et acceptabelt antal u\u00e6rlige deltagere i protokollen (f.eks. 1\/3 af deltagerne).<\/li>\n<\/ul>\n<p><\/p>\n<p>Enhver mulighed for en aftalt minoritetsgruppe af deltagere til at generere selv kontrolleret lige\/ulige tilf\u00e6ldighed er en sikkerhedssvaghed. Enhver mulighed for gruppen til at stoppe udstedelsen af tilf\u00e6ldighed er en sikkerhedssvaghed. Generelt er der mange problemer, og denne opgave er ikke nem...<\/p>\n<p><\/p>\n<p>Det ser ud til, at den mest vigtige anvendelse af PVRB er forskellige spil, lotterier og generelt enhver form for gambling p\u00e5 blockchain. Faktisk er det en vigtig retning, men der er ogs\u00e5 mere vigtige anvendelser for random i blockchains. Lad os se p\u00e5 dem.<\/p>\n<p><\/p>\n<h2 id=\"algoritmy-konsensusa\">Konsensusalgoritmer<\/h2>\n<p><\/p>\n<p>PVRB for network consensus is of immense importance. Transactions in blockchains are secured by electronic signatures, so a \"transaction attack\" always involves adding\/removing a transaction in a block (or in several blocks). The main task of the consensus algorithm is to agree on the sequence of these transactions and the order of blocks that include these transactions. Additionally, a necessary property for real blockchains is finality\u2014the ability of the network to agree that the chain up to the finalized block is definitive and will never be excluded due to the emergence of a new fork. Usually, to agree that a block is valid and, importantly, final, it is necessary to collect signatures from the majority of block producers (hereinafter BP\u2014block-producers), which requires at least delivering the chain of blocks to all BPs and disseminating the signatures among all BPs. As the number of BPs increases, the number of necessary messages in the network grows exponentially. Therefore, consensus algorithms requiring finality, used in pBFT consensus of Hyperledger, do not work at the required speed, starting from just a few dozen BPs, demanding an enormous number of connections. <\/p>\n<p><\/p>\n<p>If there is an undisputed and honest PVRB in the network, then even in the simplest approximation, one can select one of the block producers based on it and appoint them as the \"leader\" for one round of the protocol. If we have <code>N<\/code> block producers, of which <code>M: M &gt; 1\/2 N<\/code> are honest, do not censor transactions, and do not create chain forks with the aim of executing a \"double spend\" attack, then using a uniformly distributed undisputed PVRB will allow for the selection of an honest leader with a probability of <code>M \/ N (M \/ N &gt; 1\/2)<\/code>. Hvis hver leder f\u00e5r tildelt sin egen tidsperiode, hvor han kan producere et blok og validere k\u00e6den, og disse perioder er ligelige i tid, vil k\u00e6den af \u00e6rlige BP v\u00e6re l\u00e6ngere end k\u00e6den dannet af ondsindede BP, og konsensusalgoritmen, der er baseret p\u00e5 k\u00e6del\u00e6ngden, vil simpelt hen afvise den \"d\u00e5rlige\". Dette princip om at tildele lige tidskvanta til hver BP blev f\u00f8rst anvendt i Graphene (forg\u00e6ngeren til EOS) og g\u00f8r det muligt for flertallet af blokke at blive lukket med en enkelt signatur, hvilket reducerer netv\u00e6rksbelastningen betydeligt og g\u00f8r denne konsensus hurtig og stabil. Ikke desto mindre m\u00e5 EOS-netv\u00e6rket nu bruge specielle blokke (Last Irreversible Block), som bekr\u00e6ftes med signaturer fra 2\/3 BP. Disse blokke tjener til at sikre endelighed (umuligheden af at der opst\u00e5r en fork, der starter f\u00f8r den sidste Last Irreversible Block).<\/p>\n<p><\/p>\n<p>Ogs\u00e5 i reelle implementeringer er protokolschemaet mere komplekst \u2014 afstemninger om de foresl\u00e5ede blokke gennemf\u00f8res i flere trin for at opretholde netv\u00e6rkets drift i tilf\u00e6lde af blokke der springes over og netv\u00e6rksproblemer, men selv under s\u00e5danne omst\u00e6ndigheder kr\u00e6ver konsensusalgoritmer, der bruger PVRB, v\u00e6sentligt f\u00e6rre meddelelser mellem BP, hvilket g\u00f8r dem hurtigere end klassisk PVFT eller forskellige afvigelser heraf.<\/p>\n<p><\/p>\n<p>Den mest fremtr\u00e6dende repr\u00e6sentant for s\u00e5danne algoritmer: <noindex><a rel=\"nofollow\" href=\"https:\/\/eprint.iacr.org\/2016\/889.pdf\">Ouroboros<\/a><\/noindex> fra Cardano-teamet, som angiveligt har matematiske beviser for modstand mod sammensv\u00e6rgelser blandt BP. <\/p>\n<p><\/p>\n<p>I Ouroboros anvendes PVRB til at bestemme det s\u00e5kaldte \"BP schedule\" \u2014 en tidsplan, if\u00f8lge hvilken hver BP tildeles sin egen tidslukket for offentligg\u00f8relse af blokken. En stor fordel ved at bruge PVRB er den fulde \"lighed\" blandt BP (i henhold til st\u00f8rrelsen af deres balances). \u00c6rligheden af PVRB garanterer, at ondsindede BP ikke kan kontrollere tidslisterne, og derfor ikke kan manipulere k\u00e6den ved proaktivt at forberede og analysere k\u00e6deforke, og til valget af fork er det tilstr\u00e6kkeligt blot at stole p\u00e5 k\u00e6del\u00e6ngden uden at anvende snedige metoder til at beregne BP's \"nytte\" og \"v\u00e6gt\" af dens blokke. <\/p>\n<p><\/p>\n<p>I alle tilf\u00e6lde, hvor man i et decentraliseret netv\u00e6rk skal v\u00e6lge en tilf\u00e6ldig deltager, vil PVRB n\u00e6sten altid v\u00e6re det bedste valg frem for en deterministisk variant baseret p\u00e5 for eksempel hash af blokken. Uden PVRB kan muligheden for at p\u00e5virke deltagervalget f\u00f8re til angreb, hvor angriberen kan v\u00e6lge den n\u00e6ste korrupte deltager eller flere ad gangen ved at v\u00e6lge mellem forskellige fremtidsmuligheder for at sikre en st\u00f8rre indflydelse p\u00e5 beslutningen. Brug af PVRB diskrediterer disse typer angreb.<\/p>\n<p><\/p>\n<h2 id=\"masshtabirovanie-i-balansirovka-nagruzki\">Skalering og belastningsfordeling<\/h2>\n<p><\/p>\n<p>PVRB kan ogs\u00e5 v\u00e6re til stor fordel i opgaver til nedbringelse af belastning og skalering af betalinger. F\u00f8rst er det fornuftigt at g\u00f8re sig bekendt med <noindex><a rel=\"nofollow\" href=\"https:\/\/people.csail.mit.edu\/rivest\/pubs\/Riv97b.pdf\">en artikel<\/a><\/noindex> Rivestas \"Electronic Lottery Tickets as Micropayments\". Hovedideen er, at i stedet for at lave 100 betalinger p\u00e5 1c fra betaleren til modtageren, kan man spille et \u00e6rligt lotteri med en pr\u00e6mie p\u00e5 1$ = 100c, hvor betaleren ved hver betaling p\u00e5 1c overf\u00f8rer \u00e9n af sine 100 \"lotteribilletter\" til banken. En af disse billetter vinder banken 1$, og det er netop denne billet, som modtageren kan registrere p\u00e5 blockchainen. Det vigtigste er, at de resterende 99 billetter overf\u00f8res mellem modtageren og betaleren uden ekstern deltagelse, gennem en privat kanal og med den \u00f8nskede hastighed. En god beskrivelse af protokollen baseret p\u00e5 denne ordning i Emercoin-netv\u00e6rket kan l\u00e6ses <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@emer.tech\/randpay-6a028f16c82a\">her<\/a><\/noindex>. <\/p>\n<p><\/p>\n<p>Denne ordning har flere problemer, for eksempel kan modtageren stoppe med at betjene betaleren umiddelbart efter at have modtaget den vindende billet, men for mange specielle anvendelser, s\u00e5som minut-efter-minut taksering eller elektroniske abonnementer p\u00e5 tjenester, kan disse overses. Det vigtigste krav er selvf\u00f8lgelig \u00e6rligheden i det afholdte lotteri, og for dets gennemf\u00f8relse er PVRB helt n\u00f8dvendigt.<\/p>\n<p><\/p>\n<p>Valget af en tilf\u00e6ldig deltager er ogs\u00e5 ekstremt vigtigt for sharding-protokoller, hvis m\u00e5l er at opn\u00e5 horisontal skalering af blokk\u00e6den, hvilket g\u00f8r det muligt for forskellige BP at behandle kun deres respektive transaktioner. Dette er en meget kompleks opgave, is\u00e6r hvad ang\u00e5r sikkerhed ved sammenl\u00e6gning af shards. Et \u00e6rligt valg af tilf\u00e6ldig BP til at udpege dem ansvarlige for en specifik shard, ligesom i konsensusalgoritmer, er ogs\u00e5 en opgave for PVRB. I centraliserede systemer udpeges shards af en balancer, som simpelthen beregner en hash fra foresp\u00f8rgslen og sender den til den n\u00f8dvendige udf\u00f8rer. I blokchains kan muligheden for at p\u00e5virke denne udn\u00e6vnelse f\u00f8re til angreb p\u00e5 konsensus. For eksempel kan indholdet af transaktioner kontrolleres af en angriber, der kan styre hvilke transaktioner der kommer ind i den shard, han kontrollerer, og manipulere med blokk\u00e6den indenfor den. Diskussionen om problemet med brug af tilf\u00e6ldige tal til sharding-opgaver i Ethereum kan l\u00e6ses <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ethereum\/wiki\/wiki\/Sharding-FAQ#how-is-the-randomness-for-random-sampling-generated\">her<\/a><\/noindex><br \/>\nSharding er en af de mest ambiti\u00f8se og seri\u00f8se opgaver inden for blockchain, og l\u00f8sningen p\u00e5 denne vil muligg\u00f8re opbygning af decentrale netv\u00e6rk med fantastisk ydeevne og volumen. PVRB er blot en af de vigtige brikker i l\u00f8sningen p\u00e5 dette.<\/p>\n<p><\/p>\n<h2 id=\"igry-ekonomicheskie-protokoly-arbitrazh\">Spil, \u00f8konomiske protokoller, arbitrage<\/h2>\n<p><\/p>\n<p>Det er sv\u00e6rt at overdrive betydningen af tilf\u00e6ldige tal i spilindustrien. Der er en \u00e5benlys anvendelse i online casinoer og en mere implicit i beregningen af effekten af forskellige spillerhandlinger \u2014 alt sammen er det ekstremt komplekse problemer for decentraliserede netv\u00e6rk, hvor der ikke er mulighed for at stole p\u00e5 en central kilde til tilf\u00e6ldighed. Men tilf\u00e6ldig udv\u00e6lgelse kan ogs\u00e5 l\u00f8se mange \u00f8konomiske problemer og hj\u00e6lpe med at skabe enklere og mere effektive protokoller. Lad os antage, at vi i vores protokol har tvister om betaling for nogle billige tjenester, og disse tvister forekommer ret sj\u00e6ldent. I s\u00e5 fald, hvis der er en uomtvistelig PVRB, kan kunder og s\u00e6lgere blive enige om en tilf\u00e6ldig l\u00f8sning af tvister, men med en given sandsynlighed. For eksempel, med en sandsynlighed p\u00e5 60% vinder kunden, mens s\u00e6lgeren vinder med en sandsynlighed p\u00e5 40%. Denne tilsyneladende absurde tilgang g\u00f8r det muligt automatisk at l\u00f8se tvister med en pr\u00e6cist forudsigelig andel af gevinster\/tab, der tilfredsstiller begge parter uden inddragelse af en tredje part og un\u00f8dvendigt tidsspilde. Desuden kan sandsynlighedsforholdet v\u00e6re dynamisk og afh\u00e6nge af nogle globale variable. For eksempel, hvis virksomheden klarer sig godt, observeres der et lavt antal tvister og h\u00f8j rentabilitet, kan virksomheden automatisk justere sandsynligheden for tvistl\u00f8sning til at favorisere kunderne, for eksempel 70\/30 eller 80\/20, og omvendt, hvis tvisterne koster mange penge og er svindelagtige eller uretf\u00e6rdige, kan sandsynligheden skubbes i den modsatte retning.<\/p>\n<p><\/p>\n<p>Et stort antal interessante decentraliserede protokoller, s\u00e5som token curaterede registre, forudsigelsesmarkeder, bondingskurver og mange andre, fungerer som \u00f8konomiske spil, hvor godt adf\u00e6rd bel\u00f8nnes, og d\u00e5rligt adf\u00e6rd straffes. Der opst\u00e5r ofte sikkerhedsproblemer her, og beskyttelsesforanstaltningerne kan st\u00e5 i kontrast til hinanden. Det, der er beskyttet mod angreb fra \"hvaler\" med milliarder af tokens (\"big stake\"), er s\u00e5rbart over for angreb fra tusinder af konti med sm\u00e5 balance (\"sybil stake\"), og de foranstaltninger, der tages mod et angreb, som for eksempel ikke-line\u00e6re gebyrer, der er skabt for at g\u00f8re det ufordelagtigt for stort staking, bliver normalt diskrediteret af et andet angreb. Da det handler om et \u00f8konomisk spil, kan de relevante statistiske v\u00e6gte beregnes p\u00e5 forh\u00e5nd, og gebyrerne kan simpelthen erstattes med randomiserede med det relevante fordelingsm\u00f8nster. S\u00e5danne sandsynlighedsgebyrer implementeres ekstremt simpelt, hvis der i blockchainen findes en p\u00e5lidelig kilde til tilf\u00e6ldighed og kr\u00e6ver ingen komplekse beregninger, hvilket komplicerer livet for b\u00e5de hvaler og sybiler.<br \/>\nDet er dog vigtigt at huske, at kontrol over det enkelte bit i denne tilf\u00e6ldighed muligg\u00f8r manipulation, idet man kan fordoble og halvere sandsynlighederne, s\u00e5 en \u00e6rlig PVRB er den vigtigste komponent i s\u00e5danne protokoller. <\/p>\n<p><\/p>\n<h2 id=\"gde-nayti-pravilnyy-random\">Hvor finder man den rigtige tilf\u00e6ldighed?<\/h2>\n<p><\/p>\n<p>I teorien tillader \u00e6rlig tilf\u00e6ldig udv\u00e6lgelse i decentraliserede netv\u00e6rk at sikre p\u00e5lidelig sikkerhed mod n\u00e6sten enhver protokol mod sammensv\u00e6rgelser. Begrundelsen er ret simpel \u2014 hvis netv\u00e6rket bliver enige om et enkelt bit 0 eller 1, og mindre end halvdelen af deltagerne er u\u00e6rlige, s\u00e5 vil netv\u00e6rket efter tilstr\u00e6kkeligt antal iterationer med sikkerhed n\u00e5 til konsensus om dette bit med en fast sandsynlighed. Bare fordi \u00e6rlig tilf\u00e6ldighed vil v\u00e6lge 51 ud af 100 deltagere i 51% af tilf\u00e6ldene. Men dette er i teorien, da det i virkelige netv\u00e6rk, for at sikre et s\u00e5dant sikkerhedsniveau som i artiklerne, kr\u00e6ver mange meddelelser mellem v\u00e6rter, kompleks multi-trins kryptografi, og enhver kompleksitet i protokollen tilf\u00f8jer straks nye angrebsvinkler.<br \/>\nDerfor ser vi endnu ikke blockchains med beviseligt robust PVRB, der har v\u00e6ret i brug l\u00e6nge nok til at best\u00e5 testene fra rigtige applikationer, flere audits, belastninger, og selvf\u00f8lgelig reelle angreb, uden hvilke det er sv\u00e6rt at kalde et produkt for rigtig sikkert.<\/p>\n<p><\/p>\n<p>Der er dog flere lovende tilgange, som adskiller sig i mange detaljer, og en af dem vil helt sikkert l\u00f8se problemet. Med moderne beregningsressourcer kan kryptografisk teori ret hurtigt blive omsat til praktiske anvendelser. Fremover vil vi gerne fort\u00e6lle om implementeringerne af PVRB: der er flere af dem nu, hver med sit eget s\u00e6t vigtige egenskaber og s\u00e6rpr\u00e6g i implementeringen, og bag hver st\u00e5r en god id\u00e9. Der er ikke mange teams, der besk\u00e6ftiger sig med tilf\u00e6ldigheder, og erfaringen fra hvert af dem er ekstremt vigtig for alle de andre. Vi h\u00e5ber, at vores information vil hj\u00e6lpe andre teams med at bev\u00e6ge sig hurtigere, givet erfaringen fra forudg\u00e5ende teams.<\/p>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/448330\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u00ab\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u0430\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u0451 \u043d\u0430 \u0432\u043e\u043b\u044e \u0441\u043b\u0443\u0447\u0430\u044f\u00bb \u0420\u043e\u0431\u0435\u0440\u0442 \u041a\u0430\u0432\u044c\u044e, 1970 \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0440\u0435\u0448\u0435\u043d\u0438\u0439, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0445 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u0438\u0432\u043d\u0443\u044e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u0432 \u043d\u0435\u0434\u043e\u0432\u0435\u0440\u0435\u043d\u043d\u043e\u0439 \u0441\u0440\u0435\u0434\u0435. \u0415\u0441\u043b\u0438 \u043a\u0440\u0430\u0442\u043a\u043e \u2014 \u043a\u0430\u043a \u0438 \u0434\u043b\u044f \u0447\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0440\u0430\u043d\u0434\u043e\u043c \u0432 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0430\u0445, \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u043e\u0442\u043b\u0438\u0447\u0438\u0442\u044c \u201c\u0445\u043e\u0440\u043e\u0448\u0438\u0439\u201d \u0440\u0430\u043d\u0434\u043e\u043c \u043e\u0442 \u201c\u043f\u043b\u043e\u0445\u043e\u0433\u043e\u201d. \u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31729","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u00ab\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u0430\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u0451 \u043d\u0430 \u0432\u043e\u043b\u044e \u0441\u043b\u0443\u0447\u0430\u044f\u00bb \u0420\u043e\u0431\u0435\u0440\u0442 \u041a\u0430\u0432\u044c\u044e, 1970 \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e.\" \/>\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\/da\/blog\/administrirovanie\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\udd47\u0421\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0438 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438: \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u00ab\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u0430\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u0451 \u043d\u0430 \u0432\u043e\u043b\u044e \u0441\u043b\u0443\u0447\u0430\u044f\u00bb \u0420\u043e\u0431\u0435\u0440\u0442 \u041a\u0430\u0432\u044c\u044e, 1970 \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie\" \/>\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:42:44+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:42:44+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\udd47Tilf\u00e6ldige tal og decentraliserede netv\u00e6rk: praktisk anvendelse | ProHoster","description":"Indledning \"Generering af tilf\u00e6ldige tal er for vigtig til at overlade til tilf\u00e6ldigheder\" Robert Cavu, 1970 Denne artikel handler om praktisk anvendelse.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\udd47\u0421\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0438 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0441\u0435\u0442\u0438: \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u0435 | ProHoster","og:description":"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u00ab\u0413\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0432\u0430\u0436\u043d\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0435\u0451 \u043d\u0430 \u0432\u043e\u043b\u044e \u0441\u043b\u0443\u0447\u0430\u044f\u00bb \u0420\u043e\u0431\u0435\u0440\u0442 \u041a\u0430\u0432\u044c\u044e, 1970 \u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u0441\u0432\u044f\u0449\u0435\u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e.","og:url":"https:\/\/prohoster.info\/da\/blog\/administrirovanie\/sluchajnye-chisla-i-detsentralizovannye-seti-prakticheskoe-primenenie","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:42:44+00:00","article:modified_time":"2019-10-31T18:42:44+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31729","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 07:32:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:04:45","updated":"2026-01-21 07:32:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/31729","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=31729"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/31729\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=31729"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=31729"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=31729"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}