Predictions Market On The Blockchain

One use case for the blockchain with cryptocurrency is in the predictions market. Speculating the outcome of an event can bring rewards if you either guessed correctly or made an accurate prediction. It is very much a form of online betting, but you are using a decentralized platform that no one can manipulate or control. There are many types of markets for prediction, including social events like elections, sports and even the next American Idol. Bets are made against anyone who counters a prediction. It can be anything as simple as whether it will rain tomorrow or not, to more complex events like electoral results.

Platforms like Augur are allowing anyone to place their bets on any type of event. Augur uses the Ethereum blockchain to implement predictions. What you need is a DApp (Decentralized Application) that runs on top of the blockchain and a valid Ethereum wallet to collect funds in the likelihood you predicted correctly. The DApp is basically a decentralized app which is installed on a mobile device e.g. smartphone. Through this DApp, a user can interact with the platform and place their bet on the blockchain using what is called a Smart Contract.

The Smart Contract is a programmable logic code that executes the conditions you set forth for your prediction. Without going too deep into it, the basic function of the Smart Contract is to honor the prediction a user places on the blockchain. It will be tamper resistant and at the same time transparent so that all can see. It enforces honesty in the betting process where countless people are involved, yet they don’t know each other at all. Sometimes cheating can occur in such settings, so the blockchain is there to enforce trust in a trustless system.

The predictions market platforms on the blockchain were meant to be decentralized. This means that in no way during the whole process are a user’s funds in the custody of the platform. It is always in their control. Decentralized means that no third party mediates between users who have placed a bet or made a prediction on the platform.

For example let’s talk about betting in sports. When using this in a prediction market, a user locks their funds or bets in a Smart Contract which the platform then prepares. Once finalized, the platform will execute code that will make it immutable. Once on the blockchain, it can no longer be changed, something that must be honored in betting systems. Oracles, or external information sources, will update the platform using an API (Application Programming Interface) that keeps the results up to date on the prediction. These sources can include online sports betting websites, news agencies and trading platforms as well. If the prediction for a winning team were correct, then the value is set to “1” which indicates that the Smart Contract will collect the winnings and it can now be deposited to the user’s wallet.

The user can also sell off their winnings in the prediction market in exchange for cryptocurrency or fiat using the Smart Contract. Since it is programmable, the user can specify to the Smart Contract what exactly it should do. The payout goes to the user’s wallet and from there they can exchange it for fiat or send it to another digital wallet. The predictions market is an ideal way to forecast events, hedge against uncertainty and even for settling bets directly without a third party involved.

How 2FA Can Secure Your Cryptocurrency Assets

In the Crypto-economy, we need to implement security to safeguard our digital assets. Wallets are primarily just an interface to access the blockchain where the assets are stored. The wallet just provides the balance to the user, as well as allow users to send and receive tokens. It does not actually store the cryptocurrency. Instead, the wallet stores the private key which is what proves the user’s ownership of the assets. This must definitely be kept secured because if someone else were to gain access to the private key they can take ownership of your assets. This is why wallets, whether online or offline, use various authentication schemes.

Passwords are the most common way to access a wallet. The problem with this is that once a password is guessed or cracked, there is no other layer of security. This is why users are recommended to store their private key in hardware wallets e.g. Ledger Nano or Trezor. This stores the private key offline so only the user will have physical access. It cannot be hacked from the Internet or anywhere else since the hardware wallet uses cold offline storage. For everybody else, how can security be increased or improved?

A solution to this is called MFA or Multi-Factor Authentication. MFA uses multiple types of authentication to verify a user. In MFA you can use 3 methods to secure your authentication.

  1. What You Know – This involves the password, the most common form of authentication. Only the user should know this. The problem here is password sharing among users. Some family members openly share their password and that can lead others to learn this thru eavesdropping and more nefarious ways like password cracking.
  2. What You Own – Most users have a smartphone, and this can be included for verification. In this method an app is installed on the smartphone that generates a code that syncs with a server over the network. It will only work from this smartphone and not any other device.
  3. Who You Are – Your biometric information, like fingerprints, retina scan or face can be used to further confirm your identity for verification. This is something that physically verifies who you are. This is actually a very effective method that Apple uses for authentication on iPhones using Face ID. The possibility of 2 or more people having the same exact biometric traits is zero to extremely rare.

2FA or Two-Factor Authentication is one of the most common implementations of MFA using just 2 of the 3 methods mentioned. In the cryptocurrency world, digital exchanges implement 2FA to gain access to your cryptocurrency portfolio. Coinbase, Binance and Blockchain.Info require 2FA as a stronger authentication method compared to a simple password. 2FA can be enabled on many apps. Just check to make sure that the app login you are using allows 2FA support. If it is available, enable it to give you more security.

One example of using 2FA is when you login to your Binance account. Binance uses a combination of password and security codes. You create your password during the account creation process. With 2FA enabled, you now need to add a security code to further authenticate your access to your account. By installing Google Authenticator, you can add this additional security layer. With Google Authenticator, you scan the QR code from Binance when enabling 2FA. Once that code is scanned, Google Authenticator creates a profile for you. The next time you login to Binance, you will now need to check Google Authenticator app which is installed on your smartphone. Binance will request the code in order to continue your login.

2FA and other MFA implementations help to increase security, which allows you to better protect your cryptocurrency assets. Even if a hacker is able to intercept your password, if they don’t have what you own (e.g. smartphone) or what you are (e.g. face or fingerprint), they will be denied from the system.

Blockchain Interoperability – Cross-Chain Compatibility Among Dissimilar Blockchains

It seems inevitable that there will be many different tokens running on dissimilar systems. Unfortunately, these tokens will have their own blockchains. The good news is that they all run over the same IP based network. This allows a protocol layer to provide interoperability services to bridge various blockchains. This means a direct exchange of value from one cryptocurrency to another. As a result, atomic swaps will become possible across borders and payments can be instantaneous among tokens.

There are many different types of blockchains today and they are very much silos of their own ecosystem. There is no universal way to interoperate other than thru digital exchanges. The currency is often paired with a stablecoin to try and peg the value as close to fiat or with major cryptocurrency like BTC. The problem is that some pairings just don’t exist. The inconvenience here is the user will have to exchange their token to a supported pairing on their exchange first in order to make it useful. For example suppose there is no direct conversion between MyCoin and ANewCoin. Most of you know the drill. You have to buy into an exchange with fiat a supported cryptocurrency, and in most cases it will be BTC or ETH. It is only after you have bought that can you convert to MyCoin to get ANewCoin. Imagine all that happening with just a few finger swipes on screen or mouse clicks and all behind the scenes.

There are projects like Wanchain and Cosmos that focus on blockchain interoperability. They have an Application Layer (DApps, website, smart contract, etc.) that can interact with their software at the Interoperability Layer. This provides an API into the Blockchain Layer itself ubiquitously without the users doing anything else. It is simplified for a more pleasant user experience. Making it more user friendly leads to greater adoption of technology due to ease of use.

A good way to envision this is let’s say you are an ETH holder. You are interested in buying a luxury watch directly from a seller that is valued in BTC. Instead of exchanging ETH for BTC at a digital exchange and then pay for the item, interoperability will allow you to pay directly using an app with ETH at BTC valuation. The conversion process takes place automatically thru the interoperability layer, quickly transferring value from the ETH blockchain to the BTC blockchain. The seller gets paid and the item is delivered to the buyer. Certain programming interfaces can also create smart contracts for these type of transactions to release the item for delivery upon receipt of payment.

All that is required is software that can understand the different protocols. While it would appear to be a centralized settlement layer, it is actually not. It remains decentralized because the processing is done by not one organization, but different trustless nodes that run the software. These nodes are computers that belong to people who don’t know each other. All they have in common is that they are running the same software over the same network. Transactions are then processed by these nodes and incentivized for it.

Critics might quickly say that these systems are not scalable because blockchains are slow and cumbersome databases. You can argue that, but it still provides cryptographic security which is very important in value based transactions. There are new ways to settle payments that provide both on-chain and off-chain solutions to address scaling issues. An example of this are Bitcoin’s Lighting Network and Ethereum’s Raiden Network. By moving micro transactions like instant payments off-chain, the idea is to scale to larger volumes since the payments can be handled without going through a tedious consensus process like Proof-of-Work. Interoperability will have support for these types of systems as well.

Interoperability among the major public blockchains, will allow seamless, reliable and more efficient transactions for users. It is similar to how we communicate today. English provides a bridge among many countries because it is widely spoken and understood. The English language would be like the protocol for communications used on blockchains for interoperability. This is the ideal vision of a digital economy where transfer of value is frictionless and not complicated, regardless of cryptocurrency.