EOSIO™ Strategic Vision

As a contributor to the growth of the EOSIO™ software, Block.one is committed to working with the community to develop a platform that will strengthen and grow the ecosystem. The following are foundational pillars through which we aim to make EOSIO™ the fastest, most scalable, and easiest to use blockchain in the world.

This outline of our vision for EOSIO™ represents directional areas where Block.one strives to continually explore the advancement of the software in close collaboration with the community over the next few years. Areas of interest in this document should not be treated as products with launch dates but instead should be seen as broad areas where we are committed to making continual improvements. As the needs of the community and software platform continue to grow we expect to iterate and prioritize these enhancements to continue making EOSIO™ the most performant blockchain software in the market.

Back to Top

Scalability: More apps, more users

EOSIO™ strives to be one of the most performant blockchains in the world with industry-leading transaction speeds and block confirmation times. We will continue to explore vertical and horizontal scaling solutions to enhance performance. Scroll down for an overview and continue reading about Scalability in our latest article on the EOSIO Strategic Vision.

Article:

EOSIO™ Strategic Vision: Scaling the EOSIO Platform (Part 1 of 4)

As the EOSIO™ platform continues to evolve, Block.one’s collaboration with the open source community building on EOSIO has become a critical component of the software’s adoption. Recently announced in the EOSIO Strategic Vision, we’ve proposed a foundation based on four core principles of focus: Scalability, Developers, Users, and Enterprises, each with fundamental features which set EOSIO apart. In this first article of a four part series to review each pillar of the Strategic Vision, we’ll take a closer look at Scalability and how we’re taking strides to maximize efficiency across EOSIO based blockchains.

When it comes to mass consumer adoption of blockchain applications, scalability remains one of the greatest focal points. Through continuous research and innovation, our team has strived to develop a robust, efficient, and highly capable software environment that can rapidly scale to meet needs determined by marketplace dynamics. In fact, Bart Wyatt, our Director of Blockchain Development, recently published a byline focused on Blockchain Scalability on Cointelegraph that discusses various interpretations of scalability and why scale is the most critical component of blockchain’s adoption.

The following topics of focus are discussed in the first pillar of the EOSIO Strategic Vision:

Block Production: Vertical Scaling

WASM

Running parallel instances of smart contract business logic isn’t always possible. This factor makes it important to maximize the single threaded performance of executing WASM code in smart contracts. EOSIO has been engineered with this tenet in mind, and delivers stellar smart contract performance by leveraging a wide range of WASM engines including WABT, WAVM, and our most recent announcement of EOS VM, a blockchain specific WASM interpreter with associated JIT compilers that further accelerate WASM performance. We are continuing to explore solutions for WASM engines that can rise to the challenge of blockchain technology related needs. Read more about EOS VM in our recent developer preview release announcement.

Multi-Threading

As far as business logic is concerned, smart contracts are usually single threaded, so they generally process one command at a time. By identifying opportunities in dataflows for risk free concurrent processing our team is exploring the use of multiple cores to accelerate processing speeds without forcing developers to change builds.

Improvements In Nodeos 

Our team observed opportunities to build greater execution efficiency into the platform such as our recently announced EOSVM, a blockchain specific WASM engine, database access, intrinsics handling, and various other EOSIO platform and various other components. In order to maximize the scaling potential of nodeos, the team will be continually profiling each system in order to make the most of our ongoing optimization efforts.

Advanced Database Technologies

The database supporting the current iteration of nodeos has been fine tuned to augment throughput and simultaneously offer the ability to rollback deltas on demand. Future efforts will stay focused on optimizing and integrating similarly performant database solutions capable of concurrently managing multiple non-conflicting transactions and that enable developers greater data indexing flexibility.

Reducing Resource Reliance 

Managing finite resources has been a consistent obstacle for blockchain developers with sights set upon mass adoption. Scaling usage of blockchain networks to the performance of traditional systems will require more efficient use of resources like CPU, RAM, and Bandwidth a network will be able to provide. Our team has been hard at work probing possibilities, like resource exchanges and software side solutions, that can reduce the resource load and enable shared resources for companies operating blockchain applications.  

Block Production: Horizontal Scaling

Inter-Blockchain Communication Mechanisms

Interoperability across blockchains remains a core facet of the EOSIO Blockchain. By improving the communication across multiple blockchains with a formalized Inter-Blockchain Communication (IBC) protocol, higher transaction throughput rates can be achieved. Our teams are working towards implementing inter-chain mechanisms that provide applications enhanced scalability capacities. One of the methods we are exploring involves scaling by diversifying components across multiple chains that communicate together via a formalized IBC. Another scaling strategy we are considering involves replicating an application across multiple chains to manage user-request overflow. Yet another option we are looking into would be to enable two or more applications across blockchains to intercommunicate in order to handle process loads. We will continue to research and identify other opportunities where cross-chain compatibility enables greater throughput. 

Parallel Smart-Contract Execution

Single threaded smart contracts require a constantly maintained global state which can lead to execution constraints and intensive resource utilization to execute contracts. To overcome this state maintenance related drawback, we are exploring advanced memory management techniques that will expand multithreading support to encompass transaction processing, without superfluous cross-chain communication. We believe it is possible to extend such techniques to scale across node assemblies running multi-threaded processes.

Abstraction Layers

In order to provide seamless front-end experiences cross-chain, we are also examining the possibilities for developers to create applications with greater ease that are able to interact with multiple blockchains. Rather than requiring application developers to juggle a series integrations, we’re researching how application developer level abstractions can simplify the back-end integration of such applications.

Data Access Scalability

As the blockchain grows with each authenticated transaction, querying and reading history and state data proves to be a growing challenge. In order to tackle this challenge, we are working on a series of History Tools. WASM-QL implements a client-server architecture to design and execute queries in WASM. This implementation pattern allows contract authors to design and code queries using the same tooling they used to create their contracts and further the client-server architecture also minimizes the back-and-forth required between client and server. Once enabled, this system would make it possible to inspect historical states at any given block height. In addition, since replication in this system is relegated away from nodeos, towards low memory-intensive query processes, it is more conducive to scalability.

EOSIO Specification Repository

The community effort towards building stable, efficient, and scalable EOSIO blockchains remains ongoing and we will continue to provide support and resources. We are continuing to implement various facets of the EOSIO Strategic Vision and during this crucial stage the feedback we receive from researchers, application developers, and other members of the community makes an impact. This effort is spearheaded by the Specification Repository, an EOSIO LabsTM initiative to support greater synergy amongst stakeholders in our growing ecosystem. If interested in getting involved, please review the specifications drafted and provide feedback directly in GitHub as we work through the implementation of these features in EOSIO.

Continue reading about the additional pillars of the Strategic Vision below:

Developers – Better tooling, faster app developmentUsers – Greater security, less frictionEnterprise – Greater flexibility, better compliance

Stay Connected

As always, Block.one’s commitment to incorporate community feedback into EOSIO remains unwavering. The input from each ecosystem participant provides us valuable insights that essentially inform the growth and help set the pace of advancement for the EOSIO platform. If you would like to offer feedback and work more closely with our team to improve EOSIO for developers, you can send our developer relations team an email at developers@block.one.

Remember, you can also keep up-to-date with future announcements by subscribing to our mailing list on the new EOSIO website. We are excited to be regularly improving the usability of the software for EOSIO developers as we continue to lay a foundation for the mass adoption of blockchain technology.

. . .

Important Note: All material is provided subject to this important notice and you must familiarize yourself with its terms. The notice contains important information, limitations, and restrictions relating to our software, publications, trademarks, third-party resources and forward-looking statements. By accessing any of our material, you accept and agree to the terms of the notice.

Block Production:Vertical Scaling

Build state-of-the-art WASM engines to improve smart contract performance

Not all smart contract business logic is easily parallelizable and so it is important to maximise the single threaded performance of executing the WASM code in smart contracts. EOSIO™ has been architected to leverage a variety of WASM engines to deliver phenomenal smart contract execution performance. In addition to WABT, WAVM, etc. we are also exploring support for other state of the art engines, and building our own WASM interpreters with associated JIT compilers to further accelerate WASM performance.

Explore improvement of throughput on multicore machines via multithreading feature enhancements

Smart Contracts are primarily single threaded in business logic execution. We are exploring utilizing multiple cores to speed up processing of transactions without requiring developers to rearchitect their smart contract designs. By analyzing the flow of information as the blockchain is constructed and validated, we have identified sections of the critical path for performance that can safely be processed concurrently.  Using this analysis we will continually improve the core software’s ability to leverage modern multicore hardware.

Continual profiling of nodeos to identify targeted areas of improvement

Nodeos has many distinct buckets where execution can be improved: WASM execution, database access, intrinsics handling, other native code, etc. Here we aim to continually profile nodeos to identify areas that can provide the biggest benefit for our efforts in trying to optimize execution in each of those areas.

Explore advanced database technologies to improve flexibility and throughput

Nodeos uses a highly performant database today to maximize throughput and provides the ability to rollback deltas on demand. Here we are exploring advanced database technologies which are not only performant and support deltas but also provide the ability to concurrently handle multiple non-conflicting transactions, provide support for arbitrary length primary keys to enable developers more flexible ways of indexing their data, etc.

Explore blockchain technologies that can provide more cost effective access to scarce resources like RAM

Resource costs are a persistent roadblock to mass adoption and growth of EOSIO blockchains.  We will continue to explore innovations, such as REX, that lower the effective cost of operating a blockchain application at scale including options for relieving pressure on critical resources by developing attractive alternatives for specialized use cases.  

Horizontal Scaling

Explore a variety of Inter-blockchain Communication (IBC) mechanisms (oracle-based, light-client based, etc.) to enable side- and sister-chain based scaling

EOSIO Blockchain was architected to support Inter-blockchain communication to enable practically limitless transaction throughput rates. Here we are exploring several mechanisms to:

  • Enable applications to scale by spreading their components to different chains that work together as a whole through IBC
  • Enable applications to scale by replicating across many chains that can each handle a subset of user requests
  • Enable two or more applications on different chains to intercommunicate

Explore smart contract parallel execution

  • Single threaded smart contract execution is constrained by the need to maintain global state. Here we aim to explore memory management techniques to enable multi-threading support for transaction processing without the associated Inter-blockchain communication overhead.
  • These memory management techniques can be further extended to scale across clusters of machines running multithreaded processes

Explore convenient layered abstractions for developers to build cross-chain decentralized applications

Enabling developers to architect applications that live on more than one chain but present a unified interface to end-users will require application developers to integrate state across chains, run queries across the tables in the chains, etc. Here we are exploring application developer level abstractions of these concepts to simplify developer experience.

Data Access Scalability

Provide a scalable solution to access data on the blockchain

Querying and reading history and state data from a blockchain continues to be challenging to scale. Here we are designing and building a performant query mechanism implemented in WASM that can enable contract developers to define and expose performant queries for their respective applications. This enables complex queries to be executed server-side, minimizing the back and forth that is currently necessary between client and server. This also enables easier scaling as it requires replicating lightweight query processes instead of replicating memory intensive nodeos processes. Further, this system may also enable inspecting historical state at any given block height.

Back to Top

Developers: Better tooling, faster app development

A pillar of the success for EOSIO™ has been the adoption of the platform for application development. Improving the developer experience through new tools and libraries for developers building applications on EOSIO™ based blockchains is an area of continued focus. Scroll down for an overview and continue reading about Developers in our latest article on the EOSIO Strategic Vision.

Article:

EOSIO™ Strategic Vision: Tooling EOSIO for Developers (Part 2 of 4)

While the EOSIO™ software ecosystem continues to grow, improving the developer experience building on EOSIO is at the forefront of our minds. In the EOSIO Strategic Vision, we identified four central points of focus for a collective approach to platform development; Scalability, Developers, Users, and Enterprises. This article focuses on enhancements for Developers and the tools that help them build.

To ease friction with software deployment our goal is to make the best tools available for developers building on EOSIO. Blockchain system architects need a means to inspect blocks and transactions, streamline compatibility for multiple authenticators, and ways to reliably audit and debug smart contracts. They need test environments and robust documentation to aid in deployment and on-boarding new talent to their organizations. In addition, overall improvements to smart contract searchability and functionality will expand the capabilities of EOSIO blockchain applications.

A smoother experience for developers means a clearer path to building a more robust and diverse blockchain ecosystem that provides users secure applications to fit their needs. Developers make this diverse ecosystem possible, and to help them deliver we are dedicated to improving their experience on EOSIO. Below are the initiatives we have outlined in the EOSIO Strategic Vision to move EOSIO closer to that goal.

The following topics of focus are detailed in the second pillar of the EOSIO Strategic Vision:

Graphical User Interfaces

Formerly, developers have been relegated to accessing nodeos (the EOSIO blockchain process) via a functional, albeit manual, command line interface. To improve this experience, we’re working on graphical user interfaces (GUIs) that can be utilized to launch nodeos, access block explorers for transaction and block inspection as well as other general development uses. We believe that offering tools with easily accessible user interfaces will provide greater flexibility and improve efficiency by allowing multiple developers to work in parallel on a single instance of nodeos. Our recent release of the EOSIO Explorer adds more visual tools into the EOSIO developer experience.

Advancing the Universal Authenticator Library

Announced earlier this year under EOSIO Labs™, Universal Authenticator Library (UAL) provides a single integration and associated front end components for developers to build into their applications to support a number of compatible authenticators. This simple, unified approach not only reduces development time when compared to integrating with each specific authenticator a developer wants to have available in their application, it provides a more seamless and consistent user experience to end users of EOSIO based applications improving usability across the growing ecosystem of blockchain applications. UAL makes it possible for developers to provide a unified front end experience in their application giving users the option to choose an authenticator that best suits their needs or personal preferences. The future of the UAL library will see a wider range of authenticator support as it is adopted across the ecosystem. 

EOSIO SDKs for Java and Swift

To better serve a user base across multiple mediums EOSIO blockchain application developers often take web applications and replicate them for the sake of mobile device interface. Developers can use both the recently released Java and Swift libraries to generate applications in native Android or iOS platforms, providing faster response time, and more finely tuned interfaces on the user end. As we receive feedback and continue to fine tune these SDKs, we will continue to release additional improvements.

Debugging Smart Contracts

Exploration continues to better deliver superior smart contract debugging resources. Promising research is underway on tools that let developers add breakpoints to their smart contract code so that functions can be reviewed in a step-through process during state exploration and auditing. More robust tools available for smart contract development will help developers build more seamless and secure contracts on EOSIO.

The EOSIO Testnet

As options for testing the deployment of smart contracts are limited, our team is working on a testing infrastructure that is integrated with our developer documentation and can guide the user through the process of testing on a testnet. Providing additional documentation as a guide will better onboard new developers to the EOSIO platform and make it easier for existing developers to run testing cycles before deploying their applications into production environments. 

Scalable Documentation Platform

While continuous updates are made at a rapid pace to improve many facets of the EOSIO source code, we are working in parallel to streamline our developer portal to provide a more seamless experience in sync with the scale of the EOSIO software codebase. Additionally, to maximize inclusivity in a global development environment we’re exploring multi-lingual support for core updates to documentation to provide a greater degree of support to non-english speaking developers in the ecosystem.

High Resolution State Tracking

In the past, developers tracked state differences on a per-block basis with official tools such as the State History Plugin. Going beyond blocks, we’re continuing to investigate how to give developers more control over behavioral review of smart contract state changes. This would make it possible to refine the scope of review to individual transactions or actions, offering developers greater flexibility with the implementation of data aggregator tools. Developers will be able to gather these data points for applications outside smart contracts and avoid associated logic errors. Tools that enhance data access, like the State History Plugin, provide efficient real-time access to on-chain data while architecture patterns such as Demux allow developers to offload storage and queries to a scalable database like MongoDB.    

Enhanced Smart Contract Functionality

Smart contracts need to be able to refer to one another and update their state data without causing clashes. When one smart contract accesses another smart contract’s state data it does so by referring to a corresponding table. When the accessing smart contract refers to another’s table, it incorporates that table’s structure into its code. If the smart contract whose data is being referred to ever makes a change to that table it will create a conflict. To remove this limitation we are testing the viability of enabling smart contracts to use a read-only layer to which other smart contracts can refer so each can update their data structures without any errors.

EOSIO Specification Repository

The community effort towards building stable, efficient, and scalable EOSIO blockchains remains ongoing and we will continue to provide support and resources. We are continuing to implement various facets of the EOSIO Strategic Vision and during this crucial stage the feedback we receive from researchers, application developers, and other members of the community makes an impact. This effort is spearheaded by the Specification Repository, an EOSIO Labs™ initiative to support greater synergy amongst stakeholders in our growing ecosystem. If interested in getting involved, please review the specifications drafted and provide feedback directly in GitHub as we work through the implementation of these features in EOSIO.

Continue reading about the additional pillars of the Strategic Vision below:

Scalability – More apps, more usersUsers – Greater security, less frictionEnterprise – Greater flexibility, better compliance

Stay Connected

The EOSIO platform is expanding both in scope and technology, driven in part by community input. That feedback leads to improvements in previous software releases and assists with forthcoming innovations. While we continue to invent and integrate new solutions we intend to work hand in hand with the community towards a bright future. If you would like to offer feedback and work more closely with our team to improve EOSIO for developers, you can send our developer relations team an email at developers@block.one.

We are continuously updating our mailing list with future announcements and release notes. Subscribe today on the new EOSIO website.

Important Note: All material is provided subject to this important notice and you must familiarize yourself with its terms. The notice contains important information, limitations, and restrictions relating to our software, publications, trademarks, third-party resources and forward-looking statements. By accessing any of our material, you accept and agree to the terms of the notice.

Create Graphical User Interfaces (GUI) to make the developer experience smoother

Getting started with developing applications for EOSIO requires familiarity with several command line tools. Here we are developing a graphical user interface that developers can use to launch nodeos, utilize the block explorer to inspect blocks and transactions, utilize the GUI based table explorer to inspect data saved in tables etc. This tool could also allow multiple developers to collaborate around one instance of nodeos making for a better development experience.

Advance the Universal Authenticator Library to make it easy for applications to support a myriad of authenticators used to sign transactions

Today wallets and apps provide their own custom mechanisms to authenticate and sign transactions. End users often have a confusing user experience. The Universal Authenticator Library (UAL) allows app developers to integrate with a variety of authenticators (wallets, app explorers, key managers, etc.) by coding to a single, universal API. It also offers developers an optional, but opinionated, UI layer so that application users get a consistent look and feel independent of the authenticator they are using or the site they are on. Once integrated, apps are able to provide their users with an experience akin to social login or single sign on with very little effort. And as more authenticators are developed, supporting them is as simple as adding a few lines of code.

Develop robust EOSIO™ SDKs for Java and Swift to enable the development of crisp native mobile experiences

Today many EOSIO blockchain applications create a web application that is reused as a responsive web app on mobile devices. The EOSIO Java and Swift libraries allow application developers to create native mobile apps with crisp user interfaces and fast response times.

Build smart contract debuggers and additional tools to make contract development easier

Today smart contract development and debugging requires the use of print statements, however, developers are used to using single-step debugging and inline inspection of variables. Here we are exploring building the tools that enable developers to put breakpoints in their smart contract code and step through their functions while exploring state.

Create an EOSIO™ Testnet integrated with the Developer Portal to enable better onboarding for new developers and easier testing cycles for existing application developers

Today developers test their contracts on their local machine. Here we are building a testing infrastructure that is integrated with our developer documentation and can guide the user through the process of testing on a testnet.

Completely revamp existing developer documentation and migrate to a more scalable platform that better supports EOSIO's growing global ecosystem

We are improving tooling to keep documentation in sync with code changes. Further multi-lingual support for core documentation is being explored. With these changes we anticipate making the lives of non-english speaking developers easier.

Explore tooling to provide increased granularity for smart contract data searches

Here we are exploring updating the state history plugin to track state diffs at a finer level than blocks. For example, tracking state diffs at the level of transactions or even actions. Currently, this is only possible on a per-block basis. This enables developers to review the behavior of smart contracts by inspecting the state changes effected by each action. In addition, this enables developers to build tools that aggregate data needed by their application that is outside of the smart contract state without error prone replication of smart contract logic.

Explore functionality to enable one contract to read another's state through a well defined interface

Contracts today access state data from another contract by directly reading the corresponding table of the other contract. This is fragile because it requires the accessor contract to incorporate the table structure into their code at compile time. It limits the provider contract from making necessary changes to table structures and data. Here we are exploring building infrastructure that will enable contracts to provide read-only functions to access their state which other contracts can synchronously call. This enables contract to change how their data is stored while continuing to satisfy the same accessor interface.

Back to Top

Users: Greater security, less friction

Ease of use for end users will ultimately drive adoption for blockchain applications. Going forward we are committed to advancing the state of the art on how authenticators, applications, and the blockchain interact to provide a safe and convenient user experience. Scroll down for an overview and continue reading about Users in our latest article on the EOSIO Strategic Vision.

Article:

EOSIO™ Strategic Vision: Blockchain Users (Part 3 of 4)

Improving the EOSIO™ software suite is an ongoing endeavor and requires a holistic approach given the diverse roles of system-wide participants. The EOSIO Strategic Vision outlines four major points of focus: Scalability, Developers, Users, and Enterprise. This entry in the Strategic Vision series addresses blockchain users and improvements we are making to the EOSIO software suite to support them.

Reducing friction for users of blockchain applications will go a long way towards supporting mass adoption. Users need access to secure, simple, and familiar interfaces in order to confidently use blockchain systems. Towards that effort, strides have been made by our team to develop and propose security standards for interactions between authenticators and applications built on EOSIO based blockchains like advances recently released in the Ricardian Template Toolkit.

The following topics of focus are detailed in the third pillar of the EOSIO Strategic Vision:

A Consistent Front End

Phishing, bait and switch, and other types of attacks use false pretenses to trick users into making otherwise unacceptable agreements, without revealing the true nature of what users are agreeing to. To stifle these malicious efforts our team is continually advancing support for Ricardian Contracts and a toolkit for validating onchain image rendering, text, and attachments, that clearly indicates the terms a user is agreeing to when they sign a transaction. By giving developers templates to put clear terms and conditions alongside transaction signing, it makes it easy for users to know exactly what they are agreeing to. These added transparency measures will provide users security and confidence as they navigate straight-forward interfaces.

Enabling WebAuthn Support

Private key and password management can be worrisome and present major attack vectors if sensitive data is stored on an insecure system. Hardware authenticators are a step towards siloing passwords and/or private keys from harm’s way. WebAuthn is a new World Wide Web Consortium (W3C) standard providing secure authentication support for all leading browsers and platforms pioneered by major technology companies including Yubico, Google, and Microsoft. Adopting the WebAuthn standard because it makes it possible to incorporate hardware devices into existing authenticator architectures. These include the newly released EOSIO supported YubiKey, built-in authenticators such as fingerprint sensors, and other biometric confirmation tools.

Enhanced Resource Management

At present, users are required to own or lease sufficient tokens to cover CPU and NET resources needed to execute transactions. New functionality allows developers to have a greater degree of autonomy over how billing for CPU and Network usage is processed. The proposal for this tool is outlined in the Specification Repository. Once enabled, the EOSIO blockchain will only charge the first authorizer of a transaction for related CPU and Network costs. This allows application developers to set a criteria for specific transactions and cover any associated user costs. By covering customer fees, developers can help to alleviate any adoption barriers related to transaction cost.

Decentralized File System

Today application business logic is encapsulated as smart contracts and associated data is stored on the blockchain. However, application user interfaces are still built and hosted off-chain, representing single points of failure for decentralized applications and a capacity for censorship. We are exploring ways of enabling on-chain storage of the application user interfaces, perhaps in a separate lower cost resource that can enable applications to finally become truly decentralized and therefore effectively censorship resistant as well.

EOSIO Specification Repository

The community effort towards building stable, efficient, and scalable EOSIO blockchains remains ongoing and we will continue to provide support and resources. We are continuing to implement various facets of the EOSIO Strategic Vision and during this crucial stage the feedback we receive from researchers, application developers, and other members of the community makes an impact. This effort is spearheaded by the Specification Repository, an EOSIO Labs™ initiative to support greater synergy amongst stakeholders in our growing ecosystem. If interested in getting involved, please review the specifications drafted and provide feedback directly in GitHub as we work through the implementation of these features in EOSIO.

Continue reading about the additional pillars of the Strategic Vision below:

Scalability – More apps, more usersDevelopers – Better tooling, faster app developmentEnterprise – Greater flexibility, better compliance

Stay Connected

Users are among the most vital participants of the EOSIO blockchain ecosystem, and Block.one is committed to incorporating community suggestions and feedback. User input helps to inform and improve our open source toolkits, ultimately creating a more robust, secure, and engaging experience for everyone. If you would like to offer feedback and work more closely with our team to improve EOSIO for developers, you can send our developer relations team an email at developers@block.one.

Get updates on future announcements and release notes by subscribing to our mailing list today on the new EOSIO website.

. . .

Important Note: All material is provided subject to this important notice and you must familiarize yourself with its terms. The notice contains important information, limitations, and restrictions relating to our software, publications, trademarks, third-party resources and forward-looking statements. By accessing any of our material, you accept and agree to the terms of the notice.

Enhance the Ricardian Template Toolkit, Application Manifests and Assert contract to help applications provide a consistent and secure experience to users of blockchain applications

A critical component of user security is preventing phishing attacks or bait and switch attacks which trick users into agreeing to something that isn’t actually going to happen as a result of their agreement. Here we are developing the ability to present tamper proof rendering of images, text, attachments, etc. that explains the intended effect of the transaction that the user is signing. This can provide a more secure user experience because this acts as a safeguard against malicious applications leveraging well known contracts to trick users into approving undesired actions.

Support WebAuthn and browser-based signing for blockchain applications

Today blockchain users have a fairly involved process for signing transactions. Here we are exploring WebAuthn, a new W3C compliant standard supported by all leading browsers, to enable phishing resistant browser based signature for blockchain transactions. WebAuthn offers users strong authentication enabled by security keys, built-in fingerprint sensors, etc. and can significantly simplify the user experience.

Allow applications to cover the resource costs for their users (e.g. allowing explicit control over who is billed for CPU/NET etc.)

Today users are expected to own or lease enough tokens to pay for the CPU and NET resources needed to execute transactions. This feature changes the CPU and Network usage billing behavior of EOSIO blockchains to only charge the first authorizer of the transaction. This one change enables entrepreneuring application developers to build alternative models for paying the CPU and Network resource costs that a transaction imposes on the blockchain network. For example, an application can be designed to pay the CPU and Network costs of their users but only for transactions by the user that solely interact with the application’s services.

Explore creating decentralized file systems to enable applications to host files accessible by any web browser

A decentralized file storage system could enable applications to publish their user interfaces and any other required data on the blockchain.

Back to Top

Enterprise: Greater flexibility, better compliance

As EOSIO™ blockchain adoption by enterprise level applications continues, we remain committed to delivering protocol upgrades that will enhance the flexibility of consensus protocols and the security, and integrity of the data stored on EOSIO™ blockchains. Scroll down for an overview and continue reading about Enterprise in our latest article on the EOSIO Strategic Vision.

Article:

EOSIO™ Strategic Vision: Enterprise Blockchain (Part 4 of 4)

An evolving marketplace demands new innovations. It means developers must produce robust, secure, reliable software. The EOSIO™ Strategic Vision hones in on four specific developmental areas that make up the foundation of the platform: Scalability, Developers, Users, and Enterprise. In this fourth and final entry of the Strategic Vision series, we will discuss the complex needs of EOSIO Enterprise Blockchain customers and how the EOSIO platform will evolve to meet them.

The following topics of focus are detailed in pillar 4 of the EOSIO Strategic Vision:

High-Performance Consensus Algorithms

Businesses need efficient processing solutions to keep services live, so in order for blockchain technology to meet the needs of enterprise businesses, it’s essential for blockchain software to scale. Consensus is at the core of many of the benefits of blockchain like immutability, validation, and security thus improving consensus solutions to increase speed to finality remains a priority for EOSIO blockchain performance. Our research continues to improve custom-tooled, fault tolerant, and highly-performant consensus algorithms that intermesh to meet enterprise grade needs.

Tools for Regulatory Compliance

In order for blockchain technology adoption to scale on an enterprise level, solutions must meet regulatory requirements across regions. Larger companies that operate internationally must comply with complex regulations and their technology solutions of choice must rise to meet those needs. Inherently, the immutability and transparency of any blockchain lends itself to audit and compliance. The ability to work within an ever evolving regulatory environment is a cornerstone of the flexibility of the EOSIO platform. With that in mind, we continue to explore ways to evolve the ways in which EOSIO can be implemented across both public and private use cases to align with various regulatory needs. This includes research into ways applications can store data on the blockchain that can be selectively removed as regulations require without compromising the integrity of the blockchain data.

Token Creation

To better serve businesses wishing to create their own token, we’re creating simple interfaces that reduce technical barriers. This will make it possible to rapidly issue and manage a token without having to deploy a contract. There are a variety of ways tokens are being implemented beyond financial use cases in businesses, and as the utilities for tokens expand we are dedicated to lowering the technical barriers to developing new token standards on EOSIO to meet enterprise needs. Remember that even though token creation is possible as a technical matter, each token’s compliance with applicable laws and regulations must be assessed.

Enterprise-Grade Security

Security is a pillar upon which EOSIO has always focused and evolved as the software continues to grow. There are many aspects of security, some of which stem from implementing secure data storage practices to security standards like WebAuthn and even improved user experience. Our team is looking at integrating multi-signature authentication and enabling hardware keys for block producers, in addition to bolstering the infrastructure for key storage and permission systems. This will deliver enterprises a means to better protect the accounts by implementing more dynamic security measures.

EOSIO Specification Repository

The community effort towards building stable, efficient, and scalable EOSIO blockchains remains ongoing and we will continue to provide support and resources. We are continuing to implement various facets of the EOSIO Strategic Vision and during this crucial stage the feedback we receive from researchers, application developers, and other members of the community makes an impact. This effort is spearheaded by the Specification Repository, an EOSIO Labs™ initiative to support greater synergy amongst stakeholders in our growing ecosystem. If interested in getting involved, please review the specifications drafted and provide feedback directly in GitHub as we work through the implementation of these features in EOSIO.

Continue reading about the additional pillars of the Strategic Vision below:

Scalability – More apps, more usersDevelopers – Better tooling, faster app developmentUsers – Greater security, less friction

Stay Connected

The EOSIO blockchain platform has been designed from the ground up to scale and meet the needs of enterprise entities. We will continue to iterate beneficial changes as we receive feedback from the participants who make use of our technology and provide us input. If you would like to offer feedback and work more closely with our team to improve EOSIO for developers, you can send our developer relations team an email at developers@block.one.

We continuously update our mailing list with future announcements and release notes. Subscribe today on the new EOSIO website.

. . .

Important Note: All material is provided subject to this important notice and you must familiarize yourself with its terms. The notice contains important information, limitations and restrictions relating to our software, publications, trademarks, third-party resources and forward-looking statements. By accessing any of our material, you accept and agree to the terms of the notice.

Explore high-performance consensus algorithms that can provide faster-finality for enterprise use cases

Time to finality is a critical feature for many applications to ensure that a given block (transaction) will not be forked out. Here we are exploring several high performance consensus algorithms to find the ones with the right characteristics for enterprise needs like fast finality, appropriate fault tolerance characteristics, etc.

Explore how blockchain applications can meet various privacy, copyright, and other regulations (e.g. DMCA, GDPR, etc.) and the needs of enterprise applications

Explore enabling private regions within a blockchain that is accessible only to a subset of blockchain participants to satisfy regulatory needs. In addition we are exploring enabling applications to record data on the blockchain in a manner that allows it to be selectively removed without compromising the integrity of the blockchain e.g. to meet the needs of DMCA.

Explore how businesses can leverage blockchain to create their own tokens without having to deploy a token contract

Enable simple interfaces to reduce the technical knowledge required for a business to quickly deploy and manage their own token

Continue to address the security needs of enterprises including expanding support for hardware keys, contract based sub-account structures to facilitate account recovery, etc.

Today blockchain operators can only use one key at a time to sign blocks. Here we explore options to enable block producers to use multi-sig and hardware keys to better secure their network.  We are also exploring key and permission infrastructure to enable enterprises to better protect their users’ accounts from being compromised.

Newsletter

Sign up for new updates from Block.one here: