Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Verify shard optimization page #858

Merged
merged 1 commit into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@
"Gravi",
"Hackathon",
"Highlevel",
"Highlit",
"IPFS",
"InMsgDescr",
"Indo-European",
Expand All @@ -80,6 +81,7 @@
"Multiplatform",
"Mytonctrl",
"NVME",
"Nand",
"Notcoin",
"Offchain",
"OutMsgDescr",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ TON blockchain as any other blockchain is a network, so it makes sense to try to
In general networking the endpoint is a pysical device, in blockchain endpoint is a smart contract.

#### Shards
In that logic, shard is nothing more than a subnet. Only difference from tht perspective is that ipv4 has 32 bit addressing scheme and TON has 256 bit.
In that logic, shard is nothing more than a subnet. Only difference from that perspective is that ipv4 has 32 bit addressing scheme and TON has 256 bit.
So, contract address shard prefix is a part of a contract address that identifies the group of validators that will compute it's incomming message result.
From networking perspective, it's clear that request on the same network segment will get to processing faster than the one that is routed elsewhere, right?
It's kind of like one uses CDN to host content closer to the end users, in TON we deploy contract closer to the end users.
Expand All @@ -134,7 +134,7 @@ if((addressA.hash[0] >> 4) == (addressb.hash[0] >> 4)) {
console.log("Nope");
}
```
From the human perspective easiest way to check the address shard is to look at the address [raw form](https://docs.ton.org/develop/howto/step-by-step#1-smart-contract-addresses).
From the human perspective easiest way to check the address shard is to look at the address [raw form](/v3/concepts/dive-into-ton/ton-blockchain/smart-contract-addresses#raw-address).
One could use [address page](https://ton.org/address/) for it.
Let's test in on the USDT address for example:`EQCxE6mUtQJKFnGfaROTKOt1lZbDiiX1kCixRv7Nw2Id_sDs`.
You will see `0:b113a994b5024a16719f69139328eb759596c38a25f59028b146fecdc3621dfe` as a raw representation and the first 4 bits is essentially first hexadecimal symbol - `b`.
Expand Down
3 changes: 2 additions & 1 deletion src/grammar/commands-dictionary.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@ delcustomoverlay
showcustomoverlays
sendfile
getWallets
findValue
findValue
Lamport
3 changes: 2 additions & 1 deletion src/grammar/names-dictionary.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,5 @@ Serokell
townsquarelabs
Codespaces
Codespace
codespace
codespace
Gigadrop
Loading