
Product
Introducing Tier 1 Reachability: Precision CVE Triage for Enterprise Teams
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.
github.com/zhengjilai/BGW-SecureLinearMultiPartyComputation
This project is a Golang implementation of BGW Secure Linear MultiParty Computation, which supports int and big.Int of golang.
The paper we mainly refer to when implementing this package is "Asharov, Gilad , and Y. Lindell . "A Full Proof of the BGW Protocol for Perfectly Secure Multiparty Computation." Journal of Cryptology 30(2015):1-94.".
LinearMultiPartyComputation generalizes the linear mpc scheme in "Ben-Or M, Goldwasser S, Wigderson A. Completeness theorems for non-cryptographic fault-tolerant distributed computation. In Proceedings of the twentieth annual ACM symposium on Theory of computing 1988 Jan 1 (pp. 1-10). ACM."
In Linear MPC, a given number of participants p1, p2, ..., pn, each has private data, respectively x1, x2, ..., xn. Participants want to compute the value of a public function on the private data: f(x1, x2, ..., xn) while keeping their own inputs secret, if there are no more than t<n/2 semi-honest adversaries.
A linear function is in the form f(x1, x2, ..., xn) = c1x1 + c2x2 + ... + cnxn, while c1, c2, ..., cn are constants.
This package is implemented in Golang (version 1.9+), without any external dependencies.
You can simply import our linear mpc module as a normal Golang package.
git clone https://github.com/zhengjilai/BGW-SecureLinearMultiPartyComputation.git
mkdir -p $GOPATH/src
cp -r BGW-SecureLinearMultiPartyComputation/loccs.sjtu.edu.cn $GOPATH/src
/loccs.sjtu.edu.cn/acrypto/poly
implements the calculation of polynomial over Zp with single variable
and a system of solving linear equations over Zp.
/loccs.sjtu.edu.cn/acrypto/secretshare
implements Shamir's secret sharing scheme over Zp.
/loccs.sjtu.edu.cn/acrypto/mpc
implements BGW Linear MultiParty Computation, where everyone has an secret xi,
and they want to know the output of an linear function f(x1, x2, ..., xn)
while not exposing their own secret (on condition that there are only t<n/2 semi-honest adversaries).
/doc
: Basic documents of this project, including the original paper and our project docs(interfaces, principles and communication analysis).
We also provide an easy explanation of BGW-mpc Multiplication gate, although we have not implemented it.
This mpc package is only written for study, and should never be leveraged for production.
All contributors of this repository come from Lab of Cryptology and Computer Security, SJTU.
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket’s new Tier 1 Reachability filters out up to 80% of irrelevant CVEs, so security teams can focus on the vulnerabilities that matter.
Research
/Security News
Ongoing npm supply chain attack spreads to DuckDB: multiple packages compromised with the same wallet-drainer malware.
Security News
The MCP Steering Committee has launched the official MCP Registry in preview, a central hub for discovering and publishing MCP servers.