Hi, in this tutorial, we will be looking at how to generate a blockchain key pair address with the rust programming language.
[image credit : https://connects.world]
In this project,two crates were used namely:
- Secp256k1[https://docs.rs/secp256k1/latest/secp256k1/]
- anyhow (https://crates.io/crates/anyhow).
Secp256k1
is a Rust implementation of the Pieter Wuille’s secp256k1 eliptic curve. The bitcoin network uses this eliptic curve for its public key generation algorithm too.
The anyhow
crate is used for handling errors graciously in Rust.
Enough of the talking....
First, we declare a public function named create_keypair()
which returns a public key and private (secret) key pair. We then initiate the secp256k1
crate. On line 9 we used the random number generator rng
on the secp256k1
crate to generate a secure private key. On line 10, we generated the key-pairs by invoking the generate_keypair
method which takes a rng from line 9.
The main function just makes a call to the create_keypair()
function, and then prints the output.
Note: As you change the integer in seed_from_u64
, you get a different set of private and public keys.
Conclusion
To run the code for this tutorial, add the following lines to your Cargo.toml
file
[dependencies]
secp256k1 = {version = "0.20.3", features = ["rand"]}
anyhow = "1.0.47"
Open your terminal then execute cargo run
.
I hope you enjoyed the tutorial, you can drop your comments if you have questions.
Top comments (0)