ππ ππ-Tree: A Gas-Efficient Structure for Authenticated Range Queries in Blockchain
Ce Zhang, Cheng Xu, Jianliang Xu, Yuzhe Tang, Byron Choi
Hong Kong Baptist University, Hong Kong Syracuse University, NY, USA
-Tree: A Gas-Efficient Structure for Authenticated Range Queries - - PowerPoint PPT Presentation
-Tree: A Gas-Efficient Structure for Authenticated Range Queries in Blockchain Ce Zhang, Cheng Xu, Jianliang Xu, Yuzhe Tang, Byron Choi Hong Kong Baptist University, Hong Kong Syracuse University, NY, USA Introduction Source:
Ce Zhang, Cheng Xu, Jianliang Xu, Yuzhe Tang, Byron Choi
Hong Kong Baptist University, Hong Kong Syracuse University, NY, USA
2 4/10/2019
Source: FAHM Technology Partners
(untrusted) users
3 4/10/2019
upon the blockchain
4
Traditional Computer Blockchain VM Storage
RAM Blockchain
Computation
CPU Smart Contract
4/10/2019
chain is not scalable
image, etc.
15 sec per block
5 4/10/2019
6
Hybrid Storage
Service Provider Blockchain
πππ§, π€πππ£π πππ§, h(π€πππ£π) πππ§ π€πππ£π h(π€πππ£π)
4/10/2019
Data Owner Client
7 4/10/2019
Hybrid Storage
Service Provider Blockchain
πππ§, π€πππ£π πππ§, h(π€πππ£π) π = [π, π] π, πππ‘π πππβπππ
Data Owner Client ADS ADS
4/10/2019 8
Hybrid Storage
Service Provider Blockchain
πππ§, π€πππ£π πππ§, h(π€πππ£π) π = [π, π] π, πππ‘π πππβπππ
Data Owner Client ADS ADS
smart contract under the gas cost model
9
Ethereum Gas Cost Model
4/10/2019
query performance
10 4/10/2019
11
Result: {13,16} VO: {4, 24, β6}
4/10/2019
12
MB-tree
πππβπππ = {β7}
Client SP Smart Contract
insert
= logπΊ π 2π·π‘π‘π’ππ π + 2π·π‘π£ππππ’π + 2πΊ + 1 π·π‘ππππ + π·βππ‘β + π·π‘π‘π’ππ π
4/10/2019
during query processing
blockchain
and updates the root hash to the blockchain storage
query performance)
insert
= π π·π‘ππππ + log π β π·πππ +
1 πΊ π·βππ‘β + π·π‘π‘π’ππ π + π·π‘π£ππππ’π
13 4/10/2019
14 4/10/2019
SMB-trees in batch
15
β¦ Bulk Insert SMB-trees MB-tree New object
4/10/2019
16
4/10/2019
16
4/10/2019
16
Exponential size
4/10/2019
16
Exponential size
4/10/2019
16
Unsorted Sorted
Exponential size
4/10/2019
16
Unsorted Sorted
Exponential size
4/10/2019
17
πππ¦ is not full, insert object to π πππ¦;
SMB-tree
4/10/2019
17
[1-2] [3-4]
π
1
πππ¦ = 1
πππ¦ is not full, insert object to π πππ¦;
SMB-tree
4/10/2019
17
[1-2] [3-4]
π
1
πππ¦ = 1
πππ¦ is not full, insert object to π πππ¦;
SMB-tree
[1-4]
π
1
null [5-6] [7-8]
π2
πππ¦ = 2
4/10/2019
17
[1-2] [3-4]
π
1
πππ¦ = 1
πππ¦ is not full, insert object to π πππ¦;
SMB-tree
[1-4]
π
1
null [5-6] [7-8]
π2
πππ¦ = 2
[1-4]
π
1
[5-8] [9-10] [11-12]
π2
πππ¦ = 2
4/10/2019
17
[1-2] [3-4]
π
1
πππ¦ = 1
πππ¦ is not full, insert object to π πππ¦;
SMB-tree
[1-4]
π
1
null [5-6] [7-8]
π2
πππ¦ = 2
[1-4]
π
1
[5-8] [9-10] [11-12]
π2
πππ¦ = 2
[1-8]
π
1
null [9-12] null
π2
[13-14] [15-16]
π3
πππ¦ = 3
4/10/2019
18 4/10/2019
sacrificing much of the query overhead
19 4/10/2019
and search key 4 bytes)
20 4/10/2019
21 4/10/2019
22 4/10/2019
23 4/10/2019
4/10/2019 24
25
4/10/2019