initc3 / HoneyBadgerMPC

Robust MPC-based confidentiality layer for blockchains
GNU General Public License v3.0
131 stars 64 forks source link

WIP: Hello Shard! Intershard communication example app #429

Open sbellem opened 4 years ago

sbellem commented 4 years ago

The relevant commit is 5941750da4d17e7b94d000173d1991b524a40801

Far from elegant and very rudimentary first version that can for sure benefit from many improvements.

Some of the current limitations are:

  1. The client sends messages to a gateway shard, meanwhile the other shard only receives masked messages from this gateway shard.
  2. The complete message transmission, from client to gateway shard to "receiving" shard all happens within an epoch.
  3. The generation of preprocessing elements for the intershard transfers is "fake", as it is done at start up time as though a trusted dealer would distribute field elements (masks shares) to each server.
  4. The contract does not control access to the queue of intershard messages thus allowing "un-authorized" reads.

From the above limitations, things to improve are roughly:

codecov[bot] commented 4 years ago

Codecov Report

Merging #429 into dev will decrease coverage by 8.72043%. The diff coverage is 9.58904%.

@@                 Coverage Diff                 @@
##                 dev        #429         +/-   ##
===================================================
- Coverage   77.27842%   68.55799%   -8.72043%     
===================================================
  Files             50          59          +9     
  Lines           5585        6380        +795     
  Branches         856         900         +44     
===================================================
+ Hits            4316        4374         +58     
- Misses          1095        1833        +738     
+ Partials         174         173          -1