Research Article

CR-BA: Public Key Infrastructure Certificate Revocation Scheme Based on Blockchain and Accumulator

Algorithm 1

Generative algorithm, provemembership.
Input: accValue, member, key
Output: accValue′, witness
(1)ChaincodeStub stub = ctx.getStub ();
(2)byte[] ojectBytes = stub.getState (Accumulator.class.getSimpleName ());
(3)Accumulator accValue = deserialize(ojectBytes); //deserialize the accumulator object
(4)result ← Acc.verify (member); //verify that current certificate exists
(5)accValue ← Acc.add(member); //add member to accumulator
(6)witness = acc.proveMembership (sha256 (cert, n)); //compute new accumulator value and new revocation factor
(7)SendBlockchainTransaction (accValue′); //update accValue to the blockchain
(8)return accValue′, witness; //return revocation factor, and the accumulator value is saved to the blockchain