libhydrogen
A lightweight, secure, easy-to-use crypto library suitable for constrained environments.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.9%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
A lightweight, secure, easy-to-use crypto library suitable for constrained environments.
Basic Info
- Host: GitHub
- Owner: jedisct1
- License: other
- Language: C
- Default Branch: master
- Homepage: https://libhydrogen.org
- Size: 367 KB
Statistics
- Stars: 694
- Watchers: 40
- Forks: 105
- Open Issues: 1
- Releases: 0
Topics
Metadata Files
README.md
The Hydrogen library is a small, easy-to-use, hard-to-misuse cryptographic library.
Features:
- Consistent high-level API, inspired by libsodium. Instead of low-level primitives, it exposes simple functions to solve common problems that cryptography can solve.
- 100% built using just two cryptographic building blocks: the Curve25519 elliptic curve, and the Gimli permutation.
- Small and easy to audit. Implemented as one tiny file for every set of operation, and adding a single .c file to your project is all it takes to use libhydrogen in your project.
- The whole code is released under a single, very liberal license (ISC).
- Zero dynamic memory allocations and low stack requirements (median: 32 bytes, max: 128 bytes). This makes it usable in constrained environments such as microcontrollers.
- Portable: written in standard C99. Supports Linux, *BSD, MacOS, Windows, and the Arduino IDE out of the box.
- Can generate cryptographically-secure random numbers, even on Arduino boards.
- Attempts to mitigate the implications of accidental misuse, even on systems with an unreliable PRG and/or no clock.
Non-goals: - Having multiple primitives serving the same purpose, even to provide compatibility with other libraries. - Networking -- but a simple key exchange API based on the Noise protocol is available, and a STROBE-based transport API will be implemented. - Interoperability with other libraries. - Replacing libsodium. Libhydrogen tries to keep the number of APIs and the code size down to a minimum.
Libhydrogen documentation
The documentation is maintained in the libhydrogen wiki.
The legacy libhydrogen code (leveraging XChaCha20, SipHashX, BLAKE2SX, Curve25519) remains available in the v0 branch.
Contributors
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
Owner
- Name: Frank Denis
- Login: jedisct1
- Kind: user
- Location: Antibes, France
- Website: https://prettysimpleimages.com
- Twitter: jedisct1
- Repositories: 470
- Profile: https://github.com/jedisct1
Get my public keys here: https://sk.tl/7CPRo8kn
Citation (CITATION.cff)
cff-version: 1.2.0
title: libhydrogen
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Frank
family-names: Denis
orcid: 'https://orcid.org/0009-0008-4417-1713'
repository-code: 'https://github.com/jedisct1/libhydrogen'
url: 'https://libhydrogen.org'
abstract: 'A lightweight, secure, easy-to-use crypto library suitable for constrained environments.'
keywords:
- cryptography
- library
- embedded
license: ISC
GitHub Events
Total
- Issues event: 12
- Watch event: 92
- Issue comment event: 33
- Push event: 4
- Pull request review comment event: 5
- Pull request review event: 5
- Pull request event: 2
- Fork event: 16
Last Year
- Issues event: 12
- Watch event: 92
- Issue comment event: 33
- Push event: 4
- Pull request review comment event: 5
- Pull request review event: 5
- Pull request event: 2
- Fork event: 16
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Frank Denis | g****b@p****g | 275 |
| Michael Smith | m****l@s****t | 15 |
| Robert Edmonds | e****s | 7 |
| Justin Decker | J****0@g****m | 3 |
| Markus Petermann | m****l@m****t | 3 |
| Taiki | T****n | 3 |
| Dan Kouba | d****a@p****o | 2 |
| DeeFuse | 7****e | 2 |
| Phil Day | p****y@c****m | 2 |
| myd7349 | m****9@g****m | 2 |
| wuhanstudio | w****o@q****m | 2 |
| Guillaume Millot | g****t@g****m | 2 |
| Jonathan Gordon | j****n@f****e | 1 |
| gh0st42 | g****t@b****u | 1 |
| Adrien Gallouët | a****n@g****r | 1 |
| Artem Godlevskyi | a****y@g****m | 1 |
| Baptiste Canton | b****t@s****r | 1 |
| Benjamin Valentin | b****n@m****m | 1 |
| Chris Copeland | c****s@c****t | 1 |
| Ian | i****s@g****m | 1 |
| Jess | j****r@g****m | 1 |
| Mohammad Puyandeh | i****t@y****m | 1 |
| RikkaW | r****a@s****e | 1 |
| Solar Designer | s****r@o****m | 1 |
| daurnimator | q****e@d****m | 1 |
| nxrighthere | n****e@g****m | 1 |
| ohell | a****t@l****n | 1 |
| per1234 | a****s@p****m | 1 |
| sasiso | s****i@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 68
- Total pull requests: 43
- Average time to close issues: 7 months
- Average time to close pull requests: 3 months
- Total issue authors: 55
- Total pull request authors: 28
- Average comments per issue: 2.68
- Average comments per pull request: 2.81
- Merged pull requests: 30
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: 1 day
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 1.5
- Merged pull requests: 1
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- chrisnc (5)
- rligocki (4)
- KamiK2K (3)
- llsoft2000 (2)
- AshishDurgapal (2)
- creationix (2)
- gurpreet- (2)
- Laczen (1)
- RandyGaul (1)
- ulno (1)
- 44670 (1)
- DeeFuse (1)
- luelista (1)
- ohell (1)
- jdgordon (1)
Pull Request Authors
- spinda (8)
- edmonds (4)
- wuhanstudio (3)
- autoantwort (2)
- myd7349 (2)
- 0xebef (2)
- DeeFuse (2)
- errno (2)
- CharlesScoville (2)
- PhilDay-CT (2)
- guillaumemillot (1)
- batmac (1)
- markuspetermann (1)
- solardiz (1)
- benpicco (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- github/codeql-action/analyze v1 composite
- github/codeql-action/autobuild v1 composite
- github/codeql-action/init v1 composite
- ShiftLeftSecurity/scan-action master composite
- actions/checkout v1 composite
