How To Create Confidential Assets on Beam
Tags: Africa, Confidential Assets, Privacy, Beam

What are CAs? 🤷‍♀️

CA stands for Confidential Asset. It is a “privacy” asset as the name, “Confidential” implies. A CA built on the Beam blockchain has all the privacy features of Beam by default. This means you don’t need to program your asset from scratch for it to be termed a privacy token. “CAs can act as many things like loyalty points for your customers, individual tradable company shares and even confidential synthetics / digital assets like bonds or collateral-backed stable currencies” — Raskul.

With Confidential Assets, we can generate multi-asset transactions where both the amount and the asset type itself are encrypted.

Use cases for CAs are endless. With CAs, we have an increased privacy. CAs also give us Confidential Transactions: A system where only the sender and the receiver of a transaction know the amount that is involved in a specific transaction.

How To Create a CA on the Beam Blockchain

Before we get started, here are two (2) important tools you need.

BEAM-NODE

Local CLI (Command-Line-Interface) Node for your computer to allow your Beam Wallet to read the Blockchain and stay synchronised.

Go to: https://beam.mw/downloads

Click the link to ‘Node’

and download to your computer.

2. BEAM-WALLET

Local CLI (Command-Line-Instruction) Wallet for your computer to allow you to store your own immutable currency.

Go to: https://beam.mw/downloads/

Click the link to ‘CLI Wallet’

and download to your computer.

After NODE and WALLET are unzipped and on your computer, follow these 5 steps illustrated in the infographic below to get started. All texts marked with “below**” are commands and can be found in this blog. Carefully Copy and Paste them into your terminal window.

Let’s begin …

Step 1 — beam-node.cfg

port=10127 peer=node01.mainnet.beam.mw:8100,eu-node02.mainnet.beam.mw:8100,eu-node03.mainnet.beam.mw:8100,eu-node04.mainnet.beam.mw:8100,us-node01.mainnet.beam.mw:8100,us-node02.mainnet.beam.mw:8100,us-node03.mainnet.beam.mw:8100 peers_persistent=1

Step 2 — Synchronise the NODE

./beam-node

Step 3 — Initiate the WALLET

./beam-wallet init

and

./beam-wallet listen -n 127.0.0.1:10127

Step 4 — Register your CA

./beam-wallet asset_reg — pass yourwalletpassword -n 127.0.0.1:10127 — asset_meta “STD:SCH_VER=1;N=CANameCoin;SN=CATicker;UN=CAFullName;NTHUN=CASingleUnitName” — fee 100 — enable_assets

This command means:

asset_reg = register the asset on the Beam blockchain

--pass = the wallet password your wallet was created with in step 2

-n = specify the node to listen on (can be 127.0.0.1:yournodeport or a remote node like pool.raskul.com:10127)

--asset_meta :

STD = prefix, denotes that the metadata is standard format

SCH_VER = metadata schema version — currently must be 1

N = Give your Confidential Asset a unique name (eg Bitcoin)

SN = The shortened (or TICKER) name for your Confidential Asset (eg BTC)

UN = Full user-determined name for your Confidential Asset (eg Bitcoin)

NTHUN = Smallest denominational value of the Confidential Asset (eg Satoshi)

--fee = the fee to pay (in Beam) to register the Confidential Asset

--enable_assets = The flag to command the wallet to enable Confidential Assets (reused in every CA command line).

Step 5 — Issue amount of CA

./beam-wallet issue — pass yourwalletpassword — asset_id 1 -n 127.0.0.1:10127 — amount AmountOfCAToCreate — fee 100 — enable_assets

Congratulations! In just 5 steps, you have created a Confidential Asset on the most Scalable and Private ecosystem on the planet; the Beam blockchain.

This article was inspired by Raskul’s guide to creating Confidential Assets where you will find more information not stated here such as Burning the CA to receive your 3000 Beams back as well as relevant materials for further research into creating CAs on Beam.

Happy Holidays!