Skip to content

Abdulbois/sd-jwt-rust

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SD-JWT Rust Reference Implementation

This is the reference implementation of the IETF SD-JWT specification written in Rust.

Note: while the project is started as a reference implementation, it is intended to be evolved to a production-ready, high-performance implementations in the long-run.

Repository structure

SD-JWT Rust crate

SD-JWT crate is the root of the repository.

To build the project simply perform:

cargo build

To run tests:

cargo test

Interoperability testing tool

TBD

API

Note: the current version of the crate is 0.0.x, so the API should be considered as experimental. Proposals about API improvements are highly appreciated.

TBD

Functionality

Please refer to the list, unchecked items are in progress and will be supported soon

  • Issuance of SD-JWT
  • Presentation of SD-JWT with custom schema
  • Verification of SD-JWT
  • CI pipelines for Ubuntu
  • Support of multiple hash / sign algorithms
  • JWT Key Binding support
  • Selective disclosure of arrays elements
  • Extended error handling
  • Extended CI/CD

External Dependencies

Dual license (MIT/Apache 2.0) dependencies: base64, lazy_static log, serde_json, sha2, rand, hmac. MIT license dependencies: jsonwebtoken.

Note: the list of dependencies may be changed in the future.

Initial Maintainers

  • Sergey Minaev (Github)
  • DSR Corporation Decentralized Systems Team (Github)

To Be Completed by Maintainers

  • Create MAINTAINERS.md file using the format documented on the TAC site.
  • Create a CONTRIBUTING.md file that documents steps for contributing to the project
  • Create a CODEOWNERS file
  • Update the README.md file as necessary

About

SD-JWT Rust Reference Implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%