Assessment reports>Proof of Data Possession>Threat Model>possessionProven

Function: possessionProven(uint256 proofSetId, uint256, uint256, uint256 challengeCount)

This function verifies that the caller provides the correct number of challenges and sets provenThisPeriod to true for the given proofSetId.

Inputs

  • proofSetId

    • Control: Full control.

    • Constraints: provenThisPeriod[proofSetId] should be false.

    • Impact: The identifier of the proof set.

  • challengeCount

    • Control: Full control.

    • Constraints: Cannot be less than getChallengesPerProof().

    • Impact: The number of the provided proofs.

Branches and code coverage

Intended branches

  • provenThisPeriod[proofSetId] has already been set to true.

Negative behavior

  • The current period has already been proven.

  • challengeCount is less than getChallengesPerProof().

  • provingDeadlines[proofSetId] has not been set.

  • provingDeadlines[proofSetId] is less than the current block.number.

  • The challengeWindow has not started yet.

  • The caller is not a trusted PDPVerifier.

Zellic © 2025Back to top ↑