Perkle Network Upgrade Complete

by Esprezzo Team on February 5, 2020

On Monday we began and completed a network and protocol upgrade for Perkle. This was a planned hard fork to enable several important new features, patches and performance improvements.

While working on smart contract templates and testing some newer Solidity functionality we ran into an issue with a new opcode only available in Constantinople and later forks of Ethereum. Specifically the EXTCODEHASH opcode (EIP-1052), which makes tasks such as checking another contract’s bytecode or analyzing and whitelisting contracts cheaper (less gas needed).

Example of opcode in use in the snippet below:

assembly { codehash := extcodehash(account) }

EIP-1052-extcodehash-ethereum-opcode

Because we really want to use this new opcode, and generally stay up to date with the leading version of the Ethereum protocol, we upgraded Perkle to be more in line with the Muir Glacier release of the protocol. The fork went smoothly.

Thank you to STEX for minimal downtime and mining pool owners, who were quick to update. As of publishing time for this post, Perkle miners looking for updated mining pools can go with the official Perkle mining pool or Comining.

At block 3,100,000 old clients became incompatible. If you’re managing a Perkle mining pool and haven’t upgraded your clients yet, you’ll want to do that as soon as possible to avoid mining blocks that are destined to become orphans.

The latest software is here:

      Binary releases - https://github.com/esprezzo/perkle/releases 

      Source code - https://github.com/esprezzo/perkle

Here’s a list of the opcodes and EIPs included in this Perkle update:

  • EIP-145: Bitwise shifting (improves messaging speed and reduces cost)
  • EIP-152: Add Blake2 compression function F precompile (creates new interoperability capabilities for smart contracts)
  • EIP-1014: An effort to facilitate scaling using state channels and off-chain transactions
  • EIP-1052: Large scale code execution optimization (allowing contracts to check a contract’s bytecode without needing the bytecode itself, saving wasted gas)
  • EIP-1108: Reduces alt_bn128 precompile gas costs
  • EIP-1234: Reduces block reward from 3 to 2 and postpones difficulty increase (this needs to be updated in the official block explorer, which is still showing a reward of 3)
  • EIP-1344: Adds ChainID opcode
  • EIP-1884: Reprices certain resource-intensive opcodes to more closely match computing resources consumed
  • EIP-2028: Reduces gas cost for calling transaction data (improves scalability)
  • EIP-2200: Implements net gas metering (enables new smart contract storage capabilities)Rebalance net-metered SSTORE gas cost with consideration of SLOAD gas cost
  • EIP-2384: Delays Ethereum difficulty bomb

Look out for our next blog post, which will be about the smart contract work that led to this fork!

Have an idea for a smart contract-based application? Is the thought of mastering Solidity or the cost of experimenting on Ethereum holding you back? Apply to our private beta program! Participants accepted into the program get to test our smart contract tools in exchange for product feedback.

Join the beta waitlist!

And if you're interested in joining our community, we're chatting on Discord; join us!

Topics: Product Updates, Perkle

Esprezzo Team
Esprezzo Team

Esprezzo’s mobile and web development platform & tools empower developers and organizations to quickly build smarter, faster blockchain-integrated apps and grow their next generation businesses. We help clients and developers understand where, when, and what data makes sense to store in a decentralized manner. Through education and user-friendly tools, we aim to make integrating blockchain technology into new or existing business applications accessible without needing to hire an army of blockchain developers or seasoned infrastructure engineers to manage decentralized servers.

Esprezzo and blockchain-related news for developers and business leaders

Best practices and industry news for growing your business with decentralized and blockchain-integrated applications

Subscribe Here!

Recent Posts