Help us shape the future of Go! Take the 2026 Go Developer Survey

wbauth

command module
v0.0.0-...-ab9358a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 18, 2026 License: Apache-2.0 Imports: 21 Imported by: 0

README

wbauth

Web bot authentication host. Serves an HTTP Message Signatures directory endpoint using Ed25519 keys, following the HTTP Message Signatures standard.

A demo instance of the service is accessible at https://test.wbauth.lightpanda.io/.well-known/http-message-signatures-directory

Usage

WBA_PRIVATE_KEY="$(cat key.pem)" wbauth [options]
Environment variables
Variable Description Default
WBA_PRIVATE_KEY Ed25519 private key in PEM format (required) —
WBA_API_ADDRESS HTTP server listen address 127.0.0.1:8081
Options
  • -api-addr — HTTP server listen address (overrides WBA_API_ADDRESS)
  • -verbose — Enable debug log level

Endpoints

GET /ack

Health check endpoint. Returns an empty 200 OK response.

$ curl http://127.0.0.1:8081/ack -i
HTTP/1.1 200 OK
Date: Mon, 17 Mar 2026 12:00:00 GMT
Content-Length: 0
GET /.well-known/http-message-signatures-directory

Returns the Ed25519 public key in JWK format. The response is signed according to RFC 9421 — HTTP Message Signatures.

  • Content-Type: application/http-message-signatures-directory+json
  • Signature tag: http-message-signatures-directory
  • Signature expiration: 60 seconds
$ curl http://127.0.0.1:8081/.well-known/http-message-signatures-directory -i
HTTP/1.1 200 OK
Content-Type: application/http-message-signatures-directory+json
Signature: http-message-signatures-directory=:BASE64_SIGNATURE:
Signature-Input: http-message-signatures-directory=("@authority");created=...;expires=...;keyid="..."

{
  "keys": [
    {
      "kty": "OKP",
      "crv": "Ed25519",
      "x": "BASE64_PUBLIC_KEY"
    }
  ]
}

License

Apache 2.0 — See LICENSE.

Documentation

Overview

Copyright 2026 Lightpanda (Selecy SAS)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2026 Lightpanda (Selecy SAS)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2026 Lightpanda (Selecy SAS)

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL