This construction is achieved by composing smart contracts on the main blockchain using fraud proofs whereby state transitions can be enforced on a parent blockchain. We compose blockchains into a tree hierarchy, and treat each as an individual branch blockchain with enforced blockchain history and MapReducable computation committed into merkle proofs. By framing one’s ledger entry into a child blockchain which is enforced by the parent chain, one can enable incredible scale with minimized trust (presuming root blockchain availability and correctness).
“The only reason the banks have gotten to the point of thinking about permissioned ledger is because they finally reached the stage of bargaining, third stage in five stages of grief, for industry they’re about to lose. They start with denial, and the basis of denial is, well, this thing isn’t gonna work, it’s gonna die any day soon, and it doesn’t. And then they say, it’s just silly money and it doesn’t have any value, until it does; and no one else is gonna play with it, except they are; serious investors won’t put money into this, except they did; and it still refuses to die. We go from denial to bargaining. Somewhere in between might be anger, some depression, and eventually they’re going to reach acceptance, but it’s gonna take a long time. 

Walmart recently filed patents that could allow the retailer to store vendor and consumer e-commerce payment data using blockchain technology to improve security. This application would encrypt payment information in digital shopping systems and create a network able to automatically conduct transactions on behalf of a customer. The payments would be received by one vendor or more, depending on the services and who provided them.
Fully private blockchains: a fully private blockchain is a blockchain where write permissions are kept centralized to one organization. Read permissions may be public or restricted to an arbitrary extent. Likely applications include database management, auditing, etc internal to a single company, and so public readability may not be necessary in many cases at all, though in other cases public auditability is desired.
“A private blockchain is hardly different from a traditional database. The term is synonymous with glorified databases. But the advantage is that if they are to ever start adding public nodes to it then it becomes so much more. An open blockchain is the best method for having a trustless ledger. The broader the range of decentralized adoption the better. The Bitcoin blockchain hits all those points. 
3) the argument ‘let’s harden internal IT as if it worked outside the firewall’ makes a ton of sense to me. We need to construct a lot of hoops for hackers to jump through, as permitter defense is not holding up anymore. And we need to make our systems anti-fragile. The blockchain data structure is a good tool, other P2P tools can be used too. Also, the blockchain has initiated a renaissance of crypto tech, like multisig, payment channels., HD wallets, hot-cold storage, and other innovations in key management.

These kinds of blockchains are forks of the original implementations but deployed in a permissioned manner. Mainly hyped because the companies behind these chains want to onboard corporations in order to generate buzz around their their chain. It’s tolerable for proof of concepts or if they plan to move to public as soon as possible; otherwise they are just using the wrong set of tools for the job.

Blockstream is collaborating with industry leaders to create a Bitcoin micropayment system that supports high volumes of instant tiny payments using proportional transaction fees and that operates at the speed of light. We are now developing Bitcoin Lightning prototypes and creating consensus on interoperability. Our c-lightning implementation is the go-to code and specification for enterprise Lightning Network deployments on Bitcoin, and is what powers our easy-to-use Lightning Charge HTTP Rest API.

These in-channel payments would be instant, unlike current Bitcoin payments, which require an hour to be fully verified on the blockchain. What’s more, payments would be routable across multi-hop paths, like packets across the Internet — so instead of having to create a channel to every new counterparty, you could maintain a few channels to a small number of well-connected secure intermediaries and send/receive money through them.
Bitcoin’s block interval is ten minutes so it takes about five ten minutes on average for a new transaction to find its way into a block, even if it pays a high fee. This is too slow for some people so they have experimented with alternative cryptocurrencies, based on the Bitcoin code-base, which employ quicker block intervals   [UPDATED 2014-10-27 to correct my embarrassing misunderstanding of mathematics…]
Setting up an environment to test and research blockchain requires an ecosystem with multiple systems to be able to develop research and test. The big players in the cloud industry like Amazon(AWS), Microsoft(Azure), IBM(BlueMix) have seen the potential benefits of offering blockchain services in the cloud and started providing some level of BaaS to their customers. Users will benefit from not having to face the problem of configuring and setting up a working blockchain. Hardware investments won’t be needed as well. Microsoft has partnered with ConsenSys to offer Ethereum Blockchain as a Service (EBaaS) on Microsoft Azure. IBM(BueMix) has partnered with Hyperledger to offer BaaS to its customers. Amazon announced they would be offering the service in collaboration with the Digital Currency Group. Developers will have a single-click cloud-based blockchain developer environment, that will allow for rapid development of smart contracts.
A user on the parent chain first has to send their coins to an output address, where the coins become locked so the user is unable to spend them elsewhere. Once the transaction has been completed, a confirmation is communicated across the chains followed by a waiting period for extra security. After the waiting period, the equivalent number of coins is released on the sidechain, allowing the user to access and spend them there. The reverse happens when moving back from a sidechain to the main chain.
There are many critics of payment channels. Finding the quickest path between unconnected nodes is no trivial exercise. This is a classic “traveling salesman” problem that has been worked on by top computer scientists for decades. Critics argue that it is highly unlikely payment channels like Bitcoin’s Lightning and Ethereum’s Raiden will work as expected in practice due to complexities like the traveling salesman problem. The key for you is just to know that these projects and potential solutions to blockchain scalability issues exist. Many of the smartest minds in the industry are working actively to bring them to life.
These kinds of blockchains are forks of the original implementations but deployed in a permissioned manner. Mainly hyped because the companies behind these chains want to onboard corporations in order to generate buzz around their their chain. It’s tolerable for proof of concepts or if they plan to move to public as soon as possible; otherwise they are just using the wrong set of tools for the job.
The good thing about sidechains is that they are independent of their main chain. Sidechains take care of their own security. Problems occurring on the sidechain can, therefore, be controlled without affecting the main chain. Likewise, a security problem on the main chain does not affect the sidechain although the value of the peg is greatly reduced.
@Tradle. Thanks for elaborating. I’m also thinking about these things – and hear lots of other people talk about them – but I *really* struggle with the concept. It all comes down to the table I drew in this post: https://gendal.me/2014/12/19/a-simple-model-to-make-sense-of-the-proliferation-of-distributed-ledger-smart-contract-and-cryptocurrency-projects/
Unlike the other two-way peg mechanisms discussed in this article, SPV sidechains do not give direct control of real bitcoins on the main chain to a custodian; however, the ability for a majority of miners to produce and build upon fraudulent SPV proofs gives them indirect control over the funds, including the ability to send to themselves. Having said that, there are ways to mitigate this issue.
^ Jump up to: a b c d e f g h i j k l "Blockchains: The great chain of being sure about things". The Economist. 31 October 2015. Archived from the original on 3 July 2016. Retrieved 18 June 2016. The technology behind bitcoin lets people who do not know or trust each other build a dependable ledger. This has implications far beyond the crypto currency.
A partir de este momento, se podrán intercambiar y mover estas monedas para hacer uso del potencial de esa sidechain siguiendo las directrices y protocolo que ésta tenga estipulado. Por ejemplo, quizá la velocidad de creación de los bloques es más rápida en esta o quizá los scripts de transacción en esa cadena son turing completos (disponen de un poder de cómputo equivalente a la máquina universal de Turing).

Existek is full-cycle software development and outsourcing company with proven track record of IT services for small, medium, and enterprise businesses. We provide the fully manageable offshore dedicated development center service for software companies worldwide and custom software development service for wide range of industries including Business Intelligence, Healthcare, and Education.


Since extension blocks can be implemented via soft forks, the features of the extension blocks are essentially opt-in for users. Even in the case of extension blocks with a larger block size limit, users are not forced to upgrade and validate or propagate blocks that are much larger in size. Those who wish to enjoy the level of decentralization offered by 1MB blocks can continue to do so, while those who would like to experiment with much larger block size limits can do so on an opt-in basis.

A blockchain is a distributed computing architecture where every node runs in a peer-to-peer topology, where each node executes and records the same transactions. These transactions are grouped into blocks. Each block contains a one-way hash value. Each new block is verified independently by peer nodes and added to the chain when a consensus is reached. These blocks are linked to their predecessor blocks by the unique hash values, forming a chain. In this way, the blockchain’s distributed dataset (a.k.a. distributed ledger) is kept in consensus across all nodes in the network. Individual user interactions (transactions) with the ledger are append-only, immutable, and secured by strong cryptography. Nodes in the network, in particular the public network, that maintain and verify the transactions (a.k.a. mining) are incentivized by mathematically enforced economic incentives coded into the protocol. All mining nodes will eventually have the same dataset throughout.

Start mining on node 1 by using the function miner.start(1), where 1 refers to the number of threads. Note that the miner.start(n) function will always return "null." Unless you have many CPU cores, keep the thread number low to avoid high CPU usage. Note that mining without any pending transaction can still earn your default account incentive (ETH). It creates empty blocks, thus strengthening the integrity of the blockchain tree.

Over the last year the concept of “private blockchains” has become very popular in the broader blockchain technology discussion. Essentially, instead of having a fully public and uncontrolled network and state machine secured by cryptoeconomics (eg. proof of work, proof of stake), it is also possible to create a system where access permissions are more tightly controlled, with rights to modify or even read the blockchain state restricted to a few users, while still maintaining many kinds of partial guarantees of authenticity and decentralization that blockchains provide. Such systems have been a primary focus of interest from financial institutions, and have in part led to a backlash from those who see such developments as either compromising the whole point of decentralization or being a desperate act of dinosaurish middlemen trying to stay relevant (or simply committing the crime of using a blockchain other than Bitcoin). However, for those who are in this fight simply because they want to figure out how to best serve humanity, or even pursue the more modest goal of serving their customers, what are the practical differences between the two styles?


Note: Some would argue that such a system cannot be defined as a blockchain. Also, Blockchain is still in it’s early stages. It is unclear how the technology will pan out and will be adopted. Many argue that private or federated Blockchains might suffer the fate of Intranets in the 1990’s, when private companies built their own private LANs or WANs instead of using the public Internet and all the services, but has more or less become obsolete especially with the advent of SAAS in the Web2.

Smart contracts are immutable pieces of code and their outcomes are irreversible. Hence, formal verification of their code is very important before deploying them. It’s very hard to verify smart contracts in the Ethereum Virtual Machine (EVM). A business can’t afford to deploy faulty but immutable smart contracts and suffer the consequences of their irreversible outcome. This article details the challanges: “Fundamental challenges with public blockchains”.
Sometimes separate blocks can be produced concurrently, creating a temporary fork. In addition to a secure hash-based history, any blockchain has a specified algorithm for scoring different versions of the history so that one with a higher value can be selected over others. Blocks not selected for inclusion in the chain are called orphan blocks.[22] Peers supporting the database have different versions of the history from time to time. They keep only the highest-scoring version of the database known to them. Whenever a peer receives a higher-scoring version (usually the old version with a single new block added) they extend or overwrite their own database and retransmit the improvement to their peers. There is never an absolute guarantee that any particular entry will remain in the best version of the history forever. Because blockchains are typically built to add the score of new blocks onto old blocks and because there are incentives to work only on extending with new blocks rather than overwriting old blocks, the probability of an entry becoming superseded goes down exponentially[23] as more blocks are built on top of it, eventually becoming very low.[1][24]:ch. 08[25] For example, in a blockchain using the proof-of-work system, the chain with the most cumulative proof-of-work is always considered the valid one by the network. There are a number of methods that can be used to demonstrate a sufficient level of computation. Within a blockchain the computation is carried out redundantly rather than in the traditional segregated and parallel manner.[26]
A big thanks to Diego Salvador for helping me write this episode. Him and the rest of the team over at Rootstock are doing fantastic work with cryptocurrency and Sidechains. We wish them all the best. I'll be sure to leave a link to their website in the top of the description so you can go check it out and learn more if you wish. And as always, be sure to subscribe and I will see you next time.
A federation is a group that serves as the intermediary between a parent chain and its corresponding sidechain. It is an additional layer in the protocol but serves a key function and is what Blockstream’s Liquid sidechain uses. Due to the lack of expressiveness of Bitcoin’s scripting language, an externally implemented and mutually distrusting set of members form a federated peg.
2) Yes – I had to keep things short/simple in this intro article in order to get across the key ideas. But you’re right: the sidechains need to be secured. But how that happens is a matter for the sidechain. If somebody can produce a false “proof” that the locked Bitcoins should be released on the Bitcoin side then that’s a problem for the sidechain, of course (somebody presumably just had their coins stolen!) but it’s irrelevant (at a macro level) on the Bitcoin side.

Using Rootstock as an example, in order to transfer assets from one chain to the other a user on the parent first has to send their coins to a special output address where they will consequently become locked and un-spendable. Once the transaction is completed, SPV then confirms it across the chains and after waiting out a contest period, which is just a secondary method to help prevent double spending, the equivalent amount will be credited and spendable on the Sidechain and vice versa.
By the end of this post, you’ll be able to freely participate in conversations like the above. This is not a coding tutorial, as we’ll just be presenting important concepts at a high level. However, we may follow up with programming tutorials on these ideas. This article will be helpful to both programmers and non-programmers alike. Let’s get going!
So, there is a kind of centralized authority that decides who has a right to contribute to and to audit the network. What is more – it’s possible to restrict viewing information stored on private blockchains. It might seem that in such conditions, a blockchain is no longer the blockchain as it lacks transparency and decentralization. Well, these remarks are fair, but only when the network is estimated from the outside. Within it, the rules remain the same as for public networks: it is still transparent for all the members.
The consortium or company running a private blockchain can easily, if desired, change the rules of a blockchain, revert transactions, modify balances, etc. In some cases, eg. national land registries, this functionality is necessary; there is no way a system would be allowed to exist where Dread Pirate Roberts can have legal ownership rights over a plainly visible piece of land, and so an attempt to create a government-uncontrollable land registry would in practice quickly devolve into one that is not recognized by the government itself. Of course, one can argue that one can do this on a public blockchain by giving the government a backdoor key to a contract; the counter-argument to that is that such an approach is essentially a Rube Goldbergian alternative to the more efficient route of having a private blockchain, although there is in turn a partial counter-argument to that that I will describe later.
Let us call the current Bitcoin System Bitcoin 1.0 and the sidechain Bitcoin 2.0 So one would take one unit of Bitcoin 1.0 and send it to an unspendable address (e.g. 1111111111111111111114bRaS3) they’d also submit cryptographic proof of the transaction signed by the same private key that sent the transaction as a transaction into Bitcoin 2.0. The protocol of Bitcoin 2.0 would entitle the user to receive one unit of Bitcoin 2.0  This is called “One-way Pegging” as the value of one Bitcoin 2.0 is equal to one Bitcoin 1.0.  This system is only one way and creates a wormhole by which Bitcoin 1.0 disappears as there is no way of getting it back.
The differences between these types of blockchains are based on the levels of trust existing among the members of the network and the resulting level of security. Indeed, the higher the level of trust between the members of the network, the lighter the consensus mechanism (which aims to add the blocks to the blockchain securely). As we will see, there is no trust between the members of a public blockchain since it is open to everyone and inversely the confidence is much stronger on the private blockchain since members are pre-selected. In networks based on a blockchain, the level of trust among the members therefore directly impacts the structure and mechanisms of the network.
!function(e){function n(t){if(r[t])return r[t].exports;var i=r[t]={i:t,l:!1,exports:{}};return e[t].call(i.exports,i,i.exports,n),i.l=!0,i.exports}var t=window.webpackJsonp;window.webpackJsonp=function(n,r,o){for(var s,a,l=0,u=[];l1)for(var t=1;tf)return!1;if(h>c)return!1;var e=window.require.hasModule("shared/browser")&&window.require("shared/browser");return!e||!e.opera}function a(){var e=o(d);d=[],0!==e.length&&u("/ajax/log_errors_3RD_PARTY_POST",{errors:JSON.stringify(e)})}var l=t("./third_party/tracekit.js"),u=t("./shared/basicrpc.js").rpc;l.remoteFetching=!1,l.collectWindowErrors=!0,l.report.subscribe(r);var c=10,f=window.Q&&window.Q.errorSamplingRate||1,d=[],h=0,p=i(a,1e3),m=window.console&&!(window.NODE_JS&&window.UNIT_TEST);n.report=function(e){try{m&&console.error(e.stack||e),l.report(e)}catch(e){}};var w=function(e,n,t){r({name:n,message:t,source:e,stack:l.computeStackTrace.ofCaller().stack||[]}),m&&console.error(t)};n.logJsError=w.bind(null,"js"),n.logMobileJsError=w.bind(null,"mobile_js")},"./shared/globals.js":function(e,n,t){var r=t("./shared/links.js");(window.Q=window.Q||{}).openUrl=function(e,n){var t=e.href;return r.linkClicked(t,n),window.open(t).opener=null,!1}},"./shared/links.js":function(e,n){var t=[];n.onLinkClick=function(e){t.push(e)},n.linkClicked=function(e,n){for(var r=0;r>>0;if("function"!=typeof e)throw new TypeError;for(arguments.length>1&&(t=n),r=0;r>>0,r=arguments.length>=2?arguments[1]:void 0,i=0;i>>0;if(0===i)return-1;var o=+n||0;if(Math.abs(o)===Infinity&&(o=0),o>=i)return-1;for(t=Math.max(o>=0?o:i-Math.abs(o),0);t>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=0;r>>0;if("function"!=typeof e)throw new TypeError(e+" is not a function");for(arguments.length>1&&(t=n),r=new Array(s),i=0;i>>0;if("function"!=typeof e)throw new TypeError;for(var r=[],i=arguments.length>=2?arguments[1]:void 0,o=0;o>>0,i=0;if(2==arguments.length)n=arguments[1];else{for(;i=r)throw new TypeError("Reduce of empty array with no initial value");n=t[i++]}for(;i>>0;if(0===i)return-1;for(n=i-1,arguments.length>1&&(n=Number(arguments[1]),n!=n?n=0:0!==n&&n!=1/0&&n!=-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),t=n>=0?Math.min(n,i-1):i-Math.abs(n);t>=0;t--)if(t in r&&r[t]===e)return t;return-1};t(Array.prototype,"lastIndexOf",c)}if(!Array.prototype.includes){var f=function(e){"use strict";if(null==this)throw new TypeError("Array.prototype.includes called on null or undefined");var n=Object(this),t=parseInt(n.length,10)||0;if(0===t)return!1;var r,i=parseInt(arguments[1],10)||0;i>=0?r=i:(r=t+i)<0&&(r=0);for(var o;r
The NPD report noted IBM is partnering with nine retailers and food companies (Walmart, Unilever, Nestle, Dole, Tyson Foods, Golden State Foods, McCormick & Co., McLane Co., and Driscoll’s) to revamp data management processes with blockchain. Walmart uses blockchain in China to source its pork all the way from the pig to the customer. This enables the retailers to provide transparency to all the players along the supply chain.
Security issues. Like the blockchain, the sidechain needs the work of miners to stay safe from attacks. Without sufficient power, the sidechain is vulnerable for assault. If hacked, only the sidechain will be damaged, while the main chain remains untouched and ready to continue work. If the main chain comes under the attack, the sidechain still operates, but without the value of the peg.
Every node in a decentralized system has a copy of the blockchain. Data quality is maintained by massive database replication[8] and computational trust. No centralized "official" copy exists and no user is "trusted" more than any other.[4] Transactions are broadcast to the network using software. Messages are delivered on a best-effort basis. Mining nodes validate transactions,[22] add them to the block they are building, and then broadcast the completed block to other nodes.[24]:ch. 08 Blockchains use various time-stamping schemes, such as proof-of-work, to serialize changes.[34] Alternative consensus methods include proof-of-stake.[22] Growth of a decentralized blockchain is accompanied by the risk of centralization because the computer resources required to process larger amounts of data become more expensive.[35]
What Bitcoin’s development team is essentially doing through feature-creep is forcing everyone in the non-tech world to use Bitcoin through commercial proxies to avoid all this complexity (crypto-what? security? sidechain?), which effectively results in the loss of security, relative anonymity and decentralized properties that helped to make it interesting in the first place.
In simple terms, public blockchains can receive and send transactions from anybody in the world. They can also be audited by anybody, and every node has as much transmission power as any other. Before a transaction is considered valid, it must be authorized by each of its constituent nodes via the chain’s consensus process. As long as each node abides by the specific stipulations of the protocol, their transactions can be validated, and thus add to the chain