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 November 0 20

Badges 6

Editor Freshman 3 × Eureka! Newbie Enthusiast Scholar
0 Votes
1 Answers
7K Views
0 Votes 1 Answers 7K 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
14K Views
1 Votes 1 Answers 14K 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
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
16K Views
0 Votes 1 Answers 16K Views
Please, could you help me to understand why my TON node cant sync Load average[8]: 1.34, 1.26, 1.29 Network load average (Mbit/s): 9.44, 8.71, 48.85 Memory l...
Show more results favquestions