Skip to content

Commit

Permalink
Updated READMEs.
Browse files Browse the repository at this point in the history
  • Loading branch information
markkurossi committed Aug 21, 2023
1 parent ade4310 commit d7d0cb3
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 20 deletions.
40 changes: 20 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,12 @@ form assembly:

# TODO

- [ ] Foundation
- [x] Circuit & garbling:
- [x] Oblivious transfer extensions
- [ ] SSA variable liveness analysis must be optimized
- [ ] TLS for garbler-evaluator protocol
- [ ] BMR multi-party protocol
- [ ] Compiler
- [ ] Incremental compiler
- [ ] Constant folding
Expand All @@ -302,35 +308,29 @@ form assembly:
- [ ] SSA aliasing is 1:1 but `amov` has 2:1 relation
- [ ] variable liveness analysis for templates
- [ ] BitShift
- [x] Circuit & garbling:
- [x] Oblivious transfer extensions
- [ ] Misc:
- [ ] Uninitialized variables produce unspecified values in stream mode
- [ ] TLS for garbler-evaluator protocol
- [ ] BMR multi-party protocol
- [ ] Ed25519
- [X] Parsing Ed25519 MPCL files
- [ ] for-range statements
- [ ] local variables in for-loop unrolling
- [ ] `copy()` does not work on arrays which have been `make()`:ed
- [ ] `&base[pos][i]` returns the address of the first element
- [ ] reading from `*[32]int32` returns invalid values
- [X] Pointer handling
- [X] Pointer to struct field
- [ ] Cleanup pointer r-value handling
- [ ] Slices are passed by value instead of by reference
- [ ] Selecting struct members from struct pointer value
- [ ] Streamer
- [ ] Uninitialized variables produce unspecified values in stream mode
- [ ] The `compiler/ssa/wire_allocator.go` uses `Value.String()` as
the wire map key. This causes unnecessary memory
allocation. Should change to use `Value.HashCode()` and
`Value.Equal()` to implement a custom hashtable. The wire
allocation API must be changed to use values (ptr / ref).
- [ ] Ed25519
- [X] Parsing Ed25519 MPCL files
- [ ] for-range statements
- [ ] local variables in for-loop unrolling
- [ ] Compound init values must be zero-padded to full size
- [ ] Circuit generation:
- [ ] SSA variable liveness analysis must be optimized
- [ ] The `compiler/ssa/wire_allocator.go` uses `Value.String()`
as the wire map key. This causes unnecessary memory
allocation. Should change to use `Value.HashCode()` and
`Value.Equal()` to implement a custom hashtable. The wire
allocation API must be changed to use values (ptr / ref).
- [ ] SHA-512 message digest
- [ ] Empty arrays should be allowed, now unspecified length
- [ ] `block = 0` sets block's type to int32
- [ ] `copy()` does not work on arrays which have been `make()`:ed
- [ ] `&base[pos][i]` returns the address of the first element
- [ ] reading from `*[32]int32` returns invalid values

# Benchmarks and tests

Expand Down
6 changes: 6 additions & 0 deletions bmr/README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# Abstract

This module implements the [Optimizing Semi-Honest Secure Multiparty
Computation for the Internet](https://eprint.iacr.org/2016/1066)
multi-party protocol.

# BMR Protocol


Expand Down

0 comments on commit d7d0cb3

Please sign in to comment.