Subject: [Ntp] NTS in Go

From: Michael Cardell Widerkrantz <[email-masked]>
Date: Thu, 25 Jul 2019 11:45:52 +0200

Martin Samuelsson, Daniel Lublin and I participated remotely during the
recent IETF hackathon. Our friend omni participated for a while as well.
Some results:

- A friendly fork of beevik/ntp with NTS support:

  https://github.com/mchackorg/ntp

  Use it like this:

    options := ntp.QueryOptions{ NTS: true, C2s: c2sKey, S2c: s2cKey }
    resp, err := ntp.QueryWithOptions(server, opt)

  Authenticated time now available in resp.Time.
  
- An NTS-KE library:

  https://gitlab.com/hacklunch/ntske

- A small NTS client using the above libraries:

  https://gitlab.com/hacklunch/ntsclient/

This is still a work in progress but seems to work fine against for
example time.cloudflare.com:1234 and zoo.weinigel.se:4446.

The remote hackathon was sponsored by Netnod and held in its Malmö
office but most of the participants have no current relation to Netnod
and none of us work on this full time. Thanks to Netnod for sponsoring
our mini hackathon!

-- 
MC, https://hack.org/mc/
XMPP OTR: f4c09b50 e6d7b04f 7afd37c1 bd3a077e 5ea94a64