# Towards a New Business Model for Streaming Platforms Using Blockchain Technology
## 4 Proposed Solution
### Automatic Smart Contract Generation Service
GIT ([[https://git-scm.com/--version](https://git-scm.com/--version)]([https://git-scm.com/--version](https://git-scm.com/--version)) 2.40.0) managed the versioning of the developed source code. ## 5 Assessment of StreamingChain

This section presents the study's main results. Section 5.1 evaluates data transactions on different blockchain networks through computational experiments, while Section 5.2 presents the results of software and hardware resources used to execute the proposed solution. Section 5.3 addresses the opinion of content creators regarding the features implemented in StreamingChain. ### Computational Evaluation

A computational environment was created to evaluate the critical features of StreamingChain based on the video-sharing scenario on streaming platforms, as described in Section 4. The local network was used to set up workstations with the following configuration: an I5 7400 processor and 16 GB of DDR4 RAM. Once the computing environment was designed, the following activities were carried out: (i) the architecture components of StreamingChain (Figure 1) were developed, (ii) the relational DBMS was configured to store the metadata of streaming services, and (iii) two blockchain networks (Ethereum--[[https://ethereum.org/en/developers/--version](https://ethereum.org/en/developers/--version)]([https://ethereum.org/en/developers/--version](https://ethereum.org/en/developers/--version)) 2.0 and Fantom--[[https://docs.fantom.foundation/--version](https://docs.fantom.foundation/--version)]([https://docs.fantom.foundation/--version](https://docs.fantom.foundation/--version)) 1.20) were configured to store data through smart contracts. Figure 3: Smart contract’s main features. As part of our evaluation process, we uploaded nine videos to our web application to be shared with end-users. In one of these videos, we simulated 10,000 views. Our smart contracts ensure that all parties involved meet the agreed-upon terms. The StreamingChain adopts a programming logic in which information about the content creator and the streaming platform is registered in the smart contract. The terms and clauses are encoded in programming functions, and a check is carried out to verify if there is enough balance to pay for transactions. If the balance is insufficient, the StreamingChain service requests the platform managing the digital wallet to provide assets for the smart contract. The number of views, average time watched per video, and total viewing time are used to manage the digital media audience and pay the parties involved. To evaluate payments made through smart contracts, we consider the number of five hundred views per video so that the content creator receives ETH 1 as payment. Since the video we evaluated reached 10,000 views, the content creator received twenty payments in their digital wallet. Figure 4 illustrates the video we studied in this evaluation, and it identifies some of the critical software components for the operation of StreamingChain. The smart contract developed in the Solidity language is also shown in Figure 4, along with the digital wallet addresses of the content creator and the streaming platform. The 10,000 views allowed us to evaluate data integration from a streaming platform with our solution. For each access made to the video, the number of views, the average time watched per video, and the total viewing time are calculated. With this data, StreamingChain generates a smart contract for each video and deploys it on the blockchain network. The data transactions coming from the visualizations were all processed correctly, and the identifier current block, illustrated in Figure 4, shows the last transaction carried out on the blockchain network, i.e., 10001. It is crucial to note that the first block in the Ethereum network is the genesis block, and it is assigned the first position. Therefore, the number 10001 corresponds to 10,000 transactions.