Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add documentation on Moose - introduction and protocol implementation guide #1038

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

ekloberdanz
Copy link
Contributor

This PR adds notes on Moose and implementing protocols in Moose that may be useful to future contributors. It is not complete/finished, just a first step. Note, there is some overlap with the Moose readme. This PR just captures my notes that I thought would be useful to others.



### Threat model at Cape: honest, but curious
It is permissible that if parties collude with each other, they can use result values to reconstruct inputs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure I understand this. It's (2,3) secret sharing, meaning that if any two parties collaborate they can reconstruct the secret.


### Threat model at Cape: honest, but curious
It is permissible that if parties collude with each other, they can use result values to reconstruct inputs
This threat model is less strict than active security, which takes into account that perhaps not every party follows given protocols
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that there's no need to mention about active security here if we don't use it.



### How to implement new protocols in Moose
Example: How to implement an operation edsl.ones(), which creates a vector of ones with a given lenght
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo

### How to implement new protocols in Moose
Example: How to implement an operation edsl.ones(), which creates a vector of ones with a given lenght

Summary
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps we should also specify why we need to do these changes, for each subsection?

@mortendahl
Copy link
Member

hey @ekloberdanz, mind giving this PR a slightly more informative title (and without the prefix)?

@ekloberdanz ekloberdanz changed the title Ellie/add documentation Add documentation on Moose Apr 8, 2022
@ekloberdanz ekloberdanz changed the title Add documentation on Moose Add documentation on Moose - introduction and protocol implementation guide Apr 8, 2022
@ekloberdanz
Copy link
Contributor Author

hey @ekloberdanz, mind giving this PR a slightly more informative title (and without the prefix)?

For sure! I did not notice that the PR title was just set to whatever the branch name was.

- Elk compiler
- Moose runtime

### Cape's usage of Moose/PyMoose
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps this subsection is just confusing more than helping (for OSS)

add a guide on how to implement a new protocol

add spacing

add indent

fix indent

update documentation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants