c3364780d4 (#20696)
Source hash:c3364780d4Remaining commits: 1 <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Medium Risk** > Touches full node block-ingest and peer discovery paths plus wallet RPC signing behavior, so mistakes could affect sync/connectivity or transaction submission, though changes are mostly defensive and covered by new regression tests. > > **Overview** > Improves robustness and security hardening across node networking and block processing. `FullNode.add_prevalidated_blocks()` now returns typed `Err` values (and logs) when prevalidation fails or `required_iters` is missing, instead of raising assertions; new regression tests cover these cases. > > Hardens peer discovery against pathological peer host strings by bounding host length and rejecting non-IP hosts in `_add_peers_common()` and `add_peers_neighbour()`, with new tests for oversized/invalid/mixed hosts. > > Fixes cache eviction for future infusion points by recording TTLs in `FullNodeStore.add_to_future_ip()` and adds tests ensuring `clear_old_cache_entries()` evicts stale entries. Also tightens keyring passphrase cache semantics (empty/cleared treated as missing) with a new test, ensures data-layer uploader HTTP sessions consistently use `client_timeout`, fixes an S3 plugin missing `continue` on store-id mismatch, and disables auto-signing specifically for the wallet RPC `take_offer` action scope. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit1351f71b36. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
chia-blockchain
| Releases | Repo Stats | Socials |
|---|---|---|
Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of the features and benefits:
- Proof of space and time based consensus which allows anyone to farm with commodity hardware
- Very easy to use full node and farmer GUI and cli (thousands of nodes active on mainnet)
- Chia seeder, which maintains a list of reliable nodes within the Chia network via a built-in DNS server.
- Simplified UTXO based transaction model, with small on-chain state
- Lisp-style Turing-complete functional programming language for money related use cases
- BLS keys and aggregate signatures (only one signature per block)
- Pooling protocol that allows farmers to have control of making blocks
- Support for light clients with fast, objective syncing
- A growing community of farmers and developers around the world
Please check out the Chia website, the Intro to Chia, and FAQ for information on this project.
Python 3.10+ is required. Make sure your default python version is >=3.10 by typing python3.
If you are behind a NAT, it can be difficult for peers outside your subnet to reach you when they start up. You can enable UPnP on your router or add a NAT (for IPv4 but not IPv6) and firewall rules to allow TCP port 8444 access to your peer. These methods tend to be router make/model specific.
Most users should only install harvesters, farmers, plotter, full nodes, and wallets. Setting up a seeder is best left to more advanced users. Building Timelords and VDFs is for sophisticated users, in most environments. Chia Network and additional volunteers are running sufficient Timelords for consensus.
Installing
Install instructions are available in the Installation Details section of the Chia Docs.
Running
Once installed, an Intro to Chia guide is available in the Chia Docs.