How To Transfer An Asset On The Blockchain

The Idea

Tokenization of assets is a buzzword nowadays! But what is behind the hype? Can the basic idea be formulated independently of a specific blockchain, or even independently of a specific concept or whitepaper?

I will try this here and I dare to do it in a somehow naive way, so that it remains open for all sorts of discussions. It will be nothing more than just an idea, a dream, a vision, whatever you like to have, if you are interested in ideas more than in money.

The basic idea behind the tokenization of assets is pretty simple: You can do trading on a blockchain. But it is necessary to reduce the asset transfer use case in such a way, that only the parts related to the delegation of trust will be implemented by blockchain technology, and nothing else.

This is so, because any blockchain — still at the time of writing — can be considered as a distributed public ledger, and nothing else!

This implies that a blockchain cannot be considered to be a database or “full blown” application platform. On the contrary, it should only be used for the “trust related” parts of any asset transfer and the applications related to it .

We see the following actors:

  1. Seller Can identify towards the smart contract
  2. Buyer (One or many) Can identify towards the smart contract
  3. Asset Smart Contract (Register sellers, buyers, trading platform, Triggers the sale, Registers a password manager)
  4. Password Manager: (Maintains access, Can identify towards the smart contract)
  5. Sales Platform: (Can identify towards the smart contract, Triggers the sale)

In the following scenario, we use the (somewhat generic) concept of any public key infrastructure. You should therefore already know what a cryptographic key pair is — or somehow understand the concept of asymmetric encryption and message transfers.

It is also essential to understand, that a smart contract by itself should not store an asset description or any other type of conventional data.

To identify an actor, a smart contract will store this actor’s public key or blockchain address.

To reference a document, the smart contract will only store its hash code, and not the document itself, not even its storage location In the following, if we say “register”, we mean that an actor’s blockchain address is stored inside a smart contract corresponding to his or hers role.

We will then end up with the following work flow representing an asset use case:

  1. The Seller is registered in the smart contract (The blockchain address of the Seller and for each potential buyer: Hash of the sales document)
  2. Buyers, Password Manager and Trading Platform register to the smart contract
  3. Sale: The Trading Platform “pulls the switch” inside the smart contract, confirming the sale
  4. Password manager in action (Pulls the information about the status of the asset transfer from the smart contract. Can verify any actor any time by his or her blockchain addresses registered to the smart contract. As for each buyer an individual inheritance document is registered inside the smart contract by its hash code, the password manager will send an encrypted document to the buyer containing the inheritance information (may include passwords or any other sort of sensitive data ).

Implementation

Every actor …

  1. Seller
  2. Buyer
  3. Smart Contract
  4. Password Manager
  5. Trading Platform

… can be seen as a software module and can be implemented independently of the other modules.

Smart Contract

The Only blockchain component. Every other component depends on it (No other dependencies between components in this project)

Seller

The seller just testifies his will to sell in a tamper proof way

Password Manager

This needs to be an external component connected to the blockchain interface

Trading Platform

Any existing trading platform could plug in.

Buyer

Buyers need to be registered and identifiable. One document must be mapped to exactly one buyer. (Hashing)

There will be one more software component, not visible in the diagram: The interface to the smart contract. It will be very easy to design that interface, if some important prerequisites are taken into account. The interface …

  1. Needs to be “functional” in the sense of the functional programming paradigm
  2. Interaction with the smart contract needs to be asynchronous (“event driven”)
  3. There need not be any complex data structures or large amounts of data exchanged between the smart contract and the other components. It is always sufficient to communicate via basic data types (booleans, numbers or string representing blockchain addresses or public keys)
  4. Because of this argument, the interface can easily be designed and implemented for any blockchain

Security

The level of security in this application will mainly be determined by the security inside the blockchain and the smart contract, plus the level of security of the password manager.

As it is very difficult to write secure software, it seems to be necessary to rely on specialized tools as much as possible. This is one of the reasons, why the password manager (and the trading platform) need to be external.

The smart contract on the other hand can only be a realiable piece of software, if it remains very simple. As outlined in this concept, this would be the case.

Programmer, Thinker, Entrepreneur, “Intuitioner”

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

yAgnostic Weekly Updates — March 11th

STEP Money/STEP X at the STEP conference in Dubai Internet City

NFT support added to the 1inch Wallet

☀ The Future Of Blockchain Game ☀

EOS Audit+ Blue Paper HI, I’m Tornad Vilser a ChallengeDac app user and a community member of…

Chedda Finance

Weekly report — — 11.29.2021 -12.05.2021

Bware Labs and Sifchain Partnership Announcement

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alexander Weinmann

Alexander Weinmann

Programmer, Thinker, Entrepreneur, “Intuitioner”

More from Medium

Steer’s Financial Platform

Introducing Peccala

Samurai Saga: Market Analysis and why Samurai Saga will Thrive

4 Secrets to Building a Successful Crypto Company