Crates.io | Pedersen_hash_function |
lib.rs | Pedersen_hash_function |
version | 0.1.0 |
source | src |
created_at | 2024-10-14 22:30:34.982274 |
updated_at | 2024-10-14 22:30:34.982274 |
description | This library computes the pedersen hash of given inputs and modular arithmetic. |
homepage | |
repository | https://github.com/BiliqisO/moon-math/tree/pedersens-hash-function |
max_upload_size | |
id | 1408754 |
size | 8,648 |
This project provides a Rust implementation of Pedersen's Hash Function, a cryptographic hash function that maps fixed-size tuples of elements from modular arithmetic into elements of finite cyclic groups. Pedersen's hash function is widely used in zero-knowledge proofs, cryptographic protocols, and blockchain applications due to its properties of hiding inputs while maintaining commitments.
The implementation focuses on efficiency and security, allowing users to easily compute hash values for various inputs while ensuring the integrity and non-repudiation of the hashed data.
To use this implementation, add the following dependency to your Cargo.toml
[dependencies] pedersen-hash = "0.1.0" # Replace with the latest version
TTo include this Pedersen hash function in your Rust project, add the following to your Cargo.toml
:
[dependencies]
pedersen-hash = "0.1.0" # Replace with the latest version
```
use Pedersen_hash_function::pedersen_hash_function;
let x = 1;
let y = 2;
let cyclic_group = 5;
let pedersen_hash = pedersen_hash_function(x ,y, 0, cyclic_group);
assert_eq!(pedersen_hash,3);
```
## Contributing
1. Fork the repository.
2. Navigate to the project directory:
```bash
cd moon-math
Checkout to this branch:
git checkout -b pedersens-hash-function
Run the following command:
cargo run
This project is licensed under the MIT License.