Raku Advent Calendar 2023 — Dissecting the Geth (Go-Ethereum) keystore files using Raku tools
Dissecting the Geth (Go-Ethereum) keystore files using Raku tools
Article: https://gitlab.com/pheix-research/talks/-/blob/main/advent/2023.md
TOC
- Intro: The idea behind this research
- signing transactions locally;
- integration with telegram bot — add new accounts to Ethelia public node.
- What is the Ethereum (Web3) keystore file;
- overview;
- actual scope (real world tasks):
- Tools (aka hacks) to get private key from keystore file;
- Importing new accounts (private keys) into Geth client.
- Implementation in Raku
- Initial state (it looks promising):
- libscrypt via
Crypt::LibScrypt; - AES128-CTR algo via
GcryptandOpenSSL; - UUID;
- libscrypt via
- Problems (are on the most important steps);
- Let's raise a few Pull Requests
-
Crypt::LibScrypt; - my new modules as intermediate step.
-
- Yet another binding for GNU Libgcrypt;
- Upgrade
Bitcoin::Core::Secp256k1.
- Initial state (it looks promising):
-
Node::Ethereum::KeyStore::V3- Quick start;
-
ethkeystorev3-cliutility; - Dependencies.
- Afterword
- Ethelia service;
- Registering via Telegram Bot;
- Demo pitch
Edited by Konstantin Narkhov