Skip to content

Commit dbc9337

Browse files
authored
[VIndex] Top level docs reflect current status (#61)
* [VIndex] Top level docs reflect current status * Added architecture diagram
1 parent 52eb79b commit dbc9337

File tree

2 files changed

+14
-7
lines changed

2 files changed

+14
-7
lines changed

vindex/README.md

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
## Verifiable Index
22

3-
Status: Experimental. Goal is to have MVP by 2025Q3. See [Milestones](#milestones) for detailed feature progress.
3+
Status: Working Prototype of an end-to-end verifiable index for transparency logs. See [Milestones](#milestones) for detailed feature progress.
4+
5+
There is a complete solution provided for the [Go Module Proxy (SumDB) log](./cmd/sumdb/).
46

57
This idea has been distilled from years of experiments with maps, and a pressing need to have an efficient and verifiable way for an end-user to find _their_ data in logs without needing to download the whole log.
68

@@ -39,8 +41,8 @@ The result is a system that extends the verifiability of the underlying log to i
3941

4042
This verifiable map can be applied to any log where users have a need to enumerate all values matching a specific query. For example:
4143

42-
* CT: domain owners wish to query for all certs matching a particular domain
43-
* SumDB: package owners want to find all releases for a given package
44+
* CT: domain owners wish to query for all certs matching a domain they own
45+
* [SumDB](./cmd/sumdb/): package owners want to find all releases for a package they maintain
4446

4547
Indices exist for both ecosystems at the moment, but they aren’t verifiable.
4648

@@ -100,6 +102,10 @@ The correct construction of the map can be verified by any other party.
100102
The only requirement is compute resources to be able to build the map, and a clear understanding of the MapFn (hence the importance for this to be universally specified).
101103
The verifier builds a map at the same size as the verifiable index and if the map checkpoint has the same root hash then both maps are equivalent and the map has been verified for correct construction.
102104

105+
## Architecture
106+
107+
![Architecture Diagram](./vindex-arch.png)
108+
103109
## Sub-Problems
104110

105111
### MapFn Specified in Universal Language
@@ -184,6 +190,7 @@ Known applications:
184190

185191
## Milestones
186192

193+
187194
| # | Step | Status |
188195
| :-: | --------------------------------------------------------- | :----: |
189196
| 1 | Public code base and documentation for prototype ||
@@ -195,11 +202,11 @@ Known applications:
195202
| 7 | Storage backed verifiable-map ||
196203
| 8 | MapFn defined in WASM ||
197204
| 9 | Support reading directly from Input Log instead of Clone ||
198-
| 10 | Example written for mapping SumDB ||
205+
| 10 | Example written for indexing SumDB ||
199206
| 11 | Example written for hosting a log and VIndex together ||
200-
| 12 | Example written for mapping CT | ⚠️ |
201-
| 13 | Promote this from the `incubator` repo ||
207+
| 12 | Example written for indexing CT | ⚠️ |
208+
| 13 | Replace Merkle Tree with a faster implementation ||
209+
| 14 | Promote this from the `incubator` repo ||
202210
| N | Production ready ||
203211

204212

205-
Note that a storage-backed map needs to be implemented before this can be applied to larger logs, e.g. CT.

vindex/vindex-arch.png

89.7 KB
Loading

0 commit comments

Comments
 (0)