# Reliable Integrity Preservation Analysis of Video Contents with Support of Blockchain Systems
## 4 Evaluation
### Implemented Software Tool
The button \"Compare\" starts the process of comparing each pair of corresponding frames between the original video and the non-original video one by one and sequentially. This function operates in the front-end server and takes a long time proportional to the running time of the two video files. To avoid the confusion caused by different frame rates per second between the original video and its retouched video, our software module compares only the first frame in each group of pictures (GoP) instead of comparing all frames in each group of pictures. The comparison result is displayed either _Same_ or _Not Same_, as shown in the bottom of Figure 9. If the comparison result is _Same_, the software modules in the front-end server extract the meta data of the two files and transmit them to the software modules in the blockchain system. As explained in Figure 7, the software modules in the blockchain system verify the integrity of the two files with the transmitted meta data. The integrity analysis results of the two files are sent back to the front-end server and displayed on the Chrome browser, as shown in the left bottom box of Figure 9. If the comparison result is _Not Same_, the software modules in the front-end server provide the specific time when the two videos run differently for the first time, and depict their two corresponding frames, as shown in the bottom right box of Figure 9. Note, in the bottom right box of Figure 9, the right frame contains a hat image marked as a circle, whereas the left frame does not. Figure 8: Storing and searching the integrity analysis result on the blockchain system. Figure 10 shows the procedure used to store the integrity preservation trace in the blockchain system. The button \"Analysis\" in the left box of Figure 10 starts the storing procedure, where the comparison result of the two files, the comparison time, their integrity analysis results and their hash values are transmitted from the front-end server to the back-end blockchain system. These values are stored as a group variable in the blockchain system. The right box in Figure 10 shows the result of blockchain operation transmitted from the back-end blockchain system to the front-end server. Figure 11 shows the procedure to search the integrity preservation trace of retouched video files. The button \"File Open\" starts the uploading process of an input video file. The button \"OK\" starts the operation to search for the transforming history of the input files stored in the blockchain system. The software module in the front-end server calculates the hash value of the input file and transmits it to the software modules in the blockchain system. The software module in the blockchain system searches for the stored integrity preservation trace with the transmitted hash value as the index key. The search result is transmitted to the software module in the front-end server, and displayed as shown in the bottom box of Figure 11.  
Figure 10: Procedure to store the integrity preservation trace into the blockchain system. Figure 9: Graphic User Interface for the integrity preservation trace.