## 3 Protocols Verifying the Authenticity of Digital Files in Distributed Networks
### Security Analysis in Distributed Networks  
The methods for verifying authenticity, as presented here, are based on the handling of several independent elements: File F, Ciphertext C, nonce \(\omega\) and the stream \(\text{M}^{\circ}\). The client may restrict any of these streams while distributing the other three elements. The possibility matrix is shown in Table 1.  
The respective value of each case can be summarized as follows:  
* Case 1 was discussed in Section 3.2.2 The client keeps F and \(\omega\) secret after enrollment and then discloses both during verification. Such a method is valuable since the entire chain of information is obfuscated before validation. After validation, both \(\text{C}_{1}\) and \(\text{F}_{1}\) are public information, and the use of the DSA can further enhance the transparency of the protocol. * Case 2 is a variation of Case 1 where M is a message of authenticity rather than a public key. The client can only disclose \(\omega\) during verification, offering some homomorphic \begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**CASE**} & **File** & **Ciphertext** & **Nonce** & **Cipher Text** & **What Is** \\  & **F** & **C** & \(\omega\) & **M\({}^{\circ}\); \{S; M\({}^{\star}\)\}** & **M\({}^{\circ}\)** \\ \hline
1 & Client & Storage & Client & Storage & M = Pk \\ \hline
2 & Client & Storage & Client & Storage & M = message \\ \hline
3 & Client & Client & Storage & Storage & M = Pk \\ \hline
4 & Storage & Storage & Client & Storage & M = message \\ \hline
5 & Storage & Storage & Storage & Client & M = message \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Methods to organize a collaborative network. Figure 5: Block diagram of a validation cycle in a distributed network. The agent collects the information needed for the smart contract to decrypt \(\text{F}_{\text{i}}\): \(\omega_{\text{i}}\) and the stream \(\text{M}^{\circ}_{\text{i}}\): \(\{\text{S}_{\text{i}},\text{M}^{\star}_{\text{i}}\}\). This allows the recovery of \(\text{F}_{\text{i}}\), \(\text{M}_{\text{i}}\) to verify authenticity with DSA. capabilities to the scheme as the open protocols verify the authenticity of ciphertext C without openly disclosing F.
* Case 3: After enrollment, the client keeps both F and C such that the level of obfuscation is also high. During validation, the client discloses both so the smart agent can verify authenticity. This method is interesting since the client cannot lie by changing F and C after the fact. * Case 4: After enrollment, the client only keeps \(\omega\) and releases both unencrypted and encrypted files. The release of the nonce enables a full verification of authenticity to include DSA. The nonce is then used as a one-time public key. * Case 5: This is a variation of Case 4 in which only M\({}^{\circ}\) is kept by the client, thus utilizing M\({}^{\circ}\) as a one-time public key. Discussion: The first two cases offer both high levels of security and transparency since file F is kept secret after enrollment, while ciphertext C is public information. The client could be accused of modifying the file, if it is altered; therefore, the protocol offers non-alterability and non-repudiation. In addition to the proof of authenticity of the message, by releasing the nonce, the client also provides a form of authentication. In both cases, the storage node is keeping files that can be decrypted on-demand, acting as a repository of critical information. Examples of information are medical files, financial transactions, movies, games, and/or real estate transactions. The second case offers some homomorphic properties since the encrypted file can be authenticated without knowing the content of the file. The decryption of the files can be performed separately and secretly in a transaction between the client and a third party. The client may, for example, secretly communicate the cryptographic key needed to retrieve the file. An example of a use case could be in the handling of medical files.