I had completed most of the required codes related to leaf node which includes the addition of new state epoch metadata and new Verkle proof format.
I've finished Verkle Tree modifications and state expiry logic. I've also added some unit tests to test out the new Verkle Tree features. New proof format is completed but unit tests have yet to be included.
Check out my development branch here.
Upon reflecting on the new leaf node design, I found a design flaw that actually costs more storage space that it needs. Here's why:
As a recap, a leaf node can store 256 values. The first 128 values are stored in the "C1" group while the last 128 values are stored in the "C2" group. The state expiry scheme adds a third commitment "C3" where it is the commitment of 256 * 16-bit state epoch values. Each epoch corresponds to a value and records its last accessed epoch.
The state expiry logic is that, if all of the values in C1 or C2 are expired, then the values can be pruned away and temporarily not being able to be accessed.
The flaw is that if there's 1 value that has been accessed in the latest epoch, then the group of values would not be pruned away. Therefore, there's no point storing epochs for each corresponding values. Only a single state epoch for C1 and C2 is good enough to represent this information. The following is the latest leaf node design:
or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Syncing