Börse Stuttgart is creating an ICO platform

After creating the BISON crypto-trading app, the second-largest stock exchange in Germany continues to embrace cryptocurrency with its most recent initiative.

Boerse Stuttgart is creating an ICO platform, a trading venue and custody for cryptocurrencies and related services.

“Boerse Stuttgart Group is creating an end-to-end infrastructure for digital assets. After the start of cryptocurrency trading via BISON, there will soon be a platform for initial coin offerings (ICOs), a multilateral trading venue for cryptocurrencies as well as solutions for safe custody. Boerse Stuttgart Group thus continues to pursue its digitisation strategy and is becoming a pioneer for the digital transformation of financial markets and financial products,” stated a recent announcement.

Read full article: https://www.ccn.com/major-german-stock-exchange-announces-end-to-end-cryptocurrency-infrastructure/

 

Buy, sell or stay away from cryptocurrency?

Questions about cryptocurrencies

altcoins

These days many people wonder if they should still buy cryptocurrencies. Here are some of the questions I hear:

  1. Is is still worth investing?
  2. Will the bubble burst soon?
  3. Why have rates gone up and what is the true value of altcoins?
  4. What are the best cryptocurrencies to invest in?

There are no easy answers and reading news and fake news about the topic does not provide straightforward clarification. Anyway, it is hard to predict the future, but let me try a brief analysis:

Value

The value of anything is driven by demand, supply and benefit either provided or at least felt by someone paying a price. Take art for instance: As long as there are enough rich art lovers who are willing to pay high sums for paintings, transactions will happen. On the other hand, as long as enough people believe in a concept and accept common rules for the sake of security and stability, anything can be of value, even a piece of paper called money. Gold itself has some value because it can be used as a material, but the price is rather driven by buy and sell activities.

Belief

What does this mean for digital currencies? Obviously all of them follow the market rules for demand and supply. All of them can be used for payments more or less, but with hundreds of altcoins (https://www.worldcoinindex.com/trending/overview) and high volatility even on a daily basis even Bitcoin, the oldest and still largest cryptocurrency, does not qualify for mass market cash replacement.  One of the initial ideas, to create an anonymous payment system which is not controlled by central organisations or governments works as proof of concept, but for daily instant payments it does not make sense (yet). Value increase is mainly driven by more people buying than selling in combination with lack of alternative exciting investments. 1000% increase with altcoins in one year, no problem, so far. Can this increase continue? Yes it can, as long as demand remains large enough. This is kind of the gold effect: People believe in value and value increase, so they buy and hold more volume than others sell to make profit at lower rates.

Disruption

But there is more potential than digital money and new asset classes. Comparisons with other bubbles, especially the tulip mania in the 17th century does not prove anything for today. See also:

http://money.cnn.com/2017/12/08/investing/bitcoin-tulip-mania-bubbles-burst/index.html

https://www.theguardian.com/business/2017/dec/02/bitcoin-bubble-the-warnings-from-history

Technology is moving faster than ever and will impact society significantly in everybody’s lifetime. Today’s older adults all remember a life without Amazon, Apple, Facebook and Google. These companies are also called “the four” in a book by Scott Galloway. Today they dominate the (Western) internet world. You can add more companies to that list e. g. Alibaba, Baidu or Yandex. Current champions might be history in a few decades. Not so long ago Nokia mobile phones and Yahoo internet services were each best in class and played a major role in those market segments. I remember Microsoft managers telling me in the early 90ties that the Internet will not affect the software industry in a very relevant way. Well, doubts are fair to bring forward and not everything new will change the world for good.

But cryptocurrencies and its underlying blockchain technology will disrupt financial services and impact many business models big time.  With altcoins comes software that can interact between parties who own an unique account (an address). Smart contracts (software based contracts) offer a wide range of business setups. They help to exchange money, property, shares, or anything of value in a transparent, conflict-free way while avoiding the services of a middleman.

Find more details about Ethereum Smart Contracts: https://www.coindesk.com/information/ethereum-smart-contracts-work

A good example is an Initial Coin Offering (ICO), which works with an Ethereum based token (a software based contract) to allow anyone with internet access to become a shareholder. NO, it is not regulated; NO it is not as secure as buying shares; NO, there are no detailed laws, BUT people believe in the offered ideas and potential profits. YES, it is risky, anyone can become a venture capital investor. There is no need for business angels, lawyers or banks to do so.

Answers?

Nobody can give exact answers to the questions in the beginning of this article, but to me it seems pretty clear that cryptocurrencies and smart contracts have a future and will bring change and value. One can still be lucky speculating short term, many altcoins and ICO startups will go down and vanish and a few bigger ones, e. g. Bitcoin, Ethereum and Ripple, will remain longer. No surprise… 😉

Proposal for a Blockchain enabled Peer-to-Peer Real Estate Platform (for Germany)

Introduction to the German Real Estate Market

Germany is the 4th biggest real estate market in the world. It’s a very mature and stable market, which makes it a potential and lucrative investment target for conservative and risk averse investors. The current concept to own a flat in a condominium system or a sole house in Germany is based on hundred of years of trade customs, laws and the central ledger “Grundbuchamt”. The public land title register is organized by the federal state and the municipalities. To file for a submission to the public ledger one has to use a notary who ensures that the information in the public ledger “Grundbuch” reflects the will of the contractual parties during a property transaction.

General Problems with Real Estate Investments in Germany

  1. High cost of transaction due to the needed use of the public ledger “Grundbuchamt” and the notary office
  2. Time consuming process due to the non-digital execution of contracts
  3. Certain processes have to be manually agreed on by the seller and executed by the notary (and official register), therefore to become the registered owner of a property can take months and in some cases even years.
  4. The parties have to trust the “middleman” of the public ledger which is not decentralized and vulnerable to fraud.
  5. The typical notary digital office structure is not organised decentralized, therefore also vulnerable to fraud.
  6. In most cases the personal presents of the seller and buyer, or at least of their representatives/attorneys is necessary.
  7. Limited diversification of investors in locations and asset classes due to big tickets. Typically in Berlin, the capital of the Investments in Germany in residential real estate start from about 100.000 Euros and upwards.
  8. Limited possibility to sell just a fraction of the property, or to co-own.
  9. Limited possibilities to borrow money from third party (while using the property as a collateral).
  10. Purchase process requires personal presence in Germany (or in a German consulate office).
  11. Cost of transaction is high (purchasing side costs, taxes and fees account for up to 15% of the total purchase price)
  12. Limited performance measurements due to either limited transparency by administration or the lack of implementation of technology to actually generate data.

Therefore, the benefits to use a system based on blockchain technology seems inevitably reasonable. However, the implementation is a high hurdle, not only the judicial and but also legislative institutions need to be convinced about the benefits of the system.

A lot of people in the real estate industry hope that the land title or land register so-called “Grundbuch” in Germany could be revolutionized by the blockchain technology.

But it is most likely that this change will take a long time to integrate in the minds of the politicians and the industry participants in Germany.

For that reason, we propose another bottom-up approach and grassroot initiative to start with a blockchain enabled real estate transactions in Germany. It’s a initiative using existing laws and regulations to the benefit of a peer-to-peer network.

Our Proposal

See full article on Medium:

https://medium.com/@alexanderkorte/proposal-for-a-blockchain-enabled-peer-to-peer-real-estate-platform-for-germany-c30c039a31cf

The next big hack

There it is. The second big hack after the DAO disaster (fun fact: the last hardfork was exactly 1 year ago today).

What happened?

Yesterday evening several twitter account tweeted about a security alert. The code of the multisig wallet contract provided by Parity contained a simple but fundamental flaw. An update in March introduced the possibility to easily take over ownership of this of contract and hence be able to transfer all of its funds. Unfortunately the contract had been deployed several times. Obviously without a proper review. Even by companies that are involved in Ethereum Blockchain development. Swarm City for example lost more than 153,000 Ether.

White hats to the rescue.

What happened next is typical for the ethereum community. The white hat group entered the stage again. They immediately started using the same exploit, the real hacker was using. They were able to “secure” the remaining Ether from vulnerable contracts in order to give it back to the rightful owner. But everything that was lost to the real hacker is gone.

So will there be another fork?

No not this time. The reason is simple: There is not chance for a clean fork as there was back in the DAO days. The hacker was able to move the funds right away. During the DAO hack there was a window of 27 days to prepare for the hardfork. This time the damage was imminent.

Isn´t that bad for Ethereum?

Yes and no. It shows its weakness. I was expecting a bad crash after I first saw the security alerts and the messages saying that a lof of funds were lost already. But I guess the dimensions have changed since last year. 30.000.000 USD don´t seem to be to big of a deal anymore. Of course people started blaming developers and soliditiy, the programming language. And they are right. It is unspeakable that such a bug is actually commited to such a mission critical functionality of the partiy wallet without proper review. Even worse is the fact that the contract had been deployed so many times without taking a look at the source code. Trustless world? Not so much eh? People are now pointing out the problems of solidity . Those problems will be fixed. There will be tools to avoid such mistakes. It will take time. And we will see more of those incidents. What doesn´t kill us makes us stronger.

ICO – Crypto Goldrush

ICO stands for Initial Coin Offering. Investopia describes it as: “An Initial Coin Offering (ICO) is an unregulated means by which funds are raised for a new cryptocurrency venture.” It´s a bit like an IPO but way more unregulated. And currently even more profitable than any other way of getting crowd funded. It seems that all you need is a good marketing campaign and a couple of pages for a white paper. People will buy every coin they can find. Usually implemented as ERC20 Tokens of the Ethereum platform, ICOs are spreading like mushrooms. Tokens act as some kind of value on the platform the offering company is planning to build. Often times it feels as if the only reason to choose blockchain technology was to make use of ICOs and the outlook for quick free money. But to be fair, there are also really cool projects that make a lot of sense. But it´s hard to keep an overview.

How to keep track

There are various sites trying to keep track of every new sale. Some like ICOalert even try to make money by providing due diligence for the upcoming sales events. ICOIndex offers free info and links.

I want in!

A lot of the times ICOs are also a lucrative investment option. Short term at least. After the ICO is over prices often double or triple before they bounce back to somewhere around the initial price. Making a quick buck seems to be too easy to be true. But it´s all about timing. The “good” ICOs sell out in less than an hour. You have to be there and be a bit lucky to get your share of the cake. Afterwards the question arises: “HOLD or sell?”. You decide. It´s a lot of fun at least.

Is your cryptocurrency investment safe?

When considering Bitcoin, Ethereum or other cryptocurrencies as an investment one might be worried about the volatility or the substance of digital coins at all. Any early investor can smile: In the last few years despite of strong price changes large profits were possible. The last 12 months also showed significant value increase, but it is not a safe bet after all. You have to take some risks and do not worry too much about ups and downs e. g.:

Bitcoin market rate

https://coinmarketcap.com/currencies/bitcoin/

Ethereum market rate

https://coinmarketcap.com/currencies/ethereum/

Are my digital coins save?

Apart from volatility how secure are platforms and coin accounts? This depends on how you store your coins. With large platforms like bitcoin.dekraken.compoloniex.com or with a wallet or software client generating an account for you. Platforms have their own risks, remember the Mt. Gox hack in 2014. In theory any generated account is unique at any time. Can someone else access my account by accident? This is very unlikely, but not impossible.

Finding existing Ethereum accounts

What is the likelihood that a created Ethereum address is in use already? It is very very small:

2^160 or about 1 in 1461501637330902918203684832716283019655932542976

For more detailed information see:

http://ethereum.stackexchange.com/questions/1115/how-do-ethereum-clients-generate-unique-addresses

http://ethereum.stackexchange.com/questions/4299/account-uniqueness-guaranteed

Finding existing Bitcoin accounts

But it does not seem completely impossible to find the account of someone else. This means access by a third party can happen. The following white hat initiative works on proving this with evidence:

https://cointelegraph.com/news/ultimate-white-hat-hacker-large-bitcoin-collider-passes-1000-trillion-addresses

First existing Bitcoin accounts have been found by the Large Bitcoin Collider (LBC):

https://lbc.cryptoguru.org/trophies

The way I see it: With the so called collision access to an existing Bitcoin account has been possible. Find more discussions about this topic on reddit.com.

Conclusion

Never say never… With quantum computers to come even very unlikely events today might be a lot more probable in the future. I am not an expert just a user who would not trust today’s technology without some precaution. I guess this is always a good idea.

Mobile users first – Logical Application Architecture

1. User Interface (UI) has to be easy and straight forward, taking a mobile App for now.

  • The UI allows simple registration for services
  • Mobile App provides cryptocurrency and tokens for transactions

2. Cryptocurrencies and blockchains run in the background, it has to be mainstream and future proof at the same time.

  • With purchase and download of the mobile App the user is provisioned to use the backend services
  • User does not need to know about technical details

3. Transactions will be general purpose, starting with personal text messages. It can be anything in the future: e. g. appointments, contracts, receipts

  • First use case will be text messages
  • Text can be used to model anything
  • Words make contracts after all

4. Decentralisation promotes scalability and security, no central platform approach.

  • Only a minimum of central features will be used
  • Store personal data encrypted and / or on local device only

Consider the 4 headlines above you will get a secure Messaging App that allows anonymous and secure transactions at the same time. For any message or any transaction only the involved parties, e.g. sender and receiver or buyer and seller interact based on an encrypted protocol using local internet servers.

From a user’s point of view it is very similar to talking to someone and making a deal or purchase as part of the conversation. The main difference in the end is a simple smart contract using blockchain technology in order to  make a reliable transaction.

Of course, the App is also capable of interacting with internet connected devices. Once you send appropriate coins locks could open or prepaid services become available after you have identified with a matching digital signature.

To make it easy for starters: As part of the App download you get the first coins for transactions. A marketplace is part of the App to ensure some use cases for trying our services. Some critical mass is needed in your neighbourhood to have continuous value add:

  • Secure messaging with friends and people nearby
  • Easy cashless micropayment
  • Reliable transactions without central platforms being involved

That is worth recommending the App to a friend, is it not?

Ethereum application recipe

Ingredients for one application

1 Ethereum node

1 private Ethereum node

1 node-js server application

1 public web server

1 private web server

1 public Mapper contract

1 private Messaging contract

Preparation

Set up one server machine to run the two Ethereum nodes with two different users, one for the live blockchain and one for the private blockchain.

The blockchains allow remote procedure call (RPC) connections from localhost only. The node-js application and the private web server run on the same machine.

The node-js application uses RPC calls to interacts with the public and private Ethereum instances. Get the two smart contracts ready:

Prepare a public web server on another maschine to interconnect with the private web server. The latter is only a proxy to forward requests to the node-js application.

Cooking for a simple demo application, no scaling

Once payment is received by the Mapper contract on the live blockchain the paying Ethereum address can register with the public web server in order to get a messaging account on the private blockchain.

Methods are mapped from the public web server to the private web server, which can only be accessed by the public web server using either IP address restriction or a virtual private network (VPN).

For starters we offer the following services

/register
Parameters
address that paid to Mapper contract
Returns
address that is from now available on the private messaging Ethereum network

/send_message
Parameters
address that receives the message
text message to send
Returns
boolean

/get_inbox
Parameters
address of inbox
Returns
number of messages
text of latest message

/get_message
Parameters
address of inbox
number of message to get
Returns
text of message
address of sender

Find below the logical application architecture

ethereum

Pay to get in

Now let’s make some coin!

Below you find a mapper contract to collect more than 0.49 ether in order to register the sender for a service. You can adjust the amount in function mapper(), of course. Once the minimum amount has been sent to the contract, the sender is registered for the service:

  • Contract accepts Ether using function() payable
  • The sender is registered by create_Member(address new_address)
  • You can send more than 0.5 ether (less is rejected and send back), but only one payment is accepted for each sender address.
  • The contract is owned
  • Only owner can get the money out with send_Ether_To_Owner()

This is very simple and Ethereum tokens offer more possibilities.

Our contract is here: 0x4f51b5bc96dc85226bd1e9510394f83a2d74bbb0

The registration will be a gateway to enter the messaging service on a private chain. You can either wait for the next blog post or send some coin already 😉

unknown

Mapper (Solidity contract)


pragma solidity ^0.4.4;
contract owned {
function owned() { owner = msg.sender; }
address owner;
modifier onlyOwner {
if (msg.sender != owner)
throw;
_;
}
function kill() {
if (msg.sender == owner) suicide(owner);
}
}


contract mapper is owned {
uint32 counter;
uint256 private value;
uint256 private price;
mapping (address => address) members;
event CreateMember(address new_address);
function mapper() {
counter = 0;
value= 0;
price= 490000000000000000;
}
function() payable {
if ( msg.value > price && check_Address(msg.sender) == false ) {
create_Member(msg.sender);
value+= msg.value;
} else throw;
}
function create_Member(address new_address) private returns (bool) {
members[msg.sender]= new_address;
counter++;
CreateMember(new_address);
return true;
}
function send_Ether_To_Owner() onlyOwner returns (bool) {
value= 0;
return owner.send(this.balance);
}
function get_Counter() constant returns (uint32) {
return counter;
}
function get_Value() constant returns (uint256) {
return value;
}
function check_Address (address a) constant returns (bool) {
if (members[a] == a) return true; else return false;
}
}

Message in an Ethereum nutshell

Simplicity and security

Find below a simple contract in order to implement a messaging service. There is no security implemented since this shall run with a private blockchain and optionally on a Virtual Private Network (VPN).  This way the contract remains simple, this is a proof of concept only anyway, and in times of Distributed Denial of Service (DDoS) with Internet of Things (IOT) devices  we would rather secure the transport layer.

So, with more and more devices connected to the internet a decentralization of networks makes sense.  We plan to use the public Ethereum blockchain only for registration and payment purposes. Once a token for usage has beed issued messaging users move on to a private backbone.

Messenger (Solidity contract)

you-have-a-message-2

You can run the contract as is. On creation a “Hello World” message is delivered to the contract owner. For every message sent an event is triggered.

contract messenger {
struct Message {
address sender;
string text;
}
struct Messages {
uint32 counter;
mapping (uint32 => Message) My_Messages;
}
mapping (address => Messages) All_Messages;
event Message_sent(address _receiver);
function messenger () {
All_Messages[msg.sender].counter= 1;
All_Messages[msg.sender].My_Messages[1].sender= msg.sender;
// send first message to creator
All_Messages[msg.sender].My_Messages[1].text= 'Hello World';
}
function get_latest_message(address _receiver) constant returns (string) {
uint32 counter= All_Messages[_receiver].counter;
return All_Messages[_receiver].My_Messages[counter].text;
}
function get_message(address _receiver, uint32 index) constant returns (string) {
return All_Messages[_receiver].My_Messages[index].text;
}
function get_sender(address _receiver, uint32 index) constant returns (address) {
return All_Messages[_receiver].My_Messages[index].sender;
}
function get_counter(address _receiver) constant returns (uint32) {
return All_Messages[_receiver].counter;
}
function send_message(address _receiver, string _text) returns (bool) {
if (All_Messages[_receiver].counter > 0)
All_Messages[_receiver].counter++;
else
All_Messages[_receiver].counter= 1;
uint32 counter= All_Messages[_receiver].counter;
All_Messages[_receiver].My_Messages[counter].text= _text;
All_Messages[_receiver].My_Messages[counter].sender= msg.sender;
Message_sent(_receiver);
return true;
}
}

Examples with geth console:


messenger.send_message.sendTransaction('0x53d6a48bb5374e611a497eebee146bd596c4c529','Hello! What is up?',{from: eth.accounts[2]});
...
messenger.get_counter('0x53d6a48bb5374e611a497eebee146bd596c4c529');
8
messenger.get_latest_message('0x53d6a48bb5374e611a497eebee146bd596c4c529');
"Hello! What is up?"

I am sure this can be improved (feel free to do so), but we want to keep it simple…

To be continued.