Reputation
Badges 6
Editor Freshman 3 × Eureka! Newbie Enthusiast ScholarIn TVM, memory limitations exist but may not be as strict as in the EVM. This is because the TVM is designed to be more efficient and flexible in terms of resource management. However, developers should still be mindful of resource usage when creating smart contracts for the Free TON platform.
Some considerations for memory usage in TVM:
Memory management: The TVM uses a more sophisticated memory model than the EVM, allowing for more efficient memory management. However, this doesn't me...
The reason for the different addresses generated by TonHub, TonKeeper, and wallet.ton.org when using the same mnemonic phrase is because the address depends on the wallet contract version being used.
It is important to note that v4 of the wallet contract allows for the installation of plugins, which could potentially introduce security vulnerabilities if used improperly. If you do not require the advanced features provided by v4, it is recommended that you use v3 ins...
Yes, any randomly generated 256 bits can be used as a seed to generate an Ed25519 private key. One possible method for generating a private key from such a seed is by using a cryptographic hash function such as SHA256.
subwallet_id
is not the same as workchain_id in the TON network.
Instead, subwallet_id is a property of a contract that enables the creation of multiple wallets using the same key pair. The primary purpose of subwallet_ids is to allow for the creation of multiple wallets with a single key pair.
To clarify further, subwallet_id
is a concept that is specific to the TON network and is used within a contract to create multiple wallets. By using subwallet_id, the contract can differenti...
Using the **'getTransactions' **method would be a recommended approach for checking if a specific message was received by a particular address.
The TON JS Examples repository on Github offers helpful resources, including a JavaScript code snippet that can be used to retrieve a list of transactions for a specific address.
The code example can be found at
https://github.com/toncenter/examples
https://gist.github.com/slavafomin/1bcb401b5dc336bb4f9a2005b1660cbd.
It seems that the Jetton contracts are functioning correctly on TonWeb
, so the issue is likely due to an error in the code deployed by the person asking the question.
Perhaps they made a mistake during the deployment process, or there could be an issue with their code. To resolve the problem, it's recommended that they carefully review their code and study the official Jetton contracts on TonWeb to identify any differences.
Through a thorough debugging process, they can identify the...
Hi, this is a great question! Yes, RocketBot is a fantastic option. On the flip side, you can also try out the Wallet Plug-in with Subscriptions.
Follow the FunC code here: https://github.com/ton-blockchain/wallet-contract/blob/main/func/simple-subscription-plugin.fc
It's a general-purpose subscription contract that you can use in many scenarios. For example, people can deposit and stake on-chain in this contract, and then you can receive a subset of the monthly income transferred to ...
In the TON blockchain, once a transaction is included in the blockchain, it is considered "confirmed" and cannot be undone. Therefore, the speed at which transactions are included in the blockchain is critical for many use cases, particularly for decentralized applications that rely on fast and efficient transaction processing.
Unlike some other blockchains, such as Ethereum, the TON blockchain does not allow for dynamic adjustment of gas fees based on market demand
. Gas prices are t...
I would suggest using the JavaScript library for this: https://github.com/toncenter/tonweb.
For TON JS examples, please refer to https://github.com/toncenter/examples.
Alternatively, you could try using this Python library: https://github.com/kdimentionaltree/tApi. It is a part of TonCenter for single liteserver, and an example can be found in sandbox.ipynb.
Generally speaking, TON Storage is offline and its cost depends on the provider. On the other hand, for TON Cell, you should check the TON Storage fee.
It's important to note that TON Storage only ensures that storage providers don't receive payment if they don't store the file, but it doesn't guarantee that files are actually stored. TON Storage is more about availability than actual storage.
**As for the cost of storing data on TON, saving 1 MB of data for one year will cost approxima...
There is no one-size-fits-all answer to these questions, as the best approach may vary depending on the specific requirements and constraints of the dApp you are building. However, there are some general guidelines and best practices that can be followed when developing a dApp on TON.
One resource that may be helpful is a series of tutorials that provide step-by-step instructions for deploying contracts and writing FunC code. You can find these tutorials at https://ton-community.github.io/...
Unfortunately, no.
But the best way for me is to open more Telegram accounts and call the bot from each account.
The inflation rate for TON is not fixed and may vary depending on various factors such as network activity and the number of validators.
According to the TON whitepaper, the initial inflation rate was set at 0.6% per year
, which is distributed among the validators as a reward for validating transactions and maintaining the network.
However, it's important to note that the inflation rate for TON may not be directly tied to the circulating supply or the initialized account balances. Ins...
Theoretically, the TON blockchain can process over 15,000+ transactions per second
and more, thanks to its high transaction throughput design and potential to scale to millions of transactions per second through multi-chain support for scalability.
The TON network enables sharding based on the ChainID naturally, with a large number of workchains available for use, as described in the Parameters that validators are running. You can check the following link for more details: https://to...
compute_gas_fees
and other_fee
are fees charged by the TON network for processing smart contract transactions.
compute_gas_fees
are the fees charged for the computation required to execute the smart contract code. This includes the cost of processing instructions, reading and writing data to the blockchain, and validating transactions. The amount of compute_gas_fees charged depends on the complexity of the smart contract code and the amount of resources required to execute it.
`ot...
Yes, you can find the latest Blocknumber in a series of API suppliers.
Or using the follow of code from orbs network
// copy paste the following snippet into your dapp client code
// to initialize your favorite TON API library and make blockchain queries
import { getHttpEndpoint } from "@orbs-network/ton-access";
import { TonClient } from "ton";
// g...
Yes, it is possible to write your code directly in Fift to make it more cost-effective in terms of gas consumption. The reason is that Fift is a lower-level language than FunC, which means that it provides more fine-grained control over the code and allows for more efficient programming.
However, writing code directly in Fift requires more expertise and effort, as Fift is a stack-based language and has a steeper learning curve than FunC. Therefore, it may not be worth the effort for simple...
It looks like the initial transaction requested through /getTransactions
is not in the masterchain (workchain=-1). You can try using /getBlockTransactions
to look for the transaction in the basechain (workchain=0).
First, use /lookupBlock
to find the block number corresponding to the transaction's Unix time, and then use /getBlockTransactions
to search for the transaction in the block with the corresponding sequence number in each shard.
In the specific case mentioned, the tran...
Yes, this is a great question!
TON DNS is a decentralized domain name system that lets you assign a human-readable name to crypto wallets, smart contracts, and websites.
Domain names are NFTs that can be stored, gifted, or sold. Auctions for domain names last for one week, and bids must be at least 5% higher than the previous bid. The highest bidder at the end of the auction period wins the domain name.
In addition, the .ton domain can be used as a multi-support gate to ...
Yes, there is a concept of epochs in the TON ecosystem as well. An epoch is a period of time during which a specific set of validators are responsible for validating transactions and creating new blocks. In TON, an epoch typically lasts for several hours, during which validators can earn rewards for successfully validating transactions.
Each epoch is composed of a fixed number of blocks, which are validated by a specific group of validators. The validators for each epoch are selected b...
The Election contract is responsible for managing the validator elections on the TON blockchain.
The reason why the contract's balance may be greater than the total stake of all validators combined is because the stake of each validator is divided into two halves, and only one half is used during the current validation round.
In order to participate in the next round, validators must make a new stake before it begins, while their previous stake is still locked.
**As a result, ...
In my personal experience, I would use code like this to track the result of a transaction:
=== Your Code Parameters ===
.....
console.log("============================");
console.log("Interacting with Collection Contract: \n" + contract_address);
let seqno: number = await wallet_address.getSeqno();
let transfer = await wallet_address.sendTransfer({
seqno: seqno,
secretKey: keyPair.secretKey,
messages: [
internal({
value: toNano("...
The error message suggests that there is an issue with the transaction id hash size
. The hash being used in the request might not be the expected size, causing the server to respond with an error.
One possible solution is to encode the parameters in the request, including the transaction hash, to ensure that the values are being properly passed to the server.
Additionally, double-checking the length and format of the transaction hash could also help to identify any issues.
...
The addresses listed in the two sources are different because they are encoded differently. However, they are essentially the same address. To convert the address to a "canonical" non-user-friendly form, you can use the following code in JavaScript:
new TonWeb.Address('kf-kkdY_B7p-77TLn2hUhM6QidWrrsl8FYWCIvBMpZKprBtN').toString(false);
This will convert the address to the canonical form -1:a491d63f07ba7eefb4cb9f685484ce9089d5abaec97c15858222f04ca592a9ac
,
which is...
Great question. The short answer is no.
Because each NFT owner is locally recorded, it means you need to send a transaction to each NFT.
But luckily, you can still use a series of CLI commands to send multiple transactions to reset each NFT's owner.
Be aware that the difference between EVM and TVM is that the TON network supports sharding your contract in a scalable way. If you launch a collection with a maximum of 10,000 in circulation, then you will have 10,001 contracts: one ...
Yes, The current gas_limit
field in the limits section indicates the current global gas limit. In the above example, the global gas limit is set to 1000000000000, aka, 1 TON.
Note that the global gas limit can be changed by the validators of the TON Blockchain through the governance mechanism. If the global gas limit is changed, the new value will be reflected in the output of the getconfig command.
To check the current global gas limit for the TON blockchain, you can use the TON Lit...
The maximum number of out-messages per transaction on the TON network is limited to 255 for performance and optimization reasons. This limit is designed to prevent network congestion and ensure that the network remains efficient and responsive during periods of high transaction volume. In-messages do not have this limit and can be included in a transaction in any number.
The TON blockchain does not provide a built-in feature to support a pyramid-like scheme for selling NFTs where every seller gets a share from all the future resells.
However, developers can build such a feature using smart contracts on the TON blockchain. The smart contract would need to be programmed to enforce the specific rules of the pyramid-like scheme, such as the percentage of revenue that each seller would receive from future resells.
Keep in mind that pyramid-like schemes are o...
In order to ensure that the first transaction has been processed and the wallet has received the TON coins before attempting to send the jetton, you should wait for a confirmation of the first transaction.
The amount of time it takes for a transaction to be confirmed can vary depending on factors such as network congestion and transaction fees. Generally, you should wait for at least one confirmation, which typically takes around 1-2 minutes on the TON network.
When sending the TON ...
When you verify a smart contract's source code on a blockchain explorer or website, the page generates a unique code hash for the contract. This code hash is essentially a digital fingerprint of the contract's bytecode. When someone views the verified source code on the explorer, the explorer looks up the code hash and retrieves the corresponding source code.
However, if the contract's bytecode is updated using the set_code()
instruction, the code hash will change. **This means that the ...