WavesKit - frèam PHP airson a bhith ag obair leis na Waves blockchain

Is toil leam PHP airson astar leasachaidh agus comas giùlain sàr-mhath. Tha e fìor mhath nuair a bhios inneal agad an-còmhnaidh deiseil airson fuasgladh fhaighinn air duilgheadasan nad phòcaid.

Bha e tàmailteach nuair a bha, nuair a fhuair mi eòlas air blockchain dachaigheil Àrd-ùrlar Waves cha robh PHP SDK deiseil aige san arsenal aige. Uill, bha agam ri a sgrìobhadh.

An toiseach bha agam ri cleachdadh nodan gus gnothaichean a shoidhnigeadh. Mar sin, gus trì seòlaidhean a stiùireadh, dh'fheumadh tu trì nodan a ruith ... B 'e sealladh truagh a bh' ann, ged a dh'fhuasgail e cuid de dhuilgheadasan. Gus an tàinig an tuigse gur e crìoch marbh a bhith an urra ri nodan. An toiseach, air sgàth comas-gnìomh cuibhrichte API, san dàrna h-àite, air sgàth an astair (bha nodan gu math slaodach sna làithean sin).

Thòisich mi dà obair co-shìnte. Is e aon dhiubh rannsachair blockchain a dhèanamh a tha luath agus gu tur neo-eisimeileach bhon API nód. Is e an dàrna fear na gnìomhan gu lèir a chruinneachadh airson a bhith ag obair le Àrd-ùrlar Waves ann an aon àite. Seo mar a thàinig na pròiseactan gu bith. w8io и WavesKit.

B 'e a' chiad cheum air cùl seallaidhean blockchain Waves brabhsair w8io. Cha robh e furasta, ach bha e fhathast comasach air àireamhachadh neo-eisimeileach a sgrìobhadh air a h-uile cothromachadh agus eadhon mearachd a lorg anns an àireamhachadh air na nodan tùsail (Prògram bug bounty Co-dhiù, bidh e ag obair dhaibh, bidh iad a 'pàigheadh ​​​​airson na mearachdan a chaidh a lorg). Faodaidh tu barrachd ionnsachadh mu ghnìomhachd brabhsair w8io san t-snàthainn seo: https://forum.wavesplatform.com/t/w8io-waves-explorer-based-on-php-sqlite

Anns a 'phròiseas a bhith ag obair air w8io, bha teagamhan agam mu thràth, ach nuair a thàinig an obair gu crìch loidsigeach agus thòisich mi a' cruthachadh an SDK, chaidh na teagamhan agam a dhearbhadh. Cha b 'urrainn dhomh cuid de ghnìomhan a lorg an àite sam bith, a' gabhail a-steach an fheadhainn criptografach as cudromaiche. An uairsin thòisich mi le bhith a 'dèanamh mo bhreigichean bunaiteach. Seo mar a rugadh iad: ABCòd gus còdachadh gu base58 (gu dearbh gus aibideil sam bith a chòdachadh gu gin), Curve25519 gus ainmean-sgrìobhte co-fhreagarrach a chruthachadh agus a dhearbhadh (le roghainnean air steroids), Bloc 2b gus aon de na hashes obrachadh a-mach (nach eil air a bhith ri fhaighinn ach bho PHP 7.2), msaa.

An seo feumaidh mi taing a thoirt Inala Kardanov airson comhairle luachmhor a stiùir mi a dh'ionnsaigh bàrd an àite an àbhaist dhòmhsa, ach seann-fhasanta, cuir a-steach faidhlichean.

Às deidh mìos no dhà Chunnaic WavesKit solas an latha, thàinig a mach tionndaidhean beta agus tha e a-nis deiseil airson obrachadh leis a h-uile gnìomh àbhaisteach aig àrd-ùrlar Waves. Uile ri fhaighinn ann an prìomh lìonra faodar gnothaichean a chruthachadh, a shoidhnigeadh agus a chuir gu furasta le dìreach aon phacaid a ruitheas air a h-uile dreach 64-bit de PHP bho 5.6 in-ghabhalach.

Bidh sinn a’ ceangal WavesKit ris a’ phròiseact againn:

composer require deemru/waveskit

Cleachdaidh sinn:

use deemruWavesKit;
$wk = new WavesKit( 'T' );
$wk->setSeed( 'manage manual recall harvest series desert melt police rose hollow moral pledge kitten position add' );
$tx = $wk->txBroadcast( $wk->txSign( $wk->txTransfer( 'test', 1 ) ) );
$tx = $wk->ensure( $tx );

Anns an eisimpleir gu h-àrd, bidh sinn a 'cruthachadh rud WavesKit a bhios a' ruith air testnet "T". Shuidhich sinn an abairt sìol, às am bi iuchraichean agus seòladh a’ chunntais air an tomhas gu fèin-ghluasadach stèidhichte air an iuchair phoblach. An uairsin, bidh sinn a’ cruthachadh malairt gluasaid 0.00000001 Waves bhon t-seòladh air a thomhas gu fèin-ghluasadach bhon abairt sìol gu seòladh an alias “deuchainn”, ga ghluasad airson ainm-sgrìobhte leis an iuchair phrìobhaideach agus cuir chun lìonra e. Às deidh sin, nì sinn cinnteach gu bheil an gnothach air a dhearbhadh gu soirbheachail leis an lìonra.

Tha fòcas air gnothaichean gnìomhan a’ tòiseachadh le tx. Airson tuigse nas fheàrr air a bhith ag obair le gnothaichean, faodaidh tu sgrùdadh Sgrìobhainnean WavesKit no rachaibh gu dìreach gu na h-eisimpleirean dealbhach ann an deuchainnean aonachaidh leantainneach.

Leis gun deach WavesKit a leasachadh ann an cleachdadh fìor, tha feartan adhartach aige mu thràth. Tha a 'chiad fheart killer dèanamh cinnteach à gnìomh, a tha a 'cumail smachd air coileanadh na h-ìre de mhisneachd a tha a dhìth nach deach an gnothach a chall, ach, air an làimh eile, chaidh a dhearbhadh agus ràinig e an àireamh riatanach de dhearbhadh san lìonra.

Is e inneal dìon bullet eile mar a bhios WavesKit a’ conaltradh le nodan. Ann an suidheachaidhean taigh-glainne, bidh am frèam ag obair a-mhàin leis a 'phrìomh nód, a' cumail ceangal cunbhalach ris, ach ma tha mearachdan ann faodaidh e atharrachadh gu fèin-ghluasadach gu feadhainn cùl-taic. Ma tha thu a’ stèidheachadh sreath de nodan cùl-taic, faodaidh tu an gnìomh a ghairm seataNode as Fheàrr gus an nód as fheàrr a dhearbhadh mar am prìomh nód leis an luach as àirde den àirde gnàthach agus astar freagairt. A-nis cuir tasgadan ceist a-staigh ris an seo agus mothaich cùram an dà chuid luchd-cleachdaidh agus sealbhadairean nodan.

Is e aon de na dòighean adhartach as ùire an gnìomh txMonitor. Nochd e an co-cheangal ris an fheum air dèiligeadh ri gnothaichean a tha a 'tighinn a-steach ann an àm fìor. Bidh an gnìomh seo gu tur a’ fuasgladh a h-uile nuances co-cheangailte ri giullachd ghnothaichean anns an blockchain. Cha bhith barrachd pian ann, dìreach cuir air dòigh do ghnìomh gairm air ais leis na roghainnean a tha thu ag iarraidh agus feitheamh ri gnothaichean ùra gus na pròiseasan agad a thòiseachadh. Mar eisimpleir, fear eile de na pròiseactan agam VECRO air a thogail gu tur timcheall air a’ ghnìomh seo, is urrainn dhut gu furasta ionnsachadh mar a tha e ag obair ceart ann an còd a’ phròiseict.

Tha gaol agam air stòr fosgailte, is e seo aon de na coileanaidhean as motha aig mac an duine. Leis gur mise an aon leasaiche agus gu bheil mi air an staid a ruighinn gu bheil na feumalachdan agam uile air am fuasgladh, tha mi a’ toirt cuireadh dhut a bhith a’ cleachdadh agus a’ cur ri WavesKit.

Source: www.habr.com

Cuir beachd ann