Chances are you already know a little bit about cryptocurrency or blockchain technology. Cryptocurrencies offer the ability to transfer value digitally, anonymously and securely without middlemen. These revolutionary systems are changing data management, the economy, and are emblematic of a migration towards decentralizing the financial and digital world.
The development of Bitcoin’s blockchain became a catalyst for the creation of smart contracts.
Bitcoin’s coding language called script is used to carry out funds transfers. In situations where a currency transaction is occurring between two parties (let’s say funds are being transferred from party A to party B) the Bitcoin scripting language actually expresses the conditions (using what’s called a redeem script) by which B can assume ownership of A’s coins, this is called the data output or transaction output. For party B to receive the funds they must provide a cryptographic signature and their public key. Once the public key is hashed by the computer program it verifies the Bitcoin address holding the funds and verifies the digital signature, completing what is called the data input which lets the initial script from party A execute successfully. Then the funds are transferred to B.
With more complicated transactions where multiple entities own the funds multisignature scripts are required. These P2SH (pay to script hash) scripts, also called multisignature or multisig, use private and public keys to identify and verify the funds owner(s).
These multisig scripts enforce the rule that a certain fraction of digital signatures (entities) are required for the funds to be released.
The number of required signatures can be set by the coder to be anywhere between one and the total number of funds owners. Think of this as a shared account with a democratic payment system that can automatically stabilize and strengthen collaborative payment decisions. This can also be used to improve the security of an account by requiring multiple keys for access. Once people began seeing the benefits that blockchains provide it triggered more exploration into the technology, and as more systems started becoming truly functional there was still a major trust issue with real world cryptocurrency transactions:
If you are purchasing with cryptocurrency what ensures you will receive what you’ve bought once the funds have been transferred?
Smart contracts were created as a solution to this problem. It’s difficult to accurately define smart contracts, but a simple interpretation is: a computer program used to automatically secure, execute, and enforce business interactions between parties. Instead of blindly trusting other parties during a transaction, your trust is placed in the computers execution of the smart contract.
Smart contracts motivate entities to act honestly by incentivizing contract completion for all involved parties. Until the conditions of the contract are met no transfer occurs and acting against the contract can even accrue penalties. In their basic form smart contracts are used as escrow systems during P2P (peer to peer) cryptocurrency transactions, providing insurance that parties will deliver their side of the agreement.
The possibilities of smart contracts
Smart contracts have the potential to automate complex processes normally carried out by middlemen or people. Multi-party or multi-step contract management in the business sector is a complicated and arduous task especially when relying on human arbiters to write, supervise and update the terms of an agreement. Smart contracting streamlines this entire process by enforcing unbreakable contracts using computers.
Imagine a world where it’s easier to avoid slow and expensive legal measures because a contract is broken, or where you can altogether avoid any unfairness from someone breaking their legal agreement.
The potential effects on various aspects of business operations are significant, especially in financial institutions and large businesses. The high level of bureaucracy in agencies like these equates to colossal cost savings and efficiency improvements. Some examples of smart contract uses are automated payment of dividends or stock splits, decentralized financial reporting ledgers, employee compensation disbursement, or to uphold terms of mergers and acquisitions.
Smart contracts could also underpin the first use of digital identities. The concept is that smart contracts can allow a person’s identity to be verified without sharing more information than is necessary to complete an objective; such as complete a purchase, verify someone’s age, or create an online account without releasing more information than desired. This protects customers from the risks of B2B (business to business) data sharing and can lower the risk of identity theft. Digital identities could also empower people without traditional, affordable, or convenient means of verifying their identity.
The development of digital identities is expected grow alongside what is being called the Web 3.0.
Web 3.0 is a new internet structure centered on interoperability with blockchains to decentralize how information is stored and shared over the web. Decentralized applications (called DApps) will function on a new internet protocol unseen by end users and will operate in conjunction with blockchains. The root of these applications is smart contracts and using them will improve security of private information and simultaneously make the internet more efficient from a user standpoint. DApps are becoming the new user interface for the internet and will better connect everyone within the network.
A big hurdle
Chain Bloating refers to extremely large levels of data within a blockchain and the associated problems that causes for end users (nodes) and the larger system. Accessing bloated blockchains requires wasting significant amounts of time downloading enormous amounts of data even with online web clients, sometimes also requiring large capacity hard drives for users to store all the blockchain data.
The enormous data content of bloated blockchains increases transaction fees and slows down the rate at which blocks are hashed and recorded — forcing backlogged transactions. These scalability problems are very costly to the growth and adoption of digital currencies. We are already seeing Ethereum, Bitcoin and other blockchains encounter bloat problems and for smart contracts to function with existing blockchains it’s clear that they can’t be built directly on top of them.
BitBay offers built in smart contracting on a peer to peer encrypted network.
The first functional smart contracting software was created by David Zimbeck in 2014 and is named Bithalo. This smart contract protocol was initially created to work with existing Bitcoin and Blackcoin blockchains and later this smart contract protocol evolved into BitBay. Bithalo was revolutionary in creating an off-chain solution for a smart contracting system which integrates with existing blockchains — bloat free.
With Bitbay all data related to creating its smart contracts is supported by a modified anonymous and encrypted peer-to-peer network called Bitmessage. The blockchain is not interrupted by large data inputs like many other cryptocurrencies. We supply simple smart contract templates for anyone who isn’t familiar with python programming, but if you do know how to code you will soon be able to create your own custom python contracts by the end of this summer.
Our user-friendly smart contract templates are setup for buying, selling, bartering goods or services, auctions, and even reverse auctions where sellers bid for their lowest possible price. There is even a template for employing someone or finding a job.
While cryptocurrencies deserve any attention they are given, the progress of smart contracting technology is the next thing to get excited about. Beyond the function of funds transfers smart contracts will become the platform of a new more connected internet economy where information and power is decentralized.
Design your first unbreakable smart contract today with BitBay!