{"id":34823,"date":"2019-10-31T22:00:35","date_gmt":"2019-10-31T19:00:35","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei\/"},"modified":"2019-10-31T22:00:35","modified_gmt":"2019-10-31T19:00:35","slug":"ispolzovanie-sluchajnogo-orakula-na-primere-loterei","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei","title":{"rendered":"Einsatz eines zuf\u00e4lligen Orakels am Beispiel einer Lotterie","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Eines Morgens stie\u00df ich auf einen Artikel \u00fcber <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/449340\/\">einen \u00fcberpr\u00fcfbaren Zufallszahlengenerator<\/a><\/noindex> auf der Waves-Plattform. <\/p>\n<p>Die allgemeine Funktionsweise war klar, aber die spezifische Implementierung \u2013 nicht. Irrten Codes, Signaturen, was genau, wo, warum?<\/p>\n<p>Nach mehreren Beratungen mit dem Orakel gelang es schlie\u00dflich, die Logik der Verlosung (die in PHP umgesetzt wurde) mit dem Algorithmus zur Generierung einer Zufallszahl zu vereinen. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<ol>\n<li>Beim Start des Turniers \/ der Runde fordern wir vom Orakel den ersten Teil des Codes (R-Code) an.\n<p>Zu diesem Zeitpunkt gibt es weder Informationen \u00fcber die Anzahl der Spieler noch \u00fcber die Anzahl der Preise, noch \u00fcber die H\u00f6he der Gewinnsummen und \u00fcberhaupt \u00fcber die Existenz der Lotterie. Das Orakel liefert \u00fcber die Transaktion einen pers\u00f6nlichen Zufallscode, der anschlie\u00dfend nur einmal und nur von dem, der ihn angefordert hat, verwendet werden kann. \u00dcbrigens kann der R-Code im Voraus 'erworben' werden (damit ist die Transaktionsgeb\u00fchr f\u00fcr die Anfrage + Entsch\u00e4digung des Orakels f\u00fcr die Antworttransaktion gemeint, dies kostet etwa 0,015 $ zum aktuellen Kurs, der Code selbst wird kostenlos bereitgestellt), um sp\u00e4ter nicht auf die Antworttransaktion warten zu m\u00fcssen. Ich habe einen kleinen, regelm\u00e4\u00dfig aktualisierten Puffer in der Datenbank eingerichtet.<\/li>\n<li> Das Turnier dauert standardm\u00e4\u00dfig 60 Bl\u00f6cke der Waves-Blockchain, was derzeit etwa 1 Stunde entspricht. Das Turnier gilt als abgeschlossen und erfolgreich, wenn nach 60 Bl\u00f6cken mindestens zwei Tickets vorhanden sind. Andernfalls wird die Aktivit\u00e4tszeit des Turniers um weitere 60 Bl\u00f6cke verl\u00e4ngert.<\/li>\n<li>Unmittelbar nach dem Abschluss des Turniers erstellen und senden wir die Transaktionsdaten (f\u00fcr die wir ebenfalls eine Geb\u00fchr von etwa 0,005 $ bezahlen), gegebenenfalls mehrere, in denen alle Bedingungen der Auslosung festgehalten und eine geordnete Liste der Spieler (Tickets), aus der wir die Gewinner ausw\u00e4hlen m\u00fcssen, enthalten ist.<\/li>\n<li>An diesem Punkt haben wir bereits den ersten Teil des Codes (R-Code) sowie die ID der Transaktionsdaten (TXID). Wir senden diese zur Signatur an den Oracle in Form einer Verkettung (R-Code + TXID) und zahlen erneut eine Geb\u00fchr sowie eine Entsch\u00e4digung. Der Oracle \u00fcberpr\u00fcft die erhaltenen Daten auf Einzigartigkeit und Zugeh\u00f6rigkeit und sendet uns als Antwort den zweiten Teil des Codes (S-Code) im sha256-Format, der als Ausgangspunkt f\u00fcr den Zufallszahlengenerator dient.<\/li>\n<li> Um eine zuf\u00e4llige Zahl zu erhalten, die die Reihenfolge des gewinnenden Tickets angibt, wandeln wir den S-Code aus den Bin\u00e4rdaten von sha256 in eine hexadezimale (HEX) Darstellung um. Dann erhalten wir aus der resultierenden HEX-Zeichenfolge eine Zahl. Wir berechnen den Rest der Division dieser Zahl durch die Anzahl der Tickets (all_tickets) und addieren 1 zum Ergebnis (um eine Zahl zwischen 1 und all_tickets zu erhalten). Am Ende haben wir die Reihenfolge des Gewinners.<\/li>\n<li>Wenn es laut den Bedingungen der Verlosung mehrere Gewinner gibt, wiederholen wir die vorherigen Schritte entsprechend der Anzahl der Preispl\u00e4tze. Bei jedem Schritt entfernen wir dabei das Ticket, das bereits gewonnen hat, und reduzieren all_tickets um 1, wobei wir anstelle des S-Codes die zuvor erhaltene Zahl verwenden.<\/li>\n<\/ol>\n<p>\nSchauen wir uns ein konkretes Beispiel an, Turnier Nr. 119:<\/p>\n<p>Insgesamt 7 Tickets (all_tickets)<br \/>\nDer Ticketpreis betr\u00e4gt 50 M\u00fcnzen (Bet)<br \/>\nDer Spielbeitrag liegt bei 10 % (Fee)<\/p>\n<p>Laut den Lotteriebestimmungen flie\u00dfen 30 % in den Preisfonds, d.h. in diesem Fall sollten 2 Tickets einen Preis erhalten, dessen H\u00f6he durch die Formel (Bet * all_tickets - Fee) \/ 2 berechnet wird.<\/p>\n<p>1. Wir haben den R-Code erhalten: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/8t7M7eWnK1b5CF2Y2TVSqyuD3dg35Az71Cf9uCdaR1X9\">RdbAiAhKhveAtR4eyTKq75noMxdcEoxbE6BvojJjM13VE<\/a><\/noindex><\/p>\n<p>Nach dem Abschluss des Turniers haben wir eine Liste von Tickets in Form von Paaren: Nummer + Adresse (Wallet-Adresse, von der die Teilnahmegeb\u00fchr bezahlt wurde). Es ist zu beachten, dass Adressen sich wiederholen k\u00f6nnen, was bedeutet, dass ein Teilnehmer mehrere Tickets f\u00fcr ein Turnier gekauft hat, was von den Regeln nicht verboten ist.<\/p>\n<p>Wir haben das Transaktionsdatum gesendet: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/82JTMzhHM5xEA2fQ9Qscd5QAJU3DAd8nShLjdVHTer5S\">82JTMzhHM5xEA2fQ9Qscd5QAJU3DAd8nShLjdVHTer5S<\/a><\/noindex><\/p>\n<p>Wir haben den S-Code angefordert: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/FTF3uRyaa4F2uAyD6z5a3CNbTXbQLc7fSR6CFNVjgZYV\">FTF3uRyaa4F2uAyD6z5a3CNbTXbQLc7fSR6CFNVjgZYV<\/a><\/noindex> mit dem Kommentar (R-Code + TXID):<br \/>\nRdbAiAhKhveAtR4eyTKq75noMxdcEoxbE6BvojJjM13VE 82JTMzhHM5xEA2fQ9Qscd5QAJU3DAd8nShLjdVHTer5S<\/p>\n<p>Wir haben den S-Code erhalten: <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/Go8nx2f4uurHXmETTVcMKDWX9nh98t4TgjuKHmJ2uVSH\">Ri89jHB4UXZDXY6gT1m4LBDXGMTaYzHozMk4nxiuqVXdC<\/a><\/noindex><\/p>\n<p>Wir haben die Gewinner ermittelt.<\/p>\n<p>6. <noindex><a rel=\"nofollow\" href=\"https:\/\/wavesexplorer.com\/tx\/5dVheZrRUDagoD65HErTQhJhJXLcFHcT8fqoFfgHDj2T\">Auszahlungen wurden gesendet.<\/a><\/noindex><\/p>\n<p>So haben wir eine schrittweise Dokumentation des Preisverlosungsverfahrens in der Blockchain, die jederzeit \u00fcberpr\u00fcfbar ist. Es ist nahezu unm\u00f6glich, die Ergebnisse seitens des Veranstalters zu manipulieren, zumindest wird es nicht unbemerkt geschehen k\u00f6nnen.<\/p>\n<pre><code class=\"plaintext\">bestimmen Sie den Gewinner Nr. 1\n\nAlle_Tickets:\nIndex: 1 Ticket:139\nIndex: 2 Ticket:141\nIndex: 3 Ticket:143\nIndex: 4 Ticket:145\nIndex: 5 Ticket:147\nIndex: 6 Ticket:149\nIndex: 7 Ticket:151\n\n1. bin -&gt; hex ( bin2hex(sha256(S-code)) ): Ri89jHB4UXZDXY6gT1m4LBDXGMTaYzHozMk4nxiuqVXdC -&gt; 0xdaf5802953dcb27f89972e38e8900b898733f6a613e6e1c6c5491362c1832596\n\n2. hex -&gt; gmp Nummer: 0xdaf5802953dcb27f89972e38e8900b898733f6a613e6e1c6c5491362c1832596 -&gt; 99037963059744689166154019807924045947962565922868104113173478160267437352342\n\n3. gmp -&gt; modulo (mod=7): 99037963059744689166154019807924045947962565922868104113173478160267437352342 -&gt; 4\n\n4. modulo -&gt; Ticket: 4 -&gt; 145\n\nbestimmen Sie den Gewinner Nr. 2\n\nAlle_Tickets:\n\nIndex: 1 Ticket:139\nIndex: 2 Ticket:141\nIndex: 3 Ticket:143\nIndex: 4 Ticket:147\nIndex: 5 Ticket:149\nIndex: 6 Ticket:151\n\n1. bin -&gt; hex ( bin2hex(sha256(previous hex)) ): daf5802953dcb27f89972e38e8900b898733f6a613e6e1c6c5491362c1832596 -&gt; 0x9560e77525e9ea2db92cdb8484dc52046ccafac7c719b8859ff55f0eb92834a0\n2. hex -&gt; gmp Nummer: 0x9560e77525e9ea2db92cdb8484dc52046ccafac7c719b8859ff55f0eb92834a0 -&gt; 67565829218838067182838043983962684143266386786567427968312120473742580659360\n3. gmp -&gt; modulo (mod=6): 67565829218838067182838043983962684143266386786567427968312120473742580659360 -&gt; 1\n4. modulo -&gt; Ticket: 1 -&gt; 139\n\nEnd.<\/code><\/pre>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/454102\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u0430\u043a-\u0442\u043e \u0443\u0442\u0440\u043e\u043c \u043d\u0430 \u0433\u043b\u0430\u0437\u0430 \u043f\u043e\u043f\u0430\u043b\u0430\u0441\u044c \u0441\u0442\u0430\u0442\u044c\u044f \u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0430 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves platform. \u041e\u0431\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u0430, \u0430 \u0432\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043d\u0435\u0442. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u043a\u043e\u0434\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u0447\u0442\u043e, \u043a\u0443\u0434\u0430, \u0437\u0430\u0447\u0435\u043c? \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0443 \u0430\u0432\u0442\u043e\u0440\u0430 \u043e\u0440\u0430\u043a\u0443\u043b\u0430, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u043e\u0437\u044b\u0433\u0440\u044b\u0448\u0430 (\u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 PHP) \u0441 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430. \u0412 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u0442\u0443\u0440\u043d\u0438\u0440\u0430\/\u0440\u0430\u0443\u043d\u0434\u0430 [&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-34823","post","type-post","status-publish","format-standard","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=\"\u041a\u0430\u043a-\u0442\u043e \u0443\u0442\u0440\u043e\u043c \u043d\u0430 \u0433\u043b\u0430\u0437\u0430 \u043f\u043e\u043f\u0430\u043b\u0430\u0441\u044c \u0441\u0442\u0430\u0442\u044c\u044f \u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0430 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves platform. \u041e\u0431\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u0430, \u0430 \u0432\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043d\u0435\u0442. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u043a\u043e\u0434\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u0447\u0442\u043e, \u043a\u0443\u0434\u0430, \u0437\u0430\u0447\u0435\u043c? \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0443 \u0430\u0432\u0442\u043e\u0440\u0430 \u043e\u0440\u0430\u043a\u0443\u043b\u0430, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u043e\u0437\u044b\u0433\u0440\u044b\u0448\u0430 (\u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 PHP) \u0441 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430. \u0412 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u0442\u0443\u0440\u043d\u0438\u0440\u0430\/\u0440\u0430\u0443\u043d\u0434\u0430\" \/>\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\/de\/blog\/administrirovanie\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\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\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u043e\u0440\u0430\u043a\u0443\u043b\u0430 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043b\u043e\u0442\u0435\u0440\u0435\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u0430\u043a-\u0442\u043e \u0443\u0442\u0440\u043e\u043c \u043d\u0430 \u0433\u043b\u0430\u0437\u0430 \u043f\u043e\u043f\u0430\u043b\u0430\u0441\u044c \u0441\u0442\u0430\u0442\u044c\u044f \u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0430 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves platform. \u041e\u0431\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u0430, \u0430 \u0432\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043d\u0435\u0442. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u043a\u043e\u0434\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u0447\u0442\u043e, \u043a\u0443\u0434\u0430, \u0437\u0430\u0447\u0435\u043c? \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0443 \u0430\u0432\u0442\u043e\u0440\u0430 \u043e\u0440\u0430\u043a\u0443\u043b\u0430, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u043e\u0437\u044b\u0433\u0440\u044b\u0448\u0430 (\u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 PHP) \u0441 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430. \u0412 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u0442\u0443\u0440\u043d\u0438\u0440\u0430\/\u0440\u0430\u0443\u043d\u0434\u0430\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei\" \/>\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-31T19:00:35+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:00:35+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\udd47Verwendung eines Zufallsorakels am Beispiel einer Lotterie | ProHoster","description":"Eines Morgens stie\u00df ich auf einen Artikel \u00fcber einen \u00fcberpr\u00fcfbaren Zufallszahlengenerator auf der Blockchain der Waves-Plattform. Das Gesamtbild war klar, aber die spezifische Umsetzung - das war unverst\u00e4ndlich. Einige Codes, Signaturen, was, wohin, warum? Nach mehreren Beratungen mit dem Orakel-Autor gelang es schlie\u00dflich, die Logik der Verlosung (in PHP umgesetzt) mit dem Algorithmus zur Erzeugung einer Zufallszahl zu kombinieren. Zum Zeitpunkt des Turnier-\/Rundenstarts.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","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\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u043e\u0440\u0430\u043a\u0443\u043b\u0430 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043b\u043e\u0442\u0435\u0440\u0435\u0438 | ProHoster","og:description":"\u041a\u0430\u043a-\u0442\u043e \u0443\u0442\u0440\u043e\u043c \u043d\u0430 \u0433\u043b\u0430\u0437\u0430 \u043f\u043e\u043f\u0430\u043b\u0430\u0441\u044c \u0441\u0442\u0430\u0442\u044c\u044f \u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c\u043e\u043c \u0433\u0435\u043d\u0435\u0440\u0430\u0442\u043e\u0440\u0435 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043d\u0430 \u0431\u043b\u043e\u043a\u0447\u0435\u0439\u043d\u0435 Waves platform. \u041e\u0431\u0449\u0430\u044f \u043a\u0430\u0440\u0442\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u043d\u044f\u0442\u043d\u0430, \u0430 \u0432\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u2014 \u043d\u0435\u0442. \u041a\u0430\u043a\u0438\u0435-\u0442\u043e \u043a\u043e\u0434\u044b, \u043f\u043e\u0434\u043f\u0438\u0441\u0438, \u0447\u0442\u043e, \u043a\u0443\u0434\u0430, \u0437\u0430\u0447\u0435\u043c? \u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0441\u0443\u043b\u044c\u0442\u0430\u0446\u0438\u0439 \u0443 \u0430\u0432\u0442\u043e\u0440\u0430 \u043e\u0440\u0430\u043a\u0443\u043b\u0430, \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u043e\u0437\u044b\u0433\u0440\u044b\u0448\u0430 (\u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043d\u0430 PHP) \u0441 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0447\u0438\u0441\u043b\u0430. \u0412 \u043c\u043e\u043c\u0435\u043d\u0442 \u0441\u0442\u0430\u0440\u0442\u0430 \u0442\u0443\u0440\u043d\u0438\u0440\u0430\/\u0440\u0430\u0443\u043d\u0434\u0430","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/ispolzovanie-sluchajnogo-orakula-na-primere-loterei","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-31T19:00:35+00:00","article:modified_time":"2019-10-31T19:00:35+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34823","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 20:44:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:14:06","updated":"2026-01-21 20:44:19"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34823","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=34823"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/34823\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=34823"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=34823"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=34823"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}