A Complete Developer’s Guide to Asset Tokenization on Hyperledger Besu using SettleMint

Samuel Oba
9 min readJul 10, 2023

What is Asset Tokenization?

Asset tokenization in web3 is the process of representing ownership rights to an asset through digital tokens on a blockchain. These tokens serve as a digital representation of the asset and are recorded and managed on the blockchain network, enabling secure ownership transfer and efficient trading. To tokenize an asset, you represent the asset as a digital token on a blockchain network with a unique identifier and associated ownership rights. These tokens can be transferred, traded, and tracked securely on a blockchain network. In this article we would be exploring how to deploy Asset Tokenization on Hyperledger Besu Network on the SettleMint BPAAS.

Why Asset Tokenization?

Asset tokenization offers several benefits compared to traditional ownership and trading mechanisms:

  • Increased Liquidity: Tokenizing assets enables fractional ownership, allowing investors to buy and sell smaller units, thereby increasing liquidity for traditionally illiquid assets.
  • Accessibility: Tokenization removes barriers to entry by enabling participation in asset ownership, allowing investors of all sizes to access previously exclusive investment opportunities.
  • Efficiency: Digital tokens can be traded 24/7, reducing settlement times, and eliminating intermediaries, thereby streamlining the process and reducing costs.
  • Transparency: Blockchain provides a transparent and immutable ledger, offering a clear audit trail for asset ownership, transfers, and transactions.

Developer Use Case for Asset Tokenization

Developers can leverage asset tokenization to create innovative solutions across various industries. Some potential use cases include:

  • Real Estate: Tokenizing real estate assets enables fractional ownership, making it more accessible to a broader investor base and facilitating efficient trading.
  • Supply Chain: Tokenizing supply chain assets such as goods, inventory, or documents can enhance traceability, provenance, and efficient transfer of ownership.
  • Art and Collectibles: Tokenizing artwork and collectibles allows for easy ownership transfer, provenance verification, and fractional ownership, making it more inclusive and liquid.
  • Investment Funds: Tokenizing investment funds allows for fractional ownership, streamlined distribution, and automated compliance with regulatory requirements.

Getting Started on SettleMint (Part 1) — 1 to 7

To successfully build and deploy your asset tokenization smart contract on Hyperledger Besu, it’s crucial to follow a structured approach. This overview will provide you with a clear roadmap, outlining the essential steps to undertake before building and deploying your asset tokenization smart contract.

  1. Create an Account on SettleMint
  2. Create an Organisation
  3. Create an Application
  4. Deploy a Hyperledger Besu network and node
  5. Deploy an IPFS Storage
  6. Deploy an Accessible ECDSA Private Key
  7. Deployment of Empty Smart Contract Set

STEP 1: Create an account on SettleMint

  • Create an account on SettleMint here
  • Log in to the SettleMint platform

STEP 2: Create an Organization

  • Create an Organization by following the visual guide below (e.g. Your_Name_Organization)

STEP 3. Create an Application

Follow the visual guide screenshots below to create a blockchain application which serves as a home folder for the resources you will be creating on Settlemint.

STEP 4: Deploy a Hyperledger Besu Network and Node

  • Click on Blockchain networks and add a Hyperledger Besu network and a node (e.g. Your_Name_Network, Your_Name_Node). Note: Choose the shared and small for the deployment plan

STEP 5: Create an IPFS Storage

  • Click on Storage and add a IPFS (decentralised) storage. Note: Choose the shared and small for the deployment plan

STEP 6: Deploy an Accessible EC DSA P256 Private Key

  • Click on Private keys and add a Accessible EC DSA P256 key

Click the generated key section navigate to Private key address and note it down. You can see this below:

Please make sure that the IPFS network, private keys, and node are up and running before proceeding. Just as it is displayed below:

IPFS running

Private keys running

Nodes Running

Deployment of Empty Smart Contract Set running.

  • Create a smart contract set by clicking on the button click on the default besu network and click on Continue

Build and Deploy your Hyperledger Besu Asset Tokenization Smart Contract! (Part 2) — 1 to 8

Congratulations! You are halfway through the workshop. After setting up the neccessary microservices, it is time to build and deploy your asset tokenization smart contract on Hyperledger Besu! Here are the steps to take to successfully build and deploy your asset tokenization smart contract

  1. Open your Smart Contract Set
  2. Launch the Integrated Development Environment (IDE)
  3. Create an Application
  4. Deploy a Hyperledger Besu network and node
  5. Deploy an IPFS Storage
  6. Deploy an Accessible ECDSA Private Key
  7. Deploy an Empty Smart Contract Set
  8. Integration Studio Deployment

STEP 1: Open Smart Contract Set

  • On the SettleMint ****BPass Platform, navigate to the Smart Contract Sets section. Locate your deployed smart contract set and click on it to proceed.

STEP 2: Launch the Integrated Development Environment (IDE)

  • Within the smart contract set, click on the IDE tab To ensure a better working experience, click on the “View in Fullscreen Mode” option.

STEP 3: Adding the Smart Contract Template

  • In the terminal of the Internal IDE, clone the repo
git clone <https://github.com/settlemint/buidl-asset-tokenisation.git>

copy from buidl-asset-tokenization to /contracts

STEP 4: Modifying the Deployment Configuration

Open the “./deploy” folder within the IDE’s directory structure. Locate the file named “00_deploy_example.ts”. In line 13 of the file, modify the contract name to match the filename of your smart contract. For instance: If your contract file is named “assetTokenization.sol”, update the contract name accordingly.

STEP 5: Upload your Image to IPFS

To upload your image to IPFS using the SettleMint BPass Platform, follow these steps:

  • Open the SettleMint BPass Platform and navigate to the “Storage” section. Locate and access your deployed “IPFS (decentralised)” storage.
  • Within the IPFS storage, click on the “File Manager” tab. Then, click on the “Import” button and select the “File” option from the drop-down menu.
  • Choose an image file that represents your asset from your local device and proceed to upload it.

In this guide we choose to use the below image which is situated here: https://github.com/settlemint/buidl-asset-tokenisation/blob/main/Image/my_amazing_asset.png

  • Once the upload is complete, locate the uploaded image in the file list. Click on the ellipsis (…) icon at the far right of the image entry.
  • From the options that appear, select “Set pinning” to pin your image. This ensures that the image remains available on your node.
  • After pinning the image, click on the ellipsis (…) icon again for the image entry. Then, select “Share link” to copy the link to your image.
  • Take note of the image URI provided, as it will be used to reference and retrieve your image from IPFS.

https://buildyourself-78c7.gke-middleeast.settlemint.com/gateway/ipfs/QmULf2zmzff2pUYyZsa87VXgUvcvze1RAH9a2y7aNPYSKW?filename=pegaxy-to-introduce-new-burn-mechanism-to-the-game-1000x700.jpg

(tell them to note these down in the respective notebook as well as for the other respective variables)

STEP 6: Find your JSON-RPC endpoint

To locate your JSON-RPC endpoint in the SettleMint BPass Platform, please follow these steps:

  • Access the SettleMint BPass Platform and navigate to the “Blockchain nodes” section.
  • Locate your deployed node from the list of available nodes and click on it.

Take note of the JSON-RPC endpoint for future reference. Note down the endpoints as well

STEP 7: Set up your SettleMint API key

  1. In the SettleMint BPass Platform, click on your profile icon at the top right at click on API keys
  2. Check all the boxes and generate your API key
  3. Note down your API key (txt/notes/stickies)

STEP 8: INTEGRATION STUDIO DEPLOYMNET

  • Access the Integration Tools section in the SettleMint BPass Platform.
  • Click on the Integration Studio tool.
  • Click on your deployed Integration Studio, click on Interface and click view in fullscreen mode
  • Go to the Interface tab and click “Import” from the top right dropdown menu.
  • Import the flows.json file from the Integration-Studio directory.
  • Go to the Asset Tokenisation tab.
  • Click “Deploy” to deploy the Asset Tokenisation flow.

The above screen is the screenshot of after clicking on Deploy of Asset Tokenization

Conclusion

Congratulations! You have successfully followed the structured approach to build and deploy your asset tokenization smart contract on Hyperledger Besu using SettleMint. By completing this guide, you have gained valuable insights into the essential steps required to create and deploy a smart contract on a blockchain network. We hope this guide has been helpful to you and that you are now able to apply this knowledge to your projects. Happy building!

You can witness the asset tokenization process in action by watching our 10-minute demo at the following link:

https://www.settlemint.com/asset-tokenization

--

--

Samuel Oba

Disecting Web3 developer tools, blockchain innovations, and trends | Digital Nomad | Tech Writer