Metadium Mainnet Update: Bokbunja Hard Fork

Metadium
Metadium
Published in
9 min readOct 20, 2023

--

Dear community,

After successfully implementing the Bokbunja Hard Fork in the Metadium testnet on September 26th, the Metadium Development Team spent weeks monitoring and confirming its stability and will move forward with its implementation in Metadium’s mainnet. The Bokbunja Hard Fork will be carried out by releasing version m0.10.0.

Details

  • Schedule: scheduled for October 31, 2023, 12:00 PM KST (2023–10–310 3:00:00 +UTC)
  • Fixed mainnet block number for this transition: #73225410

Key commits

-The Bokbunja hard fork will be implemented at block #73225410 on the Metadium Mainnet.

  • Introducing a fee delegation function and related RPC API allows users to delegate transaction fees to another account.
  • The verification nodes use the miner’s public key registered in the governance contract to verify the block miner’s signature.
  • To decentralize mining, the miner selection strategy has been changed to use etcd lockable tokens.

-New features added to Gmet.

  • Implementing Verifiable Random Function (VRF) verification functionalities through pre-compiled contracts offers a more secure and transparent method of generating random numbers on the blockchain.
  • Added ‘eth_getReceiptsByHash’ JSON-RPC API. Returns all the transaction receipts for the given block hash.
  • Added to Gmet CLI flags to allow changing the value of ‘triesInMemory’
  • Changed to create blocks by sorting transactions in descending order of gas price
  • Increased the default value of ‘TxLookupLimit’ flag from 2350000 to 31536000
  • Ethereum Ploitari release(v1.10.17) was applied
  • Ethereum Sharblu release(v1.10.18) was applied
  • The Block interval is fixed to 2 seconds.
  • Network members can make more types of decisions through improved governance contracts.

-Other bugfix and upgrades

  • Improved gmet.sh script
  • Improved performance using go routines
  • Upgraded etcd library version (v3.5.2)
  • Changed websocket default port
  • Changed the OS version used for ‘docker-build’ to Ubuntu 20.04
  • Upgraded golangci-lint library version (v1.49)
  • Changed the ‘Fee’ data type of `ExecutionResult,` which receives EVM execution results, to BigInt to prevent overflow.
  • To avoid overflow integers, some variables have been changed to BigInt.
  • Fixed issue related to ‘make test’
  • Fixed issue with coinbase setup

-The file ‘metadium-0.10.0-linux-rocksdb.tar.gz’ in the Gmet Github release note is optimized for Ubuntu 20.04 version.

-IPC file is named ‘geth’ through m0.10.0 version upgrade. Changed from ‘ipc’ to ‘gmet.ipc’.

All members of the Metadium team remain faithful in their commitment to advancing the highest standards of blockchain technology.

- Metadium Team

안녕하세요. 메타디움 팀입니다.

메타디움 개발팀은 메타디움 테스트넷에 Bokbunja 하드포크를 성공적으로 반영한 후 몇 주간 모니터링하고 안정성을 확인했으며, 아래와 같이 메타디움 메인넷에도 적용할 예정입니다.

*복분자 하드포크는 m0.10.0 버전 릴리즈에 의해 진행됩니다.

세부사항

- 일정: 2023년 10월 31일 오후 12시 KST 예정 (2023–10–31 03:00:00 +UTC)

- 블록 넘버: #73225410

주요내용

-Metadium # 73225410 블록에서 복분자 하드포크가 진행됩니다.

  • 다른 지갑을 이용하여 트랜잭션 수수료를 대납할 수 있는 수수료 대납 기능이 추가되고, 이를 위한 새로운 타입의 트랜잭션과 RPC가 추가됩니다.
  • 블록 마이너의 서명을 검증하기 위해 거버넌스 컨트랙트에 등록된 마이너의 퍼블릭 키를 사용하는 것으로 변경됩니다.
  • 탈중앙화된 마이닝을 위해, 마이너 선정 방식이 etcd에서 lock 가능한 토큰을 이용하는 것으로 변경됩니다.

-Gmet에 신규 기능이 추가됩니다.

  • 사전 컴파일된 컨트랙트를 통해, 블록체인에서 더욱 보안성있고 투명한 방법으로 VRF(검증가능한 랜덤 함수)를 이용할 수 있는 기능이 제공됩니다.
  • 특정 블록에 대한 모든 transaction receipts를 조회할 수 있는 ‘eth_getReceiptsByHash’ RPC API가 추가됩니다.
  • Gmet의 ‘triesInMemory’ 값을 변경 가능하도록 CLI flag에 추가됩니다.
  • 블록 내 트랜잭션의 포함 순서가 gas price를 기준으로 정렬되도록 변경됩니다.
  • ‘TxLookupLimit’의 기본 값이 31536000으로 확장됩니다.
  • 이더리움의 v1.10.17 릴리즈가 적용됩니다.
  • 이더리움의 v1.10.18 릴리즈가 적용됩니다.
  • 블록 생성 주기가 2초로 고정 됩니다.
  • 네트워크 멤버들이 거버넌스 컨트랙트를 통해 더 다양한 종류의 의사결정을 할 수 있게 됩니다.

-기타 bugfix 및 성능 개선 작업이 진행됩니다.

  • gmet.sh 스크립트의 사용방안을 개선하였습니다.
  • go 루틴을 이용하여 코어로직 성능을 개선하였습니다.
  • etcd 라이브러리 버전을 업그레이드 하였습니다. (v3.5.2)
  • gmet 웹소켓 포트 기본값을 변경하였습니다.
  • Makefile에서 docker build 시 사용하는 ubuntu os 버전을 변경하였습니다. (18.04 -> 20.04)
  • go lint 시 사용하는 golangci-lint 라이브러리 버전을 업그레이드 하였습니다. (1.42 -> 1.49)
  • EVM 실행 결과를 받는 ExecutionResult의 Fee 데이터 타입을 오버플로우를 방지하기 위해 BigInt로 변경하였습니다.
  • 정수 오버플로우 문제를 방지하기 위해 일부 변수 타입을 BigInt로 변경하였습니다.
  • make test에 관련된 이슈를 해결하였습니다.
  • coinbase에 관련된 이슈를 해결하였습니다.

-Gmet Github 릴리즈 노트 내 ‘metadium-0.10.0-linux-rocksdb.tar.gz’ 파일은 Ubuntu 20.04 버전에 최적화되어있습니다.

-m0.10.0 버전 업그레이드를 통해 IPC 파일의 이름이 ‘geth.ipc’에서 ‘gmet.ipc’로 변경되었습니다.

모든 메타디움 팀원들은 앞으로도 최고 품질의 블록체인 기술을 제공하기 위해 최선을 다하겠습니다.

- 메타디움 팀

Website | https://metadium.com

Discord | https://discord.gg/ZnaCfYbXw2

Telegram(EN) | http://t.me/metadiumofficial

Twitter | https://twitter.com/MetadiumK

Medium | https://medium.com/metadium

--

--

Metadium
Metadium

Metadium powers identification, authentication and crypto transaction management, providing AML compliance and risk management solutions.