Last month I got familiar with Ethereum blockchain, while I heard about it ofthen within last year but never had a chance to start running it and dive into interesting concept of smart-contracts and overall blockchain technology besides Bitcoin. Thus I’m starting seria of my small notes to save my thoughts for later use. Naturally, I’ll compare it to Bitcoin and it’s architecture. Some people call Ethereum a second wave blockchain, because some similar projects also rise in parallell with it.
The term “Ethereum” actually applies to several things and depends on the context:
- the Ethereum project as an organization with people
- the Ethereum protocol as well-defined description of idea with numerous EIP (improvements proposals)
- the Ethereum network created by computers using the protocol with specific software called
client node. I should mentions that not all nodes actively participating in the system, if you don’t have appropriate hardware you won’t subject of mining and very often need to install additional software such as
miner client node.
It’s has the same peer-to-peer (p2p) nature, when you’re running a client software you’ll become a
peer of some type.
I’m mostly interesting in (2) ethereum as protocol and pecularities of implementation and how it can be applied in real world. You cna think about Ethereum as an distributed execution environment and this something worth of exploring as an oportunity to create new applications.
There are several clients that allows you to operate within Ethereum network and that’s the benefit of having a protocol that describes all interactions. You can implement it on your own and be able to work within system. Official client is
geth and it’s rival
parity. Last one provide more abilities and configurations.
I started initially with
geth and it different in way how programms download chains,
parity on my end is quickier.
How to start client for a different chain?
$ parity --base-path="/home/sigrlami/.parity-ropsten" -–chain=ropsten
How to allow access to client through web3?
List allowed protocols with key
$ parity --base-path="/home/sigrlami/.parity-ropsten" --chain=ropsten --jsonrpc-apis "eth","net","web3","personal","parity"
How to give access to Remix through web3?
Use CORS parameter for remix website
$ parity --base-path="/home/sigrlami/.parity-ropsten" --chain=ropsten --jsonrpc-apis "eth","net","web3","personal","parity" --jsonrpc-cors "https://remix.ethereum.org"
If you liked this work, you can reward so I can write more often or simply buy me a tea/beer/donut:
If you want me to write about some specific topic, check about section and send me email with request