58
Identity problem in the sharding blockchain (Feat. Attacking Zilliqa) Geunwoo Kim

Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

  • Upload
    others

  • View
    32

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Identity problem in the sharding blockchain

(Feat. Attacking Zilliqa)

Geunwoo Kim

Page 2: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Intro

● Who am I?

● Why you here?

● What I present?

2

Page 3: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Who am I?

• My name is Geunwoo Kim

• Born in Gyeong-ju

• Man

• Enjoy playing soccer but cannot play anymore

• Get military Exemption

• Winner(?)

• Food enjoyer

• …

• POSTECH CSE 16

• PLUS 16 captain

• Student returning to school after taking time off

• Kodebox software engineer (working from home)

• The man who wants to get good grades…(help me)

3

Page 4: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Why you here?

For eating some snack?

Just chilling out?

Enjoy waste of time?

Fan of me? (Great!)

4

Page 5: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Why you here?

For your convenience,

1. Get a brief sketch of the blockchain and sharding concept

2. What kind of problem which derives this attack vector

3. Overall insight about the blockchain security research

5

Page 6: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

What I present?

One of my research topics I did at NUS computing

1. How to measure Bitcoin topology

2. Bitcoin network layer vulnerability analysis

3. Sharding blockchain network layer vulnerability analysis

6

Page 7: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

What I present?

I got a reward from the bug bounty program! Honey!

7

Page 8: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Index

1. Introduce Blockchain

2. Introduce sharding concept

3. The road to the sharding

4. Attacking recent model

5. The problem

8

Page 9: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Background

● Blockchain

● Sharding

● The road to the sharding

9

Page 10: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Blockchain

10

Page 11: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Why sharding?

Two metrics directly related to blockchain scalability

1. transaction throughput (the maximum rate at which the blockchain can process

transactions)

2. latency (time to confirm that a transaction has been included in the blockchain)

Reparametrization of Bitcoin’s block size and inter-block interval can improve

performance to a limited extent

Significant improvement in performance requires fundamental redesign of the blockchain

paradigm.

11

Page 12: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

Blockchain has two key functional components

1. Transaction validation(execution)

2. Extending the blockchain: only leader can append block

12

2

1

Page 13: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

Initial model

13

Page 14: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

First approach: multiple blocks per leader

● Bitcoin NG (13th USENIX NSDI)

14

Page 15: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

● Bitcoin NG decouples leader election from transaction serialization.

● Bitcoin-NG divides time into epochs, and a leader can unilaterally append multiple

transactions to the blockchain for the duration of its epoch

● There are two kind of blocks in Bitcoin-NG: keyblocks and microblocks. Keyblocks contain

a solution to the puzzle and are used for leader election. Keyblocks contain a public key

that is used to sign subsequent microblocks generated by the leader

15

Page 16: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

● Probabilistic leader election only per key block

● probabilistic consistency => strong consistency per micro block

● Latency will be going down

● Problem

● Malicious leader

16

Page 17: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

● Second approach: collective leader

Byzcoin(25th USENIX security)

17

Page 18: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

● ByzCoin modifies how Bitcoin-NG generates keyblocks: a group of leaders, rather than a

single leader, generates a keyblock followed by microblocks.

● The leader group is dynamically formed by a window of recent miners. When a new miner

solves the puzzle, it becomes a member of the current leader group, which moves one step

forward, ejecting the oldest miner

18

Page 19: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

This design addresses a limitation of Bitcoin-NG

1. A malicious leader can create microblock forks: in ByzCoin this would require a two-thirds

majority of leader group members to be malicious.

2. Bitcoin-NG suffers from a race condition where an old leader who has not yet heard about

the new leader may continue to incorrectly mine on top of older microblocks. In ByzCoin,

leader group members ensure that a new leader builds on top of the most recent

microblock

19

Page 20: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

20

● Third approach: parallel blockchain extension

In this approach multiple leaders extend in parallel different parts of the blockchain

Finally, we got a linear proportionality between computing power and throughput,

but not actually feasible

Page 21: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the sharding

● Fourth approach: sharding transaction

Elastico(2016 ACM SIGSAC)

21

Page 22: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The road to the shardingElastico partitions nodes into groups called committees

1. Within a committee, nodes run a Byzantine consensus protocol to agree on a block of

transactions.

2. The final committee collates sets of transactions received from committees into a final

block, runs a Byzantine consensus protocol between its members to get agreement on

extending the blockchain

22

Page 23: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Current designs for the sharding

● Elastico

● Chainspace

● Omniledger

● Rapidchain

23

Page 24: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Conclusion

1. Recent design of sharding is mostly based on ByzCoin where multiple leaders append

multiple blocks

2. A form of the final committee like DS(Directory Service) committee who actually extend

a block is a part of mainstream of the sharding design

30

Page 25: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Problem

● What is Zilliqa

● Identity generation in Zilliqa

● Attack vector

31

Page 26: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

What is Zilliqa

Zilliqa is a representative sharding blockchain implementation in current industry which is

mostly based on Elastico and Omniledger

32

Page 27: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Settings

● An identity is defined by a pair of pubkey and (IP:PORT) (but blacklisted by only IP)

=> each node need its own public IP

● Account-balance based model

33

Page 28: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Two blockchain

● There are two kinds of blockchain; DS blockchain, TX blockchain

● The basic idea behind this is to split the roles of bitcoin block into two separate blocks

○ 1. Election of a leader who decides the next block

○ 2. Verification of transactions

1. DS blockchain (= Identity blockchain) : chain of DS-Block

2. TX blockchain : chain of TX-Block

What are the DS-Block and TX-Block?

34

Page 29: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Epoch

● Every 100 TX-Block, one DS-Block is mined by previous DS committee

○ DS epoch : time interval between the DS-block (2 ~ 3 hours)

○ TX epoch : time interval between the final TX-block (1 ~ 2 mins)

35

● Every DS epoch, nodes membership who participate in the network changes

○ Nodes membership is constructed with the nodes who send valid PoW solution in the given time to

previous DS committee

■ => Identity is defined by PoW solution

■ => PoW solution is made with IP and pubkey

■ What is the input of PoW?

■ How the every node in the network can get the argument for the PoW?

● Every TX epoch, transaction is finalized

Page 30: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

PoW

The nodes start PoW at the first time entering the network

36

One node can submit the solution up to two (This is only restricted in one Ds member’s point of view)

Possible scenarios

1. Found solution that meets DS diff and shard diff

a. Submit sol and wait for DS-Block

2. Found solution that meets only shrad diff

a. Submit sol and continue to do PoW till DS diff met or DS block received

Any node who is sync with the network can get PoW function

Page 31: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

DS committee

● DS committee members are managed by fixed-sized double-ended queue

● Oldest member will be pushed out from tail of queue

● How many leaders can be changed?

○ Up to 10 members (Why?)

37

DequeMember Member Member Member

New Members

DSPoW finder

Page 32: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview

1. DS committee are elected

2. Shard the network and assign nodes to their shard

3. Process transactions in each shard

38

Page 33: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview (1)

At the start of a DS-epoch, each node that want to join the network send a PoW solution

39

Node Node Node Node Node

DS committeePoW solution

Nonce

IP

Pubkey

PoW solutionPoW solution PoW solutionPoW solution

Page 34: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview (1)

Nodes that has successfully produced a valid nonce for PoW which meets the DS diff will be a new

member of the next DS committee (up to ten)

40

Node Node Node Node Node

DS committeePoW solution

Nonce

IP

Pubkey

PoW solutionPoW solution PoW solutionPoW solution

Page 35: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview (2)

When the time is up, the leader of previous DS committee initiates a consensus protocol to agree on the

set of valid PoW solutions, which are randomly distributed on each shard or go into DS committee

DS committee runs a consensus on the new DS-Block header and then builds a signature part

41

Node Node Node Node Node

DS-Block

DS committeeleader

committee

Sharding

structures

Co-signature

Zilliqa PBFT

PoW solution

Nonce

IP

Pubkey

Page 36: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

DS-Block header is committed to the DS blockchain of

each DS member

Protocol overview (2)

42

Node Node Node Node

DS-Block

DS committeeleader

committee

Sharding

structures

Co-signature

Zilliqa PBFT

DS blockchain

Node

Page 37: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview (2)

New DS node joins the DS committee and the oldest member of the DS committee is churned out

43

Node Node Node Node

New DS committee

Node

DS blockchain

Node

Node

Page 38: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Protocol overview (2)

Nodes who success to join the network will get the shard information and new DS committee member

information from the old DS committee.

Kicked ex-DS nodes will be included in the shard member of the next DS epoch without PoW

Publish these information to every DS nodes and to shard nodes by tree-base broadcasting.

44

Node Node Node Node

DS committee

Node

Node

DS-Block DS-BlockShard

structures

DS-Block

Shard

structures

DS-BlockShard

structures

DS-BlockShard

structuresShard

structurescommittee committee committee committee

committee

Page 39: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

shard2shard1

Protocol overview (3)

After all the shard nodes get the new network informationon, they randomly form a number of shard

each of which selectes a consensus leader ranomly

45

Node Node Node Node

New DS committee

Node

Page 40: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

shard2shard1

Protocol overview (3)

Each shard processes disjoint sets of transactions

Since Zilliqa is an account based model, transactions are categorized by sender’s account

46

Node Node Node Node

New DS committee

Node

TX1

TX2

TX3

TX4

Page 41: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

shard2shard1

Protocol overview (3)

After finishing consensus(PBFT) on a set of transactions, each shard submits a Micro block to the DS

committee (to five members including the leader)

47

Node Node Node Node

New DS committee

Node

Micro block Micro blockTX1

TX2

TX3TX4

Page 42: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

shard2shard1

Protocol overview (3)

Once at least one Micro block from each shard is received, DS leader initiates a consensus(PBFT) for

Final block and spread it to each shard

After getting a Final block, a new shard leader initiates a TX-Block consensus again. This is a one TX

epoch

48

Node Node Node Node

New DS committee

Node

Final block Final blockTX1

TX2

TX3TX4

TX3

TX4

TX1

TX2

Page 43: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

shard2shard1

Protocol overview (3)

Every 99th TX epoch of each DS epoch is vacuous epoch in which there is no other transactions but only

incentive transactions. After receiving this final block, each node in shards start new PoW for the next

epoch

49

Node Node Node Node

New DS committee

Node

Final block Final blockIncentive

Incentive

Incentive

Incentive

Incentive

Page 44: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

A peer gets into a blacklist if:

+ Its gossiped-message size exceeds the limitation: 5MB

+ Issues occur (unreachable, down, timeout, connection refused) when writing messages via socket or socket

connection failed.

+ Callback connection buffer exceeds 20MB

+ Its reputation is less than -500

50

Banning Policy

Page 45: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

A few attack vectors

1. Make innocent nodes be blacklisted

2. Delay Pow start (Effective DoS attack)

3. Halt a shard (Heavy cost)

4. Partitioning the network (Heavy cost)

51

Page 46: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Identity generation in Zilliqa

For sybil resistant identity, Zilliqa use the PoW to define one node in the consensus

Every start of epoch, each node should submit PoW solution to the DS committee in given

time window

After timeout, DS committee makes consensus on a set of PoW solution for the next

epoch

52

Page 47: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

1. An attacker as a member of DS committee can submit PoW solution which includes

tuple of ip and invalid(unused) port of the victim

2. Submitted PoW will be included in the membership of the next epoch

3. Any node who tries to make connection with the invalid tuple of ip:port which is

submitted by an attacker regards the node paired with ip as unresponsive which

means crash node

4. Since a leader will be selected randomly, that node can be a leader

5. Not only because the node is crash itself, but also crashing leader should be

punished as it ruins liveness

6. Punishing will be executed by ip not a tuple of ip and port

7. Honest victim node using different port but same ip will be punished as well

Attack vector

53

Page 48: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

1. Discrepancy of identity definition in blacklisting and consensus

2. Punishing on crashing nodes

3. Multiple nodes in the DS committee can collect PoW solution

Reasons of this attack

54

Page 49: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The problem arises from ByzCoin where multiple leaders append multiple blocks

Asking one leader to issue multiple blocks means that other network members will expect

the leader to issue the next block. Therefore if this leader does not issue a block and ruin

the liveness than proper penalty should be imposed.

More constructional reasons

55

Page 50: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Why this problem is not just confined

to implementation issues

● IP:PORT blacklisting

● The necessity of punishing crashing node

● Single node for collecting PoW solutions

● PoW solution contains IP:PORT

56

Page 51: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Ip:port blacklisting

If the blacklisting is executed by ip and port pair then an attacker can easily spawn

another node using different port with the same ip

57

Page 52: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

The necessity of punishing crashing node

Sharding protocol uses a leader-based PBFT in each committee including DS committee

to make a local decision

In the leader-based PBFT protocol, unresponsive leader, so called crashing node, is

regarded as an malicious and subject for punishing which is not the case in Bitcoin

58

Page 53: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Single node for collecting PoW solutions

Developers may set a single node in the DS committee to collect PoW solution in the

given time. It will prevent malicious nodes from submitting PoW solution including

different ip:port(e.g victim’s ip:port) from the source of the TCP connection by which the

PoW solution is submitted

Still, the single node and other nodes with TCP spoofing can launch the attack

Many bad things can be happen in WAN setting especially when the single node is

collecting all the PoW (e.g DOS attack, attacks in ISP level)

59

Page 54: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Results

• Contributions

• PoC

60

Page 55: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Contributions

● Inform that this problem is not just applied to Zilliqa but to all the most of the recent

sharding paper

● New secure design for identity generation

● ???

61

Page 56: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

Proof of Concept (PoC)

● https://hackmd.io/_DHiA3JXSeqvbS8K9mxpRw?view

62

Page 57: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

References

● The Road to Scalable Blockchain Designs

https://www.usenix.org/system/files/login/articles/login_winter17_06_bano.pdf (USENIX 2017 winter

magazine)

● OmniLedger: A Secure, Scale-Out, Decentralized Ledger via Sharding

https://eprint.iacr.org/2017/406.pdf (2018 IEEE Symposium on Security and Privacy)

● A Secure Sharding Protocol For Open Blockchains

https://www.comp.nus.edu.sg/~loiluu/papers/elastico.pdf (2016 ACM SIGSAC Conference on

Computer and Communications Security)

● Enhancing Bitcoin Security and Performance with Strong Consistency via Collective

Signing(ByzCoin) https://www.usenix.org/system/files/conference/usenixsecurity16/sec16_paper_kokoris-

kogias.pdf , (25th USENIX Security Symposium)

● Bitcoin-NG: A Scalable Blockchain Protocol

https://www.usenix.org/system/files/conference/nsdi16/nsdi16-paper-eyal.pdf (13th USENIX Symposium

on Networked Systems Design and Implementation)

63

Page 58: Identity problem in the sharding blockchain · Sharding structures Co-signature Zilliqa PBFT PoW solution Nonce IP Pubkey. DS-Block header is committed to the DS blockchain of each

References

● RapidChain: Scaling Blockchain via Full Sharding http://delivery.acm.org/10.1145/3250000/3243853/p931-

zamani.pdf?ip=137.132.217.133&id=3243853&acc=CHORUS&key=FF6731C4D3E3CFFF%2EBB5EB8D2067C16

62%2E4D4702B0C3E38B35%2E6D218144511F3437&__acm__=1562676456_c8ddfc6d2c9f590380fe71d9f7abe1

6a (CCS '18 Proceedings of the 2018 ACM SIGSAC Conference on Computer and

Communications Security)

● Chainspace: A Sharded Smart Contracts Platform https://www.ndss-symposium.org/wp-

content/uploads/2018/02/ndss2018_09-2_Al-Bassam_paper.pdf (Network and Distributed Systems

Security (NDSS) Symposium 2018)

64