v1.7.0
Cypress 패키지
Baobab 패키지
공통 패키지
Cypress 패키지
Baobab 패키지
공통 패키지
- 아직 지원하지 않음
Klaytn v1.7.0 contains important changes for the protocol upgrade which may result in incompatible changes like Ethereum Hard-forks. This version enables the protocol upgrade for Baobab testnet at block #75373312, estimated for November 15th. Cypress mainnet will be subject to the same protocol upgrade in the next version.
- Introduces Ethereum's Istanbul hard-fork items
- EIP-152: Introduces a precompiled contract, BLAKE2F at address 0x09 (#960 #1010)
- EIP-1108: Reprices the gas cost of precompiled contracts, ECADD, ECMUL, and Pairing Check (#987)
- EIP-1344: Introduces a new opcode, CHAINID at 0x46 (#952)
- EIP-1844: Introduces a new opcode, SELFBALANCE at 0x47. It reprices the gas cost of SLOAD, BALANCE, and EXTCODEHASH (#958)
- EIP-2200: Changes the gas metering algorithm of the opcode SSTORE (#996)
- Moves addresses of Klaytn precompiled contracts (#912)
- vmLog: 0x09 → 0x3fd
- feePayer: 0x0a → 0x3fe
- validateSender: 0x0b → 0x3ff
- Contracts deployed before the incompatible change activation will continue to work as before even for the transaction executed after the activation.
- Changes the gas calculation logic for the data field of legacy type transactions (#986)
- With this change, the same data fee calculation logic will be applied for all transaction types.
- Enhances the validation and gas calculation logic of multi-sig transactions (#1001)
- The signature verification fee for multi-sig transactions is in proportion to the number of unique signatures.
- Transactions that contain more signatures than the maximum number of the account's accountKey are invalid.
- The transaction which contains at least one invalid signature is invalid.
- Reduces computation costs of over-priced opcodes (#1033)
- Affected opcodes: addmod, mulmod, not, xor, shl, shr, and sar.
- Introduces a minimum staking amount for validators as a governance item (#920 #963 #1023 #1024 #1034)
- If a validator doesn’t stake enough KLAY, the node will not be selected as a proposer or a committee member.
- Randomly selects new committee members on every round change (#997)
- Introduces two klay APIs that return a block header: klay_getHeaderByNumber and klay_getHeaderByHash (#975)
- Introduces two istanbul APIs that return demoted validators (#974)
- istanbul_getDemotedValidators: Returns the demoted validators at a given block number.
- istanbul_getDemotedValidatorsAtHash: Returns the demoted validators at a given block hash.
- A demoted validator is one of the validators but cannot be a proposer or committee member due to insufficiently staking KLAY.
- Introduces the dumpgenesis command which returns the genesis block in JSON format (#992)
- Introduces CustomRetryer for DynamoS3DB to retry requests for all error cases (#982)
- Introduces experimental flags related to block generation time (#989)
- BlockGenerationIntervalFlag: Determines the block generation interval between two successive blocks (Only for CNs)
- BlockGenerationTimeLimitFlag: Sets the vm execution time limit during block generation (Only for CNs)
- OpcodeComputationCostLimitFlag: Sets the computation cost limit for a transaction
- Changed the block parameter type from blockNumber or blockHash to blockNumberOrHash (#975)
- Affected APIs: klay_accountCreated, klay_getAccount, klay_getAccountKey, klay_getBalance, klay_getCode, klay_getTransactionCount, klay_isContractAccount, klay_getBlockByNumber, klay_getBlockTransactionCountByNumber, klay_getBlockWithConsensusInfoByNumber, klay_getCommittee, klay_getCommitteeSize, klay_getCouncil, klay_getCouncilSize, klay_getStorageAt, klay_getLogs, klay_newFilter, klay_call, klay_getTransactionByBlockNumberAndIndex, debug_dumpBlock, debug_getBlockRlp, debug_printBlock, and governance_itemsAt
- Added SetHeader method to Klaytn client (#1020)
- Utilized dirtyStorage more accurately (#993)
- Set the request body size limit of fastHttpServer with maxRequestContentlength (#1029)
- Enabled UseOpcodeComputationCost EVM option on debug API (#1035)
- Updated istanbul consensus engine to verify headers synchronously (#957)
- Enhanced the state migration feature to support non-single type DB (#954)
- Handled abnormal returns of state.NewForPrefetching (#1011)
- Fixed abnormal application of governance votes in edge cases (#1018)
- Renamed two admin APIs (#971)
- admin_startRPC → admin_startHTTP
- admin_stopRPC → admin_stopHTTP
- Old names have been deprecated, but are still available.
Last modified 4mo ago