Research Article

Trusted and Efficient Cross-Domain Access Control System Based on Blockchain

Algorithm 1

uploadURole.
(1)Input: uID, uRole, sig
(2)output: bool
(3)% invoke by DMSs to upload the users’ role in the DO.
(4)%
(5)if verify(DMS_ID, sig) = true && uID.DO = = DMS_ID.DO then
(6){
(7)if stub.GetState(uID) ! = null then % update the user’s role
(8)  updateAHL(uID_update,uID);
(9) stub.PutState(uID,uRole); % store key = uPK, value = rRole in blockchain
(10)return 0;
(11)}
(12)else
(13)return 1;