2. 2
Software engineer, distributed systems, data
processing, security, Java
Followed Ethereum Classic blockchain when
Ethereum ETH made the fork in 2016, which
violated base principles of public blockchain.
Founder of ETCDEV, a leading Ethereum Classic
development company with a strong focus on
decentralized computing providing long term
support for the ETC blockchain.
Igor Artamonov
6. 6
Mainnet is Bottleneck
• Top 5 DApps on ETH use more than 40% of the network
• Currently CryptoKitties dapp uses almost 2% of the mainnet (CryptoKitties is
not in the top 5)
• We can have no more than 50 simultaneously used DApps on mainnet.
• DApps can’t rely on it
7. 7
Scalability is Holy Grail
Scalability is biggest problem of blockchain and every blockchain is researching
now how to solve that.
11. 11
Can’t increase block
• Current Gas Limit (or «block size») is already big in Ethereum, it requires a
powerful and expensive hardware to keep a full node
• Most of the people don’t have powerful enough system (laptop/pc) to have full
node and rely on centralised providers (MyEthereWallet, GasTracker, etc)
• Increasing Gas Limit will lead to further consolidation and centralisation
19. 19
Sidechains
Sidechains, or Layer 2, is one of the solutions. Layer 1 at this case is a mainnet. It’s
an old idea, discussed on Bitcoin forums, and resulted in many projects.
Layer 1 and Layer 2, first is slow and expensive, second is fast and cheap, but
can’t be secure w/o Layer 1.
Sidechain is a way or processing set of transactions on a separate network, with
very cheap execution, the use mainnet to finalise end result of it
20. 20
• Mainnet is a shared state between all
Dapps
• Shared state is a known problem for
parallel computing, and there’re few basic
rules. One of them is called Amdahl Law,
and known since 60x
• Sidechains is a solution that decreases
amount of operations on that shared state
(mainnet)
Amdahl Law
21. 21
Costs and security
• A sidechains are cheap because it’s not PoW
• It can be based on a trusted and centralised chains, it is acceptable for short
time execution of a series of transactions
• Mainnet finalizes resulting state in a secure fashion
27. 27
Programming Interfaces
• It’s not a new blockchain or change to a base layer
• though it may require some improvements in p2p, signatures and
other apis
• It’s a list of standardised interfaces, APIs and ABIs to have a commons
language for all Orbita participants
• Same as ERC-20 is an interface to a token
• 3rd party developers can have own implementations more suitable for their
needs
28. 28
Documentation & Specification
To make such interfaces usable you need to document them, make a clear
specifications and development manual about how to use them to build own
Dapp on Orbita
29. 29
Set of base tools
• basic components and implementation
• tools to launch a Dapp to Orbita
• tools to connect to other orbitas and Dapps
31. 31
Security
• PoW is secure for mainnet
• PoW is too expensive for orbitas
• PoA/PoS works for an orbita
• Cheap for execution
• Can be secure enough when applies transaction finality from more
secure parent chain
35. 35
Checkpoints
Checkpoint is how you get transaction state finalisation on an orbita. It’s a
synchronisation point, a commit of a state to parent orbita which is used as a
validation component of current orbita. Which means that if you want to revert a
state in an orbita, you’ll need to revert state associated with checkpoint on both,
parent and child. Underlying orbit inherits security from top orbita.
36. 36
Oracles
For a read access across it’s planned to have oracles based proxy contracts, i.e.
when an actual value of a contract execution can be requested on once chain,
with a small bounty, and an automatic oracle with access to both orbitas,
provides most actual value.
37. 37
Atomic Swaps
For write access between orbitas it’s much more complicated (i.e. more
expensive to execute). Orbita will rely on Atomic Swap as a general pattern for
such kind of operations. There’re few experimental operations, such as PeaceRely
bridge, and ETCDEV is planing to adopt such logic for cross-orbita write
operations.
38. 38
Stack Integration
Another critical part of the project is to make it all usable by end users, which
means that all operations and dapp usage should be native for a user, and all
wallets and other user facing tools seamlessly integrate orbita-based services.
39. 39
Other elements
• Standartized naming and navigation between orbitas
• Orbita service discovery
• Different blockchain configuration for an orbita
41. 41
Current State
• We got a prototype of Geth working with checkpoints on another network
(Sidekick project on our github)
• We have support of Clique based PoA networks in Geth, support Rinkeby
42. 42
Next steps to proof of concept
• More user friendly way of running Geth with checkpoints
• Cross Orbita swaps
43. 43
Next steps to proof of concept
• More user friendly way of running Geth with checkpoints
• Cross Orbita swaps
44. 44
Pilot Project with OpenStack
• We consider OpenStack Passport project as a first public practical
implementation
• OpenStack is a free and open-source software platform for cloud computing
• It supported and used by many organisations, such as Ubuntu, Oracle, EMC,
VMWare, Red Hat, IBM, Huawei, Cisco, Rackspace, HP, SUSE and others
• OpenStack is looking for a decentralized solution to user authentication,
authorisation and resource sharing between different cloud providers
45. 45
Steps after
• Oracles for reading cross-orbita
• PoS orbita
• Integration into Emerald
• Snapshot sync for an orbita