POA based Side-Chain Architecture
2018.07
presented by Lambda256
INDEX
About Lambda256
Current Issue & Approaches
Reference Model
PoA Consensus
Inter-chain Architecture
Lambda Chain
Copyrightⓒ 2018. Lambda256. All rights reserved
About Lambda256 (Dunamu Blockchain Lab)01.
Research and development of BaaS 2.0 that can solve various
problems of existing block chain platform and provide total
solution for commercialization of block chain
Build the global BaaS 2.0
platform
Developing blockchain tech
company & cultivating it globally
Support economy model for
crypto currency
Copyrightⓒ 2018. Lambda256. All rights reserved
Current Issue & Approaches
 Requirements of DApp
• Support for millions of users
• High performance
 Sequential execution
 Parallel execution
• Great user experience
 Free for use (No Gas payment)
 Easy to access and use
• Easy Upgradable
 But,
• High transaction cost
• Low performance (10~20 TPS)
• Long block confirmation time
02.
Copyrightⓒ 2018. Lambda256. All rights reserved
Approaches
 How to solve it
1. Wait until Ethereum solves the scalability problem
• PoS (Casper), Sharding , Plasma, Raiden
2. Believe another blockchain platform’s whitepaper
3. Create a new blockchain platform from scratch
4. Develop new side chain based blockchain platform
5. …
Copyrightⓒ 2018. Lambda256. All rights reserved
What approach in Lambda256
Lambda256 developed the PoA based side-chain, main-chain, and
BaaS platform.
Today ,
It will be covered how to build PoA based high performance side-
chain and how to connect it to Ethereum based main-chain for high
trust and reliability.
Copyrightⓒ 2018. Lambda256. All rights reserved
Reference Model
 Consensus Algorithm
 POA (Proof of Authority)
03.
...
A
B
C
D
A
B
C
D
A
B
C
No. 2320
No. 2321
No. 2322
No. 2323
No. 2324
No. 2325
No. 2326
Copyrightⓒ 2018. Lambda256. All rights reserved
Reference Model
 Inter-Chain Architecture
 Multi-Sig Bridge
Copyrightⓒ 2018. Lambda256. All rights reserved
PoA Consensus
 What is POA (Proof of Authority)
 Utilizing the authority of miner for block consensus
• Every proposed block is signed with miner’s private key.
• Every propagated block is verified using signature. (If the signer is not known, given block is ignored)
 Authority governance
• The way to manage correct signer list in network.
• On-chain vote (add/remove signer)
• Vote threshold (i.e., 50%)
• Regulations and penalties useful to sustain the network
04.
Copyrightⓒ 2018. Lambda256. All rights reserved
Clique
 POA implementation of Go-Ethereum
 Rinkeby PoA testnet
https://www.rinkeby.io
Copyrightⓒ 2018. Lambda256. All rights reserved
Clique Consensus Engine
...
What happens if the node in turn
becomes unavailable?
No: 738
DF: 2
TD: 1476
No: 739
DF: 2
TD: 1478
No: 740
DF: 2
TD: 1480
No: 741
DF: 2
TD: 1482
No: 742
DF: 2
TD: 1484
genesis
network failure!
I was
too late..
No: 743
DF: 1
TD: 1485
State
DB
Clique
vote-
snapshot
No: 743
DF: 1
TD: 1485
It was
my turn..
It was
lucky!
On-Chain Vote
Signer[0]
Signer[1]
Signer[2]
Authority Governance
Newcomer
738 % 3 = 0
739 % 3 = 1
740 % 3 = 2
Block
Number % Total
Signers = Target
Index
Copyrightⓒ 2018. Lambda256. All rights reserved
Signers in POA
 Signer is an entity which has the authority to propose and verify the block.
 Signer owned node can participate to POA network as a miner and it is called as
authority node.
 Block proposal is only possible by authority node. (That is, any blocks proposed by
non-authority node are ignored.)
 Addresses of initial signers are written to Genesis block.
 Afterward, signer list is maintained in the memory and disk by Clique Engine of each
authority node.
 Signer list can be changed by the real time on-chain vote.
Copyrightⓒ 2018. Lambda256. All rights reserved
Example: Genesis.json
Copyrightⓒ 2018. Lambda256. All rights reserved
Block Proposal
 In Clique, is block proposal based on contention between authority nodes?
• Theoretically, Yes.
• But, practically in normal condition it doesn’t. (It runs in the turn based mode, which gives block
generation opportunities to every authority nodes evenly)
 In Clique, block proposer is determined by modular operation with block number.
(i.e., 190,000th % 5 = 0th )
• But, any authority node who is not in its turn can make block and propose block to
network. (So, it is possible that many side blocks are proposed and propagated to
network)
(*) To charge more penalty to authority node who is not in its turn,
it waits for more wiggle time in addition to the delta time which is the remaining time until the block period.
 select additional wait time randomly from following time window. [0, ((N. / 2) + 1) * wiggleTime(500ms)]
Copyrightⓒ 2018. Lambda256. All rights reserved
Block Consensus (Sealing / Verify-Seal)
 Sealing
 Adding signer’s signature into “Extra” field.
 Difficulty “2” is assigned to header of block proposed by authority node in its turn.
 For authority node not in its turn, Difficulty “1” is assigned.
 Verify Seal
 Verify signer’s signature in “Extra” field, check “Difficulty” field, and execute “Spam
Protection check”.
Copyrightⓒ 2018. Lambda256. All rights reserved
Signature for POA
 POA is totally based on the signature of block proposer.
• Every block header includes signature of authority node.  Blue box in figure
(1) 65 bytes-length (compact ECDSA)
• Digest of signature is header’s hash value of 32 bytes-length
(2) not including extra-seal area in Extra field
extra vanity
(32 bytes)
extra seal
(65 bytes)
extra vanity
(32 bytes)
signer list
(variable-length: 20 bytes * N)
extra seal
(65 bytes)
Extra field
(Normal block)
Extra field
(Checkpoint block)
Copyrightⓒ 2018. Lambda256. All rights reserved
Block (Normal Block)
 Non 30,000th block
 It can include Cast-Vote information. (i.e., `Coinbase`, `Nonce`)
 Signer list is maintained in “on-chain vote consensus snapshot” by applying cast-
vote.
 Snapshot includes following information:
① List of signers who has been known to have the authority.
② List of signers who has mined block recently. (N / 2 + 1)
③ History of cast-vote for each signers.
④ Tally of vote.
extra vanity
(32 bytes)
extra seal
(65 bytes)
Copyrightⓒ 2018. Lambda256. All rights reserved
Block (Checkpoint Block)
 30,000th block.
 It does not include cast-vote information.
 Checkpoint block is a special block used to terminate current epoch and start a new
epoch by verifying and resetting any information like follows.
① Verifies entire signer list in “Extra” field.  Yellow box in figure
② Reset “history of cast-vote for each signers” and “tally of vote”.
extra vanity
(32 bytes)
signer list
(variable-length: 20 bytes * N)
extra seal
(65 bytes)
Copyrightⓒ 2018. Lambda256. All rights reserved
On-Chain Vote (Proposal)
 In Clique, following JSON RPC operations are provided to support on-chain vote.
(1) Registering Cast-Vote
(2) Deregistering Cast-Vote
(3) Listing registered Cast-Votes
 Once Cast-Vote proposal is registered, it is included in normal block.
• “Coinbase” field: Miner address which will be added/dropped
• “Nonce” field: Symbol for add/drop. (Add: 0xffff… / Drop: 0x0000…)
Copyrightⓒ 2018. Lambda256. All rights reserved
On-Chain Vote (Consensus)
• Miner received new block from network can determine whether received block
contains Cast-Vote information or not by checking `Coinbase` and `Nonce` field.
• The propagated vote proposal is reflected to the in-memory signer list as soon as
each receiving node counts the votes in real time and tally of vote is reaches the
majority.
Copyrightⓒ 2018. Lambda256. All rights reserved
Example: (Block including Cast-Vote)
Copyrightⓒ 2018. Lambda256. All rights reserved
Block Spam Protection
 Definition:
• This is a function that prevents further block generation and propagation until "(N / 2) + 1" blocks
have elapsed since the last block was generated.
 Purpose:
• To prevent the nodes in the list from continuously generating and propagating blocks.
Copyrightⓒ 2018. Lambda256. All rights reserved
vs ETHASH (PoW)
 No block reward
 No uncle calculation & compensation
 No hashimoto, No DAG, No mixed-digest
Copyrightⓒ 2018. Lambda256. All rights reserved
Possibility of POA freezing
 Symptom:
 If more than half of nodes are in failure state, all remaining nodes can not generate additional block
and become wait state. As a result, whole POA network is stopped.
 Cause:
 "Block Spam Protection" function which suppresses the block generation for a certain period. (i.e.,
until (N / 2) + 1 additional block is generated)
 What would happen if miner’s private key is lost ?
• Block proposal and consensus of the POA chain may be stopped.
(It is possible when such an account loss occurs on multiple nodes)
• If an unrecoverable H / W failure occurs during POA chain operation or operator accidentally
deletes a node instance, the keystore containing the signer's private key information is also lost.
Copyrightⓒ 2018. Lambda256. All rights reserved
Experiment Environments
 S/W requirements
 OS: Ubuntu 16.04 LTS
 Go-Lang: 1.10.3
 Go-Ethereum: v1.8.11 (stable)
 Web3.js: v1.0 (websocket provider)
 Node.js: v8.11.3
 H/W requirements
 AWS EC2
 Miner-node: 12*EA (c5.4xlarge)
 Tx-node: 12*EA (c5.4xlarge)
 Go-Ethereum configurations
 Block time: 1sec
 Block sync mode: fullsync
 Block gas limit: 0x6422C40
 Max transactions per block: 2,000 (src
fixed)
Copyrightⓒ 2018. Lambda256. All rights reserved
Experiment Result
Scenario Configurations Result
Threshold Performance Test
Repeated ether transfer between users.
Execution time: 30min
VU: 12 EA
Think time: 2ms
TPS: 2,000 TPS
Aging Test
Repeated ether transfer between users for 24
hours.
Execution time: 24h
VU: 12 EA
Think time: 5ms
TPS: 1,500+ TPS
Failover/Failback Test
Disabling randomly selected nodes up to “2/N +
1”. Then, enable nodes again.
Execution time: 10min
VU: 12 EA
Think time: 10ms
OK
Copyrightⓒ 2018. Lambda256. All rights reserved
Experiment Result
12 miners, 12 agents, 2ms
Copyrightⓒ 2018. Lambda256. All rights reserved
Inter-Chain Architecture (Multi-Sig Bridge)
 Bridge is an entity which connects two chains and relays assets or values between
them.
 Generally, bridge assumes that two chains are running same block chain protocol.
(i.e., Ethereum based chain  bridge  Ethereum based chain)
 If not, translator needs to be adapted.
 In Ethereum based chains, bridge can be implemented easily using contract.
 Staking/Redeem  SimpleToken
 Deposit/Withdraw  Parity Bridge
 Above reference models designed DApp to deploy two contracts in both chains.
05.
Copyrightⓒ 2018. Lambda256. All rights reserved
Bridge Architecture Example: Parity-Bridge
Copyrightⓒ 2018. Lambda256. All rights reserved
Lambda Chain
 What is Lambda Chain ?
Cloud VPC based security and performance assured
chain solution for BaaS platform.
 What does the Lambda Chain
provide ?
Provisioned high performance
High availability & scalability
Fast block confirmation time
Easy to use
(sign-up, sign-in, and Tx with MSISDN/PIN)
No-Gas fee
Easy integration of token economy for DApp
06.
UDC 2018, September
Q&A
Thanks

More Related Content

PPTX
Crypto currency
PPT
DNA fingerprinting
PDF
DEFCON28_2020_EthereumSecurity_PreventingDDoS_VDF
PPTX
Consensus Algorithms - Nakov @ jProfessionals - Jan 2018
PPTX
different consensus protocols in blockchian.pptx
PDF
Consensus Algorithms: An Introduction & Analysis
PDF
Introduction to Blockchain Governance Models
PDF
Towards a low carbon proof-of-work blockchain
Crypto currency
DNA fingerprinting
DEFCON28_2020_EthereumSecurity_PreventingDDoS_VDF
Consensus Algorithms - Nakov @ jProfessionals - Jan 2018
different consensus protocols in blockchian.pptx
Consensus Algorithms: An Introduction & Analysis
Introduction to Blockchain Governance Models
Towards a low carbon proof-of-work blockchain

Similar to POA based Side-Chain Architecture (20)

PPTX
BlockchainConf.tech - Build a private blockchain workshop
PDF
This pdf contains consensus mechanism its types and its need.
PPTX
Understanding Consensus Mechanisms in Blockchain: Proof of Work, Proof of Sta...
PPTX
unit3consesence.pptx
PDF
Understanding Proof of Work (PoW) and Proof of Stake (PoS) Algorithms
PPTX
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)
PDF
Hyperchains
PDF
Ethcon seoul 2019 presentation final
PDF
Can we safely adapt the construction of permissionless blockchain to user dem...
PPTX
BlockChain_Chap3_RP _Consensus.pptx
PPTX
Encode x Tezos: Intro to Blockchain
PDF
Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
PPTX
Blockchain
PPTX
20190606 blockchain101
PPTX
S2Blockchain-2-BC-DLT-040221-rfs blockchain.pptx
PDF
Modern multi-proposer consensus implementations
PDF
2019 blockchain economy
PDF
Etherium Solidity Programming fundamentals
PDF
Ergo platform overview
PDF
Introduction to Blockchain Development
BlockchainConf.tech - Build a private blockchain workshop
This pdf contains consensus mechanism its types and its need.
Understanding Consensus Mechanisms in Blockchain: Proof of Work, Proof of Sta...
unit3consesence.pptx
Understanding Proof of Work (PoW) and Proof of Stake (PoS) Algorithms
Consensus Algorithms - Nakov at CryptoBlockCon - Las Vegas (2018)
Hyperchains
Ethcon seoul 2019 presentation final
Can we safely adapt the construction of permissionless blockchain to user dem...
BlockChain_Chap3_RP _Consensus.pptx
Encode x Tezos: Intro to Blockchain
Enhancing Ethereum PoA Clique Network with DAG-based BFT Consensus
Blockchain
20190606 blockchain101
S2Blockchain-2-BC-DLT-040221-rfs blockchain.pptx
Modern multi-proposer consensus implementations
2019 blockchain economy
Etherium Solidity Programming fundamentals
Ergo platform overview
Introduction to Blockchain Development
Ad

More from Luniverse Dunamu (13)

PDF
2nd Luniverse Partners Day - 보다 안전한 트랜젝션을 위한 KYC/AML/CTF 솔루션 (SOOHO)
PDF
2nd Luniverse Partners Day - 루트원 비지니스 플랫폼 (당신이 모르는 비트베리 이야기)
PDF
2nd Luniverse Partners Day - Luniverse Partnership
PPTX
Luniverse_Welcome_Speech
PDF
Luniverse Partners Day - Smart Contract Assessment(Sooho)
PDF
Luniverse Partners Day - Jay
PDF
Luniverse Partners Day - Game Case Study & Partnership (Evan)
PDF
Luniverse Partners Day - Allbit(Ozys)
PDF
Luniverse Partners Day - Hyperledger Fabric(Keyinside)
PDF
Luniverse Partners Day - Bitberry(Rootone)
PDF
Introduction of Luniverse
PDF
Token platform based on sidechain
PDF
Introduction of Luniverse
2nd Luniverse Partners Day - 보다 안전한 트랜젝션을 위한 KYC/AML/CTF 솔루션 (SOOHO)
2nd Luniverse Partners Day - 루트원 비지니스 플랫폼 (당신이 모르는 비트베리 이야기)
2nd Luniverse Partners Day - Luniverse Partnership
Luniverse_Welcome_Speech
Luniverse Partners Day - Smart Contract Assessment(Sooho)
Luniverse Partners Day - Jay
Luniverse Partners Day - Game Case Study & Partnership (Evan)
Luniverse Partners Day - Allbit(Ozys)
Luniverse Partners Day - Hyperledger Fabric(Keyinside)
Luniverse Partners Day - Bitberry(Rootone)
Introduction of Luniverse
Token platform based on sidechain
Introduction of Luniverse
Ad

Recently uploaded (20)

PDF
NewMind AI Weekly Chronicles – August ’25 Week IV
PDF
The AI Revolution in Customer Service - 2025
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PPTX
Presentation - Principles of Instructional Design.pptx
PDF
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
PPTX
Internet of Everything -Basic concepts details
PPTX
MuleSoft-Compete-Deck for midddleware integrations
PDF
substrate PowerPoint Presentation basic one
PPTX
SGT Report The Beast Plan and Cyberphysical Systems of Control
PPTX
Module 1 Introduction to Web Programming .pptx
PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
Human Computer Interaction Miterm Lesson
PDF
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
PDF
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
PDF
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
PDF
CEH Module 2 Footprinting CEH V13, concepts
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
NewMind AI Weekly Chronicles – August ’25 Week IV
The AI Revolution in Customer Service - 2025
Co-training pseudo-labeling for text classification with support vector machi...
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
Presentation - Principles of Instructional Design.pptx
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
Internet of Everything -Basic concepts details
MuleSoft-Compete-Deck for midddleware integrations
substrate PowerPoint Presentation basic one
SGT Report The Beast Plan and Cyberphysical Systems of Control
Module 1 Introduction to Web Programming .pptx
Data Virtualization in Action: Scaling APIs and Apps with FME
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Human Computer Interaction Miterm Lesson
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
CEH Module 2 Footprinting CEH V13, concepts
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf

POA based Side-Chain Architecture

  • 1. POA based Side-Chain Architecture 2018.07 presented by Lambda256
  • 2. INDEX About Lambda256 Current Issue & Approaches Reference Model PoA Consensus Inter-chain Architecture Lambda Chain
  • 3. Copyrightⓒ 2018. Lambda256. All rights reserved About Lambda256 (Dunamu Blockchain Lab)01. Research and development of BaaS 2.0 that can solve various problems of existing block chain platform and provide total solution for commercialization of block chain Build the global BaaS 2.0 platform Developing blockchain tech company & cultivating it globally Support economy model for crypto currency
  • 4. Copyrightⓒ 2018. Lambda256. All rights reserved Current Issue & Approaches  Requirements of DApp • Support for millions of users • High performance  Sequential execution  Parallel execution • Great user experience  Free for use (No Gas payment)  Easy to access and use • Easy Upgradable  But, • High transaction cost • Low performance (10~20 TPS) • Long block confirmation time 02.
  • 5. Copyrightⓒ 2018. Lambda256. All rights reserved Approaches  How to solve it 1. Wait until Ethereum solves the scalability problem • PoS (Casper), Sharding , Plasma, Raiden 2. Believe another blockchain platform’s whitepaper 3. Create a new blockchain platform from scratch 4. Develop new side chain based blockchain platform 5. …
  • 6. Copyrightⓒ 2018. Lambda256. All rights reserved What approach in Lambda256 Lambda256 developed the PoA based side-chain, main-chain, and BaaS platform. Today , It will be covered how to build PoA based high performance side- chain and how to connect it to Ethereum based main-chain for high trust and reliability.
  • 7. Copyrightⓒ 2018. Lambda256. All rights reserved Reference Model  Consensus Algorithm  POA (Proof of Authority) 03. ... A B C D A B C D A B C No. 2320 No. 2321 No. 2322 No. 2323 No. 2324 No. 2325 No. 2326
  • 8. Copyrightⓒ 2018. Lambda256. All rights reserved Reference Model  Inter-Chain Architecture  Multi-Sig Bridge
  • 9. Copyrightⓒ 2018. Lambda256. All rights reserved PoA Consensus  What is POA (Proof of Authority)  Utilizing the authority of miner for block consensus • Every proposed block is signed with miner’s private key. • Every propagated block is verified using signature. (If the signer is not known, given block is ignored)  Authority governance • The way to manage correct signer list in network. • On-chain vote (add/remove signer) • Vote threshold (i.e., 50%) • Regulations and penalties useful to sustain the network 04.
  • 10. Copyrightⓒ 2018. Lambda256. All rights reserved Clique  POA implementation of Go-Ethereum  Rinkeby PoA testnet https://www.rinkeby.io
  • 11. Copyrightⓒ 2018. Lambda256. All rights reserved Clique Consensus Engine ... What happens if the node in turn becomes unavailable? No: 738 DF: 2 TD: 1476 No: 739 DF: 2 TD: 1478 No: 740 DF: 2 TD: 1480 No: 741 DF: 2 TD: 1482 No: 742 DF: 2 TD: 1484 genesis network failure! I was too late.. No: 743 DF: 1 TD: 1485 State DB Clique vote- snapshot No: 743 DF: 1 TD: 1485 It was my turn.. It was lucky! On-Chain Vote Signer[0] Signer[1] Signer[2] Authority Governance Newcomer 738 % 3 = 0 739 % 3 = 1 740 % 3 = 2 Block Number % Total Signers = Target Index
  • 12. Copyrightⓒ 2018. Lambda256. All rights reserved Signers in POA  Signer is an entity which has the authority to propose and verify the block.  Signer owned node can participate to POA network as a miner and it is called as authority node.  Block proposal is only possible by authority node. (That is, any blocks proposed by non-authority node are ignored.)  Addresses of initial signers are written to Genesis block.  Afterward, signer list is maintained in the memory and disk by Clique Engine of each authority node.  Signer list can be changed by the real time on-chain vote.
  • 13. Copyrightⓒ 2018. Lambda256. All rights reserved Example: Genesis.json
  • 14. Copyrightⓒ 2018. Lambda256. All rights reserved Block Proposal  In Clique, is block proposal based on contention between authority nodes? • Theoretically, Yes. • But, practically in normal condition it doesn’t. (It runs in the turn based mode, which gives block generation opportunities to every authority nodes evenly)  In Clique, block proposer is determined by modular operation with block number. (i.e., 190,000th % 5 = 0th ) • But, any authority node who is not in its turn can make block and propose block to network. (So, it is possible that many side blocks are proposed and propagated to network) (*) To charge more penalty to authority node who is not in its turn, it waits for more wiggle time in addition to the delta time which is the remaining time until the block period.  select additional wait time randomly from following time window. [0, ((N. / 2) + 1) * wiggleTime(500ms)]
  • 15. Copyrightⓒ 2018. Lambda256. All rights reserved Block Consensus (Sealing / Verify-Seal)  Sealing  Adding signer’s signature into “Extra” field.  Difficulty “2” is assigned to header of block proposed by authority node in its turn.  For authority node not in its turn, Difficulty “1” is assigned.  Verify Seal  Verify signer’s signature in “Extra” field, check “Difficulty” field, and execute “Spam Protection check”.
  • 16. Copyrightⓒ 2018. Lambda256. All rights reserved Signature for POA  POA is totally based on the signature of block proposer. • Every block header includes signature of authority node.  Blue box in figure (1) 65 bytes-length (compact ECDSA) • Digest of signature is header’s hash value of 32 bytes-length (2) not including extra-seal area in Extra field extra vanity (32 bytes) extra seal (65 bytes) extra vanity (32 bytes) signer list (variable-length: 20 bytes * N) extra seal (65 bytes) Extra field (Normal block) Extra field (Checkpoint block)
  • 17. Copyrightⓒ 2018. Lambda256. All rights reserved Block (Normal Block)  Non 30,000th block  It can include Cast-Vote information. (i.e., `Coinbase`, `Nonce`)  Signer list is maintained in “on-chain vote consensus snapshot” by applying cast- vote.  Snapshot includes following information: ① List of signers who has been known to have the authority. ② List of signers who has mined block recently. (N / 2 + 1) ③ History of cast-vote for each signers. ④ Tally of vote. extra vanity (32 bytes) extra seal (65 bytes)
  • 18. Copyrightⓒ 2018. Lambda256. All rights reserved Block (Checkpoint Block)  30,000th block.  It does not include cast-vote information.  Checkpoint block is a special block used to terminate current epoch and start a new epoch by verifying and resetting any information like follows. ① Verifies entire signer list in “Extra” field.  Yellow box in figure ② Reset “history of cast-vote for each signers” and “tally of vote”. extra vanity (32 bytes) signer list (variable-length: 20 bytes * N) extra seal (65 bytes)
  • 19. Copyrightⓒ 2018. Lambda256. All rights reserved On-Chain Vote (Proposal)  In Clique, following JSON RPC operations are provided to support on-chain vote. (1) Registering Cast-Vote (2) Deregistering Cast-Vote (3) Listing registered Cast-Votes  Once Cast-Vote proposal is registered, it is included in normal block. • “Coinbase” field: Miner address which will be added/dropped • “Nonce” field: Symbol for add/drop. (Add: 0xffff… / Drop: 0x0000…)
  • 20. Copyrightⓒ 2018. Lambda256. All rights reserved On-Chain Vote (Consensus) • Miner received new block from network can determine whether received block contains Cast-Vote information or not by checking `Coinbase` and `Nonce` field. • The propagated vote proposal is reflected to the in-memory signer list as soon as each receiving node counts the votes in real time and tally of vote is reaches the majority.
  • 21. Copyrightⓒ 2018. Lambda256. All rights reserved Example: (Block including Cast-Vote)
  • 22. Copyrightⓒ 2018. Lambda256. All rights reserved Block Spam Protection  Definition: • This is a function that prevents further block generation and propagation until "(N / 2) + 1" blocks have elapsed since the last block was generated.  Purpose: • To prevent the nodes in the list from continuously generating and propagating blocks.
  • 23. Copyrightⓒ 2018. Lambda256. All rights reserved vs ETHASH (PoW)  No block reward  No uncle calculation & compensation  No hashimoto, No DAG, No mixed-digest
  • 24. Copyrightⓒ 2018. Lambda256. All rights reserved Possibility of POA freezing  Symptom:  If more than half of nodes are in failure state, all remaining nodes can not generate additional block and become wait state. As a result, whole POA network is stopped.  Cause:  "Block Spam Protection" function which suppresses the block generation for a certain period. (i.e., until (N / 2) + 1 additional block is generated)  What would happen if miner’s private key is lost ? • Block proposal and consensus of the POA chain may be stopped. (It is possible when such an account loss occurs on multiple nodes) • If an unrecoverable H / W failure occurs during POA chain operation or operator accidentally deletes a node instance, the keystore containing the signer's private key information is also lost.
  • 25. Copyrightⓒ 2018. Lambda256. All rights reserved Experiment Environments  S/W requirements  OS: Ubuntu 16.04 LTS  Go-Lang: 1.10.3  Go-Ethereum: v1.8.11 (stable)  Web3.js: v1.0 (websocket provider)  Node.js: v8.11.3  H/W requirements  AWS EC2  Miner-node: 12*EA (c5.4xlarge)  Tx-node: 12*EA (c5.4xlarge)  Go-Ethereum configurations  Block time: 1sec  Block sync mode: fullsync  Block gas limit: 0x6422C40  Max transactions per block: 2,000 (src fixed)
  • 26. Copyrightⓒ 2018. Lambda256. All rights reserved Experiment Result Scenario Configurations Result Threshold Performance Test Repeated ether transfer between users. Execution time: 30min VU: 12 EA Think time: 2ms TPS: 2,000 TPS Aging Test Repeated ether transfer between users for 24 hours. Execution time: 24h VU: 12 EA Think time: 5ms TPS: 1,500+ TPS Failover/Failback Test Disabling randomly selected nodes up to “2/N + 1”. Then, enable nodes again. Execution time: 10min VU: 12 EA Think time: 10ms OK
  • 27. Copyrightⓒ 2018. Lambda256. All rights reserved Experiment Result 12 miners, 12 agents, 2ms
  • 28. Copyrightⓒ 2018. Lambda256. All rights reserved Inter-Chain Architecture (Multi-Sig Bridge)  Bridge is an entity which connects two chains and relays assets or values between them.  Generally, bridge assumes that two chains are running same block chain protocol. (i.e., Ethereum based chain  bridge  Ethereum based chain)  If not, translator needs to be adapted.  In Ethereum based chains, bridge can be implemented easily using contract.  Staking/Redeem  SimpleToken  Deposit/Withdraw  Parity Bridge  Above reference models designed DApp to deploy two contracts in both chains. 05.
  • 29. Copyrightⓒ 2018. Lambda256. All rights reserved Bridge Architecture Example: Parity-Bridge
  • 30. Copyrightⓒ 2018. Lambda256. All rights reserved Lambda Chain  What is Lambda Chain ? Cloud VPC based security and performance assured chain solution for BaaS platform.  What does the Lambda Chain provide ? Provisioned high performance High availability & scalability Fast block confirmation time Easy to use (sign-up, sign-in, and Tx with MSISDN/PIN) No-Gas fee Easy integration of token economy for DApp 06. UDC 2018, September
  • 31. Q&A