The TON blockchain is designed as a multi-chain architecture, with different workchains operating independently but also interacting with each other.
Account addresses in TON consist of two parts:
workchain_id
: A signed 32-bit big-endian integer that defines a workchain.account_id
: A 256-bit internal address or account identifier that defines an account within the chosen workchain.
The passage mentions that different workchains may use account identifiers (account_id) with varying lengths, which can be shorter or longer than the standard 256 bits used in the masterchain (workchain_id = -1) and the basic workchain (workchain_id = 0). This flexibility allows for different workchains to be designed with different account identifier lengths based on their specific requirements and use cases.
However, there is a restriction that account_id must be at least 64 bits long for any workchain. This constraint ensures a minimum level of security and uniqueness for account identifiers across workchains.
The passage also explains that only the first 64 bits of the account_id are relevant for message routing and shardchain splitting. This implies that even though account_id can vary in length across different workchains, a common portion of the identifier is used for routing and shardchain operations, enabling efficient cross-workchain communication.
In summary, TON allows for different workchains to have varying account identifier lengths to accommodate specific use cases and requirements. However, a minimum length of 64 bits is required for all account_ids, and only the first 64 bits are used for message routing and shardchain splitting.