Go implementation of the Ethereum protocol
Find a file
Hao Duan 28baf9f1fd core: avoid modification of accountSet cache in tx_pool (#21159)
* core: avoid modification of accountSet cache in tx_pool

when runReorg, we may copy the dirtyAccounts' accountSet cache to promoteAddrs
in which accounts will be promoted, however, if we have reset request at the
same time, we may reuse promoteAddrs and modify the cache content which is
against the original intention of accountSet cache. So, we need to make a new
slice here to avoid modify accountSet cache.

* core: fix flatten condition + comment

Co-authored-by: Felix Lange <fjl@twurst.com>
2024-05-13 22:07:04 +08:00
.github fix blank output image name (#515) 2024-04-02 16:24:52 +04:00
accounts core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
assets/images update README and include a logo photo 2022-07-24 21:44:58 +10:00
bmt new EVM Upgrade 2021-09-21 16:53:46 +05:30
build PDF-01 (#397) 2024-01-19 15:05:03 +04:00
cicd use 0x address scheme by default and add new enable xdc prefix flag (#518) 2024-04-12 12:27:39 +07:00
cmd core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
common all: implement EIP-2929 (gas cost increases for state access opcodes) (#21509) 2024-04-22 21:14:54 +08:00
compression/rle new EVM Upgrade 2021-09-21 16:53:46 +05:30
consensus revert https://github.com/XinFinOrg/XDPoSChain/pull/497 behavior for v1 engine (#531) 2024-05-13 19:26:26 +08:00
console PDF-01 (#397) 2024-01-19 15:05:03 +04:00
containers/docker containers: drop vagrant support, noone's maintaining it 2018-03-14 13:23:40 +02:00
contracts core: kill off managed state, use own tiny noncer for txpool (#19810) 2024-05-10 19:48:10 +08:00
core core: avoid modification of accountSet cache in tx_pool (#21159) 2024-05-13 22:07:04 +08:00
crypto core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
docker new EVM Upgrade 2021-09-21 16:53:46 +05:30
eth core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
ethclient new EVM Upgrade 2021-09-21 16:53:46 +05:30
ethdb new EVM Upgrade 2021-09-21 16:53:46 +05:30
ethstats all: change TxPreEvent to TxsPreEvent (#16720) 2024-03-28 11:16:21 +08:00
event eth/filter: check nil pointer when unsubscribe (#16682) 2024-03-18 10:08:25 +08:00
genesis xin-203 fix wrong config hash and update v2 params on mainnet (#109) 2022-07-12 16:56:55 +02:00
internal core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
les core, les: fix les unit tests (#19823) 2024-05-10 19:48:10 +08:00
light Revert "core, light, params: implement eip2028 (#19931)" 2024-05-11 06:11:46 +08:00
log new EVM Upgrade 2021-09-21 16:53:46 +05:30
metrics core, metrics: switch some invalid counters to gauges (#20047) 2024-05-10 19:48:10 +08:00
miner remove uncle block handling (#523) 2024-04-23 09:44:49 +04:00
mobile Use github action (#460) 2024-03-03 15:41:00 +11:00
node PDF-01 (#397) 2024-01-19 15:05:03 +04:00
p2p core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
params Revert "core, light, params: implement eip2028 (#19931)" 2024-05-11 06:11:46 +08:00
rlp PDF-01 (#397) 2024-01-19 15:05:03 +04:00
rpc rpc:remove package ethereum/go-ethereum 2024-05-13 19:51:50 +08:00
swarm core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
tests all: implement EIP-2929 (gas cost increases for state access opcodes) (#21509) 2024-04-22 21:14:54 +08:00
trie core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
whisper core: types: less allocations when hashing and tx handling (#21265) 2024-05-13 22:07:03 +08:00
XDCx core, eth, trie: use common/prque (#17508) 2024-05-09 18:38:27 +08:00
XDCxDAO chore: remove redunant nil check (#408) 2024-01-29 11:31:28 +11:00
XDCxlending core, eth, trie: use common/prque (#17508) 2024-05-09 18:38:27 +08:00
.dockerignore dockerignore, internal/build: forward correct git folder 2017-11-12 22:52:41 +02:00
.gitattributes FIx Bad block error. 2021-09-17 17:59:06 +05:30
.gitignore add testnet and mainnet node for latest code testing (#467) 2024-03-04 17:13:50 +11:00
.travis.yml.bak remove all CI warning by upgrade to nodejs 20 image (#461) 2024-03-03 16:20:38 +11:00
COPYING all: update license information 2015-07-07 14:12:44 +02:00
COPYING.LESSER all: update license information 2015-07-07 14:12:44 +02:00
Dockerfile bump go to 1.21 in Dockerfiles 2023-10-23 00:08:43 +08:00
Dockerfile.bootnode bump go to 1.21 in Dockerfiles 2023-10-23 00:08:43 +08:00
Dockerfile.node bump go to 1.21 in Dockerfiles 2023-10-23 00:08:43 +08:00
go.mod rpc:remove package ethereum/go-ethereum 2024-05-13 19:51:50 +08:00
go.sum rpc:remove package ethereum/go-ethereum 2024-05-13 19:51:50 +08:00
interfaces.go eth/filters, ethereum: EIP-234 add blockHash param for eth_getLogs 2024-03-14 11:52:42 +08:00
Makefile upgrade the websocket in xdpos (#349) 2023-11-06 15:37:14 +11:00
README.md merge from master 2023-07-30 16:50:45 +10:00

XDPoSChain

XinFin XDPoSchain
Enterprise ready hybrid blockchain for global trade and finance


XinFin Hybrid Blockchain

XinFin Hybrid Blockchain is an Enterprise ready Blockchain for global trade and finance

Visit: XinFin.org Contribute: Developer Docs

XinFin Network XDPoS is community driven project to achieve the following

  • XinFin DPOS (XDPoS) consensus that selects 108 set of Masternodes to achieve a high throughput Energy efficient consensus with instant block finality

  • KYC Enforcement on Masternodes for Enterprise Adoption and compliance

  • Ability to port/relay limited set of data and transactions from privacy channels to public channel

  • Interoperability between applications hosted on Private Blockchains like Corda, Hyperledger, Quorum(JP Morgan) using relayers to XinFin Network

  • Customer Centric and consortium driven Governance to equally benefit the validators as well as providing comfort for large scale enterprise applications to be hosted on the Network. This achieves

    • Rapid Upgradability

    • DApps Standardisation for rapid commercialisation

    • Compliance with major global jurisdictions.

KYC for masternodes

OVERVIEW

To add a layer of KYC for masternodes in the current system and a sense of ownership amongst the masternodes hence tying such a cluster of masternodes to physical entity which can held accountable for its actions.

Design

We established a bidirectional connection between a candidate and its owner inorder to retrieve a candidate belonging to a specific owner & vice versa.

All the masternodes are recognized by the KYC of their owners and hence are considered as a single verified entity ( for eg. while voting for invalid KYC, only one vote is considered per such cluster )

The contract is very strict in handing out penalty for invalid KYC, it results loss of all funds invested in all of its candidates.

For eg. say A proposes condidates B,C,D by paying for its proposal cost. If at a later stage if some predecided amount of owners ( investors ) vote that a KYC for a A is invalid then A & all of its candidates (B,C,D) will lose their position & all their funds will be lost ( will remain with contract wallet ).

For developers

Continues integration & delivery

See https://github.com/XinFinOrg/XDPoSChain/tree/dev-upgrade/cicd

To contribute

Simple create a pull request along with proper reasoning, we'll get back to you.

Our Channels : Telegram Developer Group or XDC.Dev