This project is a proof-of-concept implementation of OPAQUE, written in Go.
DISCLAIMER: This is a reference implementation only. DO NOT use in production systems.
Get the source code:
go get github.com/cloudflare/opaque-core
From the opaque-core
folder, run all tests:
make test
For handling an OPAQUE registration, you can use the functions exposed on the registration.go file. For handling an OPAQUE login, you can use the functions exposed on the request.go file. The marshaling and unmarshaling of messages can be found on the core_messages.go, request_messages.go and register_messages.go respectively. A json encoding of messages can be found on the json_encoding.go file.
The project is licensed under the BSD-3-Clause License.