Skip to main content
. 2020 Nov 12;20(22):6471. doi: 10.3390/s20226471
Algorithm 10: Private block calculation.
Input: CT,δIoT,δGW,PreviousHash,OptionalFields,OtherFields.
Output: PriB.
  • 1:

    Retrieve previous hash from private blockchain.

  • 2:

    VerifyECDSA(δGW,σCT).

  • 3:

       if above check holds, then continue with step 5.

  • 4:

       otherwise, terminate the session.

  • 5:

    Compute σSrv=ECDSA(σCT,σGW,IPSrv,tSrv).

  • 6:

    Set δSrv=(σSrv,IPSrv,tSrv).

  • 7:

    Set δCT=(σCT,IPSrv,tCT).

  • 8:

    Set initial Nonce value as 0.

  • 9:

        while H(NoncePreviousHashδSrvδGWδIoTδCTOptionalFieldsOtherFields)<Difficulty do.

  • 10:

         Nonce=Nonce+1.

  • 11:

    end while.

  • 12:

    Generate PriB=(δSrv,δGW,δIoT,δCT,Nonce,Difficulty,Optional Fields).

  • 13:

    Write PriB to private blockchain.

  • 14:

    Receive PriBlockNon from private blockchain.