Research Article

Security Enhancements for Data-Driven Systems: A Blockchain-Based Trustworthy Data Sharing Scheme

Algorithm 1

The process of the proposed scheme.
Require: DO: the encrypted data , the contract’s program code , the secret key shares ; DC: the request .
Ensure: the data .
procedure DATA RELEASE:
DO sends and to CS;
CS publishes to blockchain;
DO checks
if the in the blockchain is correct, then
DO sends the secret key shares to the kTEE .
procedure Data retrieval:
DC revokes the smart contract with input ;
CS loads and into the sTEE;
sTEE performs remote attestation with kTEEs
if sTEE environment and loaded data are correct, then
The kTEE transmits to the sTEE;
Step 2.4: CS executes the smart contract in the internal
sTEE to obtain a reencryption key;
CS computes the reencrypted ciphertext
outside the sTEE;
CS sends the reencrypted data to the
blockchain;
DC obtains and decrypts it to obtain .