Commit 895c2ab
authored
feat: add BLS crypto module (#15)
* feat: setup initial project structure
* feat: update CI to use nightly toolchain for rustfmt
* feat: update CI to use nightly toolchain for rustfmt
* fix: fmt
* refactor: reorganize workspace members and remove charon-types crate
* feat: add core types and dependencies for Charon
* feat: add is_valid method and tests for DutyType
* feat: enhance Charon core types with new methods and error handling for PubKey
* chore: remove unused proptest dependency from workspace
* feat: implement Default trait for UnsignedDataSet, ParSignedDataSet, and SignedDataSet
* refactor: update PubKey methods for improved error handling and add try_from implementation
* docs: clarify slot duration comment and add debug prints for PubKey serialization/deserialization tests
* fix: remove unnecessary println
* feat: add tbls crypto boilerplate
* feat: add initial implementation of tbls
* feat: add tests for the bls implementation
* feat: integrate blsful implementation and refactor tbls module
- Added `thiserror` dependency for improved error handling.
- Introduced `blsful` module for TBLS implementation.
- Refactored `tbls` module to utilize new types and error handling.
- Created `tblsconv` module for type conversions between byte slices and cryptographic types.
- Removed the old `herumi` implementation and replaced it with the new `blsful` based implementation.
- Added utility functions for key and signature conversions.
- Updated types and error definitions for better clarity and consistency.
* style: improve code formatting and documentation in tblsconv module
- Reformatted comments for better readability.
- Adjusted spacing and alignment in error messages for consistency.
- Ensured clarity in documentation regarding expected byte lengths for key and signature conversions.
* chore: clean up Cargo.toml by removing duplicate dependencies and organizing workspace lints
* chore: update Cargo.lock with new dependencies and versions
* chore: fix clippy warnings
* refactor: replace blsful implementation with blst for threshold BLS signatures
- Updated dependencies in Cargo.toml and Cargo.lock to use the blst library.
- Removed blsful module and its associated code, including type conversions and utility functions.
- Introduced a new blst_impl module for the BLST implementation of threshold BLS signatures.
- Refactored tbls module to utilize the new blst implementation.
- Cleaned up error handling and types to align with the new library.
- Added workspace lints and improved documentation throughout the codebase.
* refactor: update lints and improve function signatures in blst implementation
* fix: add more retries in generate_insecure_secret
* fix: review comments, optimize type convertion
* fix: improve error handling for scalar to secret key conversion
* fix: review comments, improve error naming and add zero division check1 parent e846c3a commit 895c2ab
8 files changed
Lines changed: 1463 additions & 35 deletions
File tree
- crates
- charon-core
- charon-crypto
- src
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
34 | 38 | | |
35 | 39 | | |
36 | 40 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
11 | | - | |
12 | 10 | | |
13 | 11 | | |
| 12 | + | |
| 13 | + | |
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
10 | 16 | | |
11 | | - | |
12 | | - | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
0 commit comments