From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: saschagrunert@icloud.com Received: from krantz.zx2c4.com (localhost [127.0.0.1]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id a1fb87ff for ; Tue, 21 Feb 2017 10:06:32 +0000 (UTC) Received: from st11p01im-asmtp001.me.com (st11p01im-asmtp001.me.com [17.172.204.151]) by krantz.zx2c4.com (ZX2C4 Mail Server) with ESMTP id 0c20fae9 for ; Tue, 21 Feb 2017 10:06:32 +0000 (UTC) Received: from process-dkim-sign-daemon.st11p01im-asmtp001.me.com by st11p01im-asmtp001.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) id <0OLP00T00YRBAF00@st11p01im-asmtp001.me.com> for wireguard@lists.zx2c4.com; Tue, 21 Feb 2017 10:07:13 +0000 (GMT) Received: from icloud.com ([127.0.0.1]) by st11p01im-asmtp001.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) with ESMTPSA id <0OLP00OTVYRYTE30@st11p01im-asmtp001.me.com> for wireguard@lists.zx2c4.com; Tue, 21 Feb 2017 10:07:13 +0000 (GMT) Content-type: text/plain; charset=utf-8 MIME-version: 1.0 (Mac OS X Mail 10.2 \(3259\)) Subject: Re: Working on a Rust implementation, and request for test vectors From: Sascha Grunert In-reply-to: <15a5f481984.f050e1c666041.7938484243662330654@mysterious.site> Date: Tue, 21 Feb 2017 11:07:10 +0100 Message-id: <2A1F92D5-90A4-4105-A764-897ADFF15D1D@icloud.com> References: <15a5f481984.f050e1c666041.7938484243662330654@mysterious.site> To: wireguard@lists.zx2c4.com List-Id: Development discussion of WireGuard List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Hey sopium, I also would like to develop a Rust version of wireguard, we should join = our forces! :) I had a short look at your implementation and suggest some things: - If we want to develop an implementation of wireguard we should give it = an "official touch=E2=80=9C, like a wireguard GitHub Organization and some official repo. - We should consider using tokio for async IO processing, that would = also mean that we implement the noise protocol for tokio. Best regards, Sascha > Am 21.02.2017 um 07:07 schrieb sopium : >=20 > Hello list and Jason, >=20 > I'd like to tell you that I have started working on a Rust > implementation of WireGuard (actually to make my TiTun[0] program > compatible with WireGuard). >=20 > I have already implemented the Noise part in noise-rust[1]. It is a > rewrite of screech, with hopefully better API, documentation, testing > and overall quality. Issues like [2] and [3] should have been > solved. I wish noise-rust would be helpful for those who want to > implement WireGuard (or other Noise based protocols) in Rust. >=20 > I plan to implement the rest of the WireGuard protocol in the > following weeks. (Well, no promises.) You are welcome to join the > effort, of course. >=20 > Jason, can you generate and provide some test vectors for WireGuard? > E.g. for the less widely used or less clearly defined primitives, like > HMAC-BLAKE2s and XChaCha20Poly1305. And for whole handshake and > transportation sessions. And for cookie reply packet generation. That > should greatly help ensure interoperability between different = WireGuard > implementations. >=20 > 0. https://github.com/sopium/titun >=20 > 1. https://github.com/sopium/noise-rust >=20 > 2. https://github.com/trevp/screech/issues/5 >=20 > 3. = https://github.com/solidsnack/screech/commit/6d91d075ad2f98f03c807a4719534= 95c720a5696 >=20 > Regards, > Sopium >=20 >=20 > _______________________________________________ > WireGuard mailing list > WireGuard@lists.zx2c4.com > https://lists.zx2c4.com/mailman/listinfo/wireguard