Skip to content
This repository was archived by the owner on Jul 19, 2026. It is now read-only.
This repository was archived by the owner on Jul 19, 2026. It is now read-only.

select difficulty adjustment algorithm #147

Description

@nathan-at-least

Are there improvements to availability if difficulty is adjusted each block? Is there any larger vulnerability (eg: DOSing a nodes peer connections to starve it of blocks lowering it's local belief about difficulty)?

Are there any known advantages or risks which clearly make this worthwhile to spend time on or avoid?

We suspect this may be important in the long term, because PoW mining may eventually lead to cascading exit of miners when their margins go <= 0 (Brad Templeton Death Spiral, #95), or during sudden-withdrawal infanticide, or during sudden withdrawal due to side-chain knock-on effects (see #146). This may help with availability during those kinds of events (although it won't mitigate those events directly).

Is the implementation complexity low? (It would seem like changing a single constant K to 1 in "calculate difficulty every K blocks".)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-consensusArea: Consensus rulesA-consensus-genesisArea: Starting a Zcash chain from scratch.A-powArea: Proof-of-Work and miningC-researchCategory: Engineering notes in support of design choicesD-economicsDesign issue: EconomicsI-SECURITYProblems and improvements related to security.I-performanceProblems and improvements with respect to performancein 1.0questionspecial to Dairaspecial to Nathan

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions