外链论坛

 找回密码
 立即注册
搜索
查看: 13|回复: 1

MEMO的存储证明流程

[复制链接]

3055

主题

2万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99108875
发表于 2024-10-3 08:57:31 | 显示全部楼层 |阅读模式

互联网中存在海量的边缘存储设备,MEMO经过对这种闲置资源的整合搭建了一个可扩展的分散式云存储协议,使存储资源有限的用户可将数据存储在边缘存储节点上。然则这般一个公开的低可信环境中,边缘存储节点靠谱性较低,她们可能会作出篡改、删除数据等恶意行径因此呢需要对存储节点进行有效监督,以验证她们是不是正确地持有存储数据。

思虑安排环境为公有区块链,故引入第三方进行数据持有性证明的挑战和验证工作。在MEMO的组织架构中,设计了User、Provider、Keeper三个角色,其中User是存储消费者,Provider是存储空间供给者,Keeper是协调管理者。这三个角色中,Keeper充当着第三方审计角色,会定时对Providers发起挑战并验证她们是不是完好存储数据。

1、可验证随机函数

即使引入了第三方审计角色,在低可信的分散式环境中仍然面临着预存攻击和合谋攻击的可能。预存攻击是数据存储方能够在不存储完整数据的状况下响应挑战并经过的可能,合谋攻击指的是在公开验证的环境中,用于审计的服务器和用于存储的服务器之间还存在双方合谋以违法经过证明的可能。

为了抵御这两项攻击,使数据存储更加安全靠谱,MEMO采用可公开验证随机函数算法(VRF)来保准验证的不可预测性和公开验证性。

1.不可预测性:指随机数算法产生的每一个输出均应统计独立于其他输出,使得攻击者没法经过已得到的随机数推算出其他随机结果,即任何恶意节点无论以何种途径,都没法按照个人意志掌控随机过程的输出。

2.可公开验证性:指可使任何有兴趣的参与方都能得到授权,并经过某种方式进行验证以下事实是不是成立,即需要验随机过程所产生的结果是真正随机的、而非受某一方操控形成。

该算法由证明者发布的公钥来对函数进行承诺,公钥与函数相绑定,这寓意着验证者必定能用它对函数的靠谱性进行验证,详细来讲,可验证随机函数持有多项式时间算法G(函数参数生成器)、F(函数计算器)和V(函数验证器)等3个算法。

2、验证原理

每一次验证,由Keeper生成VRF密钥对,并在保留VRF私钥至本地的同期,将VRF公钥发送给对应的数据存储方Provider,这寓意着Provider利用VRF公钥对函数的靠谱性进行验证。一样的,之后VRF计算生成的随机数和响应证据会被一块发送给Provider,用于之后的验证过程。换言之,Keeper做为计算方把握私有信息,Provider做为验证方把握公开信息,从而使得Keeper的随机过程拥有可验证性。

保证了随机周期的可验证性之后,还需要对随机过程做到公开验证。能够看到,合谋攻击的本质在于随机数关联的过程隐秘性过强,其产生过程并不透明,这使得产生随机数的靠谱性难以得到验证。可验证随机函数利用一种类似于公钥加密方式的承诺方法,其中的证明者经过私钥和黑盒模式的函数保证不可预测性,验证者则利用公钥和完全公开的函数输出保证可验证性,从而达成为了两种必须性质的有效结合。

验证证明中各角色的交互流程

3、验证流程

1.数据预处理

在上传数据前,User首要会对数据进行预处理。User按照参数计算生成公开信息和私有信息,公开信息发送至Keeper存储,私有信息保留在用户本地;并且,User需要对将要存储到Provider的外包数据进行签名,生成相对应的标签信息,之后用户把外包数据和标签信息进行组合并发送给Provider。

User对将要存储到数据存储方的外包数据切分成数据片,同期根据递增的整数给数据命名索引,而后按照数据片和索引生成标签进行签名,之后用户把外包数据和标签信息进行组合并发送给Providers。

用户对数据块进行计算产生标签的过程

2.生成挑战信息

Keeper接收User的公开信息即相当于接受了该User的挑战拜托因此呢选取一种会出现变化、且变化不可预测的信息做为后续计算的输入。Keeper生成属于自己的可验证随机函数的密钥对,并将挑战信息发送给Providers,这个挑战信息便是Keeper按照可验证随机函数生成的公钥。

3.生成数据持有性证明

收到挑战信息后,Provider首要对其进行验证,若验证经过,则生成对应的数据持有性证据并发回Keeper。

4.验证证明

最后由Keeper按照存储的用户的公开信息,对收到的数据持有性证据依次进行两步验证,当且仅当两步验证的结果均为经过时,可显示Provider正确且完整地存储了外包数据。

小结:

MEMO引入第三方审计Keeper对数据持有性进行公开验证,能够有效分担数据所有方Provider的计算压力和在线压力。经过引入新的变量和计算环节使得数据存储方Provider必须正确而完整地存储数据才可实现利益最大化,选择合适的随机函数以使第三方审计和数据存储方Provider在维持正常运转的环境中有很强概率没法顺利地进行合谋攻击,有效加强方法安全性。全部过程只需要包袱较低的计算压力和常量级的信息存储开销就可使第三方审计在未接触原始存储数据的状况下对数据持有性进行公开审计,有效性与隐私性都能得到切实保准

认识更加多MEFS关联内容,欢迎关注:

l 官网:http://memolabs.org

l 公众号:MEMO分散式存储

l Twitter:Memo Labs

l Medium:Memo Labs

l Discord:https://discord.gg/YG4Ydv2E7X

l Telegram:http://t.me/memolabsio

回复

使用道具 举报

2931

主题

2万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109433
发表于 2024-10-22 10:03:01 | 显示全部楼层
你的留言真是温暖如春,让我感受到了无尽的支持与鼓励。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|外链论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-5 19:04 , Processed in 0.072306 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.