Go implementation of the Ethereum protocol
Find a file
Felix Lange c0746461b5 p2p/enr: updates for discovery v4 compatibility (#16679)
This applies spec changes from ethereum/EIPs#1049 and adds support for
pluggable identity schemes.

Some care has been taken to make the "v4" scheme standalone. It uses
public APIs only and could be moved out of package enr at any time.

A couple of minor changes were needed to make identity schemes work:

- The sequence number is now updated in Set instead of when signing.
- Record is now copy-safe, i.e. calling Set on a shallow copy doesn't
  modify the record it was copied from.
2024-06-28 11:30:16 +04:00
.github fix blank output image name (#515) 2024-04-02 16:24:52 +04:00
accounts accounts/abi/bind: allow to specify signer on transactOpts (#21356) 2024-06-20 15:52:32 +08:00
assets/images update README and include a logo photo 2022-07-24 21:44:58 +10:00
bmt all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
build PDF-01 (#397) 2024-01-19 15:05:03 +04:00
cicd add step to trigger deployment script update 2024-06-12 14:11:30 +04:00
cmd eth/gasprice: add configurable threshold to gas price oracle (#22752) 2024-06-20 15:52:32 +08:00
common all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
compression/rle new EVM Upgrade 2021-09-21 16:53:46 +05:30
consensus core/types: convert status type from uint to uint64 (#16784) 2024-06-20 15:52:32 +08:00
console eth: move eth.Config to a common package (#22205) 2024-06-20 15:52:32 +08:00
containers/docker containers: drop vagrant support, noone's maintaining it 2018-03-14 13:23:40 +02:00
contracts rebase from dev-upgrade 2024-06-19 16:05:08 +08:00
core ethclient: serialize negative block number as "pending" (#21177) 2024-06-20 15:52:32 +08:00
crypto all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
docker new EVM Upgrade 2021-09-21 16:53:46 +05:30
eth eth/downloader: fix issue #277 2024-06-27 12:51:47 +08:00
ethclient ethclient: serialize negative block number as "pending" (#21177) 2024-06-20 15:52:32 +08:00
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 all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +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 internal/ethapi: cap txfee for SignTransaction and Resend (#21231) 2024-06-20 15:52:32 +08:00
les eth: move eth.Config to a common package (#22205) 2024-06-20 15:52:32 +08:00
light all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +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 XDCx,core,XDCxlending,miner: reduce duplicate calls 2024-06-06 19:33:59 +08:00
mobile eth: move eth.Config to a common package (#22205) 2024-06-20 15:52:32 +08:00
node all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
p2p p2p/enr: updates for discovery v4 compatibility (#16679) 2024-06-28 11:30:16 +04:00
params eth/gasprice: lighter gas price oracle for light client (#20409) 2024-06-20 15:52:32 +08:00
rlp rlp: upgarde package rlp to 2024-05-15 2024-05-17 10:10:15 +08:00
rpc all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
swarm all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
tests all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
trie all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
whisper all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +08:00
XDCx XDCx,core,XDCxlending,miner: reduce duplicate calls 2024-06-06 19:33:59 +08:00
XDCxDAO chore: remove redunant nil check (#408) 2024-01-29 11:31:28 +11:00
XDCxlending all: use errrors.New instead of empty fmt.Errorf 2024-06-14 19:19:21 +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 all: add support for EIP-2718, EIP-2930 transactions (#21502) 2024-05-14 23:15:35 +08:00
Makefile bump go to 1.21 in makefile and ci.go 2023-10-23 21:56:09 +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