Go implementation of the Ethereum protocol
Find a file
Paweł Bylica 4df7801137 trie: simplify StackTrie implementation (#23950)
Trim the search key from head as it's being pushed deeper into the trie. Previously the search key was never modified but each node kept information how to slice and compare it in keyOffset. Now the keyOffset is not needed as this information is included in the slice of the search key. This way the keyOffset can be removed and key manipulation
simplified.
2025-04-07 16:44:32 +08:00
.github Update ci.yml 2025-03-11 14:01:00 +04:00
accounts accounts/abi/bind: make it possible to wait for tx hash (#30079) 2025-01-24 16:54:12 +08:00
assets/images update README and include a logo photo 2022-07-24 21:44:58 +10:00
beacon beacon/types: add beacon chain data types (#27292) 2024-12-28 09:06:31 +08:00
bmt crypto: switch over to upstream sha3 package (#18390) 2024-12-09 17:48:59 +08:00
build build: support auto-completion for bash 2025-04-07 16:37:05 +08:00
cicd fix docker build warning 2025-03-31 06:03:42 +04:00
cmd all: clean duplicate constants in package common 2025-04-07 16:43:01 +08:00
common all: clean duplicate constants in package common 2025-04-07 16:43:01 +08:00
compression/rle compression/rle: fix staticcheck warning SA9004: constant has no explicit type 2024-10-30 21:12:32 +08:00
consensus trie: use trie.NewStackTrie instead of new(trie.Trie) (#22246) 2025-04-07 16:44:32 +08:00
console console, internal/jsre: fix autocomplete issues (#26518) 2025-04-07 16:38:42 +08:00
containers/docker containers: drop vagrant support, noone's maintaining it 2018-03-14 13:23:40 +02:00
contracts core/state: fix state iterator (#19127) 2025-03-28 22:34:59 +08:00
core core/types: implement DerivableList interface for transactions and receipts (#21502) 2025-04-07 16:44:32 +08:00
crypto crypto/secp256k1: update libsecp256k1 (#31242) 2025-03-19 18:02:46 +08:00
docker all: normalize flag's name 2024-11-25 16:39:29 +08:00
eth trie: use trie.NewStackTrie instead of new(trie.Trie) (#22246) 2025-04-07 16:44:32 +08:00
ethclient api/bind: add CallOpts.BlockHash to allow calling contracts at a specific block hash (#28084) 2025-01-24 16:54:12 +08:00
ethdb all: add build tags for wasip1 (#31090) 2025-03-19 18:02:46 +08:00
ethstats cmd, les: remove light client code (#28586) 2025-03-10 15:40:07 +08:00
event all: fix staticcheck warning ST1006: don't use generic name self 2024-10-25 21:30:54 +08:00
genesis cicd, genesis: set EIP-1559 number in genesis for devnet and testnet 2025-03-13 16:55:09 +08:00
internal core/types: implement DerivableList interface for transactions and receipts (#21502) 2025-04-07 16:44:32 +08:00
log log: fix issues with benchmarks (#30667) 2024-11-15 10:02:43 +08:00
metrics all: add build tags for wasip1 (#31090) 2025-03-19 18:02:46 +08:00
miner trie: use trie.NewStackTrie instead of new(trie.Trie) (#22246) 2025-04-07 16:44:32 +08:00
node core/txpool, crypto, node: fix os.CreateTemp in test (#31172) 2025-03-19 18:02:46 +08:00
p2p p2p: measure subprotocol bandwidth usage (#20133) 2025-03-19 18:01:32 +08:00
params common, params: define cancun block for testnet and print more chain config 2025-04-01 14:41:05 +08:00
rlp all: get rid of custom MaxUint64 and MaxUint64 (#30636) 2024-12-28 09:06:31 +08:00
rpc all: add build tags for wasip1 (#31090) 2025-03-19 18:02:46 +08:00
swarm remove swarm as unused like eth 2024-05-13 21:34:40 +08:00
tests all: new empty trie with types.EmptyRootHash instead of null (#27230) 2025-02-07 13:04:45 +08:00
trie trie: simplify StackTrie implementation (#23950) 2025-04-07 16:44:32 +08:00
XDCx core, eth, trie: add a prefix to contract code (21080) 2025-03-24 22:31:03 +08:00
XDCxDAO all: add read-only option to database 2025-01-24 14:24:39 +08:00
XDCxlending core, eth, trie: add a prefix to contract code (21080) 2025-03-24 22:31:03 +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 build: support golangci-lint v1.63.4 2025-01-11 23:56:59 +08:00
.golangci.yml build: support golangci-lint v1.63.4 2025-01-11 23:56:59 +08: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 fix docker build warning 2025-03-31 06:03:42 +04:00
Dockerfile.bootnode fix docker build warning 2025-03-31 06:03:42 +04:00
Dockerfile.node fix docker build warning 2025-03-31 06:03:42 +04:00
go.mod all: update to go version 1.23 2025-03-01 16:42:11 +08:00
go.sum crypto/kz4844: pass blobs by ref (#29050) 2025-02-11 18:26:56 +08:00
interfaces.go ethclient: add FeeHistory support (#25403) 2024-11-01 11:36:53 +08:00
Makefile Makefile: add devtools and help targets, remove gc target 2025-04-07 16:38:00 +08: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