alexzautke / JWS

C# Implementation of RFC7515 (JSON Web Signature)
MIT License
9 stars 3 forks source link

C# JWSs - JSON Web Signature (RFC7515)

This repository provides an implementation in C# of RFC7515 (JSON Web Signature).

Notice: The current implementation has been used in a production environment.
However, no support will be offered for this project. Here be dragons. Please fill any bugs you may find.

Getting Started

JSON Web Signature (JWS) represents content secured with digital signatures or Message Authentication Codes (MACs) using JSON-based data structures.

All details of the implementation are based on the following literature:

Supported algorithms for creating a digital signature / MAC:

Algorithm Support
RSA RS256, RS384, RS512 :white_check_mark:
Eliptic Curves ES256, ES384, ES512 :white_check_mark:
HMAC HS256, HS384, HS512 :negative_squared_cross_mark:
None none :x:
Meaning
:white_check_mark: Fully implemented and tested
:negative_squared_cross_mark: Currently being implemented / Untested
:x: Not implemented yet

Build

The following configuration has been succesfully tested for building and running the project:

Build status

Limitations

Project TODOs

Documentation

INSTALL

NuGet

https://www.nuget.org/packages/CreativeCode.JWS/

dotnet add package CreativeCode.JWS

Building from source

  1. git clone https://github.com/alexzautke/JWS.git
  2. dotnet pack -c Release
  3. Install NuGet package from local source

Usage

See JWS Example

Test

Simply run dotnet test in the root folder of the project. All tests should be passing.

Security Conciderations

License

This project is licensed under the MIT License - see the LICENSE file for details