我试图通过反病毒服务理念了解智能合约。我希望,它与Smart Contract和Blockchain 2.0的预期相符。
问题
假设我从某个媒体收到了一个25 MB的文件。在我真正打开它以供使用之前,我想让它扫描病毒。我怎么能确定它没有被感染?
传统解决方案
也许为病毒扫描提供了基于云的服务 - 病毒扫描即服务(VSaaS)。此提供程序具有基于文件类型,扫描量和频率的订阅计划。我可以接近这个提供程序来扫描我的文件并接收二进制响应为TRUE(干净)或FALSE(被感染)。但是,我别无选择,只能相信提供者的两件事:
提供商是否完全扫描?或者,更一般地说,完成“工作”了吗?也许,有一个很小的脚本以50%的概率返回TRUE和FALSE,无论发送多少文件和什么类型的文件。
提供商的扫描结论是什么?也许,提供商没有成功扫描所有病毒签名。因此,提供者可能会回答TRUE(干净),而实际上是感染了最新的病毒株。
智能合约
分布式应用程序(或智能合约)可以解决此问题吗?我知道底层区块链提供了一个可以验证的公开分类账:
我不知道的是,我如何回答传统解决方案的问题?也就是说,确认病毒扫描确实完全发生的机制是什么?多个“完整节点”应该对同一个文件进行病毒扫描吗?如果是这样,我现在不会在多个完整节点(实际上是传统方式的不同云提供商)中散布模糊性吗?
以太坊平台如何满足这一要求?