"Rahapelien lohkoketjun ulkopuolella täytyy kuolla"

"Rahapelien lohkoketjun ulkopuolella täytyy kuolla"

Dmitry Pichulin, joka tunnetaan lempinimellä "deemru", tuli pelin voittajaksi Fhlostonin paratiisi, jonka on kehittänyt Tradisys on the Waves -lohkoketjussa.

Voittaa sisään peli, pelaajan oli asetettava viimeinen veto 60 lohkon jakson aikana - ennen kuin toinen pelaaja teki vedon, mikä nollasi laskurin. Voittaja sai kaikki muiden pelaajien panokset.

Hänen luomansa botti toi voiton Dmitrylle Patrollo. Dmitry teki vain kahdeksan vetoa yhdelle AALLOlle ja lopulta voitti 4700 AALTOA (836300 XNUMX RUB). Haastattelussa Dmitry puhui bottistaan ​​ja lohkoketjun pelien näkymistä.

Kerro meille hieman itsestäsi. Mitä sinä teet? Milloin kiinnostuit lohkoketjuteknologiasta?

Olen tietoturva-alan kehittäjä. Tulin lohkoketjuun vuoden 2017 hypetyksen myötä, ymmärsin tekniikan ja pysyin tekniikassa.

Mikä oli tärkein motiivi osallistua peliin?

Ensinnäkin tekninen kiinnostus. Halusin selvittää, miten se toimii, löytää haavoittuvuuksia, olla antamatta pelin loppua ja "trollaa" muita pelaajia, tietysti.

Oletko jo päättänyt, miten käytät voittosi? Miten säilytät sen, jos päätät olla käyttämättä sitä vielä?

En keksi mitä tehdä voitoilla. En odottanut sitä, joten minulla ei ole suunnitelmia. Toistaiseksi se pysyy entisellään. Ehkä se virtaa johonkin Waves-projektiin.

Miksi päätit osallistua peliin botin avulla? Miten ajatus Patrollosta syntyi? Voitko kertoa meille lisää sen kehityksestä?

Se ei onnistunut haavoittuvuuksilla. Otin pelin testiverkosta, pelasin itseni kanssa, kokeilin kaikkia vaihtoehtoja, mutta kaikki osoittautui "kiinteäksi", sopimuksessa ei ollut haavoittuvuuksia. Kävi selväksi, että tätä tapaa ei voitu voittaa.

Miten etsit haavoittuvuuksia? Mitkä olivat hypoteesisi? Voitko antaa esimerkkikoodin?

Hypoteesia oli kaksi. Ensinnäkin hyökkäys datatapahtumatietueiden tietotyyppitarkistuksiin. Odotin esimerkiksi, että huono koodaus ohittaisi tapahtumatunnuksen uudelleenkäytön tarkistuksen. Toinen on kokonaislukujen ylivuotohyökkäys. Ajattelin, että oli tapa asettaa korkeus liian korkeaksi tai negatiiviseksi ja yrittää päätyä menneisyyteen.

$tx = $wk->txBroadcast( $wk->txSign( $wk->txData( [ 'heightToGetMoney' => -9223372036854775807 ] ) ) );

Mitä teit, kun huomasit, että haavoittuvuutta koskevat odotuksesi eivät täyttyneet?

Tradisys valitti sähkekeskustelussaan, että vaikka verkossa kaikki on hiljaista, peli tulee olemaan ikuinen, mutta hämmennässä (solmupäivitysten tai odottamattomien haarojen kanssa) hyvien robottien mahdollisuudet kasvavat. Siellä chatissa otin vastaan ​​haasteen kirjoittaa hyvä botti, minkä tein pari päivää myöhemmin. Kirjoitin Patrollo-koodin PHP:llä kehykseni perusteella WavesKit, jossa yritän vangita kaikki parhaat tekniikat lohkoketjun kanssa työskentelyyn.

Testasin sitä testiverkossa, lähetin koodin githubiin, käynnistin botin pääverkossa ja unohdin sen.

Patrollo-kokoonpanoni piti ratkaista kaksi ongelmaa: lyödä vetoa mahdollisimman harvoin ja toimia mahdollisimman luotettavasti.

Ensimmäinen ratkaistaan ​​erittäin riskialttiilla vedoilla, mieluiten aivan viimeisessä lohkossa. Lopulta sijoitin botin silti toiseksi viimeiseen lohkoon, mutta 29 sekunnin lisäviiveellä. Tämä mahdollisti vain kahdeksan vetoa koko pelin aikana.

Miksi juuri 29 sekuntia? Miten päädyit tähän numeroon?

29 sekuntia ilmestyi vähitellen. Aluksi ei ollut viivettä, mutta huomasin, että toiseksi viimeisellä lohkolla tapahtui samanaikaisia ​​vetoja - eli vedonlyönnissä ei ollut mitään järkeä. Sitten tuli viive - mielestäni se oli 17 sekuntia, mutta sekään ei auttanut: samanaikaisia ​​vetoja oli edelleen. Sitten päätin ottaa enemmän riskejä, mutta en todellakaan panostaa samanaikaisesti. Miksi 17, 29 jne? Vain rakkaus alkulukuihin. 24, 25, 26, 27, 28, 30 - kaikki yhdisteet. Ja yli 30 sekuntia olisi täysin riskialtista.

Miten luotettavuusongelma ratkaistiin?

Luotettavuuteen puututtiin pääasiassa toimivan solmun valintamekanismilla ja vähemmässä määrin tekemällä vedon siirtotapahtuma etukäteen, jotta päivämäärätapahtuman veto viittaisi jo tarkasti lohkoketjussa olemassa olevaan tapahtumaan.

Jokaisen syklin kierroksen aikana kaikista konfiguraatiossa määritellyistä solmuista kysyttiin niiden nykyinen korkeus, valittiin korkeimman virran korkeus solmu ja sen kanssa tapahtui lisävuorovaikutusta. Ymmärtääkseni tämän piti suojata haarukoilta, epäkäytettävyydeltä, välimuistilta ja mahdollisilta virheiltä solmuissa. Uskotaan, että tämä yksinkertainen mekanismi johti voittoon.

Mitkä ovat mielestäsi blockchain-pelien pääominaisuudet ja edut? Kuinka lupaavia ovat julkiset lohkoketjut yleensä ja Waves-lohkoketju erityisesti pelikehityksen kannalta?

Tärkeimmät edut ovat tunnetut, kiinteät ja muuttumattomat pelisäännöt sekä yhtäläiset edellytykset päästä peliin mistä päin maailmaa tahansa.

Ketjun ulkopuolisten rahapelien täytyy kuolla.

Wavesilla on runsaasti teknisiä toimintoja, mutta niissä on vivahteita, sekä jokaiselle lohkoketjulle ominaisia ​​että erityisiä. Molemmat eivät vielä näy kovin hyvin olemassa olevissa kehittäjätyökaluissa.

Jos esimerkiksi yrittäisit vastata tapahtumiin reaaliajassa, etkä 5-10 vahvistuksen etäisyydellä, oppisit harvinaisista, mutta esiintyvistä ilmiöistä: tapahtumat hyppäävät lohkosta lohkoon, tapahtumat puuttuvat joistakin lohkoista ja näkyvät toisissa . Kaikki tämä on kriittistä minkä tahansa sovelluksen nopeuden ja luotettavuuden kannalta, ja se on ratkaistava yleisellä tavalla, mutta toistaiseksi jokainen kehittäjä saavuttaa tarvitsemansa luotettavuustason itse. Ajan myötä kaikki tämä tietysti ratkeaa, mutta toistaiseksi on olemassa tietty, melko korkea este markkinoille pääsylle ja pelko todella hajautettujen lohkoketjujen työn erityispiirteistä yleensä.

Miten FOMO-peli eroaa muista tuntemistasi blockchain-peleistä? Mitkä ovat sen edut ja haitat?

Nämä ovat pitkiä pelejä. Kiinnostus tällaisia ​​pelejä kohtaan kasvaa voittojen määrän myötä, ja voittojen määrä kasvaa ajan myötä.

Ihannetapauksessa peli ei lopu koskaan. Kun peli päättyy, se on surullista...

Äskettäin olin käynnistettiin peli Fhloston Paradise 2. Aiotteko osallistua siihen?

Kyllä, jos minulla on aikaa ja kiinnostusta, teen samat vaiheet: haavoittuvuusanalyysi, itseni pelaaminen testiverkossa, botti, avoin lähdekoodi jne.

Lopuksi kerro meille suunnitelmistasi kehittäjänä.

Olen kiinnostunut ratkaisemattomien ongelmien ratkaisemisesta, ja lohkoketju-aiheessa on monia ratkaisemattomia ongelmia. Tämä on todellinen haaste! Ja hänet hyväksyttiin.

Lähde: will.com

Lisää kommentti