jwx

package module
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2021 License: MIT Imports: 0 Imported by: 0

README

go-jwx

WARNING

This repository has been moved to github.com/lestrrat-go/jwx. This repository exists so that libraries pointing to this URL will keep functioning, but this repository will NOT be updated in the future. Please use the new import path.

Documentation

Overview

Package jwx contains tools that deal with the various JWx (JOSE) technologies such as JWT, JWS, JWE, etc in Go.

JWS (https://tools.ietf.org/html/rfc7515)
JWE (https://tools.ietf.org/html/rfc7516)
JWK (https://tools.ietf.org/html/rfc7517)
JWA (https://tools.ietf.org/html/rfc7518)
JWT (https://tools.ietf.org/html/rfc7519)

The primary focus of this library tool set is to implement the extremely flexible OAuth2 / OpenID Connect protocols. There are many other libraries out there that deal with all or parts of these JWx technologies:

https://github.com/dgrijalva/jwt-go
https://github.com/square/go-jose
https://github.com/coreos/oidc
https://golang.org/x/oauth2

This library exists because there was a need for a toolset that encompasses the whole set of JWx technologies in a highly customizable manner, in one package.

You can find more high level documentation at Github (https://github.com/lestrrat/go-jwx)

Index

Constants

View Source
const Version = "0.0.1"

Version describes the version of this library.

Variables

This section is empty.

Functions

This section is empty.

Types

This section is empty.

Directories

Path Synopsis
Package buffer provides a very thin wrapper around []byte buffer called `Buffer`, to provide functionalitites that are often used wthin the jwx related packages
Package buffer provides a very thin wrapper around []byte buffer called `Buffer`, to provide functionalitites that are often used wthin the jwx related packages
cmd
jwx
internal
emap
Package emap provides utility functions for maps MergeMarshal/MergeUnmarshal are used to serialize/deserialize JSON object map which may have different required/known fields and possibly any number of extra parameters
Package emap provides utility functions for maps MergeMarshal/MergeUnmarshal are used to serialize/deserialize JSON object map which may have different required/known fields and possibly any number of extra parameters
padbuf
Package padbuf implements a simple buffer that knows how to pad/unpad itself so that the buffer size aligns with an arbitrary block size.
Package padbuf implements a simple buffer that knows how to pad/unpad itself so that the buffer size aligns with an arbitrary block size.
jwa
Package jwa defines the various algorithm described in https://tools.ietf.org/html/rfc7518
Package jwa defines the various algorithm described in https://tools.ietf.org/html/rfc7518
jwe
Package jwe implements JWE as described in https://tools.ietf.org/html/rfc7516
Package jwe implements JWE as described in https://tools.ietf.org/html/rfc7516
jwk
Package jwk implements JWK as described in https://tools.ietf.org/html/rfc7517
Package jwk implements JWK as described in https://tools.ietf.org/html/rfc7517
jws
Package jws implements the digital signature on JSON based data structures as described in https://tools.ietf.org/html/rfc7515 If you do not care about the details, the only things that you would need to use are the following functions: jws.Sign(payload, algorithm, key) jws.Verify(encodedjws, algorithm, key) To sign, simply use `jws.Sign`.
Package jws implements the digital signature on JSON based data structures as described in https://tools.ietf.org/html/rfc7515 If you do not care about the details, the only things that you would need to use are the following functions: jws.Sign(payload, algorithm, key) jws.Verify(encodedjws, algorithm, key) To sign, simply use `jws.Sign`.
jwt
Package jwt implements JSON Web Tokens as described in https://tools.ietf.org/html/rfc7519
Package jwt implements JSON Web Tokens as described in https://tools.ietf.org/html/rfc7519

Jump to

Keyboard shortcuts

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