You can use MyEtherWallet or MyCrypto(fork of MyEtherWallet) offline only wallet "view wallet details" function to extract private key from wallet json file. Feel free to use its offline version on an air gapped computer to secure your private key.
Edit: MyCrypto only provides this function in the offline version of the wallet now for obvious security ...
If you have node.js, you can do this in node
//install keythereum by runing "npm install keythereum"
'./Appdata/roaming/ethereum' is the folder contains 'keystore'. importFile looks for 'keystore' in that folder.
I'm assuming your mist client runs a geth node in background.
Export of unencrypted key is not supported on purpose after deliberating the risk to end users. #1054
Unfortunately it seems not to be possible to extract the unencrypted private key.
If you got the key file under keystore then that is your private key encrypted with a password (plus other ...
Or you can simply use etherscan API and Json to CSV online service.
Use API, ie: https://api.etherscan.io/api?module=account&action=txlist&address=0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae&sort=asc and put it in the URL field of http://www.convertcsv.com/json-to-csv.htm
The steps here are heavily ...
You could also use the wallet functionality on EthTools.com.
This tool loads details about your address from your keyfile and displays them in an easily consumable manner.
The load wallet screen
Select (or input) your keyfile
Click advanced to view your private key
Using this tool is also explained here in video format.
Recently, PeterChauYEG put together a node app / scraper for the DAO address that uses Etehrescan's API and outputs a CSV.
DAO Datascraper site
It will do the same for any address provided if you changed line 8 @ main.js: const address = '0xbb9bc244d798123fde783fcc1c72d3bb8c189413'; to the address you would like to generate a CSV from.
If you ...
Here is a guide on how to export Ethereum data to csv https://medium.com/@medvedev1088/exporting-and-analyzing-ethereum-blockchain-f5353414a94e
It uses https://github.com/medvedev1088/ethereum-etl which outputs the data into blocks.csv, transactions.csv, erc20_transfers.csv.
Column | Type |
There's no built-in way to do this. How difficult it is to do depends on what you mean by "related to a specific account".
Transactions initiated by an external account are easy to look up, as 'from' is one of the fields of the transaction - though there's no API call that returns only transactions initated by a given account you can at least scan ...
It seems like web3 should be able to get the job done for you via accounts.privateKeyToAccount(privateKey). It accepts a private key string then returns an object which includes the associated address. Remember that an Ethereum address is a deterministic function of the private key, so if you've got the private key, you've got the address.
Your overall ...
I have created a standalone tool which does the same.
Take a token contract address
Iterate over all Transfer events for token using eth_getLogs JSON-RPC API
Build a local database of these events
Allow you to use SQL to query any account balance on any point of time (block num)
You can find the command line application execution example how to build the ...
QuickBlocks provides a command line tool getBlock that can do this. It runs against a local node, if present, or Infura if not. It retrieves only 10,000 blocks at a time, but you could write a shell script to loop over (with a sleep to allow for Infura's rate limit). You call it with
and it prints all JSON for all the blocks from start ...
Here is a guide about exporting Ethereum blockchain data into csv and analyzing it with AWS Athena https://medium.com/@medvedev1088/exporting-and-analyzing-ethereum-blockchain-f5353414a94e
I used this tool to export the data https://github.com/medvedev1088/ethereum-etl
Column | Type |
As outlined here,
"Data structures are stored in Merkle Patricia tries"
I have encountered the same problem as you have described and opted to collect the data in a more consumable format by taking advantage of the fact that both Geth and Parity implement the full set of JSON RPC endpoints.
You can use web3.js for example to query these endpoints and ...
If you are writing the contract you include events in your contract to track what's happening, and then you can log those events easily to a CSV file. This will include internal transactions as well, which addresses an issue noted above.
In Solidity, you log with Events. You can then listen to all events on your contract with web3.js "allEvents" callback.