GitHub - ethereum/clef-ui: UI Implementation for Clef, the ...
Ethereum Classic is an open, decentralized, and permissionless public blockchain, that aims to fulfill the original promise of Ethereum, as a platform where smart contracts are free from third-party interference. ETC prioritizes trust-minimization, network security, and integrity. All network upgrades are non-contentious with the aim to fix critical issues or to add value with newly proposed features; never to create new tokens, or to bail out flawed smart contracts and their interest groups.
Ethereum on ARM. New Eth2.0 Raspberry Pi 4 image for joining the Medalla multi-client testnet. Step-by-step guide for installing and activating a validator (Prysm, Teku, Lighthouse and Nimbus clients included)
TL;DR: Flash your Raspberry Pi 4, plug in an ethernet cable, connect the SSD disk and power up the device to join the Eth2.0 medalla testnet. The image takes care of all the necessary steps to join the Eth2.0 Medalla multi-client testnet , from setting up the environment and formatting the SSD disk to installing, managing and running the Eth1.0 and Eth2.0 clients. You will only need to choose an Eth2.0 client, start the beacon chain service and activate / run the validator. Note: this is an update for our previous Raspberry Pi 4 Eth2 image  so some of the instructions are directly taken from there.
Based on Ubuntu 20.04 64bit.
Automatic USB disk partitioning and formatting
Adds swap memory (ZRAM kernel module + a swap file)
Changes the hostname to something like “ethnode-e2a3e6fe” based on MAC hash
Automatically syncs Eth1 Goerli testnet (Geth)
Includes an APT repository for installing and upgrading Ethereum software
Includes 4 Eth2.0 clients
Includes EF eth2.0-deposit-cli tool
Includes 5 monitoring dashboards based on Grafana / Prometheus
Geth: 1.9.20  (official binary) configured for syncing Goerli Testnets
Eth2.0-deposit-cli: 0.2.1 (bundled) 
Prysm: 1.0.0alpha24 
Beacon Chain (official binary)
Validator binary (official binary)
Teku: 0.12.4alpha+20200821 (compiled) 
Lighthouse 0.2.8 (official binary) 
Nimbus 0.5.0 (compiled) 
Grafana 7.0.4 (official package) 
INSTALLATION GUIDE AND USAGE
RECOMMENDED HARDWARE AND SETUP
Raspberry 4 (model B) - 4GB or 8GB (8 GB RAM highly recommended)
MicroSD Card (16 GB Class 10 minimum)
SSD USB 3.0 disk (see storage section)
A case with heatsink and fan (Optional but strongly recommended)
USB keyboard, Monitor and HDMI cable (micro-HDMI) (Optional)
STORAGE You will need an SSD to run the Ethereum clients (without an SSD drive there’s absolutely no chance of syncing the Ethereum blockchain). There are 2 options: Use an USB portable SSD disk such as the Samsung T5 Portable SSD. Use an USB 3.0 External Hard Drive Case with a SSD Disk. In our case we used a Inateck 2.5 Hard Drive Enclosure FE2011. Make sure to buy a case with an UASP compliant chip, particularly, one of these: JMicron (JMS567 or JMS578) or ASMedia (ASM1153E). In both cases, avoid getting low quality SSD disks as it is a key component of your node and it can drastically affect the performance (and sync times). Keep in mind that you need to plug the disk to an USB 3.0 port (in blue). IMAGE DOWNLOAD AND INSTALLATION 1.- Download the image: http://www.ethraspbian.com/downloads/ubuntu-20.04.1-preinstalled-server-arm64+raspi-eth2-medalla.img.zip SHA256 149cb9b020d1c49fcf75c00449c74c6f38364df1700534b5e87f970080597d87 2.- Flash the image Insert the microSD in your Desktop / Laptop and download the file. Note: If you are not comfortable with command line or if you are running Windows, you can use Etcher  Open a terminal and check your MicroSD device name running: sudo fdisk -l You should see a device named mmcblk0 or sdd. Unzip and flash the image: unzip ubuntu-20.04.1-preinstalled-server-arm64+raspi-eth2-medalla.img.zip sudo dd bs=1M if=ubuntu-20.04.1-preinstalled-server-arm64+raspi.img of=/dev/mmcblk0 conv=fdatasync status=progress 3.- Insert de MicroSD into the Raspberry Pi 4. Connect an Ethernet cable and attach the USB SSD disk (make sure you are using a blue port). 4.- Power on the device The Ubuntu OS will boot up in less than one minute but you will need to wait approximately 7-8 minutes in order to allow the script to perform the necessary tasks to install the Medalla setup (it will reboot again) 5.- Log in You can log in through SSH or using the console (if you have a monitor and keyboard attached)
User: ethereum Password: ethereum
You will be prompted to change the password on first login, so you will need to log in twice. 6.- Forward 30303 port in your router (both UDP and TCP). If you don’t know how to do this, google “port forwarding” followed by your router model. You will need to open additional ports as well depending on the Eth2.0 client you’ve chosen. 7.- Getting console output You can see what’s happening in the background by typing: sudo tail -f /valog/syslog 8.- Grafana Dashboards There are 5 Grafana dashboards available to monitor the Medalla node (see section “Grafana Dashboards” below).
The Medalla Eth2.0 multi-client testnet
Medalla is the official Eth2.0 multi-client testnet according to the latest official specification for Eth2.0, the v0.12.2  release (which is aimed to be the final) . In order to run a Medalla Eth 2.0 node you will need 3 components:
An Eth1.0 node running the Goerli testnet in sync . Geth in our case.
An Eth2.0 Beacon Chain connected to the Eth1.0 node. You will need to choose a client here (Prysm, Lighthouse, Teku or Nimbus)
An Eth2.0 Validator connected to the Beacon Chain (same client as the Beacon Chain)
The image takes care of the Eth1.0 setup. So, once flashed (and after a first reboot), Geth (Eth1.0 client) starts to sync the Goerli testnet. Follow these steps to enable your Eth2.0 Ethereum node: CREATE THE VALIDATOR KEYS AND MAKE THE DEPOSIT We need to get 32 Goerli ETH (fake ETH) ir order to make the deposit in the Eth2.0 contract and run the validator. The easiest way of getting ETH is by joining Prysm Discord's channel. Open Metamask , select the Goerli Network (top of the window) and copy your ETH Address. Go to: https://discord.com/invite/YMVYzv6 And open the “request-goerli-eth” channel (on the left) Type: !send $YOUR_ETH_ADDRESS (replace it with the one copied on Metamask) You will receive enough ETH to run 1 validator. Now it is time to create your validator keys and the deposit information. For your convenience we’ve packaged the official Eth2 launchpad tool . Go to the EF Eth2.0 launchpad site: https://medalla.launchpad.ethereum.org/ And click “Get started” Read and accept all warnings. In the next screen, select 1 validator and go to your Raspberry Pi console. Under the ethereum account run: cd && deposit --num_validators 1 --chain medalla Choose your mnemonic language and type a password for keeping your keys safe. Write down your mnemonic password, press any key and type it again as requested. Now you have 2 Json files under the validator_keys directory. A deposit data file for sending the 32 ETH along with your validator public key to the Eth1 chain (goerli testnet) and a keystore file with your validator keys. Back to the Launchpad website, check "I am keeping my keys safe and have written down my mnemonic phrase" and click "Continue". It is time to send the 32 ETH deposit to the Eth1 chain. You need the deposit file (located in your Raspberry Pi). You can, either copy and paste the file content and save it as a new file in your desktop or copy the file from the Raspberry to your desktop through SSH. 1.- Copy and paste: Connected through SSH to your Raspberry Pi, type: cat validator_keys/deposit_data-$FILE-ID.json (replace $FILE-ID with yours) Copy the content (the text in square brackets), go back to your desktop, paste it into your favourite editor and save it as a json file. Or 2.- Ssh: From your desktop, copy the file: scp [email protected]$YOUR_RASPBERRYPI_IP:/home/ethereum/validator_keys/deposit_data-$FILE_ID.json /tmp Replace the variables with your data. This will copy the file to your desktop /tmp directory. Upload the deposit file Now, back to the Launchpad website, upload the deposit_data file and select Metamask, click continue and check all warnings. Continue and click “Initiate the Transaction”. Confirm the transaction in Metamask and wait for the confirmation (a notification will pop up shortly). The Beacon Chain (which is connected to the Eth1 chain) will detect this deposit (that includes the validator public key) and the Validator will be enabled. Congrats!, you just started your validator activation process. CHOOSE AN ETH2.0 CLIENT Time to choose your Eth2.0 client. We encourage you to run Lighthouse, Teku or Nimbus as Prysm is the most used client by far and diversity is key to achieve a resilient and healthy Eth2.0 network. Once you have decided which client to run (as said, try to run one with low network usage), you need to set up the clients and start both, the beacon chain and the validator. These are the instructions for enabling each client (Remember, choose just one Eth2.0 client out of 4): LIGHTHOUSE ETH2.0 CLIENT 1.- Port forwarding You need to open the 9000 port in your router (both UDP and TCP) 2.- Start the beacon chain Under the ethereum account, run: sudo systemctl enable lighthouse-beacon sudo systemctl start lighthouse-beacon 3.- Start de validator We need to import the validator keys. Run under the ethereum account: lighthouse account validator import --directory=/home/ethereum/validator_keys Then, type your previously defined password and run: sudo systemctl enable lighthouse-validator sudo systemctl start lighthouse-validator The Lighthouse beacon chain and validator are now enabled PRYSM ETH2.0 CLIENT 1.- Port forwarding You need to open the 13000 and 12000 ports in your router (both UDP and TCP) 2.- Start the beacon chain Under the ethereum account, run: sudo systemctl enable prysm-beacon sudo systemctl start prysm-beacon 3.- Start de validator We need to import the validator keys. Run under the ethereum account: validator accounts-v2 import --keys-dir=/home/ethereum/validator_keys Accept the default wallet path and enter a password for your wallet. Now enter the password previously defined. Lastly, set up your password and start the client: echo "$YOUR_PASSWORD" > /home/ethereum/validator_keys/prysm-password.txt sudo systemctl enable prysm-validator sudo systemctl start prysm-validator The Prysm beacon chain and the validator are now enabled. TEKU ETH2.0 CLIENT 1.- Port forwarding You need to open the 9151 port (both UDP and TCP) 2.- Start the Beacon Chain and the Validator Under the Ethereum account, check the name of your keystore file: ls /home/ethereum/validator_keys/keystore* Set the keystore file name in the teku config file (replace the $KEYSTORE_FILE variable with the file listed above) sudo sed -i 's/changeme/$KEYSTORE_FILE/' /etc/ethereum/teku.conf Set the password previously entered: echo "yourpassword" > validator_keys/teku-password.txt Start the beacon chain and the validator: sudo systemctl enable teku sudo systemctl start teku The Teku beacon chain and validator are now enabled. NIMBUS ETH2.0 CLIENT 1.- Port forwarding You need to open the 19000 port (both UDP and TCP) 2.- Start the Beacon Chain and the Validator We need to import the validator keys. Run under the ethereum account: beacon_node deposits import /home/ethereum/validator_keys --data-dir=/home/ethereum/.nimbus --log-file=/home/ethereum/.nimbus/nimbus.log Enter the password previously defined and run: sudo systemctl enable nimbus sudo systemctl start nimbus The Nimbus beacon chain and validator are now enabled. WHAT's NEXT Now you need to wait for the Eth1 blockchain and the beacon chain to get synced. In a few hours the validator will get enabled and put into a queue. These are the validator status that you will see until its final activation:
DEPOSITED (the beacon chain detected the 32 ETH deposit with your validator public key)
PENDING (you are in a queue for being activated)
Finally, it will get activated and the staking process will start. Congratulations!, you join the Medalla Eth2.0 multiclient testnet!
We configured 5 Grafana Dashboards to let users monitor both Eth1.0 and Eth2.0 clients. To access the dashboards just open your browser and type your Raspberry IP followed by the 3000 port:
Lots of info here. You can see for example if Geth is in sync by checking (in the Blockchain section) if Headers, Receipts and Blocks fields are aligned or find Eth2.0 chain info.
Updating the software
We will be keeping the Eth2.0 clients updated through Debian packages in order to keep up with the testnet progress. Basically, you need to update the repo and install the packages through the apt command. For instance, in order to update all packages you would run: sudo apt-get update && sudo apt-get install geth teku nimbus prysm-beacon prysm-validator lighthouse-beacon lighthouse-validator Please follow us on Twitter in order to get regular updates and install instructions. https://twitter.com/EthereumOnARM
Rust blockchain development continued at its typical blistering pace, and again it's impossible to follow everything going on. This month we see continued advancement in zero-knowledge computing, an obvious focus from the entire blockchain industry on the DeFi phenomenon, and some new hackathons with opportunities for Rust developers. Every month seems to bring advancements in zero-knowledge proofs, and new implementations in Rust. It is a research area that will probably impact the general computing industry eventually, and one where the blockchain industry is leading the way, and one where Rust has a huge foothold. Even projects that are not written in Rust we see implementing their zero-knowledge cryptography in Rust. But this stuff is extremely technical, and improving at a rapid pace. We fear we will never understand it. There are several Rust blockchains now in development that are built around zero-knowledge VMs, whose smart contracts create zero-knowledge proofs:
Aleo. A new platform with its own zero-knowledge programming language, Leo.
Each month we like to shine a light on a notable Rust blockchain project. This month that project is… Fluence. This is a blockchain with built-in software license management. We’re excited about this because license management is a rare non-currency use case for blockchains that makes a lot of sense. While we might expect to see more blockchain platforms devoted solely to digital licensing, fluence is actually a complete distributed computing platform, with a unique vision about using license management to generate profit from open source software.
James Waugh shared big news from Secret Network. Privacy-preserving smart contracts are going live on Secret Network Tuesday, September 15! Now developers can build and deploy “secret contracts” with encrypted inputs, outputs, and state.
Buggy Code Release Knocks 13% of Ethereum Nodes Offline
Image: Alan Emery - Unsplash A “critical bug” has left 13% of Ethereum nodes useless, highlighting what is a growing chink in the network’s armor: client centralization. First hinted at in May and June on GitHub, minority clients Parity-Ethereum and OpenEthereum versions 2.7 and later contain an unknown critical bug that stops nodes from syncing with the network’s latest block. Such bugs would be a normal issue if it weren’t for the length of time it will take to fix (weeks to months) and additional strain it’ll place on the majority client, Geth. Clients themselves are different programming language implementations of blockchain software. Running multiple implementations together is considered a way to thwart network attacks by having concurrent yet separate systems running. It’s proven to be a helpful model historically. For example, the 2016 Shanghai attacks saw Geth momentarily shut down following a distributed denial of service (DDOS) attack. Parity-Ethereum managed to keep the network afloat single handedly. The Ethereum Foundation-backed Geth client now supports some 80% of the $43 billion network. This dependency is a recognized attack vector that has forced developers to postpone the July hard fork, Berlin, so minority clients could gain some traction. Yet, eight weeks later Geth’s pie share has only grown larger. And it’s likely to climb as these broken node operators have a decision on their hands: turn off their client, back up to an old client version or swap to another client entirely. Geth did not return questions for comment by press time. Continue reading
Top 10 of the Best Tools for Blockchain Development
What is ETC coin? Ethereum Classic (ETC) is an open-source, blockchain-based platform that runs smart contracts. Actually ETC is not a new cryptocurrency. It is the first, unaltered version of the existing Ethereum project. But what happened in the crypto world that made Ethereum broke up? by StealthEX In June 2016, hackers managed to detect errors in Ethereum, which caused the loss in the amount of approximately $ 50 million. After this hacking, the developers decided to secure the network and make some adjustments to the original code of the project. Here the project’s team was divided into two ideological oppositions. The first ones supported changes, so the current Ethereum platform appeared. Others did not agree with this decision, arguing that it violates the very principles of the blockchain-technology as a self-regulatory and democratic system. So they remained on the old blockchain and created the Ethereum Classic project. Nowadays Ethereum Classic is one of the TOP 50 cryptocurrencies by market capitalization.
In 2019 the project has gone through many events and updated. Among the most significant are the following: • Introduced ETC Labs Core — an ETC Core Development Team. • Worked hard on the security issues: updated Parity Ethereum nodes to versions 2.2.9-stable, 2.3.2-beta, 2.2.10-stable and 2.3.3-beta. • Concentrated on-chain monitoring and analysis tooling and launched a network supervisor. • Released classic-Geth v6.0.6-beta. • Introduced ETC Bridge and wrapped Ethereum Classic (WETC). • Proposed and championed Atlantis hard fork and announced Agharta hard fork. • ETC Labs Presented: Scanta, StaTwig, VREX Lab, Cryzen, ETC coin wallet — Button Wallet, Ethernode and many other projects. • The Ethereum Classic’s team took part in a lot of events and interviews including the hosting ETC Summit 2019 and Debunking Blockchain Security event. • Build partnerships with Nasdaq Entrepreneurial Center, Lehigh University, Pulse Agent, Second State and with others.
What to expect in 2020?
According to the official 2020 roadmap till the end of this year we can expect the following: • LLVM Instruction scheduler and performance optimizations. • Adding Connext state channels support. The goal is to have Connext ETC .channels live in 2020. • Adding fork monitor and ethstats dashboards to EthereumClassic.org. • Updates to ECIP process via ECIP-1000 discussion. • EVM-LLVM Official beta release. • Delivering a modular specification for Ethereum by the end of 2020 which spans ETH, ETC and EEA requirements. • Implementing a grant program with documentation, standards, and reporting requirements.
The ETC price is forecasted to reach $5.43339 (-11.36%) by the beginning of July 2020. The Ethereum Classic expected maximum price may reach $6.08675 (-0.71%), while the average price of Ethereum Classic will be around $4.8694 (-20.56%) by the end of December 2020.
Wallet investor ETC coin prediction
According to Wallet investor’s Forecast System, The Ethereum Classic is a bad option for a long-term investment. ETC coin price today is $6.13, but it may fall to $0.224. So the change will be -96.35%. The project’s price will not hit $10 during this year.
DigitalCoinPrice ETC coin price prediction
Based on DigitalCoinPrice prediction, ETC is a profitable investment. The Ethereum Classic price will grow and reach $10.13 (+65.25%) per coin in December 2020.
Crypto-Rating Ethereum Classic prediction
Crypto-Rating suggests not to expect miracles from ETC because it hardly will take the price higher than $10 per coin (+63.13%).
CryptoInfoBase Ethereum Classic price prediction
CryptoInfoBase thinks that the Ethereum Classic’s team selected the right strategy: the development of technology. According to CryptoInfoBase, they can expect further growth of ETC up to $12 per coin in 2020 (+95.76%).
How to buy ETC coin at StealthEX
Ethereum Classic (ETC) is available for exchange on StealthEX with a low fee. Follow these easy steps: ✔ Choose the pair and the amount for your exchange. For example BTC to ETC. ✔ Press the “Start exchange” button. ✔ Provide the recipient address to which the coins will be transferred. ✔ Move your cryptocurrency for the exchange. ✔ Receive your coins. Follow us on Medium, Twitter, Facebook, and Reddit to get StealthEX.io updates and the latest news about the crypto world. For all requests message us via [email protected] The views and opinions expressed here are solely those of the author. Every investment and trading move involves risk. You should conduct your own research when making a decision. Original article was posted onhttps://stealthex.io/blog/2020/06/25/ethereum-classic-price-prediction-2020/
Ethereum on ARM. Ethereum 1.0/2.0 ecosystem installation on Ubuntu server 64bit for Raspberry Pi 4 (step by step guide) - Join ETH 2.0 testnets through Prysm / Lighthouse clients on RPi4. Memory enhancements
Ethereum on ARM is a project that provides custom Linux images for Raspberry Pi 4 (Ethereum on ARM32 repo ),NanoPC-T4  and RockPro64  boards (Ethereum on ARM64repo ) that run Geth or Parity Ethereum clients as a boot service and automatically turns these ARM devices into afull Ethereum node. The images include other components of the Ethereum ecosystem such as Status.im, Raiden, IPFS, Swarm and Vipnode as well as initial support for ETH 2.0 clients. Images take care of all necessary steps, from setting up the environment and formatting the SSD disk to installing and running the Ethereum software as well as synchronizing the blockchain. All you need to do is flash the MicroSD card, plug an ethernet cable, connect the SSD disk and power on the device.
The what and why of a 64 bits Raspberry Pi 4 image, 32 vs 64 bits
Following my last post , there are a couple of ongoing issues with the Raspberry Pi 4 that prevent Ethereum software to run as expected.
32 bits Raspbian OS has issues handling the RAM memory . This was partially solved by enabling an official 64 bits kernel but it still crashes eventually (although the node is totally usable).
Eth2 clients only support 64 bits architectures (as of today) so Raspberry Pi 4 users can not join public testnets from Prysm and Lighthouse implementations (as the userspace is still on 32 bits)
Given the massive adoption of the Raspberry Pi device, a 64 bit image would allow users to run full nodes without RAM issues and join ETH 2.0 testnets. While Raspbian certainly has a plan to migrate the OS to a full 64bit image there is not an official statement or roadmap about this. In the meanwhile, as ETH 2.0 phase 0 is around the corner, it is worth to try to find a viable alternative to run a 64bit OS on the Pi.
Installation of an Ubuntu server 64bit image for the Raspberry Pi 4 with Ethereum 1.0/2.0 ecosystem. Step by step guide.
James Chambers released an 18.04 Ubuntu server 64 bit image for the Raspberry Pi 4 using the latest Raspbian and the official 19.04 Ubuntu images  (amazing job, by the way). Obviously, this is work in progress, has no official support and is not considered stable. But it runs reasonably well and, as stated before, a native 64 bits image opens the door for joining the ETH 2.0 public test networks for Raspberry Pi 4 users as well as solving the 32 bits “out of memory” RAM issues. So it is worth it to give it a try. DISCLAIMER: As this is a handcrafted image the installation it is not Plug and Play like the stable Ethereum on ARM images so you will need some Linux skills here. I tried to make the process as straightforward as possible though (it should take just 10-15 minutes). The installation procedure has two main steps.
Install Raspbian, needed to update the raspberry pi 4 to the latest (unstable) available firmware and format the USB disk
Install Ubuntu 64 bits, to have a system with a 64 bit kernel and user space
INSTALL RASPBIAN DISCLAIMER: In this step we’re going to update the firmware to the latest unstable version. It can break things and even make the Raspberry Pi unbootable (not likely at all, but possible), so, be careful here. Prerequisites: Make sure you have the USB disk attached (blue USB port) and the network connected to the RPi 4. 1. In your Linux desktop: Open a terminal, download the Raspbian image, insert the MicroSD and flash it:
2. In your Raspberry Pi 4: Insert the MicroSD, boot up and log in (user:pi password:raspberry). Keep in mind that ssh is not enabled by default so you will need a monitoTV and a keyboard. Download Ethereum on ARM setup script to update the Firmware and format the USB 3 disk.
wget https://github.com/diglos/pi-gen/raw/ethraspbian2.0/stage2/04-ethereum/files/ethonarm-rpi4-ubuntu64bit-setup.sh sudo sh ethonarm-rpi4-ubuntu64bit-setup.sh
Power off the Raspberry and extract the MicroSD again.
INSTALL UBUNTU SERVER 1. In your Linux desktop: Insert the MicroSD. Open a terminal, download James Chambers Ubuntu image and flash it:
2. In your Raspberry Pi 4: Insert the MicroSD, boot up and log in (user:ubuntu password:ubuntu). You will be prompted to change the password so you’ll need to log in twice. SSH is enabled by default. 3. RUN ETHEREUM ON ARM INSTALLATION SCRIPT Download the install script and run it:
wget https://github.com/diglos/pi-gen/raw/ethraspbian2.0/stage2/04-ethereum/files/ethonarm-rpi4-ubuntu64bit-install.sh sudo sh ethonarm-rpi4-ubuntu64bit-install.sh
4. Reboot the Pi and you will be running a full ETH 1.0 node / ETH 2.0 test client on a native Ubuntu server 64bit OS. Keep in mind that Geth and Status run by default so if you don’t want to run a full Ethereum node or a Status node you need to stop and disable them by running:
Prysm and Lighthouse latest versions are now available so you can join/test the ETH 2.0 implementations with your Raspberry Pi 4: Prysm 0.3.1: Take into account that at the time of writing this post, the sync process is very slow, see . The packages provides 2 binaries: beacon-chain and validator. Follow the instructions  to join the test network. Basically, get the Goerli ETH (no real value), set the validator password and run both clients. Once you have done all required steps and make sure everything goes as expected you can edit the file etc/ethereum/prysm-validator.conf and define the password previously set in order to run both clients as a systemd service:
For more information about joining the Prysm testnet check the official docs  Lighthouse 0.1.1: Currently provided as a single binary (no systemd service): lighthouse. Lighthouse team is doing a fantastic progress as well  so expect news regarding the testnet soon. You can check their official documentation here  ETH 2.0 is under heavy development right now  so I will be providing clients updates as soon as they are released. You can update the Eth 2.0 clients anytime by running:
If you have the time and the skills to install the image and join the ETH 2.0 testnets, please do. It is a very valuable feedback for all teams involved, particularly at this early stage.
Memory and cache tweaks
Working on enabling swap memory for the Ubuntu 64bit image I realized that Armbian developers put a lot of work trying to maximize the memory usage on these kind of boards . This is something really important with such a limited resource as it needs to be as much efficient as possible (try to avoid "out of RAM" crashes and don’t waste too much CPU as well as disk throughput in swap tasks). Particularly, I focused on 2 tasks:
Enabling Zram + Swap and trying to find a balance between virtual memory and Geth cache. I’m using Armbian scripts to handle Zram on the Raspberry Pi 4. Geth cache is set to 768 and Zram is limited to 25% of the available RAM.
Adjusting vm.swappiness parameter to maximize swap behaviour (and give priority to ZRAM over the Swap file) as Armbian does. Setting vm.swappiness to 100 forces Geth to use Zram whenever possible and it seems to work great.
I encourage users to test these parameters and try to find the best combination in order to achieve better sync results. I'm currently running several test on the Rpi4 in order to find an optimal setup. On top of this, I also ran some tests with the NanoPC (in this case, lowering a little the default Geth cache to 768) that resulted on Sync time improvements: NanoPC-T4 Fast Sync data
PSA: Make sure to upgrade your Ethereum nodes prior to the Istanbul fork!
With the Istanbul fork scheduled for block 9.069.000 (a little over 5 days from now) being right around the corner, it's important we try to get as many nodes as possible updated. According to https://ethernodes.org/istanbul, only ~35% of running Ethereum nodes are Istanbul-ready. Although the most important thing is that a majority of the miners have upgraded their nodes, which seems to be the case, we shouldn't forget to remind everyone that runs a node which isn't Istanbul-ready to upgrade their nodes, to make sure no syncing issues will occur. Here's a list of node versions which are ready for the Istanbul fork:
Istanbul Hard Fork countdown (less then 5 day's to go):
https://etherscan.io/block/countdown/9069000 With the Istanbul fork scheduled for block 9.069.000 (a little over 5 days from now) being right around the corner, it's important we try to get as many nodes as possible updated. According to https://ethernodes.org/istanbul, only ~35% of running Ethereum nodes are Istanbul-ready. Although the most important thing is that a majority of the miners have upgraded their nodes, which seems to be the case, we shouldn't forget to remind everyone that runs a node which isn't Istanbul-ready to upgrade their nodes, to make sure no syncing issues will occur. Here's a list of node versions which are ready for the Istanbul fork:
Hey everyone! We just finished the first milestone of the MESG integration with Aragon DAOs. The goal of the first milestone is to create a backend application connecting Aragon DAOs to a webhook connector. This will include all the core Aragon apps built and maintained by Aragon One, listed here: https://github.com/aragon/aragon-apps. Here are the results of what we have done:
The application has been created using the MESG SDK that we have developed internally. It consists of enabling the flow of data from and to services using processes. For the Aragon integration, we developed a process that connects an Ethereum service to a Webhook service as follows: ``` +------------+ +-------------+ | | | | | Aragon DAO | | Webhook | | | | | +-----+------+ +------+------+ | ^ | | listen trigger | | v | +------------+ +-------------+ | | | | | Ethereum | | Webhook | | services | | service | | | | | +-----+------+ +------+------+ | ^ | | | | event call | +------------------+ | | | | | +----------+ Process +-------------+ | | +------------------+ ```
Multiple MESG Ethereum services are running and actively listening for events from specific applications of an Aragon DAO.
When an Ethereum event is detected, the service emits it to the MESG Engine.
If the event matches a MESG Process, the process gets triggered.
In this case, the process executes the task call of the Webhook service.
The Webhook service creates a HTTP request and executes it.
The Ethereum service used has some limitations due to its design. It works only with one specific smart contract. As Aragon DAOs rely on one smart contract per application per DAO, the service has to be deployed multiple times with different configurations. For the next milestones, we will use a generic-purpose Ethereum service that only needs to be deployed once and works with any event of any smart contracts. The process will have to filter the exact events to match.
The Ethereum service requires an external provider to connect to Ethereum. We will work on a version that directly integrates geth configured as a light client.
The webhook service could used a secret token or to sign the request in order to prove the origin and prevent abuse. I would like to hear your feedback and suggestions on this one.
Getting the ABI and smart contract address of the Aragon App is manual. Is there any way to programmatically get the ABI corresponding to the specific version used by a DAO? Can an Aragon application get the address and ABI of other applications within the same DAO?
We'd love to hear your feedback and suggestions! We started to work on the next milestone: create an Aragon app that manages the connection between the users’ DAO and the webhook. While completing this milestone, we will start to run the MESG application on our testnet so we should be able to do a public and live demo.
Hey everyone! Welcome to Weekly Update 99. This week we’ll be covering some changes to the base-layer which Raiden Network runs on. We’ll also be going over our usual GitHub development progress. Let’s dive in! Ethereum hardfork - Muir Glacier Being a layer 2 solution means the Raiden Network is impacted by layer 1 (Ethereum) hardforks. This week, Ethereum had a hardfork codenamed Muir Glacier, this was a non-contenious hardfork although you should keep in mind that if you’re a full Ethereum + Raiden Network node operator that you will need to have upgraded to the latest geth or Parity clients if you have not done so already. If you want more information on the Muir Glacier, check out the Ethereum Cat Herders blog! Development progress Development progress over the last couple of weeks slowed down due to the ongoing holiday season. Nevertheless, Raiden still made the top 10 most developed ERC-20 projects list in December according to Santiment. The development team focused on improving and speeding up communication between the transport layer (Matrix) and Raiden node, minor refactoring and testing the Raiden client’s compatibility with the latest releases of the Ethereum node clients (geth+Parity). In the upcoming week, we can expect the development progress to resume to the usual pace and the development team focusing on the remaining open issues in the Alderaan milestone development goal to dive straight back into it. Conclusion To finish up this Weekly Update, the interesting developments during the previous week are mostly related to the base-layer. As the holiday season comes to an end we’ll see things move to the usual active development for Raiden Network. We hope everyone has had a great new year and that if there are any Australian readers, that you’re staying safe in the current conditions! If you have any questions about this update, the Ethereum hardfork, or Raiden Network in general then please leave a comment and we’ll get back to you the best we can. Cheers!
Agharta Hard-Fork Successfully Activates on ETC Mainnet
Agharta-ETC Network Upgrade The Ethereum Classic mainnet just successfully upgraded to Agharta at block 9,573,000. This was 10.26pm on Saturday 11th January here in Vancouver, Canada, 7.26am on Sunday morning in Germany and 2.26pm on Sunday afternoon in Shanghai. ETC Node Tracker ETCNodes.org The fork apparently went very smoothly (as expected) with a very high rate of node upgrades for Parity-Ethereum and Multi-Geth. Most of the Classic Geth nodes were not upgraded (as recommended) and those nodes which were not upgraded are now out of consensus. My assumption is that many of these were run by node operators who spun up new nodes but kept their Classic Geth nodes running until after the hard-fork when they will be later decommissioned. We had a great insight into the process this fork due to the ETC Nodes dashboard created by the ETCCooperative in collaboration with Bitfly.. We did not have so high quality a view for Atlantis and could not accurately even answer the question of how many nodes there were on ETC mainnet. Thanks to Bitfly and especially Peter Pratscher for everything. The dashboard has been a huge win for us and ETCNodes.org will continue to be immensely useful both during hard-forks and between them. Best wishes, everyone! Bob Summerwill, Executive Director, ETC Cooperative Originally posted by Bob in Co-op blog section.
I am speaking on behalf of myself, Hudson Jameson, and not on behalf of the Ethereum Foundation or any other entity. However, I am a lawyedoctor and this post is both medical and legal advice. Just kidding, it isn't. Hey all! I've been closely following the debate that has been happening across social media and chat channels the past 2 weeks regarding the possibility of designing and implementing a new ASIC resistant proof-of-work algorithm. The debate is over whether or not we should hard fork the Ethereum network in order to prevent ASIC miners from operating. I am in the unique position of organizing and running the bi-weekly core developer meetings and have been active in the ecosystem for a while. I want to make sure both sides feel like they are heard. This post is meant to provide context and offer next steps for both sides of the argument.
About 2 weeks an EIP was created by Piper Merriam called "EIP 958: Modify block mining to be ASIC resistant.". Piper opened the EIP intending for it to be a starting point for both technical and non-technical discussion about ASIC resistant algorithm changes. His role in the EIP is to act as a neutral facilitator and not as an expert. The EIP is now closed at the request of the author. Discussion has continued in other forums such as Reddit.
About a week ago, AirSquirrels created "EIP 969: Early ASIC Mitigation Hardfork.". This EIP is focused on technical discussion around an ASIC resistant hard fork. It has been merged in the EIP respository in Draft status in accordance with EIP 1. This does not indicate that the EIP is agreed upon or accepted, but that it meets the minimum technical requirements based on the EIP X template to be merged as a file into the repository.
veox has been working on cleaning up EIP 969 from a grammatical and technical standpoint. The status of that EIP PR can be found here.
PAR 1: It is a security risk that ASICs are allowed to exist on the Ethereum network. With one entity having a majority of the hashing power, 51% attacks are a real possibility.
PAR 2: The Ethereum White Paper declared that Ethereum was built to be "ASIC resistant", at least from the perspective of being resistant to economic incentives to produce ASICs. If this wasn't a false narrative it needs to be upheld.
PAR 3: Bitmain being allowed to mine using ASICs on the network would cause increased centralization in Ethereum.
PAR 4: Bitmain may have a better ASIC that they have not revealed that they are using to mine the network currently. This amplifies the other risks and eliminates some of the uncertainties around how much of an improvement Ethash ASICs are compared to GPU mining if true.
PAR 5: Bitmain has been proven to be hostile to cryptocurrency groups. This can be shown by their hostility to Bitcoin when they got involved in Bitcoin Cash. Their business practices are not altruistic in any way.
PAR 6: After Monero forked to prevent ASICs their hash power dropped 70%+ which proves that ASICs were secretly mining on their network. The same could be happening to Ethereum today which is why we need to act quickly.
PAR 7: ASICs would eliminate hobbyist miners and make it difficult for the Average Jane to mine Ethereum.
Pro Doing Nothing (PDN)
There are 2 great resources that provide more detail to these bullet points.
PDN 1: The efficiency gains accomplished by the ASIC is relatively limited. At the time this comment was made on the code devs call, Batch 1 of the Bitmain ASIC's sold for $800 for 180MH/s which is a 2.5x factor improvement over GPUs. Batch 2 now sells for $1,800, but the argument can still technically be made, albeit with a different improvement level. (35:38)
PDN 2: We are unsure what protocol changes would make a difference. Even if we switch to a PoW algorithm that is entirely different and not I/O bound at all, such as SHA3, it may only buy us 6-12 months. (37:37)
PDN 3: The development effort to change the PoW algorithm and getting everyone to upgrade would be chaotic and risky. Developing, testing, planning, and enacting a hard fork and related code is not a simple process. (38:47)
PDN 4: Focusing on changing the PoW algorithm would detract from more important things, such as Casper, sharding, and other protocol level work. (38:47)
PDN 5: The Ethereum network is switching to proof-of-stake (Casper) soon™ so changing the PoW algorithm detracts from the research and development. Changing the PoW algorithm would serves as a band-aid while Casper is both an eventuality and a permanent solution.
PDN 6: The worst case scenario is that Bitmain controls a large portion of the Ethereum network for some time. If they try to use it for malicious purposes, Casper development can be sped up, launched in a week (albeit with potentially more bugs and skipping formal verification/academic review), and mining rewards would go down by 90%. If geth and Parity start making it a higher priority to implement Casper it would provide us with some insurance in the case of a 51% attack.(39:05)
PDN 7: It is impossible to prevent anti-competitive economies of scale from forming around mining. Large corporations and entities will achieve economies of scale in any mining model, including general purpose hardware / GPU-dominated mining (see Phil's blog I previously referenced).
PDN 8: Anti-ASIC forks reduce the cost to attack a cryptocurrency substantially and are a good thing for the security of a cryptocurrency system (see Phil's blog I previously referenced).
How long until Casper is launched?
This seems to be a sticking point in many of the arguments. Here is the latest: Researchers are in the process of finalizing the code for the 2nd stage of the testnet with the goal of completing and freezing the full specification of the Casper PoS algorithm. geth and Parity could start implementing parts of the Casper today. Casper is currently being formally verified by Runtime Verification which should take another 4-5 months to complete. Multiple academic groups are also looking at Casper. A formal EIP on Casper is being worked on and will be released for review in the next 2 weeks. The plan is to have Runtime Verification formally verify Casper, relaunch a custom Casper testnet with specs from the EIP, relaunch the contract on an Ethereum testnet, and finally launch Casper on the mainnet. There is no official timeline and there is unlikely to be one, in my opinion, until we get much closer to Casper being formally verified. (40:23)
So what now?
Well I for one am going to make myself a whiskey. Not because this was stressful, but because I enjoy whiskey. I actually find this pretty fun. Anyways, if you are in the PAR group I suggest you act on your convictions and help with some of the EIPs being produced. If you are in the PDN group you can provide counter-arguments to the PAR group in forums/chat rooms. Currently the rough consensus of Ethereum core developers is that of the PDN group. However, my experience is that they are open to whatever the community wants as long as community consensus, or something close to it, can be demonstrated. There are many ways to determine this, including voting and discussions and EIPs. I encourage everyone to participate in this process.
You said a thing wrong!
If you feel like I left off an argument or made a mistake in this post let me know in the comments. I'll track edits at the bottom of this post. Later!
Welcome to r/ethereum - the Reddit frontpage of the Web 3.0! Read this to get started :)
With the magical influx of new readers, I would like to warmly welcome everyone to ethereum. Please protect this community's philosophy by respecting our rules (see sidebar or scroll down). Let me quote the most important ones here for reference:
Keep price discussion and market talk to subreddits such as /ethtrader.
Keep plain ICO advertisements to subreddits such as ethinvestor.
Feel free to use this thread to say 'Hi, I'm new!' or 'Hi, I'm not!'. If you have a question, feel free to comment and ask it below. But first make sure you are fully synchronized and have a look at FAQ on Ethereum Stack Exchange. Do you have any question that feels really dumb? Try ethereumnoobies :D Don't forget to check out /ethdev for the Ethereum developer community and post your diamond-shaped cat findings ethsightings (don't forget to subscribe!). Thanks for flying with ethereum! :-)
What is Ethereum?
Ethereum is a cutting-edge blockchain-based distributed computing platform, featuring smart contract functionality. It provides a decentralized virtual machine, the Ethereum Virtual Machine (EVM), that can execute peer-to-peer contracts using a crypto-fuel called Ether.
A Caspar PoS/PoA testnet is currently being prepared ...
Below are the rules that Reddit users on /Ethereum must follow to participate. These can be used as reasons to remove posts/comments and ban users.
You are expected to treat everyone with a certain level of respect and refrain from inappropriate behavior. Examples of inappropriate behavior include:
Threats of violence or attempts to organize attacks
Slurs of any kind
Posting people’s private information
If you can't play nice with others, you will not be allowed to post here.
Ether Price, Market and Mining discussions
Discussion related to the price of ether, buying, trading, market speculation, or any other price/market talk should be posted on /ethtrader, a third-party Subreddit not moderated by us. In addition, keep mining discussion to Subreddits such as /EtherMining.
Duplicate threads may be deleted. It is up to the discretion of the mods.
No spamming or drive by posting
Spamming will lead to post deletion and a possible ban. Posts created by accounts that self-delete immediately will be deleted right away - no drive by posting.
Using multiple accounts
Creating multiple accounts to get around Reddit or Subreddit rules is not allowed and will likely result in a permanent ban.
Posts with purposely misleading or unsubstantiated titles will be removed.
Karma & age requirements for posting submissions
All post submissions should be made from accounts at least 10 days old with a minimum of 20 comment karma. This is to keep trolls and spam-bots to a minimum. Exceptions may be made on a discretionary basis, message the mods for more information.
/Ethereum is a place for the open discussion about the Ethereum software, protocol, distributed applications, and related technologies. As moderators, we are here to make sure the discussion stays civil and productive. We will not censor posts based on personal ideology and welcome constructive discourse.
What we ask of our users
Please utilize the up-vote and down-vote buttons. This is a built in moderation tool that is very powerful.
If you submit a report about a post or comment, please provide as much detail as possible to help us more quickly sort through our reported posts/comments.
Please don’t report posts or comments you disagree with, only about things that actually break the rules.
We welcome discussions about other crypto-currencies and Ethereum implementations, but if the topic is already being extensively covered by other threads we kindly ask you to consider posting it to a more specific Subreddit. You can check an extensive (but not comprehensive) list of Ethereum-related Subreddits on the "All Ethereum" Multireddit.
Meantime, check out a proposed roadmap for “Stateless Ethereum” and the 1.x Files. An ongoing tribute to the Geth team. Last week was the 164th release of Geth on Github. Let’s not forget that the Geth team continues to release features, improvements, and optimizations to Geth. It is easy to take them and their work for granted. EtherProxy relies on Go and needs geth (the Ethereum Go client in order to function as a backend) with the mining part happening just like you do with ethminer pointed at a mining pool. In the local proxy url you set for ethminer to use you can set the share difficulty as well as an ID for each mining instance (or mining rig) that you are using. Every time we launch Ethereum, we actually recreate this genesis block from scratch. Syncing the blockchain with peers only begins at block 1. If you find this post useful, be sure to follow my Twitter, where I post more content and tutorials on Etheruem. Genesis. The genesis block is created using the genesis state file or genesis.json in Geth ... Clef UI. UI Implementation for Clef, the geth-based signer.. It starts the signer binary as a subprocess, and communicates with the signer over standard input/output. The signer opens an external API to receive RPC request. Once a request comes in, the signer will then inform the UI via Standard I/O.. Getting Started. This UI uses a QT binding for Go to create the UI. Build Your Own Private Ethereum Blockchain with Geth Darius Cupsa June 18, 2018 Mining, cryptocurrencies, Ethereum blockchain, crypto trading platforms ( here's how to build one, by the way ) - this whole relatively new blockchain thing caught my eye a few years ago and the interest only kept increasing.
Welcome to the second video in Ethereum Fundamentals. Today's topic is: Introduction To Mining Ether. Let's recap what we learned in the previous video. We looked at Geth, the command line ... To connect to nanopool AFTER you installed ethminer (ethereum) and geth (you don't NEED geth, but it's preferred you have it and try and get familiar with it in your spare time) do the following ... This video shows solo mining on the ethereum network. It shows what we see as we watch different pools as well as why we chose to solo mine ethereum and wher... Visit our website for more details http://www.tutorialsdiary.com This video show how to install Geth on windows. Below are the options to install that. Go to... Getting started with Ethereums Geth