The Enterprise Ethereum Alliance (EEA) today announced new and updated specifications aimed at helping developers create business-class blockchain networks that are faster, easier to use and capable of interacting with other distributed ledger networks.
The specifications include a brand-new set of APIs for moving compute functions off of Ethereum blockchains (known as off chain) to reduce computational loads and improve primary network performance.
The Ethereum blockchain specification began as an open-source, public blockchain in the same vein as bitcoin, enabling the creation and trading of cryptocurrency over an open distributed ledger based on a peer-to-peer computer architecture. Over time, software vendors began to independently modify Ethereum for enterprise use by creating a permissioned version, or one that could be centrally administered while also offering higher transactional performance and user privacy.
The EEA was founded by various start-ups, research groups, and Fortune 500 companies to achieve commonality in how various business-class Ethereum blockchains were created so developers didn't end up building dramatically different versions that could not interoperate.
The idea behind the EEA's Off-Chain Trusted Compute Specification V1.0 is to remove burdensome compute intensive workloads from an electronic ledger (essentially a distributed database) to improve performance and storage capacity.
"It's essentially to provide a high-level spec that could give different chip manufacturers a roadmap for designing an off-chain compute component if it's desired by an operator of an Enterprise Ethereum platform," said John Whelan, EEA chairman and head of digital investment banking for Banco Santander.
The 1.0 version of the Off-Chain specification has been been reviewed for compatibility with the following trusted compute methods:
- Trusted Execution Environments (TEEs)
- Zero-Knowledge Proofs
- Trusted Multi-Party-Compute (MPC)
Temporarily moving some transactions off chain for computation elsewhere, and then returning a summary to the main chain, is a promising method for achieving such requirements, said EEA Executive Director Ron Resnick.
Along with new off-chain protocol, the EEA released version three of its primary specification, the Enterprise Ethereum Client; it now defines how to automate the permissions process and uses a new, faster consensus algorithm – proof of authority (PoA). Specifically, the EEA chose the Clique Proof of Authority algorithm.
A PoA consensus algorithm is similar to another blockchain validation protocol called Proof of Stake (PoS), which, as its name suggests, enables those with the highest monetary stake in a ledger to vote on validating transactions. The problem with PoS blockchains is the validator with the highest stake – and therefor greatest voting power – isn't necessarily working in everyone's best interest.
In a PoA consensus blockchain, users are pre-validated based on their identities before they are allowed to vote on what group of transactions – known as blocks – can be added to the ledger. To date, the most popular public blockchains – Bitcoin, Ethereum (Ether) and Litecoin – have used PoW as their consensus mechanism. That process is slow and costly because it requires each computer on the ledger to complete a complex mathematical equation before it can validate transactions.
By pre-validating through PoA, transactional flow is far faster, as computers are not taxed with solving eqations.
One Start-up, Devvio, claimed earlier this year that its consensus algorithm – very similar to PoA – could process eight million transactions per second, far outpacing conventional monetary clearance and settlement networks such as VisaNet.
The Enterprise Ethereum Client Specification V3, which is available as a free download, also standardizes the way different users handle permissioned networks onboarding, while also providing ways to build a wider range of permission systems for enterprise.
"There's a lot of ways to build a blockchain-permission system and the idea with version 3.0 is to make it entirely smart-contract based," Whelan said. "Up until now, depending on app, [it's] been somewhat manual."
The new permission protocol enables on-chain listing of node addresses, the creation of white and black lists for who should or shouldn't be able to join a blockchain as well as who can write to a ledger or who should only have read capability.
One of the challenges with creating an enterprise system based on public Ethereum is a user address linked to a completely anonymous cryptocurrency wallet – a public encryption key. Unlike public blockchains, such as bitcoin, in the enterprise world an identity means something very different; It could be an organization, a business process or an individual user, and businesses are required by regulators to know their customers and be able to identify money-laundering schemes, among other things.
"Part of the EEA version 3.0 spec relates to how the on-chain identity system might communicate with an off-chain identity system. That speaks to the needs of an enterprise," Whelan said. "Think about when you buy a piece of software from a big vendor – a Microsoft or an IBM. Identity management, permissioning and role-based controls – all that stuff comes built-in and in a well understood, reasonably standard form."