BAP-2:The first UTXO-based asset standard

BytomDAO
3 min readApr 25, 2019

--

Bytom team released bytomd 1.0.9 on April 22nd,2019 and the most important content is “Bytom asset protocol BAP-2”. BAP-2 realizes the on-chain structure through Key-Value and displays the related information clearly. This protocol helps all developers use asset-related content in explorer and mobile application development.

  1. What does it mean?

Standards are important for the development of all industries. In the Internet era, the TCP/IP standard contributed to the great prosperity of the Internet, while in the blockchain world, the Ethereum ERC20 led to the great prosperity of Token. Standards make ecosystem participants abide by a rule that is conducive to product compatibility and the healthy development of the industry.

2. BMIP002

BMIP002(Bytom improvement proposal) aims to standardize the development standards of Bytom blockchain platform, including but not limited to core protocols, client API, virtual machine specifications and contract standards. This BAP (Bytom Assets Protocol) belongs to BMIP002 improvement Protocol, welcome to join us!

The BAP protocol defines what an asset is: an asset is a value that can be issued on a blockchain, where all units of a given asset are replaceable. BAP is defined as fungible assets, there is no difference in the per unit of assets. Each asset has a globally unique asset ID from the issuer and asset definition.

The BAP protocol defines the asset fields: including asset name, asset symbol, and asset description. The BAP protocol also provides a simple way to issue assets:

Use this contract on Bytom can easily issue an asset that meets BAP specifications. Besides this, if you define that the asset can’t be reissued after a certain height, then it becomes a deflationary asset.

BMIP002 docs: https://github.com/Bytom/bmips/blob/master/bmip-0002.mediawiki

3. Advantages of BAP

Parallelism: In BUTXO model transactions can easily be processed in parallel so you can send to several people in a transaction which equals to send multiple once. Meanwhile, packaging a series of consecutive transactions through chain transaction to form a transaction chain which can’t be realized in account model.

Multi-asset: Bytom supports multiple different types of BAP2 assets in a transaction which led to various financial models, including swaps with contract of different assets.

Security: The UTXO of each BAP2 asset has its own guard of smart contracts. If a hacker attacks a smart contract, he can only take the assets locked in the smart contract, but not all the same type of assets. Therefore, the asset is more secure.

4. Standard display

With the BAP2 standard, all partners (such as wallet, exchange and application developer) can connect with each other according to this standard, and the assets after the connection can circulate seamlessly and conveniently on each platform, the connection is also very simple.

Blockmeta.com, Bytom blockchain explorer, has taken the lead in supporting the BAP2 standard and is now demonstrating that other community partners can design their own products based on Blockmeta. The specified fields of the asset are used to determine whether the asset meets BAP2 standard and show whether the asset meets BAP standard.

5. Other functions

Transaction scenarios:
1. Saved the index of all historical transactions and use it when the “txindex” appears in the query;

2. Added dust transation filtering rules to filter dust output transaction;

Node selection and discovery:

1. Added the keep_dial option to automatically retry the connection to the provided node;

2. Added the function of custom node alias to support the configuration of custom node name;

3. Supported the discovery of mDNS LAN nodes to reduce the network bandwidth required for communication;

Estimated fee:

1. Added weird transaction tests that may appear in multiple scenarios, such as insufficient funds, transaction imbalance, overflow and signature failure tests;

2. Accurately estimated gas costs of standard transaction and issue asset transaction;

Security:

1. Added the time stamp as the seed number of the random number generator to ensure the security of the random number;

Download link: https://github.com/Bytom/bytom/releases/tag/v1.0.9

--

--

BytomDAO
BytomDAO

No responses yet