The vulnerability is already eliminated completely by upgrading to 5.4.0
which a majority of miners and exchanges have already done.
There’s no point in creating a new protocol version to fork from older Rust clients.
For the history:
Council members approved a donation of $70K to a security researcher ( alexs-scalar (Alexs) · GitHub ) who discovered the critical vulnerability and followed responsible disclosure practices by privately reporting it to the team.
Anyone has tested this new grin node version in new Windows 11 25H2? I got strange issue that it can connect to peers but got refused by all. I tested in different network
here are the logs
20260428 23:02:52.624 INFO grin_util::logger - log4rs is initialized, file level: Trace, stdout level: Trace, min. level: Trace
20260428 23:02:52.624 INFO grin - Using configuration file at C:\Users\Test\Downloads\grin-server.toml
20260428 23:02:52.625 INFO grin - This is Grin version 5.4.0 (git v5.4.0), built for x86_64-pc-windows-msvc by rustc 1.93.1 (01f6ddf75 2026-02-11).
20260428 23:02:52.625 DEBUG grin - Built with profile "release", features "".
20260428 23:02:52.625 INFO grin - Chain: Mainnet
20260428 23:02:52.625 INFO grin - Accept Fee Base: 500000
20260428 23:02:52.625 INFO grin - Future Time Limit: 300
20260428 23:02:52.625 INFO grin - Feature: NRD kernel enabled: false
20260428 23:02:52.625 WARN grin::cmd::server - Starting GRIN in UI mode...
20260428 23:02:52.626 INFO grin_servers::grin::server - Starting server, genesis block: 40adad0aec27
20260428 23:02:52.658 DEBUG grin_store::lmdb - DB Mapsize for C:\Users\Test\Downloads\chain_data/lmdb is 134217728
20260428 23:02:52.659 DEBUG grin_store::leaf_set - bitmap 1 pos (18 bytes)
20260428 23:02:52.661 DEBUG grin_store::leaf_set - bitmap 1 pos (18 bytes)
20260428 23:02:52.661 DEBUG grin_chain::txhashset::bitmap_accumulator - applied 1 chunks from idx 0 to idx 0 (0ms)
20260428 23:02:52.684 DEBUG grin_chain::txhashset::txhashset - attempting to open kernel PMMR using ProtocolVersion(2) - SUCCESS
20260428 23:02:52.685 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:02:52.685 TRACE grin_store::lmdb - Space used: 20480
20260428 23:02:52.685 TRACE grin_store::lmdb - Space remaining: 134197248
20260428 23:02:52.685 TRACE grin_store::lmdb - Percent used: 0.0002 Percent threshold: 0.9000
20260428 23:02:52.685 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:02:52.686 DEBUG grin_chain::txhashset::txhashset - init_head: header PMMR: current head 40adad0aec27 at pos 1
20260428 23:02:52.686 DEBUG grin_chain::txhashset::txhashset - init_head: header PMMR: resetting to 40adad0aec27 at pos 1 (height 0)
20260428 23:02:52.686 DEBUG grin_chain::txhashset::txhashset - Rewind header extension to 40adad0aec27 at 0 from 40adad0aec27 at 0
20260428 23:02:52.694 TRACE grin_chain::txhashset::txhashset - Starting new txhashset extension.
20260428 23:02:52.694 DEBUG grin_chain::txhashset::txhashset - Rewind header extension to 40adad0aec27 at 0 from 40adad0aec27 at 0
20260428 23:02:52.694 DEBUG grin_chain::txhashset::txhashset - Rewind extension to 40adad0aec27 at 0 from 40adad0aec27 at 0
20260428 23:02:52.694 DEBUG grin_chain::txhashset::bitmap_accumulator - applied 1 chunks from idx 0 to idx 0 (0ms)
20260428 23:02:52.694 DEBUG grin_chain::chain - init: rewinding and validating before we start... 40adad0aec27 at 0
20260428 23:02:52.694 TRACE grin_chain::txhashset::txhashset - Committing txhashset extension. sizes (1, 1, 1)
20260428 23:02:52.768 TRACE grin_chain::txhashset::txhashset - TxHashSet extension done.
20260428 23:02:52.768 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:02:52.768 TRACE grin_store::lmdb - Space used: 20480
20260428 23:02:52.768 TRACE grin_store::lmdb - Space remaining: 134197248
20260428 23:02:52.768 TRACE grin_store::lmdb - Percent used: 0.0002 Percent threshold: 0.9000
20260428 23:02:52.768 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:02:52.768 DEBUG grin_chain::txhashset::txhashset - init_output_pos_index: removed 0 stale index entries
20260428 23:02:52.768 DEBUG grin_chain::txhashset::txhashset - init_output_pos_index: 1 utxos
20260428 23:02:52.768 DEBUG grin_chain::txhashset::txhashset - init_output_pos_index: 0 utxos with missing index entries
20260428 23:02:52.768 DEBUG grin_chain::chain - head: 17179869184 @ 0 [40adad0aec27]
20260428 23:02:52.768 DEBUG grin_chain::chain - header_head: 17179869184 @ 0 [40adad0aec27]
20260428 23:02:52.768 DEBUG grin_servers::grin::server - Capabilities: HEADER_HIST | TXHASHSET_HIST | PEER_LIST | TX_KERNEL_HASH | PIBD_HIST | PIBD_HIST_1
20260428 23:02:52.793 DEBUG grin_store::lmdb - DB Mapsize for C:\Users\Test\Downloads\chain_data/peer is 1048576
20260428 23:02:52.793 DEBUG grin_chain::types - sync_state: sync_status: Initial -> AwaitingPeers(true)
20260428 23:02:52.794 INFO grin_servers::grin::server - Starting rest apis at: 127.0.0.1:3413
20260428 23:02:52.794 DEBUG grin_servers::grin::seed - Retrieving addresses from dns mainnet.seed.grin.lesceller.com:3414
20260428 23:02:52.794 WARN grin_api::handlers - Starting HTTP Node APIs server at 127.0.0.1:3413.
20260428 23:02:52.794 WARN grin_api::handlers - HTTP Node listener started.
20260428 23:02:52.794 INFO grin_servers::grin::server - Starting dandelion monitor: 127.0.0.1:3413
20260428 23:02:52.794 DEBUG grin_servers::grin::dandelion_monitor - Started Dandelion transaction monitor.
20260428 23:02:52.794 WARN grin_servers::grin::server - Grin server started.
20260428 23:02:52.798 INFO grin_servers::common::types - DandelionEpoch: next_epoch: is_stem: true (90%), relay: None
20260428 23:02:53.101 DEBUG grin_servers::grin::seed - Retrieving addresses from dns mainnet.seed.grin.prokapi.com:3414
20260428 23:02:53.142 DEBUG grin_servers::grin::seed - Retrieving addresses from dns grinseed.revcore.net:3414
20260428 23:02:53.169 DEBUG grin_servers::grin::seed - Retrieving addresses from dns mainnet-seed.grinnode.live:3414
20260428 23:02:53.229 DEBUG grin_servers::grin::seed - Retrieving addresses from dns mainnet.grin.punksec.de:3414
20260428 23:02:53.342 DEBUG grin_servers::grin::seed - Retrieving addresses from dns grinnode.30-r.com:3414
20260428 23:02:53.595 DEBUG grin_servers::grin::seed - Resolved addresses: [PeerAddr(5.9.152.75:3414), PeerAddr(5.135.184.54:3414), PeerAddr(35.181.35.93:3414), PeerAddr(95.216.163.175:3414), PeerAddr(116.203.154.223:3414), PeerAddr(95.216.168.22:3414), PeerAddr(49.12.108.173:3414), PeerAddr(52.214.210.66:3414), PeerAddr(217.173.235.116:3414), PeerAddr(176.9.86.219:3414), PeerAddr(85.10.201.143:3414), PeerAddr(213.239.217.14:3414), PeerAddr(85.215.71.234:3414), PeerAddr(96.74.120.4:3414)]
20260428 23:02:53.596 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 5.9.152.75:3414
20260428 23:02:53.596 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
20260428 23:02:53.597 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 95.216.168.22:3414
20260428 23:02:53.597 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 35.181.35.93:3414
20260428 23:02:53.598 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 95.216.163.175:3414
20260428 23:02:53.598 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 116.203.154.223:3414
20260428 23:02:53.598 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 49.12.108.173:3414
20260428 23:02:53.598 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 5.135.184.54:3414
20260428 23:02:53.599 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 52.214.210.66:3414
20260428 23:02:53.599 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 217.173.235.116:3414
20260428 23:02:53.600 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 176.9.86.219:3414
20260428 23:02:53.600 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 213.239.217.14:3414
20260428 23:02:53.601 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 85.10.201.143:3414
20260428 23:02:53.601 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 85.215.71.234:3414
20260428 23:02:53.601 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. connecting to 96.74.120.4:3414
20260428 23:02:53.728 DEBUG grin_p2p::peer - connect: handshaking with Ok(217.173.235.116:3414)
20260428 23:02:55.598 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
20260428 23:02:56.893 DEBUG grin_p2p::peer - connect: handshaking with Ok(217.173.235.116:3414) failed with error: Connection(Error { kind: UnexpectedEof, message: "failed to fill whole buffer" })
20260428 23:02:56.893 TRACE grin_store::lmdb - DB map size: 1048576
20260428 23:02:56.893 TRACE grin_store::lmdb - Space used: 8192
20260428 23:02:56.893 TRACE grin_store::lmdb - Space remaining: 1040384
20260428 23:02:56.893 TRACE grin_store::lmdb - Percent used: 0.0078 Percent threshold: 0.9000
20260428 23:02:56.893 TRACE grin_store::lmdb - Resize threshold met (percent-based)
20260428 23:02:56.894 INFO grin_store::lmdb - Resized database from 1048576 to 134217728
20260428 23:02:59.602 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
20260428 23:03:03.600 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 5.9.152.75:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.600 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.600 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.600 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.600 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.600 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.600 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 35.181.35.93:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.600 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.600 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.600 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.600 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.600 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.606 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 95.216.168.22:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.606 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.606 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.606 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.606 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.606 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.607 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 95.216.163.175:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.607 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.607 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.607 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.607 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.607 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.607 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 116.203.154.223:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.607 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.607 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.607 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.607 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.607 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.617 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 5.135.184.54:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.617 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.617 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.617 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.617 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.617 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.618 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 49.12.108.173:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.618 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.618 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.618 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.618 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.618 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.619 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 52.214.210.66:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.619 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 213.239.217.14:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.619 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.619 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 176.9.86.219:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.619 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.619 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.619 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 85.215.71.234:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.619 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.619 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.619 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.619 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.619 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.619 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.619 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.619 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.619 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.619 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.620 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.620 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.620 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.620 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.620 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 85.10.201.143:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.620 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.620 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.620 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.620 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.620 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.620 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.620 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.620 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:03.621 TRACE grin_p2p::serv - connect_peer: on 0.0.0.0:3414. Could not connect to 96.74.120.4:3414: Error { kind: TimedOut, message: "connection timed out" }
20260428 23:03:03.621 TRACE grin_store::lmdb - DB map size: 134217728
20260428 23:03:03.621 TRACE grin_store::lmdb - Space used: 8192
20260428 23:03:03.621 TRACE grin_store::lmdb - Space remaining: 134209536
20260428 23:03:03.621 TRACE grin_store::lmdb - Percent used: 0.0001 Percent threshold: 0.9000
20260428 23:03:03.621 TRACE grin_store::lmdb - Resize threshold not met (percent-based)
20260428 23:03:07.660 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
20260428 23:03:23.746 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
20260428 23:03:43.897 DEBUG grin_servers::grin::seed - monitor_peers: on 0.0.0.0:3414, 0 connected (0 most_work). all 0 = 0 healthy + 0 banned + 0 defunct
We have 0 working seeds at main branch, specify some known at config:
So is it a bug? Do you have any suggestion to pass? I ran everything by default.
Its a feature, when DNS Seeds are going down you need to specify new, current seeds owners stepped away from the project long time ago, we need to make PR at Github repo for now. Wait 5.5.0 release.
To bypass the issue you need to edit grin-server.toml configuration file, e.g.:
seeding_type = “List”
seeds = [“grincoin.org:3414”,“main.gri.mw:3414”]
