The Emerald Platform | Ethereum Classic
A Breakdown of the Emerald Project | ETCDEV TEAM |ClassicisComing
Emerald Wallet, the Official Ethereum Classic Wallet, had its firs Release Candidate this month, where users could safely store, and transact their ETC. After months of careful, thorough development, Emerald Wallet made it through two Alpha Releases, and three Beta releases before its recent v0.7.0 RC1 release.
This is the first of many releases before the final wallet is to be offered. Emerald Wallet offers the basic wallet functions, as well as some more unique features, like built-in Shapeshift, ERC20 Token Compatibility, Remote or Local Node Network Connection, as well as Ledger HD support.
Emerald Wallet is just one part of the Emerald-Project. The Emerald Platform is made of three main components, Emerald-Suite a toolkit written in Rust, & JavaScript, Geth which has been improved, and maintained as well as the EVM, SputnikVM which offers a group of features that benefit many forms of business. While the Wallet serves as just that, the rest of the Emerald-Platform is a software development kit, designed for third-party Dapp developers.
Emerald-Suite
In the Emerald-Suite is the Emerald-CLI (command line interface wrapper for Vault), and Emerald-Vault.
Geth — go-ethereum
The Second component of the Emerald-Project is Geth or (go-ethereum). This is the main Ethereum Classic client called, Geth; the old English third-person singular conjugation of “to go”, which is quite appropriate, as Geth is written in Go-Lang. Since the split, the Geth client has been periodically updated through many advancements by ETCDEV Team. Many projects like Geth weren’t going to be maintained by the Ethereum Foundation after the EF fork so ETCDEV Team picked up the slack. The stable release v4.1.1 is recommended, but the pre-release v4.1.2 is now available.
ETCDEV Team has a group of developers devoted just to the Go-Lang projects. Tomas Zbdyal, Alexey Sudachen, and Isaac Ardis are all completely focused on go-ethereum and the improvement Geth.
ETC-Geth, Go-Ethereum, or just Geth, is a multipurpose command line tool that runs a full Ethereum Classic node. It offers three interfaces:
- The command line subcommands and options,
- A JSON-RPC server,
- An Interactive Javascript console.
It also performs a variety of essential functions necessary for users to interact with the ETC network. It serves as a gateway for other components to interact with the network.
Geth Features
- Mine real ether (ETC)
- Transfer funds between addresses
- Create contracts and send transactions
- Explore block history
- Managing Accounts
Geth also supports management of over 100,000 accounts, and can also externalize chain configuration, features a debug process, and machine-readable logging. It also includes peer discovery and filtering (Important when connecting to healthy peers), database stability, no JIT VM required. Also since version Geth v4.0.0 ECIP-1017 was implemented.
SputnikVM
The Third component of the Emerald-Platform is the SputnikVm. SputnikVM is the ETC specific implementation of the Ethereum Virtual Machine. It aims to be an efficient, pluggable virtual machine for different Ethereum-based blockchains.
ETC encourages all Ethereum’esque blockchains to adopt SputnikVM and make use of SputnikVM’s RFC governance project which governs the parameters of each blockchain’s VM. This way we can draw from the experience of the community and learn from other proposed RFCs.
SputnikVM Features
- Standalone — can be launched as an independent process, or integrated into other apps
- Universal — supports different Ethereum chains, such as ETC, ETH or private ones
- Stateless — only an execution environment connected to independent State storage
- Fast — main focus is on performance
- IoT compatible — designed to support hardware used in embedded devices
- FFI, Protobuf and JSON interface
- written in Rust, can be used as a binary, cargo crate or shared library
The new Virtual Machine serves as a development for DApp and Client developers, as well as a web interface for development environment.
This new Virtual Machine has spawned a few new tools for developers. SputnikVM Dev, an instance for Smart Contract development, also provides a testing environment and a mock for JSON RPC API.
SputnikVM in Browser is an experimental version of SputnikVM compiled into WebAssembly, therefore it can be launched in a browser on Node.js.
Lastly, there is SputnikVM in embedded devices, which is an experimental project to run a fully functional EVM on embedded devices
Ethereum Classic offers a set of libraries, and tools for third-party application developers, which will become the standard in blockchain technology. The Emerald-Platform is made of several components: Emerald-Suite SDK, SputnikVM, and Geth. Ethereum Classic has had the luxury of time and retrospect, to fix things before they’re on the market. If ETC wants to believe in the notion of “Code is Law,” it must get things right the first time. THere is no option of a bailout or do-over, so in turn, these processes take a large amount of time to design, develop, test and evaluate install, debug, test again and document.
This helps ETC lay down a solid foundation free from weaknesses that can be exploited, such as the first and second Parity vulnerabilities, and large token losses with ERC20 Token Standard vulnerabilities. ETC is committed to producing quality tools and products for its community.