Genwallet is a powerful yet user-friendly command-line interface (CLI) for managing your Ethereum accounts directly from your terminal. Genwallet provides a comprehensive set of features to handle various account-related operations securely and efficiently.
- Features
- Security
- Install Rust
- Install Genwallet
- Usage
- Internet Access
- Contributing
- License
- Questions and Feedback
- Create new accounts
- Import existing accounts
- Export accounts to files
- Retrieve account balances
- Get public addresses of accounts
- Execute ETH transfers between accounts
- List all accounts with public addresses and balances
- Rename accounts
- Remove accounts
Genwallet employs strong cryptographic algorithms to ensure the security of your passwords and secret keys. The following algorithms are used:
- PBKDF2: Used to derive cryptographic keys from the user-provided password.
- SHA-256: Utilized to create an authentication key for the password.
- AES-256-CBC: Used to encrypt sensitive data such as endpoints and account credentials.
Note: While Genwallet uses robust cryptographic algorithms, the strength of the protection depends on the strength of your password.
Genwallet requires Rust to be installed on your system. Follow the steps below to install Rust:
- Go to the Rust installation page.
- Follow the instructions to install Rust using
rustup
.
Alternatively, you can run the following command in your terminal:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
After the installation is complete, ensure Rust is added to your system's PATH and verify the installation by checking the version:
rustc --version
To install Genwallet, run the following command:
cargo install --git https://github.com/ajaykumargdr/eth-crypto-wallet.git
After the installation, you can run the Genwallet CLI using the following command:
genwallet --help
If you see the following output, it means that Genwallet is successfully installed on your system:
Genwallet provides a variety of commands to manage your Ethereum accounts. Below is a detailed guide on how to use each command.
genwallet init <endpoint>
Example:
genwallet init https://eth-sepolia.g.alchemy.com/v2/8qXsAot0Z9IQBouKAxAjZgsrPToTSkiE
Create your endpoint from Alchemy. You can also other providers as well.
genwallet create <account_name>
Example:
genwallet create my_account
genwallet import <account_name> --file <path_to_keyfile>
genwallet import <account_name> --key <secret_key>
Examples:
genwallet import my_account --file /path/to/secret.key
genwallet import my_account --key ba9axxxx8a2ef6xxxd00878f5xxx273101024xxx765823d0114xxxxa4b1ac32
genwallet export <account_name> <path>
Example:
genwallet export my_account /path/to/exported.key
genwallet balance <account_name>
Example:
genwallet balance my_account
genwallet id <account_name>
Example:
genwallet id my_account
genwallet transfer <account_name> <to> <eth>
Example:
genwallet transfer my_account 0xRecipientAddress 0.1
genwallet list # list without balances
genwallet list -b # list with balances
Example:
genwallet list -b
genwallet rename <old_account_name> <new_account_name>
Example:
genwallet rename old_name new_name
genwallet remove <account_name>
Example:
genwallet remove my_account
Genwallet requires an internet connection for the following operations:
- Initializing the wallet (
init
) - Retrieving account balances (
balance
) - Listing all accounts with their balances (
list --balance
) - Executing transactions (
transfer
)
Contributions are welcome! Please open an issue or submit a pull request for any changes or additions you'd like to see.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions, feedback, or support, please open an issue on this GitHub repository.