TrustChain: A Sybil-resistant scalable blockchain Source: Future Generation Computer Systems, Article in Press, Sep. 2017 Authors: Pim Otte, Martijn de Vos, and Johan Pouwelse Speaker: Ren-Kai Yang Date:2018/03/22
Outline Introduction Related works Proposed method Security analysis Performance analysis Conclusions
Introduction(1/3) Bitcoin Name Price Alice 50 Bob 60 David 1 Name 100 Bob 10 David 1 Bitcoin Alice Secret key [Alice → Bob, $50] Secret key [Alice → Bob, $50] David Bob Name Price Alice 100 Bob 10 David 1 Name Price Alice 50 Bob 60 David 1 Name Price Alice 100 Bob 10 David 1 Name Price Alice 50 Bob 60 David 1
Introduction(2/3) Transactions Header Global transaction broadcasts "hash" : "0000000000000001b6b9a13b095e96db41c4a928b97ef2d944a9b31b2cc7bdc4", "previousblockhash" : "0000000000000002a7bbd25a417c0374cc55261021e8a9ca74442b01284f0569", "difficulty" : 1180923195.25802612, "time" : 1388185914, "nonce" : 924591752, "merkleroot" : "c91c008c26e50763e9f548bb8b2fc323735f73577effbc55502c51eb4cc7cf2e", "version" : 2, "tx" : [ "d5ada064c6417ca25c4308bd158c34b77e1c0eca2a73cda16c737e7424afba2f", "b268b45c59b39d759614757718b9918caf0ba9d97c56f3b91956ff877c503fbe", ... 417 more transactions ... ], "confirmations" : 35561, "size" : 218629, "height" : 277316, "bits" : "1903a30c", "chainwork" : "000000000000000000000000000000000000000000000934695e92aaf53afa1a", "nextblockhash" : "000000000000000010236c269dd6ed714dd5db39d36b33959079d78dfd431ba7" } Header Transactions Blockchain Global transaction broadcasts Proof-of-Work mechanisms 7 transactions per second Prev Hash Nonce Prev Hash Nonce Prev Hash Nonce Merkle Root Timestamp Merkle Root Timestamp Merkle Root Timestamp Hash01 Hash23 Hash02 Hash03 Tx 02 Tx 03
Introduction(3/3) Sybil attack in P2P network
Related works Maximum flow B D 7 9+3=12 9 7 5 2 9 2 2 6 4 1 3 A C
Proposed method(1/4) – TrustChain architecture Traditional blockchain Hash C D F B Hash A Hash A Hash A Hash A Hash B Hash E Hash G Hash F C D Hash F B
Proposed method(2/4) – TrustChain architecture B Hash Hash A Hash A Hash A Hash E Hash G Hash F B D Hash A Hash C Hash D Hash B Hash D Hash F Hash D
Proposed method(3/4) – Netflow accounting mechanism 9 + 3 = 12 6 + 3 = 9 Sp= 3 Cp= 3 Ct= 4 St= 2 2 p t 9 3 2 5 6 3 q r 4 Cq= -3 Sq= 0
Proposed method(4/4) – α-Netflow accounting mechanism 9 + 3 = 12 3 + 2 = 5 Sp= 7 Cp= 7 Ct= 4 St= 2 2 p t α = 2 3 9 2 5 3 3 q r 2 Cq= 1 Sq= 1
Security analysis(1/3) Replay attack A B A A C B Hash Hash Hash Hash
Security analysis(2/3) Double spending attack A B A D A C A G Hash
Security analysis(3/3) Sybil attack sj1 5 i 2 j 5 sj2 5 sj3
Performance analysis(1/2) 1.6 transactions per second 18.1 transactions per second
Performance analysis(2/2)
Conclusions Detection Sybil attack