Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escape special characters +-&|!(){}[]^"~*?:\ - e.g. \+ \* \!
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Profile picture
Howard
Moderator
14 Questions, 116 Answers
  Active since 20 January 2023
  Last activity 9 months ago

Reputation

687 + 5 this October 0 20

Badges 6

Editor Freshman 3 × Eureka! Newbie Enthusiast Scholar
0 Votes
1 Answers
6K Views
0 Votes 1 Answers 6K Views
Tags were calculated via tlbc as follows (request_flag is equal to 0x7fffffff and response flag is equal to 0x80000000): crc32('transfer query_id:uint64 new_...
9 months ago
3 Votes
1 Answers
18K Views
3 Votes 1 Answers 18K Views
As mentioned in this question: "3) Poll for the latest transactions from the Blockchain using your wallet account ID and match the transaction using the pre-...
one year ago
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
The following content appears in this whitepaper (https://docs.ton.org/tblkch.pdf): > For instance, each outbound message created in a transaction is assigne...
0 Votes
0 Answers
12K Views
0 Votes 0 Answers 12K Views
According to the documentation, we find the commit() FunC code described as follows: Commits the current state of registers c4 (“persistent data”) and c5 (“a...
one year ago
1 Votes
0 Answers
12K Views
1 Votes 0 Answers 12K Views
Has anyone ever written test cases for Telemint (also known as the Telegram anonymous phone number)? GitHub Link to Telemint The code is quite complex. I hop...
one year ago
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
In Blueprint, we will need to write the Wrapper functions ourselves. More importantly, when we code the op code in our FunC code, we need to decode the strin...
one year ago
0 Votes
1 Answers
13K Views
0 Votes 1 Answers 13K Views
In the docs.ton.org, we find: > There is a necessity for the synchronization of message routing and transaction execution. In other words, nodes in the netwo...
one year ago
0 Votes
0 Answers
4K Views
0 Votes 0 Answers 4K Views
Case 1: () recv_internal(int my_balance, int msg_value, cell in_msg_full, slice in_msg_body) impure { slice cs = in_msg_full.begin_parse(); int flags = cs~lo...
one year ago
0 Votes
0 Answers
7K Views
0 Votes 0 Answers 7K Views
Since I am looking into the multisig project in detail, how can I use the command line in GitHub (https://github.com/akifoq/multisig) using the following com...
one year ago
0 Votes
0 Answers
7K Views
0 Votes 0 Answers 7K Views
For example, if you examine the code in detail here: https://github.com/ton-blockchain/payment-channels/blob/e605580c3fb1feb22d80be9a0cddfcd05671c347/func/as...
one year ago
0 Votes
1 Answers
7K Views
0 Votes 1 Answers 7K Views
In whitepaper, 2.1.1. Account addresses. we got description in below: The source address and destination address are always present in any message. Normally,...
0 Votes
1 Answers
7K Views
0 Votes 1 Answers 7K Views
In the Solidity programming language on the EVM, we need to be mindful of gas usage for each line of code. For now, the difference in gas cost in TON is stil...
0 Votes
2 Answers
19K Views
0 Votes 2 Answers 19K Views
Follow the docs there:https://ton.org/docs/develop/func/overview back by the code: () send_money(slice address, int amount) impure inline { var msg = begin_c...
one year ago
0 Votes
1 Answers
7K Views
0 Votes 1 Answers 7K Views
What is the usage of the configuration here? Should I worried about it if I am testing my contract? https://github.com/ton-community/sandbox#networkblock-con...
one year ago
0 MultiSender on TON is any simlar app?

Great question!

So community member Danni has build the example code for this:
https://github.com/Gusarich/ton-mass-sender/tree/main

8 months ago
0 What is the recv_internal function, and what are its arguments for?

each of the following recv_internal declarations is correct, but those with fewer variables will spend slightly less gas (each unused argument adds additional DROP instructions).

() recv_internal(int balance, int msg_value, cell in_msg_cell, slice in_msg) {}
() recv_internal(int msg_value, cell in_msg_cell, slice in_msg) {}
() recv_internal(cell in_msg_cell, slice in_msg) {}
() recv_internal(slice in_msg) {}

You have to parse in_msg_body to retrieve the op code based on h...

9 months ago
0 Nft stuck in safepal wallet. Help me get NFT out of there if I change the private key.

Hi, basically you can still can transfer the NFT out, go to https://getgems.io to log in your wallet then execute the Transfer method.

10 months ago
0 How to switch mainnet/testnet in tg wallet bot?

quick answer, there is no test-net environment for @wallet at this moment.

But if you want you can use @CryptoBOT / https://t.me/CryptoTestnetBot to test out.

one year ago
0 How to read a string one character at a time?

For Slice reading , you can using load_uint(8) in FunC.

More detail can check with example like here:
https://docs.ton.org/develop/smart-contracts/guidelines/tips#spend-less-gas-on-large-smart-contracts

one year ago
one year ago
1 How is logical time generated?

Based on the Whitepaper found here, logical time is described as:

For this purpose, the creation of an outbound message is considered an atomic event, logically dependent on the previous message created by the same transaction, as well as on the previous transaction of the same account, on the inbound message processed by the same transaction, and on all events contained in the blocks referred to by hashes contained in the block with the same transactio...

one year ago
0 Is there a way to lock NFT for staking?

Hey, in general, there is no TEP (TON Enhancement Proposal) defined for what constitutes "Standard Staking for NFT."

As the contributor who implemented the NFT standard in the Tact language, you can easily set the status on your stake by creating a new contract and designating it as the new owner of the NFT.

Alternatively, you can change the status within the NFT item itself, and then add a require statement to limit the Transfer method for the NFT item.

In summary, the way to im...

one year ago
1 Is logical time unique for each transaction?

First of all, LT (Logical Time) is unique for each smart contract in TON. This means that different addresses produce different hashes for transactions, and each will be tagged with a different Logical Time inside the block.

In an** asynchronous system **like TON, you can't get a response from the destination smart contract in the same transaction. A contract call may take a few blocks to be processed, depending on the length of the route between the source and destination.

The asynchro...

one year ago
1 What is the `Big-endian by default` means here?

Overall

In big endian byte order, the **most significant byte (MSB) is stored at the lowest memory address, and the least significant byte (LSB) is stored at the highest memory address.

This is also known as network byte order, because it is the format used in internet protocols like TCP/IP in general.

Big-Endian in TVM

In TVM, integers within cells are serialized using the big-endian format by default. This means that when an integer is converted into a sequence of bytes t...

one year ago
1 `check_signature` & `check_data_signature` usage for Signing?

You can sign a Cell with ton-crypto or ton-core, and later verify it using check_signature or check_data_signature from stdlib.fc in FunC.

Here's an approximate code snippet that you should review:

sign(yourCell.hash(), keypair.secretKey);

## And in the FunC contract, check like this:
check_signature(cell_hash(your_cell), signature, public_key)

For more details, you can refer to the [TON documentation on signature checks](https://docs.ton.org/develop/fun...

one year ago
1 Convert public key of validator to correct format

I don't have any experience dealing with Validator configuration, but I can share with you the idea for the Public Key we use in TON and how it interacts with smart contracts.

import { randomBytes } from "crypto";
import { keyPairFromSeed } from "ton-crypto";

    let keypair = keyPairFromSeed(randomBytes(32));
    let public_key_hex = keypair.publicKey.toString("hex");
    let public_key_int = BigInt("0x" + public_key_hex);
    let public_key_cell = beginCell().storeU...
one year ago
1 How to store strings longer than 1023 bits in TON cells?

That is correct; you need to use Snake Data Encoding if you want to store more than 1023 bits in a Smart Contract (TVM).

You have no other option.

The short answer is to use the method that Arter provided by checking the snake encoding example code here:
Snake Encoding Example Code

Also, for a more comprehensive understanding of how to incorporate this process into your work, you can refer ...

one year ago
one year ago
1 Is It Possible to Perform an In-Place Replacement of Bytes in a Cell Without Creating a New One?

Unfortunately, the answer is no.

Because the cells are immutable, and partially because you can cheaply calculate the cell hash.

one year ago
1 How to bring `op-code` to Hex?

Generally speaking, the FunC code op::increase = "op::increase"c first converts this into a uint (unsigned integer), since in TVM (Turing Virtual Machine), communication is done only in unsigned integers to distinguish the unlimited functions that you build.

On the other hand, the uint can be converted into hex code to save space when storing it in a Smart Contract.

**Here's an example in TypeScript to finalize the op-code into uint and hex data. It uses the CRC32 method to...

one year ago
0 How to tell apart a NFT smart contract from another ones?

The short answer is through Interface.

But also you can take reference in TEP62(NFT Standard) https://github.com/ton-blockchain/TEPs/blob/master/text/0062-nft-standard.md

And also check my Tact code https://github.com/howardpen9/nft-template-in-tact

one year ago
0 Are different wallet versions fully compatible for sending TON?

Yes, that's correct.

You can take a look at the document here: https://docs.ton.org/participate/wallets/contracts

Basically, the difference in wallets lies in whether it's a high-load wallet, whether it supports NFTs, subscriptions, etc.

one year ago
0 Discrepancies in TON Network Burning Mechanism: Elector Smart Contract, Burn Address, and Tonstat Data - What's Going On?

Hi, I think the burn address for each block is not the same as the address you've pasted here. That might be the reason.

one year ago
0 ECRECOVER

Nah, the update haven't implement in test-net.

one year ago
1 How do we validate given address is valid TON address or not?

Generally speaking, you can use https://testnet.toncenter.com/api/v2/#/accounts/get_address_information_getAddressInformation_get to acquire all formats of a single address.

However, in practice, you can also utilize libraries to generate these. Below are a few snippets of code:

import { mnemonicToPrivateKey } from "ton-crypto";

let mnemonics = "YOUR_MNEMONICS";
let keyPair = await mnemonicToPrivateKey([mnemonics]);

// ✨ 🟡 Test-net:
const client = new TonClient4(...
one year ago
1 Do gas fees for dict operations depend on the dict size?

Yes, gas consumption does increase with the size of the dictionary. This is due to how the dictionary is packed.

Specifically, it's packaged as a compressed prefix tree into a cell tree. When you perform a read operation, all the cells on the path to your value are read, with each cell reading costing 25/100 of the gas.

Thus, larger dictionaries, which have more cells to read, will consume more gas.

one year ago
0 24 secret words not forward compatible - lost assets!

It's important to understand that the discrepancy you're encountering is not necessarily due to an issue with the 24-word mnemonic seed phrase system, but could be linked to changes in the wallet software itself.

Different wallet versions might generate distinct addresses using the same public key, which doesn't imply that the underlying cryptographic security system - in this case, elliptic curve digital signature algorithm*** (ECDSA)*** - is compromised or not "future-proof".

Th...

one year ago
0 What's the difference between internal and external messages in TON smart contracts?

Blockchain networks often consist of various nodes (computers) that communicate with each other. They send and receive messages containing transactions, blocks, and other data. This communication is typically categorized into internal and external messages:

Internal Messages: These are usually transactions or messages sent between smart contracts within the blockchain network. They are also known as "internal transactions".

External Messages: These are messages sent to the block...

one year ago
0 Follow the Docs for `send_raw_message`.
  • "store_uint" is presumably a function or method that takes two parameters.
  • The first parameter, "0x18", is a hexadecimal representation of a number. In decimal form, "0x18" equals 24.
  • The second parameter, "6", could be the size or length of the data that's being stored, often referring to the number of bits. In this case, the integer 24 is being stored in a 6-bit format.

In general, serialization is the process of converting data structures or object states into a format that can ...

one year ago
1 Are there explorers in the TON ecosystem useful for exploring blocks?

Certainly, the EVM ecosystem is indeed known for its robust block explorers, and there are similar tools available in the TON ecosystem as well. These explorers provide detailed insights into blocks, transactions, and events happening on the TON network:

Explorer.toncoin.org - A comprehensive block explorer that provides detailed information about the FreeTON blockchain, including blocks, transactions, and account details.

DTON.io - This is another popular TON block explorer that provid...

one year ago
0 Is it possible to retrieve all the available usernames from Fragment?

I think you can check in detail of this collection here in getgems and using the TonAPI to fetch all the NFT item in this collection tho.

https://getgems.io/collection/EQCA14o1-VWhS2efqoh_9M1b_A9DtKTuoqfmkn83AbJzwnPi#stats

one year ago
Show more results compactanswers
1 Votes
1 Answers
16K Views
1 Votes 1 Answers 16K Views
I'm new to TON. I know that each message in TON has its lt (Logical time) to track the order of events. But is logical time unique for each transaction or ca...
0 Votes
1 Answers
17K Views
0 Votes 1 Answers 17K Views
Hi everione I try to understand logic of work API v4. In general I have a aim to get full graph of messages for some smart-contract call. I use next algorith...
one year ago
0 Votes
1 Answers
6K Views
0 Votes 1 Answers 6K Views
Tags were calculated via tlbc as follows (request_flag is equal to 0x7fffffff and response flag is equal to 0x80000000): crc32('transfer query_id:uint64 new_...
9 months ago
4 Votes
3 Answers
25K Views
4 Votes 3 Answers 25K Views
If I want to hold and store a significant amount of toncoin, what options do I have and what would be the pros and cons of the various approaches from a secu...
0 Votes
2 Answers
19K Views
0 Votes 2 Answers 19K Views
Follow the docs there:https://ton.org/docs/develop/func/overview back by the code: () send_money(slice address, int amount) impure inline { var msg = begin_c...
one year ago
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
The following content appears in this whitepaper (https://docs.ton.org/tblkch.pdf): > For instance, each outbound message created in a transaction is assigne...
2 Votes
1 Answers
19K Views
2 Votes 1 Answers 19K Views
I have function like this: clike () save_data_on_update(slice destination_address) impure inline { builder q = begin_cell(); builder qSliceDestinationAddress...
one year ago
0 Votes
1 Answers
5K Views
0 Votes 1 Answers 5K Views
I am using the TON API to fetch transaction data, and I have noticed some discrepancies when using the /getTransactions, /lookupBlock, and /getBlockTransacti...
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
In Blueprint, we will need to write the Wrapper functions ourselves. More importantly, when we code the op code in our FunC code, we need to decode the strin...
one year ago
0 Votes
1 Answers
13K Views
0 Votes 1 Answers 13K Views
As far as I understand, NFTs in TON are just smart contracts that implement a specific interface. Suppose I create a wallet, an explorer or some other produc...
one year ago
2 Votes
2 Answers
23K Views
2 Votes 2 Answers 23K Views
In TON blockchain, when implementing my dapp smart contract in FunC, my contract can accept both internal messages handled by recv_internal() and external me...
0 Votes
0 Answers
12K Views
0 Votes 0 Answers 12K Views
According to the documentation, we find the commit() FunC code described as follows: Commits the current state of registers c4 (“persistent data”) and c5 (“a...
one year ago
1 Votes
2 Answers
17K Views
1 Votes 2 Answers 17K Views
Is there anywhere that I can read about how many tokens were allocated to the TON foundation or similar entities in the initial release? Does the TON foundat...
1 Votes
0 Answers
12K Views
1 Votes 0 Answers 12K Views
Has anyone ever written test cases for Telemint (also known as the Telegram anonymous phone number)? GitHub Link to Telemint The code is quite complex. I hop...
one year ago
3 Votes
1 Answers
18K Views
3 Votes 1 Answers 18K Views
As mentioned in this question: "3) Poll for the latest transactions from the Blockchain using your wallet account ID and match the transaction using the pre-...
one year ago
0 Votes
2 Answers
5K Views
0 Votes 2 Answers 5K Views
I'm looking for a good tutorial to make an NFT smart contract on TON. --- > This question was imported from Telegram Chat: https://t.me/tondev_eng/10064
one year ago
0 Votes
1 Answers
3K Views
0 Votes 1 Answers 3K Views
In the Bitcoin standard there is concept called "derivation path" defined in BIP32: it is used by hierarchical deterministic wallets to derive keys. How do T...
0 Votes
0 Answers
3K Views
0 Votes 0 Answers 3K Views
Is it possible to programmatically monitor what smart contracts were deployed on TON on any given day? Not just general statistics "how much contracts were d...
one year ago
0 Votes
1 Answers
13K Views
0 Votes 1 Answers 13K Views
In the docs.ton.org, we find: > There is a necessity for the synchronization of message routing and transaction execution. In other words, nodes in the netwo...
one year ago
0 Votes
1 Answers
2K Views
0 Votes 1 Answers 2K Views
Minting NFTs can be done in a randomized way. Are there random minters in the TON ecosystem with an open source code? --- > This question was imported from T...
1 Votes
1 Answers
20K Views
1 Votes 1 Answers 20K Views
TON uses logical time (also known as Lamport time) in messages to track the order of events. But how exactly that time is generated? --- > This question was ...
1 Votes
2 Answers
6K Views
1 Votes 2 Answers 6K Views
Hello everyone, please explain: ```` () send_message_back(addr, ans_tag, query_id, body, grams, mode) impure inline_ref { ;; int_msg_info$0 ihr_disabled:Bool...
0 Votes
1 Answers
4K Views
0 Votes 1 Answers 4K Views
How can I connect MyLocalTon using TonWeb? > This question was imported from Telegram Chat: https://t.me/tondev_eng/1380
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
In TVM's whitepaper, we got this in Chapter 3.2.8: > Integers in cells are big-endian by default. > Notice that the default order of bits in Integer s serial...
0 Votes
1 Answers
13K Views
0 Votes 1 Answers 13K Views
Hi there guys, how can I make an in place replacement of the bytes in a cell? For example, if I have a cell like, begin_cell().store_uint(val, 8).end_cell(),...
one year ago
1 Votes
4 Answers
19K Views
1 Votes 4 Answers 19K Views
In 80%(!) of the cases the 24 secret words generated with the tpay1 wallet generate a different(!) address in newer wallets and dont(!) show wallets assets. ...
one year ago
0 Votes
1 Answers
16K Views
0 Votes 1 Answers 16K Views
The fragment.com website shows some of usernames that can be bought but hides others saying "and 1.68K+ more". Is there a way to get the full list of those 1...
one year ago
0 Votes
1 Answers
10K Views
0 Votes 1 Answers 10K Views
I've been trying to create a simple wallet smart contract by myself to learn FunC, but my transactions keep failing with exit code 34. What am I doing wrong?...
1 Votes
1 Answers
13K Views
1 Votes 1 Answers 13K Views
I'm working on a TON smart contract that may need to store up to 4 million bits. I understand from the TON documentation that this isn't typically recommende...
one year ago
1 Votes
1 Answers
1K Views
1 Votes 1 Answers 1K Views
Can anyone please tell me the usage of accept_message() in recv_internal? I saw it for the first time here: https://github.com/ton-blockchain/nominator-pool/...
one year ago
Show more results favquestions