Ethereum Classic Let's keep the original censorship-resistant Ethereum going!



  • Implicit Ethereum Classic Blockchain Information

    Some necessary information appears to be missing from the Ethereum Classic (ETC) blockchain. This information is implicitly contained in the blockchain which may lead to confusion.

    Examples

    Account Balances — Regarding accounts, the blockchain specifies transfers but not balances. They can nevertheless be determined by accounting for all the transfers in all the blocks.

    Smart Contract Storage — Regarding smart contracts, the blockchain specifies machine codes and input data but not storage values. They can nevertheless be determined by executing all the invocations on all the input data in all the blocks.

    Transaction Sending Accounts — With respect to sending accounts, transactions contain digital signatures but not addresses. They can nevertheless be determined from the digital signatures and transactions using the mathematical properties of the signature algorithm.

    Transaction Gas Requirements — The blockchain specifies the gas requirements for certain sets of transactions. It does not specify the requirements for every transaction separately. They can nevertheless be determined from the given transaction set gas requirements.

    Average Mining Hash Rates — The blockchain specifies mining block creation times and mining difficulty parameters. It does not specify mining hash rates. However, the mining hash algorithm and mining difficulty parameter are defined such that:

    <H> = <ΔT> / <D>

    where <H> is the average mining hash rate, <ΔT> is the average creation time difference between consecutive blocks, and, <D> is the average mining difficulty parameter. The averages can be taken over any desired number of blocks.

    Conclusion

    The ETC blockchain brilliantly encodes information in a practical manner. It supports the ETC world computer without being unwieldy. Although it may at first appear incomplete, it still includes all the essentials.

    Feedback

    You can contact me by clicking any of these icons:

    Acknowledgements

    I would like to thank IOHK (Input Output Hong Kong) for funding this effort.

    License

    This work is licensed under the Creative Commons Attribution ShareAlike 4.0 International License.



  • The Ethereum Classic Story - history of Ethereum Classic

    The dramatic and interesting history of Ethereum Classic. How it was
    formed and where it is today. The Ethereum Classic philosophy is very
    different to that of Ethereum's. Some say ETC is so different, that it
    is competing more with Bitcoin's niche than Ethereum's.




  • @cryptoking Any chance for adding our ETC pool to the list? The pool is well established but desperately needs some hashpower: https://coinfoundry.org/pool/e...



  • @CoinFoundry 

    adding ? Which List? Kindly tell

     



  • @cryptoking The list of pools at the beginning of this thread :-)



  • @CoinFoundry

    Ok, Done I added in pool list



  • Ethereum Classic (ETC) Release Emerald-wallet v0.8.0

    Download:

    https://github.com/ethereumpro...



  • Ethereum Classic Release  Geth version 5.0.0

    Consensus

    Added

    • Allow 

      Contributors

      .zip.sig and .tar.gz.sig files are detached binary PGP signatures .zip.asc and .tar.gz.asc files are detached ASCII PGP signatures .zip and .tar.gz are archive (compressed) files containing the geth executable

      To verify a release with a signature: First, make sure you have a gpg tool installed, eg. gnupg or gnupg2. Then, if you haven't already, you'll need to import the signing key, which you'll find here. This step is included below.

      # Import my signing public key
      $ wget https://raw.githubusercontent.com/ethereumproject/volunteer/master/Volunteer-Public-Keys/isaac.ardis%40gmail.com
      $ gpg --import [email protected]
      # Verify
      $ gpg --verify ./geth-classic-osx-v5.0.0-ac28808.tar.gz.sig
      gpg: assuming signed data in './geth-classic-osx-v5.0.0-ac28808.tar.gz'
      gpg: Signature made Tue Feb 20 14:01:31 2018 JST
      gpg:                using RSA key B23DC6DC7634399484DEB8A6F36487257419D94C
      gpg: Good signature from "Isaac Ardis (ETCDEV Go Developer) <[email protected]>" [ultimate]

      All tagged and development build downloads are also available at our automated builds website: http://builds.etcdevteam.com.

    Downloads 

    https://github.com/ethereumpro...wnloads 



  • An Ethereum Classic Fork Snapshot Is Coming Next Week

    Next week the ethereum classic (ETC) community is expecting to
    receive coins from a ‘snapshot’ fork called ‘callisto’ (CLO). The clone
    will be an exact copy of the ETC chain up until block 5,500,000 and ETC
    holders will receive a 1:1 ratio of CLO coins


    Read full:



  • "Ethereum Classic Roadmap Hints Emerald Wallet Release In March" 

    An Official Public Release of Emerald Wallet via @ETCDEV 

    - Essential Token Management
    - Built-in Exchange (Shapeshift)
    - Interoperability

    https://t.co/MUzsZu3uOF




  • On Ethereum Classic Mining Rewards With The New Monetary Policy

    Ethereum Classic (ETC) mining rewards changed with the new monetary policy. I will discuss these changes and their effects.

    New Formula

    ETC miners are rewarded for adding valid blocks to the ETC blockchain. These rewards consists of three parts:

    Base Rewards - This part depends on the block numbers. It is paid with newly created funds. Every five million blocks (about 2.5 years) this part decreases by 20%. Initially it was 5 ETC. It changed to 4 ETC after block number five million. It will change again to 3.2 ETC after block number ten million around April 2020.

    Define the block era E as a function of the block number N as follows (// denotes integer division):

    E = (N - 1) // 5000000

    Then the base reward is as follows:

    5 ⋅ 0.8

    Uncle Rewards - This part depends on the number of uncle blocks included as well as the block numbers. It is also paid with newly created funds. Each block can include at most two uncle blocks. The reward for each uncle block is an additional 3.125% of the base reward. It is now 0.125 ETC per uncle block and will change to 0.1 ETC after block number ten million.

    For the block era E and number of uncles ###em/em###, the total uncle reward is as follows:

    0.03125 ⋅ ###em/em### ⋅ (5 ⋅ 0.8 )

    After block number five million, miners that create the uncle blocks also get this same reward per uncle block.

    Gas Rewards - This part depends on the transactions included. It is paid from the originating accounts. Miners execute the transactions and receive payments for the gas required. Each transactions specifies a price paid per unit gas.

    For gas requirements G₁, G₂, G₃, … and gas prices ###em

    /em###₁, ###em

    /em###₂, ###em

    /em###₃, …, the total gas reward is as follows:

    G₁ ⋅ ###em

    /em###₁ + G₂ ⋅ ###em

    /em###₂ + G₃ ⋅ ###em

    /em###₃ + …

    Therefore, the total reward for creating a block is the following:

    (1 + 0.03125 ⋅ ###em/em### ) ⋅ (5 ⋅ 0.8 ) + G₁ ⋅ ###em

    /em###₁ + G₂ ⋅ ###em

    /em###₂ + G₃ ⋅ ###em

    /em###₃ + …

    Example Calculations

    Here is a Python script that uses this mining reward formula to calculate mining rewards:

    #!/usr/bin/env python3
    BASE_INITIAL  = 5
    BASE_PERCENT  = 0.8
    UNCLE_PERCENT = 0.03125
    N_ERA_BLOCKS  = 5e6
    def mining_reward(block_number, num_uncles, gas_reqs, gas_prices):
            """
            Calculates mining rewards from block information.  The gas
            information must be provided in lists or tuples.  The gas
            prices must be in ETC.
            """
            era           = (block_number + 1) // N_ERA_BLOCKS
            base_reward   = (BASE_PERCENT ** era) * BASE_INITIAL
            uncle_reward  = UNCLE_PERCENT * base_reward
            uncle_rewards = num_uncles * uncle_reward
            gas_rewards   = 0
            for (gas_req, gas_price) in zip(gas_reqs, gas_prices):
                    gas_rewards += gas_req * gas_price
            return base_reward + uncle_rewards + gas_rewards
    

    Here are some example calculations on real ETC blockchain data:

    >>> mining_reward(5425392, 0, [], [])
    4.0
    >>> mining_reward(5423326, 1, [], [])
    4.125
    >>> mining_reward(5424471, 0, [36163, 36163] , [2e-8, 2e-8])
    4.00144652
    >>> mining_reward(5421363, 1, [21000, 21000, 21000, 21000, 21000], [5.5e-8, 2e-8, 2e-8, 1.6e-8, 1e-8])
    4.127541
    

    Total Supply

    The new monetary policy bounds the supply of ETC. Notice only the base and uncle rewards increase the supply since the gas rewards just transfer existing funds. Because the uncle rewards vary, the eventual total supply of ETC can only be approximated.

    The formula for the future increase in supply per era, assuming a constant number of uncle blocks, is the following:

    5000000 ⋅ (1 + 2 ⋅ 0.03125 ⋅ ###em/em### ) ⋅ (5 ⋅ 0.8 )

    The factor of 2 is necessary to include the uncle block creator rewards. The total supply can be estimated from this formula by adding the contributions for the remaining eras. Era 192, which will occur in about 456 years, is the last era which increases the supply.

    Assuming no more uncle blocks gives a lower bound of about 198.3 million ETC. Assuming the maximum number of uncle blocks gives an upper bound of about 210.6 million ETC.

    Conclusion

    The new monetary policy modifies mining rewards and limits the total supply of ETC. Hopefully all the details are now more clear.

    Author,

    Christian Seberino



  • Long Term Outlook for Ethereum Classic

    Read this article on Medium (looks nicer)

    Lately there’s been a lot of speculation about ETC, the price is rising, the Callisto airdrop is happening, and Crypto Twitter is tweeting up a storm about ETC. Some are certainly trading for short term profits, and it’s their right to, but they’re not seeing the forest for the trees. Even worse, some have dubbed ETC a shitcoin, as if we’ve existed this long to just be another pump and dump. We haven’t, we aren’t, and we won’t be if I have anything to say about it.

    This article sets out to give some insight into the advancements ETC has made and the bright roadmap it has for its future.

    The future of ETC is the future of all Cryptocurrencies, and that future is interoperability, there will be no one winner. ETC will become highly interoperable while others naively fight to be dominant.

    At the core of our sidechains is SputnikVMwhich can run smart contracts anywhere… You can do this today. Not at some nebulous time in the future.

    Sidechains

    We’re going to have sidechains this year, transactions on them will be free, and even very low powered devices will be able to use them. We’ll be the first blockchain to properly address the needs of IoT devices. While others claim to, and start announcing partnerships before anything even works, we’ll be the first to really get it done.

    At the core of our sidechains is SputnikVM which can run smart contracts anywhere, such as in the browser or you can put it in embedded devices. You can do this today. Not at some nebulous time in the future.

    Our sidechains will be highly flexible. They’ll allow whoever created them to choose between PoA or PoS approaches. They can be public, private or otherwise permissioned depending on your needs.

    Ease of use

    Every blockchain still needs to improve their usability but we’ve made great strides. We’ve got beautiful, well-working wallets (Emerald Wallet, CEW). A simple DNS-like system (via CEW). Mobile wallets exist and more are coming. We’re supported everywhere, we’re on every major exchange, we’re very popular internationally, we’re even making our way into Cardano’s wallet.

    Sent myself some ETC and it showed up in Emerald Wallet in about 20 seconds.

    Easier development

    Currently developing for blockchain tech is fairly low-level, while we have languages like Solidity which very much look like JavaScript, they function like a low-level language. This leads to a lot of difficulty in development and a lot of bugs cropping up.

    Emerald Project will provide a common high-level framework to ease development on Ethereum Classic. Imagine libraries where integrating with hardware wallets is as easy as ledger.connect(), or interacting with tokens is as simple as Token t = new Token(0xbeef..); t.transfer(0xfa34..). This is just pseudocode but that’s where we are heading. No messing with RPC or hunting down ABIs necessary.

    Emerald Project doesn’t end at just the code though, it also extends to the UI. Check out Emerald Wallet, look how great it looks, your apps will be able to seamlessly drop in the same elements. On the user end the consistent UI will create a familiar and cohesive feel across ETC projects.

    Improved developer documentation is also coming and will be announced in the coming months.

    Emerald Wallet

    Installing Emerald Wallet took me literally 1 minute to install and immediately start using ETC.

    I’ve also just installed Mist for Ethereum and it looks like I’ll be waiting a while. I clicked on “Launch Application” several times and nothing is happening. I seem to just be stuck on block 10,240 now.

    While in Emerald Wallet I sentmyself some ETC and it showed up in Emerald Wallet in about 20 seconds.

    Mist on the other hand appears to have crashed. I restarted it.

    Back to waiting.

    In fairness it did eventually sync. And before you get mad that this is a dig at Mist developers, it’s really not, developing a good wallet is hard work, it is not easy, errors happen, and I’m sure they’ll fix these above issues.

    This is simply to illustrate that ETC does have a good wallet which is able to go from install to using the ETC network in about a minute. Those who claim ETC can’t accomplish a “simple” task like a wallet are misinformed at best and willfully ignoring the issues within their own communities.

    Open community

    The Subreddits, Forums, Discord, and Telegrams all have separate owners. Discussion is very open and you’re not required to agree with the crowd.

    We’re very anti-pump and dump, want to know why ETC’s price doesn’t rise endlessly like other coins? Because when you join our forums you may very well find that many in the community won’t promise you the moon, and we’re aware of our flaws and working hard to fix them. We think this will make ETC much more widely used in the long term, at the cost of short term lambo-moon pipe dreams.

    We’re also not going to police you and tell you what to believe in or what not to. And we’re not going to put our names/faces on every project that comes along. We have principles and we will stick to them.

    Author,
    Go to the profile of Pyskell

    pyskell (Anthony)

    Follow on Twitter

    Follow on Medium

    Coder, Project Manager, Blockchain enthusiast



  • Ethereum Classic - CLassic Mask Chrome Extention Updated Version: 3.9.16 is Now available

    Additional Information 

    Version: 3.9.16 Updated: 

    March 21, 2018 

    Size: 3.28MiB 

    Languages: See all 5

    Developer Email:  [email protected]

    Download:

    https://chrome.google.com/webs...



  • Ethereum Classic - Next Protocol Upgrade - ECIP1041 at Block 5.9 Million!

    Geth > v5.0.0 ✅
    https://t.co/6GEVH8wIuy…

    Parity > v1.9.3 ✅
    https://t.co/xaMnO5XWmJ…

    Mantis v1.1 ✅ 
    Release Mid-April 



  • EthereumClassic.org Redesign and Improvement [IN PROGRESS] [LAUNCH: MAY 21 2018]

    Proposal

    Background

    ethereumclassic.org currently averages 300k views per month, however the information on it is woefully outdated, and its design is not up to par with other blockchain websites. This is largely a consequence of the abrupt and ad hoc nature that caused ETC’s existence.

    The website serves as little more than a portal to ETC-related resources. There’s also a blog with a rather antiquated appearance, and a history of ETC that is entirely outdated and very DAO-heavy. While our origins are important it’s really not the end-all, be-all of relevant ETC information.

    Solution

    The ethereumclassic.org website needs to be completely redesigned with many of the existing materials migrated over. Not wanting to destroy an history, the original website itself will always be preserved on GitHub and we can likely point a subdomain at it.

    The new website will be broken down into several sections and designed to welcome people of varying familiarity with ETC.

    For current ETC users we’ll have much more information so that ETC’s development progress can be easily seen, wallets can be easily downloaded, documentation and FAQs are readily available, and a blog with multiple contributors can keep everyone updated on ETC news.

    For the newcomers it will familiarize them to ETC’s capabilities and philosophy. Think less emphasis on The DAO and more emphasis on how we are still conducting ourselves in a highly open and decentralized manner.

    Specifications/Website Sections

    Text/Copy for the website is here. Please review/edit if you can.

    Understanding Blockchain / ETC

    • Understanding blockchain: Blockchain in general.

    • Why ETC: ETC’s value proposition/mission statement. ETC vs. other blockchains. Accompany with a short explainer video if possible.

    • Getting started/New user onboarding: How to use ETC/basics.

    Roadmap

    We need a section for each dev team (currently 3). Ideally these can be displayed side-by-side (if not too cluttered) and each dev team would have the ability to edit their own section (and no others). Alternatively separated by tabs. Should have progress bars to be easily understandable at a glance. Structure should be Title & Progress bar with expandable details. The luxcore approach to this is particularly nice: https://luxcore.io/roadmap

    Community

    Various social media links (reddit, telegram, discord, forums, etc.)

    Get ETC

    Exchange links

    Use ETC

    Wallet downloads (Emerald Wallet) / links to web wallets (CEW)

    Blog

    Likely integrating medium.com as many ETC bloggers are familiar with it. Also popular among tech users and gets our posts more exposure.

    Docs/Help/FAQ

    End-user/advanced user focused. Mining. Block explorers. Some is already available on the forums: #help-me:guides. Leaning towards readthedocs.io for the full fledged documentation.

    Translations

    We’re very popular internationally, we’ll need to keep as much content as possible accessible to non-English speakers.

    How you can get involved

    Pick something above and comment how you want to be involved below. We can definitely use writers for the blog, FAQ/Guide contributions, and explainers for newcomers.

    We’ll also need community members to review translations, the website is very popular across many countries, namely: Russia, US, Ukraine, China, South Korea, UK, India, Turkey. Russia/US are our top priority for the time being.

    The community needs to be involved in the creation of the site.

    Funding

    The website design and hosting itself will be funded by the ETC Cooperative (etccooperative.org).

    Author


    anthony



  • Ethereum Classic- An Introduction To Tries

    I will describe tries and explain why they are so important.

    Introduction

    Tries are used extensively in blockchain systems and elsewhere. They are tree structures that represent sets of key value pairs in software. It is possible to instead just represent key value pairs contiguously. However, then it would be more difficult to make changes and perform searches than with tries. Tries are composed of connected nodes that store values. Different nodes imply different keys based on their positions. A common application that uses tries is internet routing.

    Examples

    In the trie diagram above, the dots represent nodes and line segments represent connections. Note that each dot has a left and right line segment below it. The key corresponding to each node is found as follows:

    1. Find the path from the top node to the node.
    2. For each left line segment along the path, add a “0” to the key.
    3. For each right line segment along the path, add a “1” to the key.

    Therefore, the yellow dot corresponds to the key “010”. The blue dot corresponds to the key “11”. A similar procedure is used for all tries to determine keys.

    The diagram above represents a trie where each node connects to 16 nodes below it. Note that each line segment will add one of 16 possible values (nibbles) to the keys. Therefore, the yellow dot corresponds to the key with the hexadecimal representation “0x0f2”. The previous trie diagram represented 15 nodes. This one represents 4369 nodes!

    Compression

    When representing sets of key value pairs with tries, there is often thousands of unused nodes. Compression techniques are often used to more efficiently store tries with lots of unused nodes.

    Nomenclature

    The terms radix trees and Patricia trees also refer to tries. Sometimes, but not always, these terms imply “compressed” tries that more efficiently manage unused nodes.

    Conclusion

    Tries are tree structures that store key value pairs in a format that facilitates changes and searches. They are used extensively in many applications. Hopefully now you have gained the fundamentals to be able to take a deeper dive into these concepts.



  • The Ethereum Classic Blockchain Is INCOMPLETE & Why That Is OK

    By,

    Christian Seberino


    The Ethereum Classic (ETC) blockchain does not contain all the necessary state information for the ETC system to operate. It does not even implicitly contain all that is needed! I will elaborate and discuss how this is handled.

    State

    The state of the ETC system includes all the balances, programs, nonces and other values in memory. This data is organized into accounts. Therefore, the state is the set of all account values.

    Blocks contain transactions which specify changes to states. If the state is known for any time, the state can be determined for all future times by analyzing the transactions in the following blocks. However, the blockchain does not completely specify the state for any time! Admittedly, all blocks contain state hashes. But, these hashes are irreversible!

    The initial state for the first block contains accounts with nonzero balances. In other words, all funds did not originate from mining. Do you wonder how miners know the account balances when processing account transfers involving these initially funded accounts? The answer involves the ETC node databases.

    Database

    ETC nodes typically contain databases that store the blockchain as well as additional information. For example, Linux Parity ETC node databases typically use the following directory:

    $HOME/.local/share/io.parity.ethereum/chains/classic/db
    

    Linux Geth ETC node databases typically use this directory:

    $HOME/.ethereum-classic/mainnet/chaindata
    

    For performance reasons, Parity and Geth use nonrelational (NoSQL) key value databases. These databases can be accessed directly. They can also be accessed using the Web 3 library.

    Solution

    All ETC nodes must contain a complete specification of the initial state for the first block. This is required in addition to the blockchain. For example, on Geth ETC nodes, this initial state is in the database and can be viewed with the following command:

    geth dump 0
    

    Conclusion

    ETC nodes require a complete specification of the initial state for the first block as well as the blockchain. ETC nodes typically store this information in databases. Only with both of these pieces of information can the ETC system operate.

    By,

    Christian Seberino



  • Ethereum Classic April Dev Update Geth v5.1.0, Emerald Wallet v0.9.0-rc3 and more updates 

    team

    Richard Schumann and Darcy Reno recently joined the team, as Graphic Designer and Program Manager, respectively.

    projects

    Eclipse attackECIP-1041, the Difficulty Bomb Defusion. If you’re running geth, please upgrade!

    v0.9.0

    emerald-cli released v0.21.0documentation as well as some refactoring.

    protocols

    ECIP-1041 has passed human consensus and is now either implemented or scheduled for implementation in the major clients. Woohoo!! Please update your clients. Doing so will help us defeat the coersive Difficulty Bomb, preventing an "explosion" of difficulty which, if not thwarted, would result in expontentional growth of network difficulty and thus exponentatial degradation of miner profitability and network security.

    We are extremely grateful to the many volunteers and members of our communityfor their ongoing contributions.



  • Daedalus-Mantis Wallet V1.1 Now Available!


    - Critical issues gone
    - Block syncing ultra fast ⚡️
    - Performance bottlenecks removed

    Download or build:

    install:




  • Ethereum Classic Release Geth version 5.2.1

    Added

    • implement missing debug_setHead api method (#573#569)
    • Information about include in chain config files. (#567#565)
    • implement personal_ecRecover API method (#566#562)

    Fixed

    • rpc: honour pending requests before tearing conn down (#578

      Contributors

      .zip.sig and .tar.gz.sig files are detached PGP signatures .zip.asc and .tar.gz.asc files are ascii-armored detached PGP signatures .zip and .tar.gz are archive (compressed) files containing the gethexecutable

      To verify a release with a signature: First, make sure you have a gpg tool installed, eg. gnupg or gnupg2. Then, if you haven't already, you'll need to import the signing key, which you'll find here. This step is included below.

      # Import my signing public key
      $ wget https://raw.githubusercontent.com/ethereumproject/volunteer/master/Volunteer-Public-Keys/isaac.ardis%40gmail.com
      $ gpg —import [email protected]
      # Verify
      $ gpg --verify ./geth-classic-win64-v5.2.1-456053c.zip.sig
      gpg: assuming signed data in './geth-classic-win64-v5.2.1-456053c.zip'
      gpg: Signature made Wed May  2 21:41:00 2018 JST
      gpg:                using RSA key B23DC6DC7634399484DEB8A6F36487257419D94C
      gpg: Good signature from "Isaac Ardis (ETCDEV Go Developer) <[email protected]>" [ultimate]
      

      All tagged and development downloads are also be available at our automated builds website: http://builds.etcdevteam.com.

    Download 

    https://github.com/ethereumpro...



Looks like your connection to Cryptocentral was lost, please wait while we try to reconnect.