Skip to content

Releases: DigiByte-Core/digibyte

DigiByte v9.26.0-rc30

19 Apr 19:57

Choose a tag to compare

DigiByte v9.26.0-rc30 Pre-release
Pre-release

DigiByte v9.26.0-rc30 Release Notes

WARNING: This is a TESTNET-ONLY release. DO NOT use on mainnet.

Development Branch: https://github.com/DigiByte-Core/digibyte/tree/feature/digidollar-v1

Join the Developer Chat: https://app.gitter.im/#/room/#digidollar:gitter.im


⚠️ TESTNET RESET REQUIRED

RC30 launches a fresh testnet23 chain. This reset changes the genesis block to 0xa19e809bb060f7f50c05a9bec7fdefedd8497aa0bd6ccca6f55c86090963e4ca, changes network magic to fd d2 b9 e4, keeps proof-of-work enabled, and moves the default testnet P2P port to 12030. Existing wallets and oracle keys can be migrated forward, but old testnet21 chain data must not be reused.


Reset / Migration Quick Path

  1. Stop your old RC28 or RC29 testnet node.
  2. Install and start the RC30 binary once so testnet23/ is created.
  3. Verify the new network is listening on 12030 and matches genesis 0xa19e809bb060f7f50c05a9bec7fdefedd8497aa0bd6ccca6f55c86090963e4ca.
  4. Migrate only wallet and oracle key material from testnet21 into testnet23 as needed.
  5. Do not copy old blocks/, chainstate/, or indexes/ forward.

What's New in RC30

RC30 is an oracle expansion + hardening release that grows DigiDollar's oracle operator set from 11 to 17 and raises the consensus quorum from 8-of-15 to 9-of-17. Three new operators join the set, real RC30 testnet keys are wired in for Neel and GTO90, proof-of-work mining stays enabled on release testnet, and the local multi-oracle debugger now uses a runtime-only -easypow harness mode instead of source edits.

RC30 fix summary since RC29

One-line summary of each substantive fix or release-facing change landed after RC29:

  • Oracle quorum expanded from 8-of-15 to 9-of-17 with 17 slots and 3-byte MuSig2 participation bitmaps.
  • Real operator/pubkey set refreshed for RC30, including hallvardo, DigiByteForce slot assignment, Neel real key, DigiSwarm slot 15 key, and GTO90 real key.
  • Oracle key lists are slot-ordered across vOraclePublicKeys, vOracleNodes, and test fixtures so MuSig2 bitmaps line up with oracle IDs.
  • ValidateOracleConfiguration() no longer requires lexicographic pubkey ordering, while still enforcing count, uniqueness, and key validity.
  • Phase 3 MuSig2 payload now includes epoch on-chain, fixing signer/verifier hash mismatch and cross-epoch replay risk.
  • MuSig2 P2P nonce and partial-signature messages are now Schnorr-signed by the sender, matching RH-24 network hardening.
  • Remote partial signatures are verified before aggregation, preventing invalid aggregates from mismatched participant sets and fixing the replay-filter memory leak path covered by RH-02 tests.
  • Lazy MuSig2 session creation on remote message arrival prevents valid early nonces/partials from being dropped during fast testnet startup.
  • ValidateEmergencyRedemption() and related defaults/comments were updated from stale 8-of-15 assumptions to final 9-of-17 values.
  • Qt DigiDollar amount widgets now allow typing values below the minimum, so users can enter/edit values naturally before final validation.
  • estimatecollateral now reads system health from the indexed DigiDollar stats path, fixing stale-health results (Bug #34).
  • Qt minting now auto-consolidates wallet UTXOs when needed, preventing fragmented-wallet mint failures.
  • Mempool-backed DigiDollar amount resolution now works across chained transfers, fixing conservation lookups before confirmation (Bug #35).
  • RC30 cuts a fresh testnet23 chain with new genesis, new network magic, fresh chainTx baseline, and default P2P port 12030.
  • Release testnet keeps normal proof-of-work rules enabled by default, while local multi-oracle harnesses can opt into -easypow without patching source.
  • Shell harnesses and operator docs were updated for testnet23, wallet/key migration, 9-of-17 quorum, and the new runtime debug flow.

DigiByte v9.26.0-rc29 — Red Hornet v3 Security Audit (TESTNET)

06 Apr 13:52

Choose a tag to compare

DigiByte v9.26.0-rc29 Release Notes

WARNING: This is a TESTNET-ONLY release. DO NOT use on mainnet.

Development Branch: https://github.com/DigiByte-Core/digibyte/tree/feature/digidollar-v1

Join the Developer Chat: https://app.gitter.im/#/room/#digidollar:gitter.im


⚠️ SAME TESTNET — NO RESET

RC29 uses the same testnet21 chain as RC28. There is no testnet reset. Your existing chain data, wallets, and oracle keys carry forward. Just replace the binary and restart.


What's New in RC29

RC29 is a security hardening release built on the Red Hornet v3 overnight audit. 17 bugs found and fixed, 402 adversarial tests added, zero exploitable vulnerabilities remaining.

1. Red Hornet v3 Security Audit — 17 Bugs Fixed

A comprehensive adversarial security audit was conducted overnight (Apr 3–4, 2026) covering all DigiDollar consensus, oracle, MuSig2, wallet, P2P, and policy code paths. 49 attack waves (RH-01 through RH-50) targeted specific vulnerability classes.

CRITICAL Fixes

RH-30a: COOLDOWN_BLOCKS timing correction
The volatility cooldown period was set to 144 blocks (36 minutes), not the intended 36 hours. An attacker could wait out the cooldown trivially. Fixed: increased to 8,640 blocks (36 hours) with overflow saturation arithmetic to prevent cooldownEndHeight from wrapping to zero.

RH-30b: Address validation hardened
IsValidDigiDollarAddress only checked the "D" prefix — any string starting with "D" passed. Fixed: full base58check validation including encoding, length, and checksum verification.

HIGH Fixes

RH-25a: Bundle serialization consistency
v0x03 oracle bundle fields (version, aggregate_sig, participation_bitmap) were dropped during P2P round-trip serialization. Fixed with version-conditional serialization in COracleBundle.

RH-38: DD opcode vulnerabilities
Three issues: zero-amount mint bypass, MAX_MONEY/MAX_DIGIDOLLAR mismatch allowing mints above the DD supply cap, and unvalidated trailing OP_RETURN data. All fixed.

RH-49: Dynamic OP_RETURN finder
Hardcoded vout[2] index for DD OP_RETURN extraction replaced with FindDDOpReturn() helper that handles variable transaction structures.

MEDIUM Fixes

RH-03: P2P message hardening

  • Rate limiting: 600 MuSig2 messages/hour per peer (prevents relay amplification DoS)
  • Oracle ID range validation: reject IDs ≥ ORACLE_TOTAL_COUNT (IDs 30–254 were slipping through)
  • Epoch validation: reject epochs outside [1, current_epoch+1]
  • Memory cap: 2,048-entry limit for RegisterSeenHash (prevents unbounded memory growth)

RH-08: Plaintext key erasure
EncryptDDKeys() now calls EraseDDOwnerKey() and EraseDDAddressKey() after writing encrypted versions, preventing forensic recovery of plaintext DD private keys from wallet.dat.

RH-24: Schnorr authentication on P2P messages
MuSig2 P2P messages (ORACLEMUSIGNONCE, ORACLEMUSIGPARTIALSIG) now carry Schnorr signatures to prevent unauthenticated oracle message spoofing.

RH-26c: Transaction type bounds check
GetDigiDollarTxType lacked bounds checking — out-of-range enum access could crash the node. Fixed.

RH-36a: ERR state TOCTOU race
DCA cache could overwrite reconstructed ERR (Exchange Rate Reserve) state after node restart. Fixed with s_stateReconstructed guard flag.

RH-36b: Health value clamping
Health values are now clamped to [0, 30000] before DCA tier lookup, preventing integer overflow in multiplier calculations.

RH-36c: Early DD transaction rejection
Invalid DD transaction types are now rejected early in AcceptToMemoryPool before expensive oracle/database lookups (DoS mitigation).

RH-25b: Cached price reorg handling
RemovePriceCache now reverts cached_price after chain reorganizations, preventing stale oracle prices from being returned.

2. Red Hornet v3 Test Suite — 402 Adversarial Tests

52 new test files covering every attack surface:

Category Tests Coverage
Key aggregation (RH-01) 7 Rogue key, Wagner, linearity, degenerate keys
P2P & orchestrator (RH-03/04) 34 Message flooding, validation bypass, nonce replay
Bundle validation (RH-05) 19 Version downgrade, price manipulation, bitmap abuse
Minting attacks (RH-06) 36 Collateral bypass, zero mint, integer overflow
Redemption attacks (RH-07) 17 Early redemption, partial burn, double-spend
Wallet security (RH-08) 13 Key derivation, UTXO injection, encryption
Oracle price feeds (RH-09) 12 Source manipulation, extreme prices, staleness
Integration chains (RH-10) 6 Multi-step reorg + mint + oracle attack scenarios
Consensus edge cases (RH-11–21) 195+ Script, economic, serialization, boundary
Auth & serialization (RH-24–26) 14 Schnorr auth, dust policy, version fields
Deep protocol (RH-28–35) 176 Fork scenarios, DCA, mempool, state machine, chaos
Regression & invariants (RH-40–49) 265+ Formal invariants, thread safety, RPC validation

3. Test Suite Fixes

MuSig2 test suite merge — Red Hornet RH-01 adversarial tests and session manager tests were in separate BOOST_FIXTURE_TEST_SUITE blocks that caused test runner discovery issues. Merged into their parent suites.

Bench sanity check fixbench_digibyte was invoked with -sanity-check and -priority-level during make check but neither flag was registered with ArgsManager. Fixed: both args registered, and sanity check now uses -filter="SHA256_32b" for a faster single-bench run.

DigiByte address fixtures — 16 JSON test data files in test/util/data/ still contained Bitcoin mainnet addresses (1xxx prefix) inherited from Bitcoin Core. Updated to DigiByte format (Dxxx prefix).

8 functional tests updated for RC29 compatibility:

  • digidollar_oracle_price.py — sub-cent precision handling, accept price_cents=0
  • digidollar_rpc_estimate.py — tolerance for DCA multiplier effects
  • digidollar_rpc_gating.py — added missing -digidollar=1 flag
  • digidollar_bug11_bug13_regression.py, oracle_consistency.py, rpc_position_fields.py, watchonly_rescan.py, rpc_display_bugs.py — minor fixes

4. Documentation

  • RED_HORNET_V3_REPORT.md — Full security audit report with all 17 findings
  • RH45_WALLET_CRYPTO_FINDINGS.md — HD key derivation and wallet crypto review
  • WALLET_MIGRATION_GUIDE.md — Testnet wallet migration between chain resets
  • Updated architecture docs: DIGIDOLLAR_ARCHITECTURE.md, DIGIDOLLAR_EXPLAINER.md, DIGIDOLLAR_ACTIVATION_EXPLAINER.md, REPO_MAP.md

What Was New in RC28 (included in RC29)

RC29 includes everything from RC28 and RC27. See RC28 release notes for:

  • Testnet reset to testnet21 — chain contamination fix with new genesis block and magic bytes
  • Fixed getoracles RPC — all 11 oracle names display correctly
  • MuSig2 aggregate signing (v0x03) — full implementation
  • Oracle consensus updated to 6-of-11
  • sendoracleprice RPC permanently removed (security)
  • Bug fixes #24#29, #33
  • Three critical MuSig2 signing fixes (nonce mismatch, message hash, bundle drift)
  • 208-target fuzz testing suite
  • Post-Quantum Cryptography roadmap

Validation Results

Category Result Status
Unit tests 2,857/2,857 PASS
Fuzz tests 113/113 PASS
Functional tests 34/43 PASS ✅ (9 pre-existing)
Qt build SUCCESS
RPC commands 7/7 working
Debug logs 160 lines, zero errors
Consensus audit 14 commits, ALL SAFE

Pre-existing Test Issues (NOT from RC29)

  • 4 functional tests: wrong constructor API (__init__(__file__)__init__())
  • 4 functional tests: RPC field type expectations
  • 1 functional test: missing -digidollar=1 flag
  • 3 unit tests: intentional "BUG DOCUMENTED" failures (RH-02 garbage partial sig — expected behavior)

Commits Since RC28

6b43876612 test: update util test fixtures from Bitcoin to DigiByte addresses
c192f23bd8 build: fix bench sanity check — register missing CLI args
161b905fbd test: merge MuSig2 sub-suites into parent test suites
95539795af docs: Red Hornet v3 audit report and documentation updates
571162865f test: fix 8 functional tests for RC29 compatibility
2b6a345d85 test: Red Hornet v3 — 402 security tests across 51 unit test files
9f0552bb8f build: add Red Hornet security test files to build system
ff30932331 fix: wallet, RPC, and Qt changes for RC29
dc1d6eacd3 security: Red Hornet v3 — oracle, MuSig2, and P2P hardening
3b8a2313aa security: Red Hornet v3 — consensus, validation, and policy hardening
828e4f5667 security: [RH-01] adversarial key aggregation tests — all defenses hold

What is DigiDollar?

DigiDollar is a USD-pegged stablecoin built natively into DigiByte. It uses an over-collateralized model where users lock DGB to mint DUSD at the current oracle price of DGB.

The world's first truly decentralized stablecoin native on a UTXO blockchain, enabling stable value transactions without centralized control.

DGB becomes the strategic reserve asset (21B max, only ~1.94 DGB per person on Earth). Everything happens inside DigiByte Core wallet. You never give up custody of your private keys. No centralized company, fund or pool. Pure decentralization.

Learn more: https://digibyte.io/digidollar


Upgrading from RC28

No testnet reset — just replace the binary and restart:

digibyte-cli -testnet stop
# Replace binaries with RC29
digibyted -testnet -daemon

If you are an oracle operator, your oracle will auto-start:

  • Unencrypted wallets: oracle starts automatically when wallet loads
  • Encrypted wallets: oracle starts autom...
Read more

DigiByte Core v8.26.2 Full Release

16 Jan 17:56

Choose a tag to compare

DigiByte Core v8.26.2 — Formal Full Release

This is the official full release of DigiByte Core version 8.26.2
All DigiByte exchanges, wallets, mining pools, explorers, and infrastructure services using DigiByte Core as a backend are strongly advised to upgrade immediately for full Taproot support, enhanced test infrastructure, and improved cross-platform UI performance.

This release represents the culmination of the v8.26 development cycle and is now the stable reference version for all DigiByte Core deployments.


DigiByte Core v8.26.2 Release Notes

Release Date: January 2026
Full Changelog: v8.26.1...v8.26.2

Summary

DigiByte Core v8.26.2 is a maintenance release containing critical bug fixes for RPC performance and correctness issues. All users are strongly encouraged to upgrade.

This release addresses two bugs that were introduced during the Bitcoin Core v26.2 merge:

  1. Performance regression in getblockchaininfo RPC (6-10x slowdown)
  2. Incorrect difficulty reporting in getmininginfo RPC

Notable Changes

Fix: getblockchaininfo RPC Performance Regression (#345)

Issue: The getblockchaininfo RPC call was taking approximately 3 seconds to complete on nodes with fully synced chains, compared to sub-second responses in previous versions.

Root Cause: The Bitcoin Core v26.2 merge inadvertently changed the difficulty calculation to use GetLastBlockIndexForAlgo(), which performs an O(n) linear search through the blockchain to find the last block for each mining algorithm. With DigiByte's ~23 million blocks and 5-6 difficulty lookups per RPC call, this caused significant latency.

Fix: Changed to use GetLastBlockIndexForAlgoFast(), which uses DigiByte's pre-existing O(1) cached algorithm lookup infrastructure. This function is already proven in PoW validation code paths.

Impact:

  • Before: ~3 seconds per RPC call
  • After: ~0.3-0.5 seconds per RPC call
  • 6-10x performance improvement

Fix: getmininginfo Difficulty Returns Wrong Algorithm (#346)

Issue: The difficulty field in getmininginfo RPC was returning a fixed value that didn't change regardless of the current mining algorithm. Investigation revealed it was always returning Groestl's difficulty (algo=2).

Root Cause: During the Bitcoin Core v26.2 merge, the miningAlgo parameter was accidentally omitted from the GetDifficulty() call, causing it to default to algorithm 2 (Groestl) instead of using the node's configured mining algorithm.

Fix: Restored the miningAlgo parameter to the GetDifficulty() call so that the reported difficulty correctly reflects the current mining algorithm.

Impact: Mining pools and monitoring tools now receive correct difficulty values for their configured algorithm.

Files Changed

File Change
src/rpc/blockchain.cpp Use fast O(1) algorithm lookup for difficulty calculation
src/rpc/mining.cpp Restore miningAlgo parameter to GetDifficulty() call

Upgrade Instructions

For Node Operators

  1. Stop your DigiByte node: digibyte-cli stop
  2. Replace binaries with v8.26.2 release
  3. Start node: digibyted

No configuration changes or reindex required.

For Miners and Mining Pools

This release is critical for mining operations. The getmininginfo bug caused incorrect difficulty reporting which could affect stratum difficulty calculations.

  1. Update to v8.26.2 immediately
  2. Verify correct difficulty reporting: digibyte-cli getmininginfo
  3. Confirm the difficulty field matches your configured mining algorithm

For Exchanges and Services

The performance improvement in getblockchaininfo may significantly reduce RPC latency for monitoring and status checks. No action required beyond the standard upgrade process.

Testing

Both fixes include regression tests to prevent future occurrences:

  • Performance benchmarks for getblockchaininfo RPC
  • Algorithm-specific difficulty verification in feature_digibyte_multialgo_mining.py

Credits

Thanks to the community members who reported these issues and contributed to the investigation:

  • Issue #345 reported by community members experiencing RPC slowdowns
  • Issue #346 reported by mining pool operators noticing incorrect difficulty values

Previous Release

For changes in v8.26.1, see: https://github.com/DigiByte-Core/digibyte/releases/tag/v8.26.1

DigiByte Core v8.26.1

30 Oct 16:14
ef92708

Choose a tag to compare

DigiByte Core v8.26.1 — Formal Full Release

This is the official full release of DigiByte Core version 8.26.
All DigiByte exchanges, wallets, mining pools, explorers, and infrastructure services using DigiByte Core as a backend are strongly advised to upgrade immediately for full Taproot support, enhanced test infrastructure, and improved cross-platform UI performance.

This release represents the culmination of the v8.26 development cycle and is now the stable reference version for all DigiByte Core deployments.


Overview

Version: v8.26.1
Previous Version: v8.26.0
Release Type: Formal Stable Release
Release Date: October 30, 2025

This release includes:

  • Full Taproot activation support for DigiByte Mainnet
  • Critical test infrastructure updates
  • Major UI rendering fixes across Windows, macOS, and Linux
  • Updated translations for multiple global languages
  • Integration of BIP324 (V2 Transport Protocol) functional testing

Version Summary

  • Formal release of DigiByte Core 8.26

    • This marks the stable build to replace all previous 8.25.x and 8.26.0-beta releases.
    • All production environments should migrate to this version.
  • Version bump: 8.26.0 → 8.26.1

  • Fixed macOS build issues after latest SDK and Xcode updates

  • Fixed Test Runner QT URL issue affecting test suite integrity


Translation & Localization Updates

Ensuring consistent global branding across all translated wallets and interfaces, matching official usage on https://digibyte.org:

Language Change Instances Notes
Arabic (ar) بتكوين → DigiByte (Latin) 3 Retains Latin brand as per official Arabic site
Persian (fa, fa_IR) بیت‌کوین → دیجی بایت 13 Matches official usage “دیجی بایت” (“Diji Bayt”)
Chinese (zh, zh_CN, zh-Hans, zh-Hant, zh_TW, cmn) 比特币 / 比特幣 → 极特币 100+ Aligns with official localized brand “极特币” (jí tè bì)

V2 Transport Protocol (BIP324) Testing

The DigiByte Core v8.26.1 release introduces full testing support for BIP324 (Transport V2) — the next-generation encrypted peer-to-peer communication layer.

  • Added functional test suite coverage for V2 transport negotiation
  • V2 transport remains disabled by default
    (Enable using -v2transport=1 in digibyte.conf or command line)
  • Removed obsolete RPC planning documents
  • Updated test_runner.py to include V2 transport test variants

BIP324 enhances DigiByte’s P2P layer with optional end-to-end encryption between nodes, improving privacy, reducing metadata exposure, and paving the way for future network-level protocol advancements.


Qt Wallet — Cross-Platform UI Fixes

Comprehensive fixes for both dark and light modes, ensuring proper rendering and readability across all supported platforms.

Dark Mode Improvements

  • Fixed invisible transaction text on Linux caused by light backgrounds
  • Corrected alternating row colors in transaction tables
  • Removed invalid CSS syntax (!important) causing macOS issues
  • Improved visibility with dark blue backgrounds for transaction lists

Light Mode Improvements

  • Fixed File menu dropdown text rendering on dark backgrounds
  • Improved transaction hash label visibility
  • Restored proper color-coded amounts (green = received, red = sent)
  • Removed redundant overrides breaking color mapping

Developer Infrastructure Enhancements

Introduced an external CSS hot-loading system to accelerate wallet UI development:

  • Added optional external CSS reloader (disabled by default)
  • Activate by uncommenting in digibyte.cpp
  • Loads styles from ~/.digibyte-dev/css/
  • Integrated QFileSystemWatcher for automatic refresh on file change
  • Disabled by default

This enables real-time theming and testing for developers without recompiling.


Technical Summary

Area Focus Key Outcome
Consensus Layer Taproot fully supported Full mainnet activation complete
Network Layer BIP324 testing Encrypted transport coverage integrated
UI Layer Qt Wallet Unified dark/light mode across OSes
Localization Brand translations Consistent DigiByte identity
Build System macOS + CI/CD Fixed post-update issues
Dev Tools CSS hot-load Faster UI iteration

Upgrade Instructions

All DigiByte Core operators must upgrade to v8.26.1 to maintain full compatibility and consensus validation with Taproot-enabled blocks.

Recommended upgrade path:

  1. Stop all DigiByte Core or daemon instances.
  2. Backup your wallet.dat and configuration files.
  3. Install DigiByte Core v8.26.1.
  4. Restart with existing blockchain data — no reindex required unless otherwise indicated.
  5. Verify your node version via getnetworkinfosubversion: /DigiByte:8.26.1/.

Exchanges, explorers, and pools must upgrade immediately to ensure full Taproot validation and P2P compatibility.


Acknowledgements

Massive thanks to all DigiByte Core contributors, translators, and testers who have helped ensure this release is stable, secure, and globally accessible.


Useful Links


Final Statement

DigiByte Core v8.26.1 is the official, fully stable release of the v8.26 branch.
It finalizes the integration of Taproot, extends network privacy via BIP324, enhances global language support, and modernizes wallet visuals for a cleaner, consistent experience.

Upgrade now to ensure full compatibility with the DigiByte main network and to support the continued decentralization, speed, and security of DigiByte — the world’s longest-running, most secure UTXO blockchain.

What's Changed

  • v8.26.1 Release - Fix GUI Issues, Enable V2 Transport Tests by @JaredTate in #338

Full Changelog: v8.26.0...v8.26.1

DigiByte Core v8.26.0 Beta Release

25 Sep 21:26
21fdb15

Choose a tag to compare

Pre-release

DigiByte Core v8.26.0 Release Notes

Release Overview

DigiByte Core v8.26.0 Beta Release represents a monumental upgrade, successfully merging Bitcoin Core v26.2 into DigiByte while preserving all of DigiByte's unique features. This release brings cutting-edge Bitcoin technology to the DigiByte blockchain, achieved in just 3 months through innovative AI-assisted development with Team DigiSwarm.

This is a pre-release beta version intended for testing purposes only. Do not use for production or with significant funds.

Major Milestone

What previously took 4 years and a large development team for v8.22, has been accomplished in 3 months using AI-assisted development. This demonstrates the future of open-source blockchain development and the power of the DigiByte community.

Protocol Upgrade

  • Protocol Version: Upgraded from 70018 to 70019
  • Compatibility: All nodes should upgrade to maintain network compatibility

Major Features from Bitcoin Core v26.2

1. Taproot & Advanced Scripting

  • Full Taproot Support: Enhanced privacy and efficiency for complex transactions
  • Schnorr Signatures: More efficient signature scheme with improved privacy
  • MAST (Merkelized Alternative Script Trees): Advanced smart contract capabilities
  • Miniscript: Simplified script composition for complex spending conditions
  • BIP 86/341/342 Support: Complete Taproot implementation

2. Performance Improvements

  • AssumeUTXO: Dramatically reduces initial blockchain sync time from 8-16 hours to minutes
  • Compact Block Filters (BIP 157/158): Improved light client support
  • CoinGrinder Algorithm: Optimized coin selection for transaction creation
  • Enhanced Mempool Management: More efficient transaction processing
  • Improved Block Propagation: Faster block relay across the network

3. Network Security Enhancements

  • BIP324 v2 P2P Encryption: Optional encrypted connections between nodes
  • Full-RBF by Default: Replace-by-fee enabled for all transactions
  • Eclipse Attack Resistance: Improved peer selection algorithms
  • Multi-Network Connectivity: Better network isolation and security
  • Enhanced DoS Protection: Improved resistance to denial-of-service attacks

4. Wallet Improvements

  • Descriptor Wallets: Now the default wallet type for improved functionality
  • Native Taproot Address Support: Generate and use dgb1p addresses
  • Hardware Wallet Integration: Enhanced support for external signing devices
  • New RPC Commands:
    • sendall: Send entire wallet balance in one transaction
    • simulaterawtransaction: Test transactions without broadcasting
    • scanblocks: Efficient UTXO scanning
    • getprioritisedtransactions: View fee-bumped transactions
  • Improved Coin Control: More granular control over transaction inputs
  • Watch-Only Wallet Enhancements: Better support for cold storage setups

5. Mining & RPC Enhancements

  • generateblock RPC: Direct block generation for testing
  • Enhanced getblocktemplate: Improved mining pool support
  • Stratum v2 Preparation: Foundation for next-generation mining protocol
  • Fee Estimation Improvements: More accurate fee predictions

Preserved DigiByte Features

All core DigiByte innovations remain fully functional:

  • Multi-Algorithm Mining: SHA256, Scrypt, Skein, Qubit (+ Odocrypt at height 9,112,320)
  • DigiShield & DigiSpeed: Real-time difficulty adjustment
  • Dandelion++ Privacy: Enhanced transaction privacy through stempool
  • 15-Second Block Time: 40x faster than Bitcoin
  • 21 Billion Maximum Supply: Maintaining DigiByte's economic model
  • 8-Block Maturity: Faster coinbase maturity (100 blocks after certain height)

Technical Changes

Consensus Changes

  • Taproot activation parameters configured for DigiByte
  • Script validation updated for new opcodes
  • Witness version 1 support enabled

P2P Network Changes

  • Increased default outbound connections from 8 to 16
  • Improved header synchronization
  • Enhanced block announcement logic
  • Support for v2 transport protocol (BIP324)

Database & Storage

  • Improved UTXO database performance
  • Enhanced pruning capabilities
  • Optimized block storage format
  • Better database corruption recovery

Testing Status

  • ✅ All 586 C++ unit tests passing
  • ✅ Mainnet synchronization verified
  • ✅ Multi-algorithm mining tested
  • ✅ Wallet functionality confirmed
  • ✅ Functional tests fixed

Known Issues

  • v2transport tests disabled (not yet enabled by default in DigiByte)

Who Should Upgrade

Beta Testers & Developers: This release is specifically for testing. We encourage:

  • Testnet node operators to upgrade and report issues
  • Developers to test new features and provide feedback
  • Mining pools to test compatibility (on testnet only)

Production Users: Wait for the stable release after beta testing is complete

Building from Source

git clone https://github.com/DigiByte-Core/digibyte.git
cd digibyte
git checkout v8.26.0
./autogen.sh
./configure
make -j$(nproc)

Reporting Issues

Please report any issues to: https://github.com/DigiByte-Core/digibyte/issues

When reporting, include:

  • Your operating system
  • Steps to reproduce
  • Any error messages
  • Debug.log output if applicable

Acknowledgments

This release was made possible through the collaborative efforts of:

  • Team DigiSwarm & AI-assisted development
  • DigiByte Core developers
  • Bitcoin Core contributors (upstream changes)
  • The DigiByte community testers and supporters

Special recognition to the innovative use of AI in accelerating development while maintaining code quality and security.

Links


Reminder: This is a beta release for testing only. Do not use with production wallets or significant funds.

DigiByte Core v8.22.2

27 Mar 21:33
v8.22.2
cc52963

Choose a tag to compare

We want to announce the release of DigiByte Blockchain v8.22.2. This release fixes a fee estimation issue with sendmany and re-enables the default fallback fee. If you have installed v8.22.1 we encourage you to upgrade to v8.22.2.

What's Changed

  • Replace seed.digibyte.help with seed.diginode.tools by @saltedlolly in #286
  • wallet: Fix fee estimation issue with sendmany and re-enable fallback fee by @gto90 in #292

Full Changelog: v8.22.1...v8.22.2

DigiByte Core v8.22.1

03 Feb 13:13
664c6a3

Choose a tag to compare

We want to announce the release of DigiByte Blockchain v8.22.0. This release fixes some memory bugs, an HD wallet import bug, and adds more current checkpoints and assumevalid for DGB blockchain verification history. If you have installed v8.22.0-final we encourage you to upgrade to v8.22.1.

The DGB devs will begin work after this release on DGB v8.23.0 which will be required for taproot usage inside the core wallet once the DigiByte blockchain has finished its network Taproot softfork activation process.

What's Changed

  • Update DGB Checkpoint, Assumevalid & Bump to v8.22.1 by @JaredTate in #274
  • Fix common.h Memory Alignment Issue by @JaredTate in #275
  • Fix Memory Access Bug & Improve GetAlgo Handling for Legacy & Testnet Blocks by @JaredTate in #278
  • chore: Update Qt wallet logo by @gto90 in #279
  • Fix 8.22.0 HD Wallet Import Crash Bug by @JaredTate in #282

Full Changelog: v8.22.0-final...v8.22.0-1

DigiByte Core v8.22.0-Final

16 Jan 00:30
d081501

Choose a tag to compare

We are excited to announce the final release of DigiByte Blockchain v8.22.0. This removes rc5 image and fixes a boost build dependency when building with depends.

What's Changed

  • chore: Update DigiByte logos and version string. by @gto90 in #272

Full Changelog: v8.22.0-rc5...v8.22.0-final

DigiByte Core v8.22.0-RC5

24 Dec 14:08
21698e7

Choose a tag to compare

DigiByte Blockchain v8.22.0- rc5 Release Notes

We are excited to announce the release of DigiByte Blockchain v8.22.0 RC5. This will be the final release candidate before the official v8.22 release, planned around DigiByte’s birthday on January 10, 2025. In the meantime, we intend to conduct a final, full Taproot activation test and reset Testnet. We would greatly appreciate your help in testing RC5 to ensure there are no remaining issues. Thank you to everyone who helps test and work on v8.22!

This release is based on Bitcoin Core v22 and brings in various features and improvements from Bitcoin Core v0.18, v0.19, v0.20, v0.21, and v22. Please note that this is a test release and not intended for production use. Thank you to everyone who has helped test & develop RC5 to this point!

Note: If you had issues importing DGB wallets from old core wallets this RC5 release should fix your issue.

Note: Apple Silicone binary for m-series macs needs to be compiled locally. This is for two reasons, one we still have issues with GUIX build process, and two the recent disclosure of the GoFetch vulnerability in all m-series Macs.

Major RC5 Changes

  • Stop creating bdb wallets by default.
  • Taproot deployment enabled.
  • Dandelion fixed & re-enabled.
  • All dandelion & taproot tests fixed.
  • All 215 functional tests are now fixed.

Testing and Feedback

As this is a test release, we encourage users to try out the new features and improvements and provide feedback on any issues you encounter. This will help us refine the final release for a more stable and feature-rich DigiByte Blockchain experience.

Please report any issues or feedback on our GitHub repository or join the DigiByte community on Gitter, Telegram, Discord, or Reddit.

We would like to thank our developers and the entire DigiByte community for their continued support and dedication to the project. Together, we are making the DigiByte Blockchain more secure, efficient, and accessible for everyone.

What's Changed

  • Stop creating bdb ( QT ) && Warn if the loaded wallet is legacy in #227
  • Set minimal sqlite3 >= 3.45.2 && Boost >= 1.84.0 in #230
  • DigiByte Core ( BTC22.1 Backports for BTC Core 22 ) in #232
  • Disable Dandelion in #235
  • Rename Satoshi to DigiSatoshi in QT by @saltedlolly in #229
  • Activate Taproot by @SogobiNapiasi in #244
  • tests, workspace: Add Taproot soft fork status to getblockchaininfo test and VS Code workspace configuration by @gto90 in #254
  • wallet: Remove unused descriptor checkbox from wallet creation dialog by @gto90 in #253
  • Uncomment & Re-Enable Taproot & Dandelion Tests by @JaredTate in #255
  • ci: Consolidates and improves the ci workflow by @gto90 in #256
  • chainparams, tests: Fix Taproot activation and wallet_taproot.py functional test by @gto90 in #257
  • tests: Fix Taproot activation and wallet_taproot.py functional test by @gto90 in #258
  • Year & Version Bump by @JaredTate in #260
  • ci: Improve GitHub Actions workflow for automated builds and testing by @gto90 in #259
  • Bump DigiByte logo to 8.22.0-RC5 by @beggsdl in #261
  • Fix Dandelion Implementation & Dandelion Tests by @JaredTate in #262
  • ci: Add CodeQL analysis workflow for enhanced security scanning by @gto90 in #265

New Contributors

Full Changelog: v8.22.0-rc4...v8.22.0-rc5

DigiByte Core v8.22.0-RC4

02 Apr 01:53
527219d

Choose a tag to compare

Pre-release

DigiByte Blockchain v8.22.0- rc4 Release Notes

We are excited to announce the test release of DigiByte Blockchain v8.22.0 rc4. This release is based on Bitcoin Core v22 and brings in various features and improvements from Bitcoin Core v0.18, v0.19, v0.20, v0.21, and v22. Please note that this is a test release and not intended for production use. Thank you to everyone who has helped test & develop RC3 to this point!

Note: If you had issues importing DGB wallets from old core wallets this RC4 release should fix your issue.

Note: Apple Silicone binary for m-series macs needs to be compiled locally. This is for two reasons, one we still have issues with GUIX build process, and two the recent disclosure of the GoFetch vulnerability in all m-series Macs.

Major RC4 Changes

  • Import bug for old DGB wallets fixed.
  • Coinbase maturity bug fixed.
  • Descriptor wallets now default type when creating a new wallet instead of a legacy wallet.
  • All 680+ unit & functional tests are now fixed & working as expected to help test future changes.

Testing and Feedback

As this is a test release, we encourage users to try out the new features and improvements and provide feedback on any issues you encounter. This will help us refine the final release for a more stable and feature-rich DigiByte Blockchain experience.

Please report any issues or feedback on our GitHub repository or join the DigiByte community on Gitter, Telegram, Discord, or Reddit.

We would like to thank our developers and the entire DigiByte community for their continued support and dedication to the project. Together, we are making the DigiByte Blockchain more secure, efficient, and accessible for everyone.

Notable Changes

  • Minimum Transaction Fee Increase: The minimum transaction fee has been increased from 0.001 DGB to 0.1 DGB per kilobyte.

  • Taproot Deployment Delay: Please note that the Taproot deployment date has been set to 2099 for this release to delay activation. Given the immense amount of changes in this release, it was decided by core developers to delay taproot activation until the next DGB core release to make sure there were no inadvertent vulnerabilities introduced allowing the DGB network to be easily spammed by taproot changes.

  • Bitcoin Core Feature Inclusions: Major changes from Bitcoin Core v0.18, v0.19, v0.20, v0.21, and v22 have been integrated into DigiByte v8.22.0 rc1. Some highlights include:

    • Taproot and Schnorr Signatures (BTC v0.21): This release includes the implementation of Taproot and Schnorr signatures, which bring various improvements to the DigiByte Blockchain, such as increased privacy, enhanced smart contract capabilities, and more efficient signature aggregation. Although the functionality is fully integrated, the activation dates for Taproot and Schnorr signatures have been delayed until 2099. The activation dates will be updated in the next release to enable these features for the DigiByte community.

    • Partial Spend Support (BTC v0.18): This feature allows users to partially spend their wallet's UTXO (Unspent Transaction Output) set, improving privacy and efficiency.

    • Block Filter Indexing (BTC v0.19): This enables light clients to more efficiently and privately query the blockchain for their relevant transactions.

    • BIP 158 Compact Block Filters (BTC v0.19): This feature allows clients to synchronize more efficiently while maintaining a high degree of privacy.

    • BIP 339 WTxID Relay (BTC v0.21): WTxID-based transaction announcements reduce the bandwidth used during transaction relay and improve transaction propagation.

    • Descriptor Wallets (BTC v0.21): A new wallet format using output script descriptors, which simplifies wallet management and backups.

    • Hardware Wallet Interface (HWI) Integration (BTC v0.18): Improved hardware wallet support, making it easier for users to securely store and manage their DigiByte holdings.

    • Anchor Connections (BTC v0.20): This feature allows nodes to maintain persistent connections to specific peers, improving network stability and resistance to eclipse attacks.

    • Multi-Wallet Support (BTC v0.18): This feature enables users to manage multiple wallets simultaneously within the DigiByte Core GUI. Users can now load, create, and unload wallets on demand without having to restart the software.

    • Major RPC Changes: Numerous RPC changes and improvements have been implemented across various Bitcoin Core versions, including new commands, optimizations, and enhanced error handling. Some notable RPC command changes are:

      • getblockreward Returns the current DGB mining block reward.

      • getblocktemplate (BTC v0.18): Added support for the coinbasetxn field.

      • getblockreward (DGB v8.22): Returns the most recent mining block reward for DGB.

      • createwallet (BTC v0.18): Introduced to create new wallets dynamically.

      • unloadwallet (BTC v0.18): Introduced to unload wallets without restarting the software.

      • getbalances (BTC v0.19): A new command that returns an object with all balances.

      • getdescriptorinfo (BTC v0.21): Provides information about a given descriptor.

      • joinpsbts (BTC v0.20): Combines multiple PSBTs (Partially Signed Bitcoin Transactions) into one.

  • Codebase Improvements: Over 285,000 lines of code have been changed in this release, making the DigiByte Blockchain more efficient, secure, and robust.

Who should upgrade?

Anyone wishing to help us fully test v8.22.0 rc3. In addition, anyone running RC1 and RC2 should upgrade urgently - there are known issues in those pre-releases.

What's Changed RC3 - RC4

  • Added icons for RC3 and RC4 by @saltedlolly in #170
  • Fix for low fee 0.1DGB/KB by @Jongjan88 in #171
  • Policy by @Jongjan88 in #174
  • Max / Rpc tx fee. by @Jongjan88 in #176
  • addrman_tests by @Jongjan88 in #177
  • Fix test/net_tests.cpp by @Jongjan88 in #179
  • Update coincontrol.h by @mctrivia in #182
  • Fix 1st 5 Functional Tests by @JaredTate in #183
  • Fix 10 Functional Tests by @Jongjan88 in #184
  • Return the fee in satoshis for a size of 1000 bytes by @Jongjan88 in #185
  • Fix 5 Functional Tests by @JaredTate in #186
  • This PR fixes 5 functional tests. by @Jongjan88 in #187
  • min_bucket_feerate 1e5 to 1000 by @Jongjan88 in #188
  • Partial wallet_basic.py Fix & 5 other Functional Test Fixes by @JaredTate in #189
  • Fix 10 Functional Tests by @JaredTate in #190
  • Fix 4 Functional Tests by @Jongjan88 in #192
  • Fix p2p_ibd_txrelay.py Test & wallet_txn_doublespend.py (4 tests) by @JaredTate in #193
  • fix: Adds support for Apple silicon compilation by @gto90 in #194
  • Fix mempool_tests.cpp Unit Test by @JaredTate in #195
  • Fix 2 More Unit Tests by @JaredTate in #196
  • Fix: wallet_tests.cpp by @Jongjan88 in #180
  • Disable Benchmarks For Default Compiling & Make Check by @JaredTate in #197
  • Update amount_tests.cpp by @JaredTate in #201
  • Fix rpc_blockchain.py Functional Test by @JaredTate in #203
  • Update SQLite 3.32.1(2020) to 3.45.2(2024) by @Jongjan88 in #204
  • Fix for Boost 1_84_0 by @Jongjan88 in #206
  • Fix 2 rpc_fundrawtransaction.py Functional Tests by @JaredTate in #207
  • Update test_runner.py & Disable 3 Taproot tests by @JaredTate in #208
  • Fix wallet_abandonconflict.py Functional Tests by @JaredTate in #209
  • Fix 2 wallet_groups.py Functional Tests by @JaredTate in #210
  • Fast launch update by @Jongjan88 in #211
  • Fix 4 Functional Tests by @JaredTate in #212
  • Fix 2 rpc_psbt.py Functional Tests by @JaredTate in #214
  • Fix 6 Functional Tests by @JaredTate in #216
  • Bump Version to 8.22.0-RC4 by @JaredTate in #217
  • Make descriptor wallets by default by @Jongjan88 in #213
  • Warn if a newly created wallet is legacy by @Jongjan88 in #221

Full Changelog: v8.22.0-rc3...v8.22.0-rc4