| With the advent of the digital economy era,data security is facing increasingly severe challenges,and related data security incidents occur frequently.As a technology to control the access rights of users or entities to specific resources,access control is essential in protecting data security access.Most of the traditional access control technologies are centralized access control schemes,which have low reliability and may lead to single point failures and data security incidents.In addition,in large-scale data scenarios,traditional access control schemes have poor flexibility and difficult management advanced questions.As a decentralized storage technology,the blockchain has the characteristics of openness,transparency,and non-tampering,which can meet the access control requirements of data security and control in the current actual scene.Therefore,the access control scheme based on the blockchain can be guaranteed.Overcome the limitations of traditional solutions to a certain extent.There are currently some blockchain-based data controlled access solutions that can provide secure and credible access control to a certain extent,but existing blockchain-based data controlled access solutions face multiple challenges in actual scenarios.First of all,due to the poor storage performance of the blockchain itself,it is difficult to adapt to scenarios with a large amount of data.Therefore,it is necessary to introduce external storage,store encrypted raw data off-chain,and store related encrypted metadata on-chain.However,for the encrypted metadata,the existing scheme does not consider verifying the integrity of the search results,and may not be able to return all the data.At the same time,for this scenario,there is no corresponding encryption keyword update method.Secondly,for the on-chain and off-chain data controlled access scheme,the implementation cost of the existing scheme is high,the access request efficiency is low,and the trusted auditing capability of the blockchain itself is not considered,and the access policy has not been traced back to history.In order to solve the above-mentioned challenges,this paper conducts research on the blockchain-based data controlled access scheme.The main research results are as follows:(1)Aiming at the problem of not considering the integrity of the verification search results,it may not be possible to return all the data,and at the same time,there is no corresponding encryption key update method,a searchable encryption method based on pseudo-random functions and blockchain smart contracts is proposed.First,verify the identity of the data user through the access control system on the chain,generate a search token,and then retrieve the encrypted original data according to the search token,realizing the search for encrypted metadata on the chain based on the blockchain,and then through the metadata,off-chain Access to encrypted raw data,while also implementing key updates.Experiments prove that the searchable encryption algorithm designed by this method realizes the verification of search results and the update of keywords,and maintains the integrity of data.(2)Aiming at the problems of high implementation cost,low access request efficiency,and without considering the trusted auditing capability of the blockchain itself,and not implementing historical retrospective access policies,a data controlled access based on XACML and blockchain smart contracts is proposed.method.Among them,the off-chain part is an external storage module,which is used to store encrypted original data and meet subsequent search requirements;the on-chain part is an access control module,and the access control scheme adopts the XACML framework,and the specific access control model adopts attribute-based Access control is used to verify the identity of the data requester.Compared with the existing schemes through experiments,this method is superior to the existing schemes in terms of cost consumption,throughput and other evaluation indicators.(3)Design and implement a data controlled access system based on blockchain smart contracts.The system mainly includes two management modules,data owner and data user.The data owner module includes data upload,access records,and permission setting services.The data user module mainly includes search functions,and secondly provides query historical access record information.Finally,from the perspectives of feasibility,security and controllability,the whole system is verified,and each functional module is tested. |