[TEP-89] Enhancing Jetton Master Contracts for Discoverable Wallet Addresses

Abstract

This paper presents an innovative proposal aimed at extending the functionality of standard Jetton master contracts within the TON blockchain ecosystem. The proposal, identified as TEP 89, introduces a mandatory on-chain provide_wallet_address handler, facilitating the discovery of contract wallets associated with specific Jetton Masters. Authored by Sasha1618 and EmelyanenkoK, the proposal outlines a method that enables applications to identify and interact with contract wallets, streamlining operations and enhancing user experience.

Introduction

The evolution of blockchain technology has necessitated the development of more sophisticated contract interfaces to support complex operations and interactions within decentralized networks. In response to this need, TEP 89 proposes modifications to Jetton master contracts, aiming to simplify the discovery of wallet addresses through an on-chain mechanism. This initiative seeks to address the challenges faced by applications in identifying contract wallets for specific Jetton Masters, thereby optimizing transaction handling and notification processes.

Proposal Overview

  • Status: Active
  • Type: Contract Interface
  • Authors: Sasha1618, EmelyanenkoK
  • Creation Date: 08.09.2022

Motivation

The primary motivation behind TEP 89 is to enhance the functionality and interoperability of Jetton master contracts. By enabling the on-chain discovery of wallet addresses, applications can streamline the management of transfer notifications and other contract-specific operations. This capability is particularly beneficial for contracts aiming to maintain a seamless interaction with Jetton wallets, ensuring efficient processing of transactions and enhancing the overall ecosystem.

Implementation Guide

Upon the receipt of a provide_wallet_address message containing the address in question, the Jetton Master is required to respond with the wallet address. This process involves handling specific messages and adhering to gas unit requirements to ensure successful message delivery and address discovery.

Technical Specification

Feature Description
New Jetton Master Contracts Introduction of a discoverable jetton minter code, facilitating wallet address discovery.
Message Handling Specification of the provide_wallet_address and take_wallet_address messages, including required gas units for operation.
Existing Jetton Master Contracts Guidelines for non-upgradable Jetton Masters to implement discovery functionality via a separate smart contract.

Challenges

A potential drawback of the proposal is the dependency on the new functionality by applications, which may not support the interaction with existing Jetton Masters without the discovery feature. This limitation could hinder the processing of already existing jettons.

Rationale and Alternatives

The proposal justifies the need for an on-chain mechanism to simplify the interaction between decentralized applications and Jetton wallets. While current practices involve direct dealings with Jetton Masters, the proposed method offers a streamlined approach, potentially reducing complexity and enhancing usability.

Conclusion

TEP 89 represents a significant advancement in the functionality of Jetton master contracts within the TON blockchain. By facilitating the on-chain discovery of wallet addresses, the proposal aims to enhance the interoperability and efficiency of decentralized applications. The initiative underscores the ongoing evolution of blockchain technology and its adaptability to meet the growing needs of the ecosystem.

References

Future Work

The proposal opens avenues for further enhancements in contract functionality and blockchain technology at large, laying the groundwork for more sophisticated and user-friendly blockchain interactions.

The TEP-89 proposal, “Discoverable Jettons Wallets,” introduces a significant enhancement to the Jetton standard by incorporating a discoverability feature through the Jetton Master contracts. This extension aims to streamline applications’ ability to detect and interact with specific Jetton wallets, facilitating a more efficient and flexible handling of Jettons across different contracts and applications.

Professional Insight:

The introduction of the provide_wallet_address message handler as a mandatory component for Jetton Master contracts is a strategic move towards enhancing the interoperability and automation within the TON ecosystem. By enabling contracts to query and receive the wallet addresses associated with specific Jettons directly from the Jetton Master, this proposal simplifies the integration process for applications looking to support a wide range of Jettons without manual configuration or external discovery mechanisms.

Technical Considerations:

  1. Gas Consumption and Fee Handling:

    • The proposal outlines the minimum TON amount required to process the provide_wallet_address request, ensuring that the Jetton Master has sufficient funds to respond. This consideration is crucial for preventing denial of service attacks and ensuring the system’s sustainability. However, the fixed gas fee might need revisiting as network conditions change to maintain affordability and efficiency.
  2. Response Mechanism:

    • The take_wallet_address response mechanism, particularly the option to include the original requester’s address, provides a flexible way for applications to verify and process Jetton wallet addresses. This feature could enhance security by allowing contracts to perform additional validations on the response before proceeding with operations involving the discovered wallet address.

Professional Questions:

  1. Handling Non-Discoverable Jetton Masters:

    • How does the proposal suggest applications handle Jetton Masters that do not support the new discoverability feature, especially considering backward compatibility with existing Jettons? Is there a recommended fallback mechanism for applications to ensure they can interact with both discoverable and non-discoverable Jettons?
  2. Security Implications of Discoverability:

    • Are there any security considerations or potential vulnerabilities introduced by allowing contracts to discover and interact with Jetton wallets directly? For example, could this feature be exploited to track users’ interactions across different applications or manipulate contract behaviors based on the discovered wallet addresses?
  3. Impact on Contract Design and User Experience:

    • How does this proposal impact the design of Jetton-related contracts and the overall user experience within the TON ecosystem? Specifically, does the discoverability feature require significant changes to existing contract architectures, and how does it enhance the end-user’s interaction with Jettons?
  4. Future Extensions and Enhancements:

    • What potential extensions or enhancements to the discoverability feature are anticipated in future iterations? For instance, could there be additional query types or response options to provide more detailed information about Jetton wallets or to facilitate more complex interactions between contracts?

Overall, TEP-89 represents a forward-thinking approach to enhancing the flexibility and usability of Jettons within the TON ecosystem. Its successful implementation could significantly streamline how applications and contracts discover and interact with Jetton wallets, fostering a more integrated and user-friendly environment for digital asset management and operations.