Jetton — é o padrão de interface de tokens fungíveis (fungible) na blockchain TON. Fungibilidade significa que qualquer unidade de um Jetton é idêntica a qualquer outra unidade do mesmo tipo. O padrão fixa uma interface única para todos os tokens TON: carteiras existentes, DEX e dApps podem operar com qualquer Jetton sem integração especial.
A implementação — dois contratos inteligentes ligados, escritos nas linguagens FunC e Tact. É possível emitir um token de forma independente, sem programar, através dos serviços TON Minter e TON Raffles, preenchendo um formulário com os parâmetros. A negociação de Jettons ocorre principalmente nas DEX STON.fi e DeDust.
História do padrão#
O padrão foi descrito no documento TEP-74, publicado em 24 de agosto de 2022 no repositório ton-blockchain/TEPs no GitHub. O documento introduziu o modelo arquitetural master-wallet, diferente dos padrões clássicos de token (ERC-20), e definiu os requisitos para os métodos dos contratos e a ordem de interação.
Arquitetura#
Jetton consiste em dois tipos de contratos: master (principal) e wallets (carteiras). Cada emissão de Jetton tem exatamente um contrato master. As carteiras são criadas uma por cada detentor que possui aquele Jetton.
Contrato master (Jetton Master)
No contrato master são armazenados:
- quantidade total de tokens emitidos;
- metadados: nome, símbolo, descrição, logotipo, número de casas decimais, informações adicionais (por padrão separado TEP-64);
- bytecode do contrato de carteira (o mesmo para todos os detentores);
- função de emissão de novos tokens (mint), se permitida para o Jetton específico.
Métodos obrigatórios do contrato master: obtenção dos metadados da moeda e cálculo determinístico do endereço do contrato‑carteira para um detentor arbitrário.
Carteira do detentor (Jetton Wallet)
O contrato‑carteira permite ao detentor:
- transferir tokens para outro endereço;
- queimar seu próprio saldo com notificação ao contrato master;
- consultar o estado: saldo atual, endereço do detentor, endereço do contrato master, bytecode.
Mecanismo de transferência#
Ao enviar Jettons, a mensagem primeiro vai ao contrato‑carteira do remetente — o saldo lá é reduzido. Em seguida, a carteira‑remetente envia uma mensagem interna à carteira do destinatário — o saldo lá é aumentado. Se o destinatário ainda não possui a carteira‑contrato correspondente, ela é criada automaticamente durante a transferência.
Esse modelo distribui o estado do Jetton por milhares de contratos individuais ao invés de um único repositório centralizado — isso reduz “pontos quentes” nos shards e melhora a paralelização.
Tipos de moedas Jetton#
O padrão é universal; na prática são destacadas três categorias de aplicação.
Tokens embrulhados
O valor desse Jetton está atrelado a outro ativo, bloqueado como garantia. Exemplos: WTON (Wrapped TON), jUSDT, jUSDC, jWBTC. São “embrulhos” de ativos base: por exemplo, jWBTC permite operar com o equivalente ao BTC na rede TON, sem pagar taxas da rede bitcoin e usando a liquidez da TON‑DEX. Uso: transferências entre blockchains, negociação em DEX, votações em DAO cross‑chain.
Memecoins
Tokens emitidos por viralidade ou como ativo especulativo de alto risco. Principalmente — Notcoin, além de ARBUZ e outros. Notcoin atraiu uma audiência multimilionária via jogo no Telegram, trazendo para cripto um segmento significativo de usuários Web2.
Tokens utilitários
Usados para acesso a serviços ou funções de uma plataforma específica. Exemplos: JetTon — moeda de jogo em plataforma de apostas; Web3 TON Token — pagamento de domínios em TON DNS; TRIBE — monetização de conteúdo digital.
Diferenças entre Jetton e ERC-20#
Externamente Jetton e ERC-20 resolvem a mesma tarefa (tokens fungíveis), mas arquitetonicamente são muito diferentes.
| Propriedade | Jetton (TON) | ERC-20 (Ethereum) |
|---|---|---|
| Armazenamento de saldos | Contrato separado para cada detentor | Um contrato armazena todos os saldos |
| Transferência | Via interação de duas carteiras‑contrato | Chamada da função transfer do contrato principal |
| Dados adicionais na transferência | Pode‑se enviar payload e Toncoin | Não previsto pelo padrão |
| Queima | Método específico burn com notificação ao master | Transferência para endereço “mort” |
| Consulta de saldo atual no momento da transferência | Eventual consistency (saldo do destinatário será atualizado no próximo bloco) | Atômico em uma única transação |
| Possibilidade de bloqueio de contas pelo detentor do contrato | Não | Sim |
A arquitetura distribuída do Jetton aumenta a descentralização: o detentor do contrato master não pode bloquear todos os saldos com uma única transação, como ocorre em algumas implementações de ERC-20.
Mintless Jetton#
Mintless Jetton — extensão do padrão que permite distribuir tokens sem sua emissão direta na blockchain. Isso reduz a carga em airdrops massivos: ao invés de milhares de transações de mint durante a distribuição, usa‑se uma árvore Merkle off‑chain, e os tokens são “materializados” no momento da primeira atividade do destinatário.
Princípio de funcionamento:
- A equipe gera uma árvore Merkle com todos os destinatários e seus saldos; a árvore é armazenada fora da rede (por exemplo, no IPFS).
- O destinatário apresenta a Merkle proof, comprovando seu direito aos tokens.
- O contrato verifica a prova e faz mint do saldo na carteira do destinatário; até então o saldo não existe na blockchain.
A tecnologia foi testada no Jetton Mintless Points (distribuição para 18 milhões de carteiras TON) e é usada em Hamster Kombat.
Ver também#
- Toncoin
- The Open Network
- Notcoin
- STON.fi
- Smart contracts
- Stablecoins