121 lines
5.9 KiB
HTML
121 lines
5.9 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE> [zapps-wg] The Go implementation of Powers of Tau
|
|
</TITLE>
|
|
<LINK REL="Index" HREF="/pipermail/zapps-wg/2018/index.html" >
|
|
<LINK REL="made" HREF="mailto:zapps-wg%40lists.zfnd.org?Subject=Re%3A%20%5Bzapps-wg%5D%20The%20Go%20implementation%20of%20Powers%20of%20Tau&In-Reply-To=%3CCAKazn3n0MtZz_Ub9LTEWPrDiz-4gLyLgmJzbD1dWFa1v312xcg%40mail.gmail.com%3E">
|
|
<META NAME="robots" CONTENT="index,nofollow">
|
|
<style type="text/css">
|
|
pre {
|
|
white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
|
|
}
|
|
</style>
|
|
<META http-equiv="Content-Type" content="text/html; charset=us-ascii">
|
|
<LINK REL="Previous" HREF="000232.html">
|
|
<LINK REL="Next" HREF="000234.html">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffff">
|
|
<H1>[zapps-wg] The Go implementation of Powers of Tau</H1>
|
|
<B>Sean Bowe</B>
|
|
<A HREF="mailto:zapps-wg%40lists.zfnd.org?Subject=Re%3A%20%5Bzapps-wg%5D%20The%20Go%20implementation%20of%20Powers%20of%20Tau&In-Reply-To=%3CCAKazn3n0MtZz_Ub9LTEWPrDiz-4gLyLgmJzbD1dWFa1v312xcg%40mail.gmail.com%3E"
|
|
TITLE="[zapps-wg] The Go implementation of Powers of Tau">sean at z.cash
|
|
</A><BR>
|
|
<I>Sun Jan 28 13:54:26 EST 2018</I>
|
|
<P><UL>
|
|
<LI>Previous message (by thread): <A HREF="000232.html">[zapps-wg] The Go implementation of Powers of Tau
|
|
</A></li>
|
|
<LI>Next message (by thread): <A HREF="000234.html">[zapps-wg] Powers of Tau Attestation 48
|
|
</A></li>
|
|
<LI> <B>Messages sorted by:</B>
|
|
<a href="date.html#233">[ date ]</a>
|
|
<a href="thread.html#233">[ thread ]</a>
|
|
<a href="subject.html#233">[ subject ]</a>
|
|
<a href="author.html#233">[ author ]</a>
|
|
</LI>
|
|
</UL>
|
|
<HR>
|
|
<!--beginarticle-->
|
|
<PRE>It's not a showstopper at all. :) I'm just very interested in
|
|
determinism because it massively reduces the need for participants to
|
|
source dependencies correctly and safely.
|
|
|
|
Sean
|
|
|
|
On Sun, Jan 28, 2018 at 11:23 AM, Devrandom <<A HREF="/mailman/listinfo/zapps-wg">c1.devrandom at niftybox.net</A>> wrote:
|
|
><i> Very happy to hear about the go implementation for a couple of reasons:
|
|
</I>><i>
|
|
</I>><i> - this gives us another path to trusted binaries from pure source + gcc
|
|
</I>><i> - this may work well on ARM64, which gives us another architecture - one
|
|
</I>><i> that doesn't have a management engine (in contrast, mrustc currently only
|
|
</I>><i> works on x86)
|
|
</I>><i>
|
|
</I>><i> It would be good to look into how distributions compile their go binaries -
|
|
</I>><i> whether they use the latest version of the toolchain, or they bootstrap from
|
|
</I>><i> golang 1.4 (which only depends on gcc). If they use the latest, it would be
|
|
</I>><i> good to have people compile their own from source.
|
|
</I>><i>
|
|
</I>><i> About the mrustc work that I've done - I don't think the lack of determinism
|
|
</I>><i> is a showstopper. It just means that contributors have to compile from
|
|
</I>><i> source, which is time consuming. Perhaps there was some miscommunication
|
|
</I>><i> about that?
|
|
</I>><i>
|
|
</I>><i>
|
|
</I>><i> On Sun, Jan 28, 2018 at 5:12 AM Sean Bowe via zapps-wg
|
|
</I>><i> <<A HREF="/mailman/listinfo/zapps-wg">zapps-wg at lists.z.cash.foundation</A>> wrote:
|
|
</I>>><i>
|
|
</I>>><i> Great work on this. I wonder if this implementation will be a better
|
|
</I>>><i> foundation for fully-deterministic and trustworthy builds? I am
|
|
</I>>><i> disappointed that devrandom's efforts were stymied by non-determinism
|
|
</I>>><i> in the Rust compiler. :(
|
|
</I>>><i>
|
|
</I>>><i> Sean
|
|
</I>>><i>
|
|
</I>>><i> On Sat, Jan 27, 2018 at 12:30 PM, Filippo Valsorda via zapps-wg
|
|
</I>>><i> <<A HREF="/mailman/listinfo/zapps-wg">zapps-wg at lists.z.cash.foundation</A>> wrote:
|
|
</I>>><i> > Hello folks,
|
|
</I>>><i> >
|
|
</I>>><i> > <A HREF="https://github.com/FiloSottile/powersoftau">https://github.com/FiloSottile/powersoftau</A> is a fully independent
|
|
</I>>><i> > implementation of Powers of Tau. It is written in Go, shares no code with
|
|
</I>>><i> > the main Rust implementation, and uses the RELIC library for BLS12-381.
|
|
</I>>><i> >
|
|
</I>>><i> > I used it for my contribution, but for it to be truly valuable to the
|
|
</I>>><i> > security of the MPC ceremony more people need to run it, including in more
|
|
</I>>><i> > secure settings than my laptop.
|
|
</I>>><i> >
|
|
</I>>><i> > The README includes build instructions. If there are any problems feel
|
|
</I>>><i> > free to open an issue on GitHub or email me.
|
|
</I>>><i> >
|
|
</I>>><i> > To enable people to run both implementations there's a -next option to
|
|
</I>>><i> > generate the next challenge file while computing the response. This is much
|
|
</I>>><i> > faster than running verify_transform as it doesn't do verification and it
|
|
</I>>><i> > doesn't have to decompress points.
|
|
</I>>><i> >
|
|
</I>>><i> > You should assume that secret material will be left in memory, and
|
|
</I>>><i> > protect against side channels, just like with the Rust implementation.
|
|
</I>>><i> >
|
|
</I>>><i> > _o/
|
|
</I>
|
|
</PRE>
|
|
|
|
<!--endarticle-->
|
|
<HR>
|
|
<P><UL>
|
|
<!--threads-->
|
|
<LI>Previous message (by thread): <A HREF="000232.html">[zapps-wg] The Go implementation of Powers of Tau
|
|
</A></li>
|
|
<LI>Next message (by thread): <A HREF="000234.html">[zapps-wg] Powers of Tau Attestation 48
|
|
</A></li>
|
|
<LI> <B>Messages sorted by:</B>
|
|
<a href="date.html#233">[ date ]</a>
|
|
<a href="thread.html#233">[ thread ]</a>
|
|
<a href="subject.html#233">[ subject ]</a>
|
|
<a href="author.html#233">[ author ]</a>
|
|
</LI>
|
|
</UL>
|
|
|
|
<hr>
|
|
<a href="/mailman/listinfo/zapps-wg">More information about the zapps-wg
|
|
mailing list</a><br>
|
|
</body></html>
|