"Lojërat për para jashtë blockchain duhet të vdesin"

"Lojërat për para jashtë blockchain duhet të vdesin"

Dmitry Pichulin, i njohur me pseudonimin "deemru", u bë fituesi i lojës Parajsa Fhloston, i zhvilluar nga Tradisys në blockchain Waves.

Për të fituar loja, një lojtar duhej të bënte bastin e fundit gjatë një periudhe prej 60 blloqesh - përpara se një lojtar tjetër të vinte një bast, duke e rivendosur numrin në zero. Fituesi mori të gjitha bastet e parave nga lojtarët e tjerë.

Boti që ai krijoi i solli fitoren Dmitry Patrulla. Dmitry bëri vetëm tetë baste në një WAVES dhe përfundimisht fitoi 4700 VALA (836300 rubla). Në një intervistë, Dmitry foli për botin e tij dhe perspektivat e lojërave në blockchain.

Na tregoni pak për veten tuaj. Cfare po ben? Kur u interesuat për teknologjinë blockchain?

Unë jam një zhvillues në fushën e sigurisë së informacionit. Erdha në blockchain me zhurmën e vitit 2017, kuptova teknologjinë dhe qëndrova për teknologjinë.

Cili ishte motivimi kryesor për të marrë pjesë në lojë?

Para së gjithash, interesi teknik. Doja të kuptoja se si funksionon, të gjeja dobësi, të mos lejoja që loja të mbaronte dhe të "trolloja" lojtarët e tjerë, natyrisht.

A keni vendosur tashmë se si do t'i shpenzoni fitimet tuaja? Si do ta ruani nëse vendosni të mos e shpenzoni akoma?

Nuk mund të kuptoja se çfarë të bëja me fitimet. Nuk e prisja, kështu që nuk kam asnjë plan. Tani për tani do të mbetet ashtu siç është. Ndoshta do të rrjedhë në ndonjë projekt në Waves.

Pse vendosët të merrni pjesë në lojë duke përdorur një bot? Si lindi ideja për Patrollo? Mund të na tregoni më shumë rreth zhvillimit të saj?

Nuk funksionoi me dobësitë. E mora lojën në rrjetin e testimit, luajta me veten time, provova të gjitha opsionet, por gjithçka doli të ishte "e lidhur", nuk kishte asnjë dobësi në kontratë. U bë e qartë se kjo mënyrë nuk mund të fitohej.

Si i kërkuat dobësitë? Cilat ishin hipotezat tuaja? A mund të jepni një kod shembull?

Kishte dy hipoteza. Së pari, një sulm ndaj kontrolleve të tipit të të dhënave në të dhënat e transaksioneve të të dhënave. Për shembull, prisja që kodimi i keq do të anashkalonte kontrollin e ripërdorimit të ID-së së transaksionit. E dyta është një sulm i tejkalimit të numrave të plotë. Mendova se kishte një mënyrë për të vendosur lartësinë shumë të lartë ose negative dhe të përpiqesha të përfundonte në të kaluarën.

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

Çfarë bëtë kur patë që pritshmëritë tuaja për cenueshmërinë nuk u përmbushën?

Në bisedën e tij në telegram, Tradisys u ankua se ndërsa gjithçka është e qetë në rrjet, loja do të jetë e përjetshme, por në konfuzion (me përditësime të nyjeve ose pirunë të papritur), shanset për robotë të mirë rriten. Aty, në chat, pranova sfidën për të shkruar një bot të mirë, të cilin e bëra nja dy ditë më vonë. Unë shkrova kodin Patrollo në PHP, bazuar në kornizën time WavesKit, në të cilën përpiqem të kap të gjitha teknikat më të mira për të punuar me blockchain.

E testova atë në rrjetin e testimit, postova kodin në github, nisa bot-in në rrjetin kryesor dhe e harrova.

Konfigurimi im Patrollo duhej të zgjidhte dy probleme: të vendoste baste sa më rrallë që të ishte e mundur dhe të punonte sa më shumë të jetë e mundur.

E para vendoset nga baste jashtëzakonisht të rrezikshme, mundësisht në bllokun e fundit. Në fund, unë ende vendosa bot në bllokun e parafundit, por me një vonesë shtesë prej 29 sekondash. Kjo lejoi të bëhen vetëm tetë baste gjatë gjithë lojës.

Pse pikërisht 29 sekonda? Si arritët në këtë numër?

29 sekonda u shfaqën gradualisht. Në fillim nuk pati asnjë vonesë, por vura re se në bllokun e parafundit kishte raste të basteve të njëkohshme - domethënë, nuk kishte asnjë pikë bast. Pastaj pati një vonesë - mendoj se ishte 17 sekonda, por as nuk ndihmoi: kishte ende baste të njëkohshme. Më pas vendosa të rrezikoja më shumë, por sigurisht jo të bëja baste të njëkohshme. Pse 17, 29, etj? Vetëm një dashuri për numrat e thjeshtë. 24, 25, 26, 27, 28, 30 - të gjitha komponimet. Dhe më shumë se 30 sekonda do të ishin krejtësisht të rrezikshme.

Si u zgjidh çështja e besueshmërisë?

Besueshmëria trajtohej kryesisht nga mekanizmi për zgjedhjen e një nyje pune dhe, në një masë më të vogël, nga kryerja e një transaksioni transferimi për bastin paraprakisht, në mënyrë që basti në transaksionin e datës tashmë të referonte me saktësi një transaksion ekzistues në blockchain.

Gjatë çdo raundi të ciklit, të gjitha nyjet e specifikuara në konfigurim u anketuan për lartësinë e tyre aktuale, u zgjodh nyja me lartësinë më të madhe aktuale dhe u zhvillua ndërveprim i mëtejshëm me të. Në kuptimin tim, kjo ishte menduar të mbronte kundër pirunëve, mosdisponueshmërisë, caching dhe gabimeve të mundshme në nyje. Ka besim se ishte ky mekanizëm i thjeshtë që çoi në fitore.

Cilat janë, sipas jush, tiparet dhe avantazhet kryesore të lojërave blockchain? Sa premtues janë blockchain publik në përgjithësi dhe blockchain Waves në veçanti për zhvillimin e lojërave?

Përparësitë kryesore janë rregullat e njohura, fikse dhe të pandryshueshme të lojës, plus kushte të barabarta për akses në lojë nga kudo në botë.

Lojërat me para jashtë zinxhirit duhet të vdesin.

Waves ka funksionalitet të pasur teknik, por ka nuanca, të qenësishme në çdo blockchain dhe specifike. Të dyja nuk janë pasqyruar ende shumë mirë në mjetet ekzistuese të zhvilluesve.

Për shembull, nëse do të përpiqeshit t'i përgjigjeni transaksioneve në kohë reale, dhe jo në një distancë prej 5-10 konfirmimesh, do të mësoni për fenomene të rralla por që ndodhin: transaksione që kërcejnë nga blloku në bllok, transaksione që mungojnë në disa blloqe dhe shfaqen në të tjera . E gjithë kjo është kritike për shpejtësinë dhe besueshmërinë e çdo aplikacioni dhe duhet të zgjidhet në një mënyrë të përgjithshme, por tani për tani secili zhvillues arrin nivelin e besueshmërisë që kërkon vetë. Me kalimin e kohës, natyrisht, e gjithë kjo do të zgjidhet, por tani për tani ekziston një pengesë e caktuar, mjaft e lartë, për hyrjen dhe frikën e specifikave të punës së blockchains vërtet të decentralizuar në përgjithësi.

Si ndryshon loja FOMO nga lojërat e tjera blockchain që njihni? Cilat janë avantazhet dhe disavantazhet e tij?

Këto janë lojëra të gjata. Interesi për lojëra të tilla rritet me shumën e fitimeve, dhe shuma e fitimeve rritet me kalimin e kohës.

Idealisht, loja nuk do të përfundojë kurrë. Kur mbaron loja është e trishtueshme...

Kohët e fundit isha nisur lojë Fhloston Paradise 2. A planifikoni të merrni pjesë në të?

Po, nëse kam kohë dhe interes, do të ndërmarr të njëjtat hapa: analiza e cenueshmërisë, duke luajtur me veten në një rrjet testimi, bot, me burim të hapur, etj.

Së fundi, ju lutemi na tregoni për planet tuaja si zhvillues.

Unë jam i interesuar të zgjidh problemet e pazgjidhura, dhe ka shumë probleme të pazgjidhura në temën e blockchain. Kjo është një sfidë e vërtetë! Dhe ai u pranua.

Burimi: www.habr.com

Shto një koment