BTIPs

September 24, 2025 ยท View on GitHub

The BTFS Improvement Proposal repository

BitTorrent File System Improvement Proposals (BTIPs) describe standards for the BTFS platform, including core protocol specifications and client APIs.

Contributing

First review this README. Then clone the repository and add your BTIP to it. There is a template BTIP here. Then submit a Pull Request to this repository.

BTIP status terms

  • Idea - An idea that is pre-draft. This is not tracked within the BTIP Repository.
  • Draft - The first formally tracked stage of an BTIP in development. An BTIP is merged by an BTIP Editor into the BTIP repository when properly formatted.
  • Review - An BTIP Author marks an BTIP as ready for and requesting Peer Review.
  • Last Call - This is the final review window for an EIP before moving to - FINAL. An BTIP editor will assign Last Call status and set a review end date (last-call-deadline), typically 14 days later. If this period results in necessary normative changes it will revert the BTIP to Review.
  • Final - This BTIP represents the final standard. A Final EIP exists in a state of finality and should only be updated to correct errata and add non-normative clarifications.
  • Stagnant - Any EIP in Draft or Review if inactive for a period of 3 months or greater is moved to Stagnant. An BTIP may be resurrected from this state by Authors or BTIP Editors through moving it back to Draft.
  • Withdrawn - The BTIP Author(s) have withdrawn the proposed BTIP. This state has finality and can no longer be resurrected using this BTIP number. If the idea is pursued at later date it is considered a new proposal.
  • Living - A special status for EIPs that are designed to be continually updated and not reach a state of finality.

The standardization process about the status

This is the process about the status

BTIP status type

type namedescription
core protocolthis kind of BTIP will affect core protocal
client apithis kind of BTIP will affect client api

All BTIPs list

IDTitleAuthorTypeCategoryStatus
BTIP-1Integrate With BitTorrent Protocolshawn.huang@tron.networkclient apiLiving
BTIP-2Vault Contract Support Multi-Tokenslaocheng.cheng@tron.networkcore protocalVault contractFinal
BTIP-9Price Oracle Contract to Support Multi-Tokenslaocheng.cheng@tron.networkcore protocalVault contractFinal
BTIP-20Use merekle root for online proofsshawn.huang@tron.networkcore protocalOnline ProofFinal
BTIP-25Integrate With S3-Compatible API Servicesteve.zhang@tron.networkcore protocalS3-Compatible APILiving
BTIP-30Simplify Backup and Recovery of BTFS Datashawn.huang@tron.networkclient apiFinal
BTIP-35Support Multibase Command To Encode/Decode The Contentshawn.huang@tron.networkclient apiFinal
BTIP-51Add File metadata to blockchainshawn.huang@tron.networkcore protocalFinal
BTIP-52File share with encryptionshawn.huang@tron.networkcore protocalFinal
BTIP-54Decentralize node score calculationsteve.zhang@tron.networkcore protocalDraft
BTIP-72Support symmetric encryption when sharing files with BTFSshawn.huang@tron.networkcore protocalFinal
BTIP-73Support setting up private keys with imported keystore filesshawn.huang@tron.networkcore protocalFinal
BTIP-79Support filtering specific CIDs when accessing CIDs via the gateway.cody.meng@tron.networkclient apiFinal
BTIP-85Support staking and penalize storage nodes that lose datashawn.huang@tron.networkcore protocalWithdrawn
BTIP-89Introduce SPs as core storagecody.meng@tron.networkcore protocalFinal
BTIP-90Introduce smart contracts to manage and store file metadatacody.meng@tron.networkcore protocalFinal
BTIP-91Introduce Proposal Mechanism and Implement BTFS Network Governance via Smart Contractcody.meng@tron.networkcore protocalFinal
BTIP-103Support fetching SP address from the proposal contract for file uploadscody.meng@tron.networkcore protocalFinal
BTIP-104Support renewal for uploaded filescody.meng@tron.networkcore protocalFinal
BTIP-105Introduce proxy mode for file uploadcody.meng@tron.networkcore protocalFinal