Ngaphezu konyaka odlulileyo, kuye kwaziwa malunga nezicwangciso zomthunywa weTelegram ukukhulula inethiwekhi yakhe. Vula inethiwekhi yocingo. Emva koko kwabakho uxwebhu lobugcisa olunamandla, oluthi lubhalwe nguNikolai Durov kwaye lwachaza ubume benethiwekhi yexesha elizayo. Kwabo bayiphosileyo, ndincoma ukuba ufunde ukubalisa kwam kwakhona olu xwebhu (
Ukusukela ngoko, akukhange kubekho ndaba zibalulekileyo malunga nobume bophuhliso lwe-TON kude kube ziintsuku ezimbalwa ezidlulileyo (kwenye ye
β¦
β¦
β¦
β¦
β¦
β¦
β¦
β¦
Ndiyaphinda, kwakungekho siqinisekiso esisemthethweni sephepha kunye nawo onke la maxwebhu avela kwiTelegram, kodwa umthamo wezi zixhobo ubenza bacace. Qalisa umxhasi opapashiweyo ngomngcipheko wakhe.
Ukwakha umxhasi wovavanyo
Okokuqala, makhe sizame ukwakha kwaye siqhube umthengi wovavanyo-ngethamsanqa,
-
Khuphela kwaye uyikhuphe
umthombo ogciniweyo . Kubalulekile ukukhuphela uguqulelo lwamva nje njengoko ukuhambelana ngasemva akuqinisekwanga kweli nqanaba. -
Qinisekisa ukuba iinguqulelo zamva nje zokwenza, i-cmake (uguqulelo 3.0.2 okanye ngaphezulu), i-OpenSSL (kubandakanywa neefayile ze-header C), i-g++ okanye i-clang ifakwe kwisistim. Andizange ndifake nantoni na, yonke into yadibana ngoko nangoko.
-
Makhe sicinge ukuba imithombo ayipakishwanga kwisiqulathi seefayili
~/lite-client
. Ngokwahlukileyo kuyo, yenza incwadi engenanto yeprojekthi edityanisiweyo (umzekelo,~/liteclient-build
), kwaye ukusuka kuyo (cd ~/liteclient-build
) biza imiyalelo:cmake ~/lite-client cmake --build . --target test-lite-client
Ukwakha i-Fift itoliki yolwimi kwiikontraki ezihlakaniphile (ngaphezulu malunga nayo ngezantsi), sikwabizacmake --build . --target fift
-
Khuphela ekhoyo ngoku
ifayile yoqwalaselo ukudibanisa kumsebenzi womnatha wovavanyo kwaye uyibeke kulawulo kunye nomxhasi odityanisiweyo. -
Yenziwe, ungaqala umxhasi:
./test-lite-client -C ton-lite-client-test1.config.json
Ukuba yonke into yenziwe ngokuchanekileyo, kuya kufuneka ubone into efana nale:
Njengoko sibona, kukho imiyalelo embalwa ekhoyo:
β¦ help
β bonisa olu luhlu lwemiyalelo;
β¦ quit
- Phuma;
β¦ time
β bonisa ixesha langoku kumncedisi;
β¦ status
β bonisa uqhagamshelo kunye nemo yedatha yendawo;
β¦ last
- hlaziya imeko ye-blockchain (khuphela ibhloko yokugqibela). Kubalulekile ukuqhuba lo myalelo phambi kokuba naziphi na izicelo zokuqinisekisa ukuba ubona imeko yangoku yenethiwekhi.
β¦ sendfile
<filename>
- layisha ifayile yendawo kwinethiwekhi yeTON. Yile ndlela intsebenziswano kunye nenethiwekhi eyenzekayo - kubandakanywa, umzekelo, ukudalwa kweekontrakthi ezintsha kunye nezicelo zokudlulisa imali phakathi kwee-akhawunti;
β¦ getaccount
<address>
- bonisa okwangoku (ngexesha waphunyezwa umyalelo) last
) ubume be-akhawunti enedilesi ekhankanyiweyo;
β¦ privkey
<filename>
β layisha iqhosha labucala kwifayile yendawo.
Ukuba, xa uqala umxhasi, ugqithisela incwadi eneenkcukacha kuyo usebenzisa ukhetho -D
, emva koko uya kongeza ibhloko yokugqibela ye-masterchain kuyo:
./test-lite-client -C ton-lite-client-test1.config.json -D ~/ton-db-dir
Ngoku siyakwazi ukuqhubela phambili kwizinto ezinomdla ngakumbi - funda ulwimi lweFift, zama ukuqokelela inkontileka ehlakaniphile (umzekelo, yenza i-wallet yokuvavanya), uyilayishe kwinethiwekhi kwaye uzame ukudlulisa imali phakathi kwee-akhawunti.
Ulwimi lwesihlanu
Ukusuka kuxwebhu
Uxwebhu lunamandla, amaphepha angama-87, kwaye andizukuphinda ndibalise imixholo yalo ngokweenkcukacha kwisakhelo seli nqaku (ubuncinci kuba andikagqibi ukulifunda ngokwam :). Ndiza kugxila kwiingongoma eziphambili kwaye ndinike imizekelo embalwa yekhowudi kolu lwimi.
Kwinqanaba elisisiseko, i-syntax ye-Fift ilula kakhulu: ikhowudi yayo iqulathe magama, ngokuqhelekileyo ihlulwe zizithuba okanye imigca yemigca (imeko ekhethekileyo: amanye amagama awafuni isahluli emva kwawo). Nayiphi na igama lulandelelwano olunovakalelo lwemeko yabalinganiswa ehambelana nento ethile inkcazo (ngokurhabaxa, into ekufuneka yenziwe yitoliki xa idibana neli gama). Ukuba akukho nkcazelo yegama, itoliki izama ukucazulula njengenani kwaye ilibeke kwisitaki. Ngendlela, amanani apha - ngokukhawuleza - i-257-bit integers, kwaye akukho maqhezu konke konke - ngokuthe ngqo, ngokukhawuleza ajika abe ngamaqela adibeneyo, okwenza i-numerator kunye ne-denominator yeqhezu lengqiqo.
Amagama athanda ukunxibelelana namaxabiso phezulu kwesitaki. Uhlobo olwahlukileyo lwamagama - isimaphambili β ayisebenzisi isitaki, kodwa abasebenzi abalandelayo kwifayile yemvelaphi. Umzekelo, le yindlela umtya osetyenziswa ngayo - umlinganiswa wocaphulo ("
) ligama lesimaphambili esijonge isicatshulwa esilandelayo (esivalayo), kwaye sityhalela umtya phakathi kwabo kwisitaki. Umgca omnye uziphatha ngendlela efanayo (//
) kunye neeline ezininzi (/*
) izimvo.
Kulapho phantse lonke ulwakhiwo lwangaphakathi lolwimi luphela. Yonke enye into (kubandakanywa nolwakhiwo lolawulo) ichazwa njengamagama (nokuba yangaphakathi, njengokusebenza kwe-arithmetic kunye nenkcazo yamagama amatsha; okanye ichazwe "kwithala leencwadi eliqhelekileyo" Fift.fif
, ekwincwadi eneenkcukacha crypto/fift
kwimithombo).
Umzekelo olula wenkqubo kwiFift:
{ dup =: x dup * =: y } : setxy
3 setxy x . y . x y + .
7 setxy x . y . x y + .
Umgca wokuqala uchaza igama elitsha setxy
(qaphela isimaphambili {
, eyenza ibhloko phambi kokuvala }
kunye nesimaphambili :
, elichaza ngokwenyani igama). setxy
ithatha inani ukusuka phezulu kwesipaki, ichaza (okanye iphinde ichaze) njengehlabathi jikelele rhoqo x
, kunye nesikwere seli nani njengento engatshintshiyo y
(Ngenxa yokuba amaxabiso ezinto ezingaguquguqukiyo zinokuchazwa ngokutsha, ndingathanda ukuwabiza ngokuguquguqukayo, kodwa ndilandela indibano yamagama ngolwimi).
Imigca emibini elandelayo ibeka inombolo kwisitaki kwaye ufowune setxy
, emva koko amaxabiso ezinto ezingatshintshiyo ayaboniswa x
, y
(igama lisetyenziselwa imveliso .
), zozibini izigxina zibekwe kwisitaki, zishwankathelwe, kwaye iziphumo nazo ziprintwe. Ngenxa yoko siza kubona:
3 9 12 ok
7 49 56 ok
(Umgca "ok" uprintwa yitoliki xa igqibezela umgca wangoku kwimowudi yegalelo elisebenzayo)
Ewe, umzekelo opheleleyo wekhowudi:
"Asm.fif" include
-1 constant wc // create a wallet in workchain -1 (masterchain)
// Create new simple wallet
<{ SETCP0 DUP IFNOTRET INC 32 THROWIF // return if recv_internal, fail unless recv_external
512 INT LDSLICEX DUP 32 PLDU // sign cs cnt
c4 PUSHCTR CTOS 32 LDU 256 LDU ENDS // sign cs cnt cnt' pubk
s1 s2 XCPU // sign cs cnt pubk cnt' cnt
EQUAL 33 THROWIFNOT // ( seqno mismatch? )
s2 PUSH HASHSU // sign cs cnt pubk hash
s0 s4 s4 XC2PU // pubk cs cnt hash sign pubk
CHKSIGNU // pubk cs cnt ?
34 THROWIFNOT // signature mismatch
ACCEPT
SWAP 32 LDU NIP
DUP SREFS IF:<{
8 LDU LDREF // pubk cnt mode msg cs
s0 s2 XCHG SENDRAWMSG // pubk cnt cs ; ( message sent )
}>
ENDS
INC NEWC 32 STU 256 STU ENDC c4 POPCTR
}>c
// code
<b 0 32 u,
newkeypair swap dup constant wallet_pk
"new-wallet.pk" B>file
B,
b> // data
// no libraries
<b b{00110} s, rot ref, swap ref, b> // create StateInit
dup ."StateInit: " <s csr. cr
dup hash dup constant wallet_addr
."new wallet address = " wc . .": " dup x. cr
wc over 7 smca>$ type cr
256 u>B "new-wallet.addr" B>file
<b 0 32 u, b>
dup ."signing message: " <s csr. cr
dup hash wallet_pk ed25519_sign_uint rot
<b b{1000100} s, wc 8 i, wallet_addr 256 u, b{000010} s, swap <s s, b{0} s, swap B, swap <s s, b>
dup ."External message for initialization is " <s csr. cr
2 boc+>B dup Bx. cr
"new-wallet-query.boc" tuck B>file
."(Saved to file " type .")" cr
Le fayile ekhangelekayo eyoyikisayo yeyokudala ikhontrakthi ehlakaniphile - iya kufakwa kwifayile new-wallet-query.boc
emva kokubulawa. Nceda uqaphele ukuba olunye ulwimi lwendibano lusetyenziswe apha kwi-TON Virtual Machine (andiyi kuhlala kuyo ngokubanzi), imiyalelo eya kufakwa kwi-blockchain.
Ngaloo ndlela, i-assembler ye-TVM ibhalwe kwi-Fift - imithombo yalo mhlanganisi ikwifayile crypto/fift/Asm.fif
kwaye ziqhagamshelwe ekuqaleni kwesiqwengana sekhowudi engentla.
Ndingathini, ngokucacileyo u-Nikolai Durov uthanda ukwenza iilwimi ezintsha zeprogram :)
Ukudala inkontileka ehlakaniphile kunye nokusebenzisana neTON
Ke, masicinge ukuba sihlanganise umxhasi we-TON kunye netoliki ka-Fift njengoko kuchaziwe ngasentla kwaye siqhelane nolwimi. Uyenza njani inkontileka ehlakaniphile ngoku? Oku kuchazwe kwifayile
Iiakhawunti kwiTON
Njengoko ndichaze kwi
Kwitsheyina lomsebenzi omnye, ii-akhawunti ezininzi zigcinwa ezinee-akhawunti_id yazo izazisi. Kwi-master chain kunye ne-zero work chain, ziyi-256 bits ubude. Ke, isichongi seakhawunti sibhaliwe, umzekelo, ngolu hlobo:
-1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Le yifomati "ekrwada": okokuqala i-ID yekhonkco lomsebenzi, emva koko ikholoni, kunye ne-ID ye-akhawunti kubhalo lwe-hexadecimal.
Ukongeza, kukho ifomathi emfutshane - inombolo ye-workchain kunye nedilesi ye-akhawunti ifakwe kwifom yokubini, i-checksum yongezwa kubo, kwaye konke oku kufakwe kwi-Base64:
Ef+BVndbeTJeXWLnQtm5bDC2UVpc0vH2TF2ksZPAPwcODSkb
Ukwazi le fomati yerekhodi, sinokucela imeko yangoku ye-akhawunti ngomthengi wovavanyo usebenzisa umyalelo
getaccount -1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Siza kufumana into enje:
[ 3][t 2][1558746708.815218925][test-lite-client.cpp:631][!testnode] requesting account state for -1:8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D
[ 3][t 2][1558746708.858564138][test-lite-client.cpp:652][!testnode] got account state for -1:8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D with respect to blocks (-1,8000000000000000,72355):F566005749C1B97F18EDE013EBA7A054B9014961BC1AD91F475B9082919A2296:1BD5DE54333164025EE39D389ECE2E93DA2871DA616D488253953E52B50DC03F and (-1,8000000000000000,72355):F566005749C1B97F18EDE013EBA7A054B9014961BC1AD91F475B9082919A2296:1BD5DE54333164025EE39D389ECE2E93DA2871DA616D488253953E52B50DC03F
account state is (account
addr:(addr_std
anycast:nothing workchain_id:-1 address:x8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D)
storage_stat:(storage_info
used:(storage_used
cells:(var_uint len:1 value:3)
bits:(var_uint len:2 value:539)
public_cells:(var_uint len:0 value:0)) last_paid:0
due_payment:nothing)
storage:(account_storage last_trans_lt:74208000003
balance:(currencies
grams:(nanograms
amount:(var_uint len:7 value:999928362430000))
other:(extra_currencies
dict:hme_empty))
state:(account_active
(
split_depth:nothing
special:nothing
code:(just
value:(raw@^Cell
x{}
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
))
data:(just
value:(raw@^Cell
x{}
x{0000000D}
))
library:hme_empty))))
x{CFF8156775B79325E5D62E742D9B96C30B6515A5CD2F1F64C5DA4B193C03F070E0D2068086C000000000000000451C90E00DC0E35B7DB5FB8C134_}
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
x{0000000D}
Sibona isakhiwo esigcinwe kwi-DHT ye-workchain echaziweyo. Ngokomzekelo, kwintsimi storage.balance
yibhalansi yeakhawunti yangoku, kwi storage.state.code
- ikhowudi yekhontrakthi ehlakaniphile, kwaye ngaphakathi storage.state.data
- idatha yayo yangoku. Nceda uqaphele ukuba ukugcinwa kwedatha ye-TON - Iseli, iiseli - zifana nomthi, iseli nganye ingaba nedatha yayo kunye neeseli zomntwana. Oku kuboniswa njenge-indentation kwimigca yokugqibela.
Ukwakha ikhontrakthi ehlakaniphile
Ngoku makhe senze isakhiwo esinjalo ngokwethu (sibizwa ngokuba yiBOC - ibhegi yeeseli) usebenzisa ulwimi lwesiHlanu. Ngethamsanqa, akufuneki ubhale isivumelwano esihlakaniphile ngokwakho-kwifolda crypto/block
kukho ifayile esuka kwindawo yokugcina yemvelaphi new-wallet.fif
, eya kusinceda senze isikhwama esitsha. Masiyikhuphele kwincwadi eneenkcukacha ngomxhasi odityanisiweyo (~/liteclient-build
, ukuba ulandele imiyalelo engentla). Ndicaphule imixholo yayo engentla njengomzekelo wekhowudi kwiFift.
Yenza le fayile ngolu hlobo lulandelayo:
./crypto/fift -I"<source-directory>/crypto/fift" new-wallet.fif
kuyinto <source-directory>
Kufuneka itshintshwe indlela eya kwimithombo engapakishwanga (uphawu β~β, ngelishwa, alunakusetyenziswa apha, umendo opheleleyo uyafuneka). Endaweni yokusebenzisa isitshixo -I
ungachaza imo eguquguqukayo FIFTPATH
kwaye ubeke le ndlela kuyo.
Ekubeni siqalise i-Fift kunye negama lefayile new-wallet.fif
, iya kuyenza kwaye iphume. Ukuba uyalishiya igama lefayile, ungadlala netoliki ngokusebenzisana.
Emva kokuphunyezwa, into enje kufuneka iboniswe kwi-console:
StateInit: x{34_}
x{FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED54}
x{0000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B}
new wallet address = -1 : 4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
0f9PzVILj8yglrVn1zS-NSjtxr7QBfaTCp7JrBqnFPIR8nhZ
signing message: x{00000000}
External message for initialization is x{89FEE120E20C7E953E31546F64C23CD654002C1AA919ADD24DB12DDF85C6F3B58AE41198A28AD8DAF3B9588E7A629252BA3DB88F030D00BC1016110B2073359EAC3C13823C53245B65D056F2C070B940CDA09789585935C7ABA4D2AD4BED139281CFA1200000001_}
x{FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED54}
x{0000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B}
B5EE9C724104030100000000D60002CF89FEE120E20C7E953E31546F64C23CD654002C1AA919ADD24DB12DDF85C6F3B58AE41198A28AD8DAF3B9588E7A629252BA3DB88F030D00BC1016110B2073359EAC3C13823C53245B65D056F2C070B940CDA09789585935C7ABA4D2AD4BED139281CFA1200000001001020084FF0020DDA4F260810200D71820D70B1FED44D0D31FD3FFD15112BAF2A122F901541044F910F2A2F80001D31F3120D74A96D307D402FB00DED1A4C8CB1FCBFFC9ED5400480000000055375F730EDC2292E8CB15C42E8036EE9C25AA958EE002D2DE48A205E3A3426B6290698B
(Saved to file new-wallet-query.boc)
Oku kuthetha ukuba i-wallet ene-ID -1:4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
(okanye, yintoni efanayo, 0f9PzVILj8yglrVn1zS-NSjtxr7QBfaTCp7JrBqnFPIR8nhZ
) yenziwe ngempumelelo. Ikhowudi ehambelanayo iya kuba kwifayile new-wallet-query.boc
, idilesi yakhe ingaphakathi new-wallet.addr
, kwaye iqhosha labucala lingaphakathi new-wallet.pk
(Lumka - ukusebenzisa iskripthi kwakhona kuya kuzibhala ngaphezulu ezi fayile).
Ewe, inethiwekhi ye-TON ayikayazi malunga nesi sikhwama; igcinwe kuphela ngohlobo lwezi fayile. Ngoku kufuneka ifakwe kwinethiwekhi. Nangona kunjalo, ingxaki kukuba ukwenza ikhontrakthi ehlakaniphile kufuneka uhlawule ikhomishini, kwaye ibhalansi ye-akhawunti yakho iseyi-zero.
Kwimodi yokusebenza, le ngxaki iya kusonjululwa ngokuthenga iigram kutshintshiselwano (okanye ukudluliselwa kwesinye isikhwama). Ewe, kwimo yovavanyo lwangoku, ikhontrakthi ekhethekileyo ye-smart yenziwe, apho unokucela ukuya kuthi ga kwi-20 grams ngolo hlobo.
Ukwenza isicelo kwikhontrakthi ehlakaniphile yomnye umntu
Senza isicelo kwikhontrakthi ehlakaniphile ehambisa igrama ekhohlo kwaye ekunene ngolu hlobo. Kwifolda enye crypto/block
fumana ifayile testgiver.fif
:
// "testgiver.addr" file>B 256 B>u@
0x8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
dup constant wallet_addr ."Test giver address = " x. cr
0x4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
constant dest_addr
-1 constant wc
0x00000011 constant seqno
1000000000 constant Gram
{ Gram swap */ } : Gram*/
6.666 Gram*/ constant amount
// b x --> b' ( serializes a Gram amount )
{ -1 { 1+ 2dup 8 * ufits } until
rot over 4 u, -rot 8 * u, } : Gram,
// create a message (NB: 01b00.., b = bounce)
<b b{010000100} s, wc 8 i, dest_addr 256 u, amount Gram, 0 9 64 32 + + 1+ 1+ u, "GIFT" $, b>
<b seqno 32 u, 1 8 u, swap ref, b>
dup ."enveloping message: " <s csr. cr
<b b{1000100} s, wc 8 i, wallet_addr 256 u, 0 Gram, b{00} s,
swap <s s, b>
dup ."resulting external message: " <s csr. cr
2 boc+>B dup Bx. cr
"wallet-query.boc" B>file
Siza kuyigcina kwifolda kunye nomxhasi odibeneyo, kodwa siya kulungisa umgca wesihlanu - phambi komgca "constant dest_addr
". Masiyitshintshe ngedilesi yesipaji owakhe wayenza ngaphambili (igcwele, ayifinyezwanga). Akukho mfuneko yokubhala β-1:β ekuqaleni, endaweni yoko beka β0xβ ekuqaleni.
Ungatshintsha kwakhona umgca 6.666 Gram*/ constant amount
β le yimali kwiigram ozicelayo (akukho ngaphezu kwama-20). Nokuba uchaza inani elipheleleyo, shiya indawo yokugqibela.
Ekugqibeleni, kufuneka ulungise umgca 0x00000011 constant seqno
. Inombolo yokuqala apha yinombolo yolandelelwano yangoku, egcinwe kwi-akhawunti ekhupha iigram. Ndingayifumana phi? Njengoko kuchaziwe ngasentla, qalisa umxhasi kwaye uqhube:
last
getaccount -1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Ekugqibeleni, idatha yekhontrakthi ehlakaniphile iya kuqulatha
...
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
x{0000000D}
Inombolo 0000000D (eyakho iya kuba nkulu) yinombolo yolandelelwano ekufuneka ifakwe endaweni yayo. testgiver.fif
.
Yiyo leyo, gcina ifayile kwaye ubaleke (./crypto/fift testgiver.fif
). Imveliso iya kuba yifayile wallet-query.boc
. Yiloo nto eyakhiweyo umyalezo kwikhontrakthi ehlakaniphile yomnye umntu - isicelo "ukudlulisela iigram ezininzi kwiakhawunti enjalo."
Sisebenzisa umxhasi, siyilayisha kwinethiwekhi:
> sendfile wallet-query.boc
[ 1][t 1][1558747399.456575155][test-lite-client.cpp:577][!testnode] sending query from file wallet-query.boc
[ 3][t 2][1558747399.500236034][test-lite-client.cpp:587][!query] external message status is 1
Ukuba uyafowuna ngoku last
, kwaye ke kwakhona ucele isimo se-akhawunti esicelile kuyo iigram, ngoko kufuneka sibone ukuba inombolo yayo yokulandelelana iye yanda enye - oku kuthetha ukuba ithumele imali kwi-akhawunti yethu.
Isinyathelo sokugqibela sihlala - khuphela ikhowudi yesikhwama sethu (ibhalansi yayo sele igqityiwe, kodwa ngaphandle kwekhowudi yekhontrakthi ehlakaniphile asiyi kukwazi ukuyilawula). Siqhuba sendfile new-wallet-query.boc
- kwaye yiloo nto, unayo isikhwama sakho kwi-network ye-TON (nokuba luvavanyo kuphela ngoku).
Ukudala iintengiselwano eziphumayo
Ukudlulisa imali kwibhalansi ye-akhawunti eyenziwe, kukho ifayile crypto/block/wallet.fif
, ekwafuneka ibekwe kwisiqulathi seefayili kunye nomxhasi odityanisiweyo.
Ngokufana namanyathelo angaphambili, kufuneka ulungelelanise imali oyithumelayo, idilesi yomamkeli (dest_addr), kunye ne-seqno ye-wallet yakho (ilingana ne-1 emva kokuqalisa i-wallet kwaye yanda ngo-1 emva kwentengiselwano nganye ephumayo - unako. yibone ngokucela ubume beakhawunti yakho) . Uvavanyo, ungasebenzisa, umzekelo, isipaji sam - 0x4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
.
Kwisiqalo (./crypto/fift wallet.fif
) okushicilelweyo kuyakuthatha idilesi yesipaji sakho (ukusuka apho ugqithisela khona) kunye nesitshixo saso sabucala kwiifayile new-wallet.addr
ΠΈ new-wallet.pk
, kwaye umyalezo ofunyenweyo uya kubhalwa kuwo new-wallet-query.boc
.
Njengangaphambili, ukwenza ngokuthe ngqo intengiselwano, fowuna sendfile new-wallet-query.boc
kumxhasi. Emva koku, ungalibali ukuhlaziya imeko ye-blockchain (last
) kwaye khangela ukuba ibhalansi kunye ne-seqno ye-wallet yethu itshintshile (getaccount <account_id>
).
Kuko konke, ngoku singenza iikontraki ezihlakaniphile kwi-TON kwaye sithumele izicelo kubo. Njengoko ubona, ukusebenza kwangoku sele kwanele, umzekelo, ukwenza i-wallet enobuhlobo kunye ne-graphical interface (nangona kunjalo, kulindeleke ukuba sele ifumaneke njengenxalenye yomthunywa).
Ngabasebenzisi ababhalisiweyo kuphela abanokuthatha inxaxheba kuphando.
Ngaba unomdla wokuqhubeka namanqaku ngohlalutyo lweTON, TVM, Fift?
-
Ewe, ndilindele ukugqitywa koluhlu lwamanqaku ngokujonga ngokubanzi kweTON
-
Ewe, inika umdla ukufunda ngakumbi ngolwimi lwesiFift
-
Ewe, ndifuna ukufunda ngakumbi malunga neTON Virtual Machine kunye nesihlanganisi sayo
-
Hayi, akukho nanye kwezi enika umdla
Bali-39 abasebenzisi abavotileyo. Abasebenzisi abasi-12 abakhange.
Ucinga ntoni malunga nezicwangciso zeTelegram zokuqalisa i-TON?
-
Ndinethemba elikhulu ngale projekthi
-
Ndilandela nje uphuhliso lwayo ngomdla.
-
Ndiyathandabuza kwaye ndiyathandabuza impumelelo yayo.
-
Ndityekele ekuthatheni eli nyathelo njengokusilela nokungeyomfuneko kubantu abaninzi
Bali-47 abasebenzisi abavotileyo. Abasebenzisi abasi-12 abakhange.
umthombo: www.habr.com