Research Article
CR-BA: Public Key Infrastructure Certificate Revocation Scheme Based on Blockchain and Accumulator
Algorithm 2
Update algorithm, MemWitUp.
| Input: accValue, member, witness, key | | Output: f_result or false//validation response | (1) | ChaincodeStub stub = ctx.getStub (); | (2) | byte[] ojectBytes = stub.getState (Accumulator.class.getSimpleName ()); | (3) | Accumulator accValue = deserialize (ojectBytes); //deserialize the accumulator object | (4) | for member in MEMBER//member are in MEMBER | (5) | Boolean verify = acc.verifyMembership (accValue, member, witness, acc.getN ()); //Verify that the current certificate exists | (6) | result ← Acc.verify (member); //get the verification result | (7) | if (result = = 0) | (8) | Acc ← Acc.Delete(member); //delete the certificate | (9) | witness = acc.proveMembership (sha256 (cert, n)); //compute new accumulator value and new revocation factor | (10) | f_result ← provemembership (sha256 (cert, n)); //f_result is the result | (11) | Return f_result; //return update result | (12) | else | (13) | Return false; |
|