Go implementation of the Ethereum protocol
Find a file
Daniel Liu 0c306686bb
rpc: fix limitedBuffer.Write to properly enforce size limit (#33545) (#1948)
Updated the `avail` calculation to correctly compute remaining capacity:
`buf.limit - len(buf.output)`, ensuring the buffer never exceeds its
configured limit regardless of how many times `Write()` is called.

Co-authored-by: Maxim Evtush <154841002+maximevtush@users.noreply.github.com>
2026-01-19 12:13:15 +05:30
.github cicd: store git commit hash into docker image (#1931) 2026-01-16 15:47:16 +05:30
accounts all: change chain head markers from block to header #26777 (#1846) 2025-12-16 07:36:51 +04: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 all: fix unnecessary whitespace (#1800) 2025-12-08 15:07:11 +05:30
build build: upgrade golangci-lint to v2.7.2 (#1906) 2026-01-06 11:02:56 +05:30
cicd cicd: store git commit hash into docker image (#1931) 2026-01-16 15:47:16 +05:30
cmd cmd/utils, eth: rename ApiBackend to APIBackend (#1955) 2026-01-16 17:27:48 +05:30
common common, core: use min to simplify code (#1939) 2026-01-16 15:53:39 +05:30
consensus consensus: fix missing block header error in vote verification, fix #1850 (#1891) 2026-01-05 15:40:49 +05:30
console all: use slices.Sort() to sort strings (#1712) 2025-12-07 15:49:13 +05:30
contracts all: move main transaction pool into a subpool #27463 (#1890) 2026-01-05 15:43:50 +05:30
core core/vm: avoid escape to heap #33537 (#1944) 2026-01-19 11:25:04 +05:30
crypto crypto/ecies: use aes blocksize (#1946) 2026-01-19 11:25:15 +05:30
docker all: normalize flag's name 2024-11-25 16:39:29 +08:00
docs core, docs: add solidity document, close XFN-68 (#1670) 2025-11-14 16:25:42 +05:30
eth core, eth, miner: 4844 blob transaction pool #26940 (#1911) 2026-01-19 11:24:01 +05:30
ethclient ethclient: restore BlockReceipts support for BlockNumberOrHash objects #33242 (#1941) 2026-01-16 17:23:11 +05:30
ethdb all: use slices.Sort() to sort strings (#1712) 2025-12-07 15:49:13 +05:30
ethstats all: fix whitespace error of golangci-lint, remove extra empty lines (#1676) 2025-11-17 11:16:09 +05:30
event all: move main transaction pool into a subpool #27463 (#1890) 2026-01-05 15:43:50 +05:30
genesis consensus, params: remove SkipV2Validation, close XFN-151 (#1730) 2025-11-14 21:53:05 +05:30
internal internal/ethapi: refactor RPC tx formatter #33582 (#1940) 2026-01-16 15:52:48 +05:30
log all: use 0x-prefix string for type Address in log message (#1874) 2025-12-19 08:55:21 +04:00
metrics cmd/XDC, metrics/prometheus: fix staticcheck QF1012 (#1713) 2025-12-07 16:03:06 +05:30
miner core, eth, miner: 4844 blob transaction pool #26940 (#1911) 2026-01-19 11:24:01 +05:30
node node: fix error condition in gzipResponseWriter.init() #32896 (#1888) 2025-12-25 09:27:11 +05:30
p2p all: fix goimports warning (#1903) 2026-01-04 17:22:26 +05:30
params params: fix undefined slices (#1956) 2026-01-16 19:42:42 +08:00
rlp rlp: finalize listIterator on parse error to prevent non-advancing loops#33245 (#1854) 2025-12-11 16:51:46 +05:30
rpc rpc: fix limitedBuffer.Write to properly enforce size limit (#33545) (#1948) 2026-01-19 12:13:15 +05:30
tests all: expose block number information to statedb #27753 (#1936) 2026-01-16 15:55:04 +05:30
trie trie: rework trie database #26813 (#1149) 2026-01-19 11:23:51 +05:30
version all: upgrade package version #30638 (#1745) 2025-11-15 16:46:54 +05:30
XDCx core, trie: refactor trie API #26995 (#1147) 2026-01-16 15:51:13 +05:30
XDCxDAO all: fix whitespace error of golangci-lint, remove extra empty lines (#1676) 2025-11-17 11:16:09 +05:30
XDCxlending core, trie: refactor trie API #26995 (#1147) 2026-01-16 15:51:13 +05:30
.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: upgrade golangci-lint to v2.0.2 #31530 (#1466) 2025-09-10 17:22:29 +08:00
.pre-commit-config.yaml docs: implement git client hook for developers, close #1578 (#1584) 2025-10-08 12:32:26 +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
go.mod go.mod: use toolchain go v1.25.5 (#1883) 2025-12-19 14:38:47 +04:00
go.sum update package version: 2025-10-07 15:28:17 +04:00
interfaces.go ethclient: fix unmarshaling of ethereum.SyncProgress #24199 (#1367) 2025-08-22 16:41:28 +08:00
Makefile Makefile, build: remove unused xgo (#1812) 2025-12-08 12:58:22 +05:30
README.md docs: add document for JSONRPC API (#1027) 2025-05-19 15:30:52 +08: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 ).

Documents

Document

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