Secure protection for covid-19 infographic using blockchain and discrete cosine transform-singular value decomposition (DCT-SVD) watermarking

— Covid-19 infographics have a crucial role in mitigating the covid-19 pandemic by conveying the complex Covid-19 information in a form of a simple yet understandable image. However, keenly to contribute to mitigating Covid-19, numerous parties and agencies had released Covid-19 infographics that might contain incorrect or inaccurate information. To prevent such recurrent, this paper proposed an authentication system by using a blockchain-based authorization service that lets the authority guarantee the correctness and validity of the infographics in a transparent manner. We proposed smart contract-based watermarking requests and approval management that let anyone track the watermarking process. To prevent unauthorized infographic fabrications, we use the discrete cosine transform and singular value decomposition (DCT-SVD) method considering its robustness against various attacks. We deployed and evaluated the smart contract on Ethereum test networks (Ropsten, Rinkeby, Goerli, and Kovan) to compare the efficiency and the ease of use. The result showed that the test networks have similar efficiency while the Ropsten and Goerli have better ease of use. The watermark validation service is accessible via a web-based interface for anyone to check the validity of the infographic’s watermark.


I. INTRODUCTION
The Covid-19 pandemic has a severe impact on the world economy and people's psychology [1,2]. The World Bank records that there has been a sharp increase in extreme poverty particularly in developing countries. The phenomenon is the direct consequence of the business and employments downturn that results in reduced working hours, reduced wages, and workers laid-off [3].
The severity of the pandemic has moved anyone to share the effort in mitigating the pandemic. The main purpose is to educate the people on how to properly inhibit the spreading of the Covid-19 virus. These phenomena increase infographic dissemination to the mass aiming to inform and educate society. Infographic is the most preferable medium since it can convey complex information in a simple and yet easily fathomable by the mass [4]. The infographic can teach people about general knowledge related to Covid-19 up to technical detail such as how to wear the mask properly [5].
of the Covid-19 infographic [6]. While it might be a good sign, it possesses potential threats in how to guarantee the accuracy and correctness of the infographic. Moreover, based on the study in [7], most people are unaware of the credibility of the information source. In social media, most people will likely treat equally the information shared by any bystanders to the official release of the World Health Organization (WHO).
To solve this problem, the government must step in to guarantee infographic correctness and authenticity. We define three possible actions that can be taken by the government as follow. a) Providing a trusted authentication system to handle the infographic registration. b) Providing an intrinsic authentication system using image watermarking. c) Providing a verification service to verify infographic validity.
By providing an intrinsic authentication system such as image watermarking, it will prevent anyone to consume unauthorized infographics. Anyone can extract the watermarking to verify whether the infographic has been approved by the authority or not.
Nonetheless, single control of the infographic might rise an authoritarian behavior, i.e., unfair or discrimination on the watermarking request. For pubic transparency, any request to authenticate the infographic alongside its approval must be shared with the public. The user must know the exact progress of their request such as whether it has been approved for watermarking, or how they can download the watermarked result. Considering the authentication system will determine the infographic validity, the system integrity must be proven to the mass. Thus, the infographic watermarking must be approved by both parties; the authority and content creators, under public monitoring. Likewise, it acts as double-layer protection for watermarking service. Even though the attacker has breached the authority server and forcefully assigned the watermarking, anyone can verify that the watermarking violated the standard procedure of two-side approval since it lacks the content creator's approval.
Several works have dealt with image watermarking as a service, such as in buyer and seller scenario [8][9][10]. They proposed secure and privacy preserving technique using homomorphic encryption. Nonetheless, the works did not offer traceability to track watermarking requests and approvals. Other works do provide the traceability by using blockchain to record the transaction [11][12][13]. However, those works treat the watermarking process one-sidedly without offering two-faction authentication. In case the watermarking server is compromised, the attacker will have full control of the entire watermarking process.
This study aims to solve the aforementioned problem by proposing a transparent and trusted watermarking service for the Covid-19 infographic by using blockchain smart contract and image watermarking. We use smart contracts to ensure the transparency of the watermarking process while discrete cosine transform and singular value decomposition (DCT-SVD) watermarking is used to secure infographic validity. We offer two-side verification to prevent watermarking abuse by the authority or any attacker to take control the watermarking service. The proposed system is accessible via a web-based service for public requests.
We present the research method in section II, followed by the result and discussion in sections III and IV. At last, the conclusion is available in section V.

A.
DCT-SVD Watermarking The DCT-SVD watermarking embeds noisetolerant information into the image ( ) for future verification that an image has been approved by the authority. We use DCT-SVD watermarking due to its robustness against various image manipulation attacks [14,15].
The computation of watermark embedding can be described as follow. First, the image is converted into frequency domain using direct cosine transform (DCT) (1). The SVD operation then can be applied into the transform data to retrieve the orthogonal matrices ( ) and ( ) and singular value ( ) of the image (2). The watermark embedding is run by adding the watermark data ( ) into the singular value of the image (3). Where the watermark data is the scaled version of the singular value of the watermark image.
The watermarked image ( ′) can be constructed by applying inverse DCT-SVD operations. First, we swap the singular value of the image using the newly generated singular value (3). Next, the inverse SVD can be computed using (4) to form image representation in frequency domain. At last, to convert the image into spatial domain, an inverse DCT (5) is applied to the data.  Upon being released to social media or instant messaging, an image might be attacked by the adversaries by modifying the image. To verify whether an image has a valid watermark or not, we can extract the watermark form the image and compare the structural similarity of the extracted watermark with the original watermark.
In our works, we use non-blind watermarking where the original image is used to extract the embedded watermark. The extraction follows the step of watermark embedding by breaking down the SVD of the possibly attacked image " within frequency domain using DCT-SVD operation. The proces will yields three matrices , , and . The singular value of the extracted watermark ( ′ ) can be computed using (6). It subtracts the singular value of watermarked image with the singular value of the original image. Finally, the extracted watermark can be reconstructed using (7), by multiplying the extracted singular value with the orthogonal matrices of the watermark image (UW, VW T ).
The mean structural similarity index (MSSIM) determines whether the extracted watermark has close similarity to the original watermark. Equation (8) shows how to compute the MSSIM value of the extracted watermark. Higher similarity value indicates the resemblance of the extracted watermark with the original one.
Besides the MSSIM value, peak signal to noise ratio (PSNR) value is usually used to measure the infographic quality after watermarking additions. The lower the PSNR value the higher image degradation due to watermarking process. Equation (9) formulates the PSNR computation while equation (10) show how to compute the MSE. = 10 log 10 ( Blockchain and Smart Contract Blockchain is a distributed system that stores a chain of block containing list of transactions. The chain of block or called the ledger ( ) records sequences of blocks such that = { 1 , 2 , 3 , … }| . Every block ( ) contain Ntransactions where each transaction ( ) can be modelled as = ( , , , , , ) . The and refers to the source and destination address of the transaction. The and correspond to gas limit and gas price of the transaction. Finally, and represent the transaction value and extra data carried by the transaction.
Blockchain has immutable property since the data or the chain of block are stored by all of the participants that run the same blockchain application. To alter the data, the attacker must breach and modify the data from 50 % + 1 of the nodes that widely spread across the globe.
Smart contract is a unique address that contains a program. It can be run by any account by sending a transaction to the address. A smart contract transaction ( ) is unique transaction where the extra data field ( ) contains the function name ( ) and its parameters ( ) that callable by anyone. The contract can be programmed to only accept addresses by specifying the address directly within the smart contract or by dynamically inserted via a smart contract function. Upon the smart contract transaction being recorded into a new valid block, the miners will run the function ( ) and the final state will be updated.
A smart contract transaction has two kinds of successful status, a systemic and logical one. The systemic status indicates whether the transaction has been recorded into a new valid block or not. Whereas the logical status indicates whether the function being called have met the requirement or not. A particular function ( ) might be designed to be run only by the smart contract creator. Thus, other accounts that send a transaction to call this function ( ) might successfully get the transaction being recorded into the blockchain. However, it has transaction logical status fail (access error). In this case, the function is not being executed by the miners since it does not meet the function requirements.
The main advantage of blockchain is public verifiability. Anyone can run a blockchain node to participate in securing blockchain systems using a distributed system. Those who do not run blockchain nodes can monitor the transaction and smart contract execution by using blockchain explorer services such as Etherscan [16].

C.
System Design The block diagram of the system can be depicted as Fig. 1. The system contains three main elements: the smart contract, cloud storage, and the watermarking server. The smart contract serves as the logging tool to keep track of the watermarking request in a transparent manner. The smart contract records only the URL and the hash value of the image, while the encrypted image is being stored in the cloud storage.
The watermarking server has two roles. First, it computes image watermarking based on the request being recorded in the smart contract. Second, it computes watermarking validation in case there is a request for infographic verification.  The working sequence of the system can be described as follow (Fig. 1).
a) The creator of the infographic submit the request to the smart contract (Step-1) The request contains a tuple of data that describe the infographic/content as follow: 1) The hash value of the infographic, 2) The URL containing the Encrypted infographic, and 3) Admin ID (optional). The infographic creator must upload the encrypted version of the infographic to the cloud storage prior to sending the request to the smart contract. The data is encrypted using the admin's public key that is recorded in the smart contract. b) The watermarking server regularly fetches a new watermarking request and downloads the infographic based on the provided URL (Step-2). Next, the server will decrypt the infographic for further process. c) Upon decrypting the infographic, the server embeds the watermarking to the infographic using the DCT-SVD method (Eq. 1 -5). d) The server uploads the watermarked infographic to the cloud storage and updates the URL to the smart contract (Watermarked URL) (Step-4). The watermarked infographic is encrypted using the creator public key which is stored in the smart contract. e) The creator might disseminate the watermarked infographic to the internet via social media, instant messaging, or other media (Step-5). f) For infographic validity checking, anyone might send the request by uploading the intended infographic to the watermarking server (Step-6). g) The server, upon receiving the request will extract the watermark by using the DCT-SVD method (Step-7). h) The server then compares the metadata with the one stored in the smart contract and computes the MSSIM (6) to determine whether the infographic is valid or not based on the similarity value (Step-8).

D. Watermarking Contract
The smart contract aims to preserve the transparency of the watermarking request and its approval mechanism, i.e., prevents one-sided rejection by the authority. Considering the watermarking request has been recorded in the blockchain, it can act as temporal evidence regarding who is the real owner of the infographics.
The smart contract also serves as an immutable look-up table for watermarking validation. The user who requests infographic authentication will receive the record number of the infographics alongside their similarity values. The requester can cross-check the result given by the validation server with the data stored in the smart contract.
The class diagram of the smart contract is shown in Fig. 2. The green colors represent static data while the blue ones correspond to dynamics that store watermarking-related data. The yellow colors indicate the user status.
The infographic data is stored as a Content class that consists of 5 records, namely the index, hash, URLs, and admin id. The index refers to the ID number of the infographic. The hash contains the hash value of the original image for conflict resolution. The two URLs correspond to the web addresses of the encrypted infographic and the encrypted watermarked version. The last record represents the ID number of the watermark provider (Admin). Watermarking requester might choose their preferred and trusted authority independently from another user. Considering the infographic image and its watermarked result have big sizes (megabytes), it cannot be stored in the blockchain. Thus, it must be stored into off-chain storage indicated by the URLs records. To keep the data secret between the requester and the authority, we use asymmetric cryptography to encrypt the infographic data. To achieve it, the public key of the authority and the user must be exposed to in the smart contract. Thus, the communicating party can deliver the data in a secret way using those public keys. Watermaking Server The watermarking server provides two main services: infographic watermarking (Fig. 3) and infographic validation (Fig. 4).
The watermarking process involved the smart contract and cloud storage coordination (Fig. 3). The status of watermarking request is stored in smart contract. Meanwhile the image data is stored in cloud storage in encrypted format. The design is to accommodate the limited storage capacity of the blockchain transaction. The watermarking server periodically read the smart contract status for a new watermarking request.
Upon detecting new watermarking request, there are five steps for the server to generate a valid watermarked image. First, it downloads the infographic from the cloud storage using the link sent by the content creator via smart contract transactions. Second, it decrypts the image using the server's private key. In the next step, the server embeds the watermark data into the infographics. Fourth, the server uploads the watermarked infographic to the cloud server. At last, the server update status and the URL of the result into the smart contract.
The requester or content creator will retrieve the watermarked infographic by reading the status of the smart contract. Upon receiving the URL of the result, the infographic creator can download the watermarked version.
In watermarking validation scenario (Fig. 4), anyone can submit untrusted infographics to the webserver for validation request. First, the watermarking server will populate the watermarking request and apply the watermarking accordingly. Second, the validation server uses DCT-SVD parameters stored in the smart contract to check its validity. The validity is determined by the MSSIM value. If the MSSIM value is high or close to 1 (one), it indicates that the watermark data embedded nto the infographic image are still similar to the original watermark data. Thus, it can be concluded that the infographic contain valid watermark.  The verification consists of two factors, intrinsic verification by referring to the embedded watermark and extrinsic verification by referring to the smart contract data. First, the server will extract the embedded watermark by comparing the submitted image with the original one submitted by the requester. After retrieving the watermark image, the server computes the structural similarity index of the extracted watermark compared to the original watermark.
At last, the server delivers the result to the user containing three data: 1) the content ID and smart contract address, 2) the MSSIM value of the extracted watermark, and 3) the validation status, either valid or invalid.
III. RESULT For evaluation, we tested the watermarking quality by observing the original image and the watermarked image correspond to the PSNR, and similarity index (MSSIM). The results are depicted in Table 1 preserved, even though extra watermark data has been embedded. Meanwhile, the MSSIM value is close to 1 indicating that watermark data is similar to the original form. It can be embedded and extracted successfully without losing significant data in the process.

B.
Blockchain-driven Watermarking We implemented the smart contract using solidity and the source code is available at [18]. We tested the smart contract to do five main functions: deploy the contract, add admin, add user, add content, and set the watermark.
We run the experiment on four Ethereum test networks namely Ropsten, Rinkeby, Goerli, and Kovan. The parameters to send the blockchain transaction are presented in Table 2. The admins refer to the watermarking authority while the creator refers to the infographic creator. We use Google drive to deliver the infographics and watermarked results between the creator and authority. For the infographic image, we use the image available at the content URL and the watermarking result will be available at watermarking URL. Both images are encrypted using RSA public keys that are stored in the smart contract. *) The value refers to the Table 2   Table 3 describes the testing scenario for the smart contract. Each transaction has a sender that sends the contract transaction to the blockchain network. The sender calls the respective function by embedding the function parameters into the transaction. As a result, we have deployed the contract to each of the test networks as shown in Table 4.
The goal of using blockchain is to maintain the transparency of the watermarking process. Everyone can monitor the watermarking transactions, either for request or approval, by scanning the transaction from the respective blockchain explorer. The blockchain explorer for the Ethereum test network can be accessed using the format of "https://<name of network>.etherscan.io", where the name of the network refers to the test network field in Table 3. C. Watermarking Server We developed the watermarking server based on python using Remi library for the webserver and Tkinter library for the dashboard. Fig. 6 shows the dashboard for the user interface of the watermarking authority. The program must be run manually to assign the watermarking to the infographic. The program automatically downloads the watermarking request from the smart contract and populates the infographic into the internal database.
The authority must inspect the request manually for content incorrectness or inaccuracies lies within the infographic. The "choose content" button only displays the unauthorized request. If the infographic passes manual verification, the authority can embed the watermark by using the "add watermark" button. The "verify watermark" button acts as a testing purpose to compare the watermarked version with the original infographic. After local verification, the watermarking result will be updated accordingly. The program will upload the watermark version to Google     7 depicts the webserver that runs the infographic validation service. The user can upload the intended infographic for validation using "Choose File" button. Upon receiving the uploaded infographic, the server will extract the watermarking image, and compute the MSSIM. At last, it informed the user regarding the status of the infographic that consists of three records: 1) the verification status, 2) the MSSIM value of the embedded watermark, and 3) if the infographic is valid, the address of the smart contract and content Id of the watermarking request.

IV. DISCUSSION
The discussion covers the efficiency and ease of use of the proposed method on different Ethereum test networks. Fig. 8 depicts the total gas usage of smart contract transactions from the four test networks. The total gas usage is exactly the same since the data send by the transaction is the same ( Table 3). The gas used by a smart contract transaction depends on the bytes representation of the transaction data. In Ethereum, a zero-byte costs less gas than non-zeros. Fig. 8 shows two transactions that carry different data that result in different gas usage by the transaction. As a recap, all of the test networks have exactly similar efficiency in terms of transaction fee or Ethers' consumption.
Besides the efficiency, the affecting factor of using Ethereum test networks is its ease of use. Table 5 accounts for the comparison of the test network in terms of how the user receives free Ethers for sending any transactions.
Rinkeby test network has the highest daily free ether compared to other test networks. However, the Rinkeby faucet requires social media account such as Twitter and Facebook which is less convenient.  A more flexible scheme is offered by Ropsten and Goerli networks that provide both, account address and social media access, to receive free Ethers. The received ethers are smaller compared to the Rinkeby network but the amount is sufficient to send one infographic watermarking request at a daily rate (Fig.  8).
The Kovan network has smaller free daily ether available for the user. It makes the Kovan network the ISSN : 2085-3688; e-ISSN : 2460-0997 Secure protection for covid-19 infographic using blockchain and discrete cosine transform-singular value decomposition (DCT-SVD) watermarking 100 Jurnal Infotel Vol. 14  less attractive option to deploy the smart contract. The free Ethers of 0.0014 per day is far lesser compared to 0.2 ethers for contract deployment (Fig. 9).
All in all, Ropsten and Goerli networks if the most preferred option while Rinkeby networks come at second. The Kovan is not preferred as it takes time to accumulate ether to send a smart contract transaction.

V. CONCLUSSION
This paper presented a protection system to ensure Infographic integrity and validity by using a smart contract and DCT-SVD watermarking. The DCT-SVD ensure the practical implementation of watermarking by using singular value addition. It also retains the image quality indicated by the high value of PSNR and MSSIM. Meanwhile, the smart contract provides transparent watermarking request management that enables public monitoring. Anyone can trace the process by observing the process from blockchain explorer.