Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 39 lines (22 sloc) 0.792 kb
5b39bde dmerkle trees are working reasonably well now.
Cliff Moon authored
1 Implementation of a btree based merkle tree. The original merkle tree would not scale out to a large number of keys due to the limitation of keeping the tree in main memory. Therefore we will try and store the
2
3 btree file:
de5858b stopping point before wrecking shop
Cliff Moon authored
4 file header: version:1, blocksize:32, freepointer:64, rootpointer:64,
5 freekeys1:64, freekeys2:64, freekeys3:64, freekeys4:64, freekeys5:64
6 reserved/bytes:
2ce556a tests now pass for header format change
Cliff Moon authored
7 header size: 85
1cf4bc9 starting the arduous dmerkle deletion code. will break file compatibili...
Cliff Moon authored
8
5b39bde dmerkle trees are working reasonably well now.
Cliff Moon authored
9 node:{0,m:32,[keyhash:32],[childhash:32,child:64]}
10
11 leaf:{1,m:32,[keyhash:32,keypointer:64,valhash:32]}
12
1cf4bc9 starting the arduous dmerkle deletion code. will break file compatibili...
Cliff Moon authored
13 freenode:{2,nextpointer:64,0:(blocksize-9)}
14
5b39bde dmerkle trees are working reasonably well now.
Cliff Moon authored
15 for nodes:
16 blocksize = 1 + 4 + D*4 + (D+1)*12
17 D = (blocksize-17)/16
18
19 for leaves:
20 blocksize = 5 + D*16
21 D = (blocksize-5)/16
22
23 65521
24
25
26
27 key file:
28
2ab74d4 refactoring complete for now
Cliff Moon authored
29 [key\0,key\0,key\0]
30
31 keys allocation
32
33 l = 2**4
34
35 m = 2**64
36
37
38
39 header size = 85 + (√blocksize - 4)*8
Something went wrong with that request. Please try again.