All of lore.kernel.org
 help / color / mirror / Atom feed
* Working on a Rust implementation, and request for test vectors
@ 2017-02-21  6:07 sopium
  2017-02-21 10:07 ` Sascha Grunert
  0 siblings, 1 reply; 4+ messages in thread
From: sopium @ 2017-02-21  6:07 UTC (permalink / raw)
  To: wireguard

Hello list and Jason,

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).

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.

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.

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.

0. https://github.com/sopium/titun

1. https://github.com/sopium/noise-rust

2. https://github.com/trevp/screech/issues/5

3. https://github.com/solidsnack/screech/commit/6d91d075ad2f98f03c807a471953495c720a5696

Regards,
Sopium

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Working on a Rust implementation, and request for test vectors
  2017-02-21  6:07 Working on a Rust implementation, and request for test vectors sopium
@ 2017-02-21 10:07 ` Sascha Grunert
  2017-02-21 10:48   ` Jason A. Donenfeld
  2017-02-21 11:14   ` Jason A. Donenfeld
  0 siblings, 2 replies; 4+ messages in thread
From: Sascha Grunert @ 2017-02-21 10:07 UTC (permalink / raw)
  To: wireguard

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 <sopium@mysterious.site>:
>=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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Working on a Rust implementation, and request for test vectors
  2017-02-21 10:07 ` Sascha Grunert
@ 2017-02-21 10:48   ` Jason A. Donenfeld
  2017-02-21 11:14   ` Jason A. Donenfeld
  1 sibling, 0 replies; 4+ messages in thread
From: Jason A. Donenfeld @ 2017-02-21 10:48 UTC (permalink / raw)
  To: Sascha Grunert, sopium; +Cc: WireGuard mailing list

Hey guys,

I've got all the infra for this set up already. I'm on IRC today and
generally available now so let's talk.

Jason

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Working on a Rust implementation, and request for test vectors
  2017-02-21 10:07 ` Sascha Grunert
  2017-02-21 10:48   ` Jason A. Donenfeld
@ 2017-02-21 11:14   ` Jason A. Donenfeld
  1 sibling, 0 replies; 4+ messages in thread
From: Jason A. Donenfeld @ 2017-02-21 11:14 UTC (permalink / raw)
  To: Sascha Grunert, sopium; +Cc: WireGuard mailing list

Hey Sopium,

Sascha and I are all set up. Let me know if you'd like to get in on
the effort too. As well, if you'd like to have a NoiseIK-specific
library or something of that sort, I'd be happy to host that on the
same infra/organization all together. Let me know what you'd like to
do.

Regards,
Jason

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-02-21 11:13 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-21  6:07 Working on a Rust implementation, and request for test vectors sopium
2017-02-21 10:07 ` Sascha Grunert
2017-02-21 10:48   ` Jason A. Donenfeld
2017-02-21 11:14   ` Jason A. Donenfeld

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.