hyperledger-labs / signare

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hyperledger Signare

An enterprise grade digital signing solution for DLT related applications and Ethereum clients.

Pull Requests Badge Issues Badge License Badge

Signare, a Hyperledger Lab, is an enterprise grade digital signing solution for DLT related applications and Ethereum clients. The application provides a REST API server to manage resource configuration and an ETH-JSON-RPC 2.0 server that provides functionality for generating, removing, listing and signing Ethereum transactions.

πŸ—’ Contents

πŸ” Scope of Lab

A security concern shared by most users of DLT applications is "keeping their private key private". In the enterprise space FIPS 140 is often used to inform institutions of how they must manage their private keys. Specifically, FIPS 140-2 Level 2 adds requirements for physical tamper-evidence (and/or tamper-resistance) and role-based authentication, which necessitates the use of an HSM or Cloud HSM.

The purpose of Hyperledger Signare is to provide a FIPS 140-2 Level 2 compliant signing solution for enterprise applications where various HSM and Cloud HSM vendors will be supported via plugins. Hyperledger Signare also provides role-based access controlled interfaces to solve multiple usecases, such as signing Ethereum transactions and for blockchain clients such as Hyperledger Besu to store keys in an HSM or Cloud HSM.

🌐 Useful Links

  • Documentation: Discover the signare functionality and learn to configure it properly.
  • Changelog: Take a look at the record of changes.
  • Feedback: Your help is key to develop the signare.
    • Found a bug? Need help fixing a problem? You can submit your issues here.

⭐ Features

signare comes with a range of features tailored for web3 integration purposes:

  • Different HSMs support: signare support different types of HSM.
  • Ethereum accounts management: generate new accounts, store and assign them to users.
  • Ethereum's transaction signing: sign Ethereum transactions on the fly using managed accounts.

πŸ”§ Installation

To start working with the signare, follow these installation steps:

  1. Clone the repository:

    git clone https://github.com/hyperledger-labs/signare.git
  2. Navigate to the project's deployment directory:

    cd deployment
  3. Build the binary:

    make build
  4. Change directory to bin where the built binary will be stored:

    cd bin  

πŸ§‘β€πŸš€ Getting Started

To get started quickly, please refer to the Getting started guide. It covers a fast introduction to the signare's API usage, from creating a user with a new account to signing a transaction.

πŸ‘©β€πŸ’» Contribute

Contributions are always welcome! Please check our Contribution guidelines for details on how to get involved in the project's development.

πŸ“ License

This project is licensed under the Apache License 2.0 license.

πŸ”¨ Initial Committers

https://github.com/nano-adhara
https://github.com/chookly314
https://github.com/Jserrano27
https://github.com/gynura
https://github.com/ArturoGarciaRegueiro
https://github.com/mkrielza
https://github.com/coeniebeyers

πŸ“§ Sponsor

About

License:Apache License 2.0


Languages

Language:JavaScript 64.2%Language:Go 28.3%Language:CSS 5.3%Language:Mustache 1.5%Language:Java 0.5%Language:Makefile 0.2%Language:Dockerfile 0.1%Language:HTML 0.0%Language:Shell 0.0%