Esikhathini esingaphezu konyaka odlule, kwaziwa mayelana nezinhlelo zesithunywa seTelegram ukukhulula inethiwekhi yaso ehlakazekile. Vula i-telegraph yocingo. Khona-ke idokhumenti yobuchwepheshe enamandla yatholakala, okwakusolwa ukuthi ibhalwe nguNikolai Durov futhi yachaza isakhiwo senethiwekhi yesikhathi esizayo. Kulabo abaphuthelwe, ngincoma ukuthi ufunde ukuphinda ngikuxoxele lo mbhalo (
Kusukela lapho, akubanga khona izindaba ezibalulekile mayelana nesimo sokuthuthuka kwe-TON kuze kube yizinsuku ezimbalwa ezedlule (kwenye ye
◦
◦
◦
◦
◦
◦
◦
◦
Ngiyaphinda, kwakungekho ukuqinisekiswa okusemthethweni kwekhasi kanye nayo yonke le mibhalo evela kuTelegram, kodwa umthamo walezi zinto uzenza zibe sobala. Yethula iklayenti elishicilelwe ngokuzifaka engozini.
Ukwakha iklayenti lokuhlola
Okokuqala, ake sizame ukwakha nokusebenzisa iklayenti lokuhlola - ngenhlanhla,
-
Landa futhi ukhiphe
ingobo yomlando yomthombo . Kubalulekile ukulanda inguqulo yakamuva njengoba ukuhambisana nokubuyela emuva akuqinisekisiwe kulesi sigaba. -
Qiniseka ukuthi izinguqulo zakamuva ze-make, i-cmake (inguqulo 3.0.2 noma ngaphezulu), i-OpenSSL (okuhlanganisa namafayela enhlokweni engu-C), i-g++ noma i-clang ifakiwe kusistimu. Bekungadingeki ngifake lutho, konke kwahlangana khona manjalo.
-
Ake sicabange ukuthi imithombo ikhishwe kufolda
~/lite-client
. Ngokuhlukana kwayo, dala ifolda engenalutho yephrojekthi eqoqiwe (isibonelo,~/liteclient-build
), futhi kusukela kuyo (cd ~/liteclient-build
) shayela imiyalo:cmake ~/lite-client cmake --build . --target test-lite-client
Ukwakha umtoliki wolimi we-Fift wezinkontileka ezihlakaniphile (okuningi mayelana nakho ngezansi), siphinde sishayelecmake --build . --target fift
-
Landa yamanje
ifayela lokumisa ukuze uxhume kunethiwekhi yokuhlola bese uyibeka kufolda neklayenti elihlanganisiwe. -
Kwenziwe, ungaqala iklayenti:
./test-lite-client -C ton-lite-client-test1.config.json
Uma konke kwenziwa ngendlela efanele, kufanele ubone okufana nalokhu:
Njengoba singabona, kukhona imiyalo embalwa etholakalayo:
◦ help
— veza lolu hlu lwemiyalo;
◦ quit
- Phuma;
◦ time
— khombisa isikhathi samanje kuseva;
◦ status
— khombisa ukuxhumana kanye nesimo sesizindalwazi sendawo;
◦ last
- buyekeza isimo se-blockchain (landa ibhulokhi yokugcina). Kubalulekile ukusebenzisa lo myalo ngaphambi kwanoma yiziphi izicelo ukuze uqiniseke ukuthi ubona isimo samanje senethiwekhi.
◦ sendfile
<filename>
- layisha ifayela lendawo kunethiwekhi ye-TON. Yile ndlela ukusebenzelana nenethiwekhi okwenzeka ngayo - okuhlanganisa, isibonelo, ukudalwa kwezinkontileka ezintsha ezihlakaniphile kanye nezicelo zokudlulisa izimali phakathi kwama-akhawunti;
◦ getaccount
<address>
- bonisa okwamanje (ngesikhathi kukhishwa umyalo) last
) isimo se-akhawunti enekheli elishiwo;
◦ privkey
<filename>
— layisha ukhiye oyimfihlo efayeleni lendawo.
Uma, lapho uqala iklayenti, udlulisela ifolda kulo usebenzisa inketho -D
, khona-ke uzofaka ibhulokhi yokugcina ye-masterchain kuyo:
./test-lite-client -C ton-lite-client-test1.config.json -D ~/ton-db-dir
Manje singadlulela ezintweni ezithakazelisayo kakhulu - funda ulimi lwe-Fift, zama ukuhlanganisa inkontileka ehlakaniphile (isibonelo, dala isikhwama sokuhlola), silayishe kunethiwekhi bese uzama ukudlulisa izimali phakathi kwama-akhawunti.
Ulimi lwesihlanu
Kusuka kudokhumenti
Lo mbhalo unamandla kakhulu, amakhasi angama-87, futhi ngeke ngiphinde ngichaze okuqukethwe kwawo ngokuningiliziwe ngaphakathi kohlaka lwalesi sihloko (okungenani ngoba angikaqedi ukuyifunda mina :). Ngizogxila emaphuzwini abalulekile futhi nginikeze izibonelo ezimbalwa zekhodi kulolu limi.
Ezingeni eliyisisekelo, i-syntax ye-Fift ilula kakhulu: ikhodi yayo iqukethe amagama, ngokuvamile ihlukaniswa yizikhala noma ukunqamuka kwemigqa (isimo esikhethekile: amanye amagama awadingi isihlukanisi ngemva kwawo). Noma yikuphi igama iwukulandelana kwezinhlamvu okuzwela icala okuhambisana nokuthile nencazelo (cishe, lokho umhumushi okufanele akwenze lapho ehlangana naleli gama). Uma ingekho incazelo yegama, umhumushi uzama ukulihlaziya njengenombolo futhi alibeke esitakini. Ngendlela, izinombolo lapha - ngokuzumayo - izinombolo ezingu-257-bit, futhi azikho nhlobo izingxenyana - ngokuqondile, ziphenduka ngokushesha zibe izinombolo eziphelele, zakha inombolo kanye ne-denominator yengxenye enengqondo.
Amagama ajwayele ukusebenzisana namanani phezulu kwesitaki. Uhlobo oluhlukile lwamagama - isiqalo — ayisebenzisi isitaki, kodwa izinhlamvu ezilandelayo ezivela efayelini elingumthombo. Isibonelo, le yindlela ama-string literals asetshenziswa ngayo - uhlamvu lokucaphuna ("
) igama eliyisiqalo elibheka isicaphuni esilandelayo (esivalayo), bese liphusha umucu phakathi kwazo esitakini. Ama-One-liners aziphatha ngendlela efanayo (//
) kanye ne-multiline (/*
) imibono.
Yilapho cishe sonke isakhiwo sangaphakathi solimi siphelela khona. Konke okunye (okuhlanganisa nokwakhiwa kokulawula) kuchazwa njengamagama (kungaba ngaphakathi, njengokusebenza kwezibalo kanye nencazelo yamagama amasha; noma kuchazwe "kumtapo wezincwadi ojwayelekile" Fift.fif
, ekufolda crypto/fift
emithonjeni).
Uhlelo olulula lwesibonelo ku-Fift:
{ dup =: x dup * =: y } : setxy
3 setxy x . y . x y + .
7 setxy x . y . x y + .
Umugqa wokuqala uchaza igama elisha setxy
(qaphela isiqalo {
, okudala ibhulokhi ngaphambi kokuvala }
kanye nesiqalo :
, okuyiyona echaza igama). setxy
ithatha inombolo phezulu kwesitaki, iyichaze (noma iyichaze kabusha) njengendawo yomhlaba wonke njalo x
, kanye nesikwele sale nombolo njengokungashintshi y
(Ngokubheka ukuthi amanani ama-constants angachazwa kabusha, ngingamane ngiwabize ngokuguquguqukayo, kodwa ngilandela umhlangano wokuqamba ngolimi).
Imigqa emibili elandelayo ibeka inombolo esitakini bese ishaya ucingo setxy
, bese kuboniswa amanani ama-constants x
, y
(igama lisetshenziselwa okukhiphayo .
), womabili ama-constants abekwa esitakini, afingqwe, futhi umphumela nawo uyaphrintwa. Ngenxa yalokho sizobona:
3 9 12 ok
7 49 56 ok
(Umugqa othi “ok” uphrintwa umhumushi lapho eqeda ukucubungula umugqa wamanje ngemodi yokufaka esebenzisanayo)
Yebo, isibonelo sekhodi esigcwele:
"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
Leli fayela elibukeka ngokwesabekayo elokudala inkontileka ehlakaniphile - lizofakwa efayelini new-wallet-query.boc
ngemva kokubulawa. Sicela uqaphele ukuthi olunye ulimi lomhlangano lusetshenziswa lapha ku-TON Virtual Machine (ngeke ngihlale kuyo ngokuningiliziwe), imiyalelo ezofakwa ku-blockchain.
Ngakho-ke, i-assembler ye-TVM ibhalwe ku-Fift - imithombo yalesi sihlanganisi isefayela crypto/fift/Asm.fif
futhi axhunywe ekuqaleni kocezu lwekhodi olungenhla.
Ngingathini, ngokusobala u-Nikolai Durov uthanda nje ukudala izilimi ezintsha zokuhlela :)
Ukudala inkontileka ehlakaniphile nokuxhumana ne-TON
Ngakho-ke, ake sicabange ukuthi sihlanganise iklayenti le-TON kanye nomhumushi we-Fift njengoba kuchazwe ngenhla futhi sijwayelane nolimi. Ungayakha kanjani inkontileka ehlakaniphile manje? Lokhu kuchazwe efayeleni
Ama-akhawunti ku-TON
Njengoba ngichazile ku
Ngaphakathi kochungechunge lomsebenzi olulodwa, ama-akhawunti amaningi agcinwa anezihlonzi zawo ze-akhawunti_id. Ochungechungeni oluyinhloko kanye neketango lomsebenzi elinguziro, angamabhithi angu-256 ubude. Ngakho-ke, isihlonzi se-akhawunti sibhaliwe, isibonelo, kanje:
-1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Lena ifomethi “eluhlaza”: okokuqala i-ID ye-workchain, bese kuba ikholoni, kanye ne-ID ye-akhawunti ku-hexadecimal notation.
Ngaphezu kwalokho, kukhona ifomethi efushanisiwe - inombolo ye-workchain nekheli le-akhawunti libhalwe ngekhodi kanambambili, isheke yengezwa kubo, futhi konke lokhu kufakwe ikhodi ku-Base64:
Ef+BVndbeTJeXWLnQtm5bDC2UVpc0vH2TF2ksZPAPwcODSkb
Ngokwazi le fomethi yerekhodi, singacela isimo samanje se-akhawunti ngeklayenti lokuhlola sisebenzisa umyalo
getaccount -1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Sizothola okuthile okufana nalokhu:
[ 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 ku-DHT yochungechunge lomsebenzi olushiwo. Ngokwesibonelo, ensimini storage.balance
ibhalansi ye-akhawunti yamanje, ku storage.state.code
- Ikhodi yenkontileka ehlakaniphile, futhi ku storage.state.data
- idatha yayo yamanje. Sicela uqaphele ukuthi isitoreji sedatha ye-TON - Iseli, amaseli - ifana nesihlahla, iseli ngalinye lingaba nakho kokubili idatha yalo kanye namaseli engane. Lokhu kuboniswa njengokuhlehlisa emigqeni yokugcina.
Ukwakha inkontileka ehlakaniphile
Manje ake sakhe isakhiwo esinjalo ngokwethu (sibizwa nge-BOC - isikhwama samaseli) usebenzisa ulimi lwesiHlanu. Ngenhlanhla, asikho isidingo sokuthi uzibhalele inkontileka ehlakaniphile - kufolda crypto/block
kukhona ifayela elivela kungobo yomlando yomthombo new-wallet.fif
, okuzosisiza ukuthi sakhe isikhwama semali esisha. Masiyikopishele kufolda eneklayenti elihlanganisiwe (~/liteclient-build
, uma ulandele imiyalelo engenhla). Ngicaphune okuqukethwe kwayo ngenhla njengesibonelo sekhodi ku-Fift.
Yenza leli fayela ngale ndlela elandelayo:
./crypto/fift -I"<source-directory>/crypto/fift" new-wallet.fif
kuyinto <source-directory>
kufanele kushintshwe indlela eya emithonjeni engapakiwe (uphawu “~”, ngeshwa, alukwazi ukusetshenziswa lapha, indlela egcwele iyadingeka). Esikhundleni sokusebenzisa ukhiye -I
ungachaza i-variable yemvelo FIFTPATH
bese ufaka lendlela kuyo.
Njengoba sethule i-Fift ngegama lefayela new-wallet.fif
, izolenza futhi iphume. Uma ushiya igama lefayela, ungadlala notolika ngokuhlanganyela.
Ngemuva kokubulawa, into enjengale kufanele iboniswe kukhonsoli:
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)
Lokhu kusho ukuthi isikhwama esine-ID -1:4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
(noma, yini efanayo, 0f9PzVILj8yglrVn1zS-NSjtxr7QBfaTCp7JrBqnFPIR8nhZ
) idalwe ngempumelelo. Ikhodi ehambisanayo izoba sefayelini new-wallet-query.boc
, ikheli lakhe lingaphakathi new-wallet.addr
, futhi ukhiye oyimfihlo ungaphakathi new-wallet.pk
(qaphela - ukusebenzisa iskripthi futhi kuzokhipha lawa mafayela).
Kunjalo, inethiwekhi ye-TON ayazi okwamanje ngalesi sikhwama; sigcinwa kuphela ngendlela yalawa mafayela. Manje idinga ukulayishwa kunethiwekhi. Kodwa-ke, inkinga ukuthi ukuze wakhe inkontileka ehlakaniphile udinga ukukhokha ikhomishini, futhi ibhalansi ye-akhawunti yakho isenguziro.
Kumodi yokusebenza, le nkinga izoxazululwa ngokuthenga amagremu ku-exchange (noma ukudlulisa kusuka kwesinye isikhwama). Yebo, kumodi yokuhlola yamanje, inkontileka ekhethekile ehlakaniphile yenziwe, lapho ungacela khona amagremu angu-20 kanjalo nje.
Ukudala isicelo kwinkontileka ehlakaniphile yomunye umuntu
Senza isicelo kwinkontileka ehlakaniphile esabalalisa amagremu kwesokunxele nakwesokudla kanje. Kufolda efanayo crypto/block
thola ifayela 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
Sizophinde siyigcine kufolda neklayenti elihlangene, kodwa sizolungisa umugqa wesihlanu - ngaphambi komugqa "constant dest_addr
". Asimiselenise nekheli lesikhwama osilidale ngaphambilini (ligcwele, alifushanisiwe). Asikho isidingo sokubhala “-1:" ekuqaleni, esikhundleni salokho faka u-“0x” ekuqaleni.
Ungakwazi futhi ukushintsha umugqa 6.666 Gram*/ constant amount
- lena inani lamagremu olicelayo (akukho ngaphezu kwama-20). Ngisho noma ucacise inombolo yonke, shiya iphoyinti ledesimali.
Ekugcineni, udinga ukulungisa umugqa 0x00000011 constant seqno
. Inombolo yokuqala lapha inombolo yamanje yokulandelana, egcinwa ku-akhawunti ekhipha amagremu. Ngingayithola kuphi? Njengoba kushiwo ngenhla, qala iklayenti bese uqalisa:
last
getaccount -1:8156775b79325e5d62e742d9b96c30b6515a5cd2f1f64c5da4b193c03f070e0d
Ekugcineni, idatha yenkontileka ehlakaniphile izoqukatha
...
x{FF0020DDA4F260D31F01ED44D0D31FD166BAF2A1F80001D307D4D1821804A817C80073FB0201FB00A4C8CB1FC9ED54}
x{0000000D}
Inombolo 0000000D (eyakho izoba nkulu) inombolo yokulandelana okufanele kufakwe esikhundleni sayo. testgiver.fif
.
Yilokho kuphela, gcina ifayela bese ugijima (./crypto/fift testgiver.fif
). Okukhiphayo kuzoba ifayela wallet-query.boc
. Yilokhu okwakhiwa сообщение kwinkontileka ehlakaniphile yomunye umuntu - isicelo "dlulisela amagremu amaningi ku-akhawunti enjalo."
Sisebenzisa iklayenti, siyilayisha kunethiwekhi:
> 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
Uma manje ufona last
, bese uphinda ucela isimo se-akhawunti esicele kuyo amagremu, khona-ke kufanele sibone ukuthi inombolo yayo yokulandelana ikhuphuke ngomunye - lokhu kusho ukuthi ithumele imali ku-akhawunti yethu.
Isinyathelo sokugcina sisele - landa ikhodi yesikhwama sethu semali (ibhalansi yayo isivele igcwalisiwe, kodwa ngaphandle kwekhodi yenkontileka ehlakaniphile ngeke sikwazi ukuyiphatha). Siyaqhuba sendfile new-wallet-query.boc
- futhi yilokho, unesikhwama sakho semali kunethiwekhi ye-TON (ngisho noma kuyisivivinyo esisodwa okwamanje).
Ukudala ukuthengiselana okuphumayo
Ukudlulisa imali ebhalansi ye-akhawunti edaliwe, kunefayela crypto/block/wallet.fif
, nayo edinga ukubekwa kufolda neklayenti elihlanganisiwe.
Ngokufanayo nezinyathelo zangaphambilini, udinga ukulungisa inani olidluliselayo, ikheli lomamukeli (dest_addr), kanye ne-seqno yesikhwama sakho semali (ilingana no-1 ngemva kokuqala isikhwama semali futhi inyuke ngo-1 ngemva kokuthenga ngakunye okuphumayo - ungakwazi ibone ngokucela isimo se-akhawunti yakho) . Ukuhlola, ungasebenzisa, isibonelo, isikhwama sami semali - 0x4fcd520b8fcca096b567d734be3528edc6bed005f6930a9ec9ac1aa714f211f2
.
Ekuqaleni (./crypto/fift wallet.fif
) umbhalo uzothatha ikheli lesikhwama sakho semali (lapho udlulisela khona) kanye nokhiye waso oyimfihlo kumafayela new-wallet.addr
и new-wallet.pk
, futhi umyalezo owamukelwe uzobhalelwa new-wallet-query.boc
.
Njengangaphambili, ukwenza umsebenzi ngqo, shayela sendfile new-wallet-query.boc
kuklayenti. Ngemuva kwalokhu, ungakhohlwa ukubuyekeza isimo se-blockchain (last
) futhi uhlole ukuthi ibhalansi kanye ne-seqno yesikhwama sethu semali kushintshile (getaccount <account_id>
).
Yilokho kuphela, manje sesingakwazi ukudala izinkontileka ezihlakaniphile e-TON futhi sithumele izicelo kubo. Njengoba ubona, ukusebenza kwamanje sekwanele kakade, ukwenza isibonelo, ukwenza isikhwama semali enobungane nge-graphical interface (noma kunjalo, kulindeleke ukuthi isivele itholakale njengengxenye yesithunywa).
Abasebenzisi ababhalisiwe kuphela abangabamba iqhaza kuhlolovo.
Ingabe ungathanda ukuqhubeka nezindatshana ngokuhlaziywa kwe-TON, TVM, Fift?
-
Yebo, ngilindele ukuqedwa kochungechunge lwezihloko ngokubuka jikelele kwe-TON
-
Yebo, kuyajabulisa ukufunda okwengeziwe ngolimi lwesi-Fift
-
Yebo, ngifuna ukufunda okwengeziwe nge-TON Virtual Machine kanye nesihlanganisi sayo
-
Cha, akukho kulokhu okuthakazelisayo
Bangu-39 abasebenzisi abavotile. Abasebenzisi abangu-12 bagobile.
Ucabangani ngezinhlelo zeTelegram zokwethula i-TON?
-
Nginethemba elikhulu ngale phrojekthi
-
Ngilandela intuthuko yayo ngentshisekelo.
-
Ngiyakungabaza futhi ngiyangabaza impumelelo yayo.
-
Ngithanda ukuthatha lesi sinyathelo njengesehluleki futhi esingadingeki kubantu abaningi
Bangu-47 abasebenzisi abavotile. Abasebenzisi abangu-12 bagobile.
Source: www.habr.com