Research Article

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

Algorithm 2

uploadRM.
(1)Input: Uid, rule, sig
(2)output: bool
(3)% invoke by DMS to upload the role map rule.
(4)% Uid is used to retrieve role mapping rules between DOs.
(5)% Uid = ‘DMS_ID_sour-DMS_ID_dest’
(6)% rule = {“role1,role2”, “role1, role3”,…}
(7)%
(8)DMS_ID_des = extract(Uid)
(9)if verify(DMS_ID_des, sig)  true then
(10) stub.PutState(Uid, rule); % store key = Uid, value = rule in blockchain
(11) return 0;
(12)else
(13) return 1;