The block time is the average time it takes for the network to generate one extra block in the blockchain.[27] Some blockchains create a new block as frequently as every five seconds.[28] By the time of block completion, the included data becomes verifiable. In cryptocurrency, this is practically when the transaction takes place, so a shorter block time means faster transactions. The block time for Ethereum is set to between 14 and 15 seconds, while for bitcoin it is 10 minutes.[29]
Public chains to the rescue! Public chains offer public transaction data that can be verified in real-time by anybody that cares to run a node. The more independent users or institutions that take part in verification, the more secure and decentralised the chain becomes! At Iryo, we strive to have every clinic doing full validation of the global state for the relevant smart contracts (EOS based). Public blockchains are mainly useful for two things; value routing (including initial creation and distribution) and trustless timestamping of messages.
Performance at scale: It is not uncommon for large businesses to process 100,000’s of transactions per second (TPS). Therefore, enterprise blockchains need to scale so that they can deliver performance accordingly. To achieve this, they can compartmentalize processes using containers or similar approaches. Read more about this requirement in this article “Enterprise blockchain ready to go live”.
It is different with a private blockchain (or closed) since the members of the network are selected before being able to download the protocol and therefore use the proposed service by the network. The mining capabilities and the system of consensus as a whole are centralized within the hands of the same entity. A network based on a private blockchain is therefore not decentralized in itself.

A consortium blockchain is part public, part private. This split works at the level of the consensus process: on a consortium chain, a pre-selected group of nodes control the consensus process, but other nodes may be allowed to participate in creating new transactions and/or reviewing it. The specific configuration of each consortium chain (i.e., which nodes have the power to authorize transactions via the consensus process, which can review the history of the chain, which can create new transactions, and more) is the decision of each individual consortium.

!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 consensus mechanism involves ascertaining transaction validity and uniqueness. Smart contracts address the validity portion. To ensure uniqueness, the protocol program in Corda checks whether any other transaction has used any of the input states of this transaction. If no other transaction has used any of the input states, that this transaction is unique.
Cuando esta transacción recibe las suficientes confirmaciones, se manda una notificación a la otra cadena de bloques (la que tú quieres utilizar) en el que se adjunta la prueba de que las monedas han sido enviadas por ti a esa dirección especial de la red. Tras ello, en la sidechain se creará, de forma automática, el mismo número exacto de activos que bitcoins se mandaron, dándote a ti el control de los mismos. Es decir, replica en el nuevo activo la cuantía que has enviado de la cadena principal a la sidechain. ¡Muy importante! Recordar que no se han creado o destruido nuevos bitcoins. Simplemente se han movido hasta que no estén usándose en la sidechain.
@mowliv I think a good way to think about it is by looking at our economy. The Federal Reserve prints US dollars for the US Government (the main blockchain) to boost the US economy. However, US dollars can be exported to other countries (a side chain) that could have a completely independent economy but still use a currency backed by the US government. – Olshansk May 30 '17 at 0:56
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.
Private blockchains are valuable for solving efficiency, security and fraud problems within traditional financial institutions, but only incrementally. It’s not very likely that private blockchains will revolutionize the financial system. Public blockchains, however, hold the potential to replace most functions of traditional financial institutions with software, fundamentally reshaping the way the financial system works.

A company called Blockstream has been focusing on these developments and has announced the release of Sidechain Elements, which is an open-sourced framework for sidechain development. It includes a functioning code and a testing environment for working with sidechains with several components: the core network software to build an initial testing sidechain, eight new features not currently supported by bitcoin, a basic wallet and the code for moving coins between blockchains.


!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
Public chains to the rescue! Public chains offer public transaction data that can be verified in real-time by anybody that cares to run a node. The more independent users or institutions that take part in verification, the more secure and decentralised the chain becomes! At Iryo, we strive to have every clinic doing full validation of the global state for the relevant smart contracts (EOS based). Public blockchains are mainly useful for two things; value routing (including initial creation and distribution) and trustless timestamping of messages.
Sidechains offer a way for new, more radical settings and technologies to be implemented without affecting the main chain. This ensures that the main chain is as secure as possible whilst providing the freedom to explore options which would never be considered for use on the main chain. Sidechains should be quite powerful as they provide cases like anonymity, transparency, confirmation times and turing complete options like rootstock all whilst utilizing bitcoins rather than relying on the hashing power (security) of some far less secure alt coin. That being said… there is quite some controvery regarding blockstream’s funding of most of the core development team and their inflexiblity regarding the max blocksize. This inflexibility has directly contributed to the success of ethereum and it remains to be seen whether the dream of bitcoin maximalism will survive long enough for sidechains with all of the promised functionality to be rolled out. I am skeptical.
The cheapest and most simple option is doing calculations on your local network (off-chain) and integrating with main blockchain by sending the results. It has flaws; you cannot live full advantage of blockchain as we do in bitcoin, because you will still have existing constraints of your current system. Despite all this, it is still a valid option; perhaps you won't need all the features of blockchain technology. Perhaps it is just enough to use blockchain only for your pain points. Factom can be considered under that kind of option. They used bitcoin wisely in their design. They hold the actual mass data in their network and utilize stability of bitcoin in their solution. This project is so successful that at coindesk magazine, it is saying that Factom can be used for the land titles in Honduras. http://www.coindesk.com/debate-f...
Implemented by The initial design was published by Blockstream in 2014, but the implementation is blocked by the lack of native support for SPV proofs in Bitcoin (which may not be added at all). Rootstock workaround this by sacrificing decentralization (still work in progress). The Ardor platform created by Jelurida is the first to propose and implement the concept of Child Chains. Already running on testnet, the production Ardor launch is scheduled for Q4 2017.
Consider a proof-of-existence application, where you want to authenticate your document in the Ethereum (for example) network, but you do not need your document to be online. So, you will store the hash generated from your document in the blockchain, but the document itself will be in your local machine, out of any blockchain-related structured, being off-chain.

Blockchains that are private or permissioned work similarly to public blockchains but with access controls that restrict those that can join the network, meaning it operates like a centralised database system of today that limits access to certain users. Private Blockchains have one or multiple entities that control the network, leading to the reliance on third-parties to transact. A well-known example would be Hyperledger.